Version Description
- Handling of truncated retweets
- Restructured library directory
- More friendly front end error when not configured
- Caching disabled in debug mode
- Empty timezone_string fix
- Better tweet linkifying using entities
- Better l10n bootstrapping
- Added minimum tweet popularity
Download this release
Release Info
Developer | timwhitlock |
Plugin | Latest Tweets Widget |
Version | 1.1.0 |
Comparing to | |
See all releases |
Code changes from version 1.0.15 to 1.1.0
- api/README.md +113 -0
- {lang → api/lang}/README.md +2 -1
- api/lang/twitter-api-de_DE.mo +0 -0
- {lang → api/lang}/twitter-api-de_DE.po +98 -98
- api/lang/twitter-api-nl_NL.mo +0 -0
- {lang → api/lang}/twitter-api-nl_NL.po +112 -112
- api/lang/twitter-api-pt_BR.mo +0 -0
- {lang → api/lang}/twitter-api-pt_BR.po +98 -98
- {lang → api/lang}/twitter-api-ru_RU.mo +0 -0
- {lang → api/lang}/twitter-api-ru_RU.po +98 -98
- {lang → api/lang}/twitter-api.pot +92 -92
- api/lang/update.sh +27 -0
- {lib → api/lib}/twitter-api-admin.php +11 -10
- {lib → api/lib}/twitter-api-core.php +7 -0
- {lib → api/lib}/twitter-api-utils.php +87 -9
- {lib → api}/twitter-api.php +57 -20
- lang/twitter-api-de_DE.mo +0 -0
- lang/twitter-api-nl_NL.mo +0 -0
- lang/twitter-api-pt_BR.mo +0 -0
- lang/update.sh +0 -24
- latest-tweets.php +58 -34
- readme.txt +21 -5
api/README.md
ADDED
@@ -0,0 +1,113 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Twitter API Wordpress Library
|
2 |
+
|
3 |
+
This library exposes a fully authenticated Twitter API client for developing Wordpress plugins.
|
4 |
+
|
5 |
+
## Features
|
6 |
+
|
7 |
+
* Compatible with the new Twitter API 1.1
|
8 |
+
* OAuth flow connects your Twitter account via Wordpress admin
|
9 |
+
* Access to a common Twitter API client that any plugin can use
|
10 |
+
* Caching of API responses
|
11 |
+
* Light-weight: uses Wordpress utilities where possible
|
12 |
+
|
13 |
+
|
14 |
+
## Example plugin
|
15 |
+
|
16 |
+
See the [Latest Tweets Widget](http://wordpress.org/extend/plugins/latest-tweets-widget/) for an example plugin using this library.
|
17 |
+
|
18 |
+
|
19 |
+
## Installation
|
20 |
+
|
21 |
+
Clone this repo to where you will develop your plugin. e.g.
|
22 |
+
|
23 |
+
git submodule add https://github.com/timwhitlock/wp-twitter-api.git \
|
24 |
+
wp-content/plugins/my-twitter-plugin/api
|
25 |
+
|
26 |
+
To expose the library and its admin functions, bootstrap the library from your own plugin as follows:
|
27 |
+
```php
|
28 |
+
/*
|
29 |
+
* Plugin Name: My Twitter Plugin
|
30 |
+
*/
|
31 |
+
if( ! function_exists('twitter_api_get') ){
|
32 |
+
require dirname(__FILE__).'/api/twitter-api.php';
|
33 |
+
}
|
34 |
+
```
|
35 |
+
|
36 |
+
## Authentication
|
37 |
+
|
38 |
+
Once the plugin is installed and enabled, you can bind it to a Twitter account as follows:
|
39 |
+
|
40 |
+
* Register a Twitter application at https://dev.twitter.com/apps
|
41 |
+
* Note the Consumer key and Consumer secret under *OAuth settings*
|
42 |
+
* Log into Wordpress admin and go to *Settings > Twitter API*
|
43 |
+
* Enter the consumer key and secret and click 'Save settings'
|
44 |
+
* Click the 'Connect to Twitter' button and follow the prompts.
|
45 |
+
|
46 |
+
Any Wordpress plugin can now make fully authenticated calls to the Twitter API. The functions are documented below.
|
47 |
+
|
48 |
+
|
49 |
+
## Twitter Client
|
50 |
+
|
51 |
+
The following functions are available from anywhere as soon as the plugin is authenticated.
|
52 |
+
They all operate as the Twitter account you connected in your admin area.
|
53 |
+
|
54 |
+
#### twitter_api_get
|
55 |
+
`array twitter_api_get ( string $path [, array $args ] )`
|
56 |
+
GETs data from the Twitter API, returning the raw unserialized data.
|
57 |
+
|
58 |
+
`$path` is any Twitter API method, e.g. `'users/show'` or `'statuses/user_timeline'`
|
59 |
+
`$args` is an associative array of parameters, e.g. `array('screen_name'=>'timwhitlock')`
|
60 |
+
|
61 |
+
Note that neither the path nor the arguments are validated.
|
62 |
+
|
63 |
+
#### twitter_api_post
|
64 |
+
`array twitter_api_post ( string $path [, array $args ] )`
|
65 |
+
As above, but POSTs data to the Twitter API.
|
66 |
+
|
67 |
+
#### twitter_api_enable_cache
|
68 |
+
`TwitterApiClient twitter_api_enable_cache( int $ttl )`
|
69 |
+
Enable caching of Twitter response data for `$ttl` seconds.
|
70 |
+
|
71 |
+
#### twitter_api_disable_cache
|
72 |
+
`TwitterApiClient twitter_api_disable_cache( )`
|
73 |
+
Disables caching of responses. Caching is disabled by default.
|
74 |
+
|
75 |
+
|
76 |
+
## Custom OAuth flows
|
77 |
+
|
78 |
+
The above functions work with a single authenticated Twitter account.
|
79 |
+
If you want to authenticate multiple clients or create OAuth flows other than the one provided, you'll have to work directly with the `TwitterApiClient` class and roll your own OAuth user flows.
|
80 |
+
|
81 |
+
The following utility functions will do some lifting for you, but please see [Twitter's own documentation](https://dev.twitter.com/docs/auth/obtaining-access-tokens) if you're not familiar with the process.
|
82 |
+
|
83 |
+
#### twitter_api_oauth_request_token
|
84 |
+
`TwitterOAuthToken twitter_api_oauth_request_token ( string $consumer_key, string $consumer_secret, string $oauth_callback )`
|
85 |
+
Fetches an OAuth request token from Twitter: e.g. `{ key: 'your request key', secret: 'your request secret' }`
|
86 |
+
|
87 |
+
#### twitter_api_oauth_access_token
|
88 |
+
`TwitterOAuthToken twitter_api_oauth_access_token ( $consumer_key, $consumer_secret, $request_key, $request_secret, $oauth_verifier )`
|
89 |
+
Exhanges a verified request token for an access token: e.g. `{ key: 'your access key', secret: 'your access secret' }`
|
90 |
+
|
91 |
+
### TwitterApiClient
|
92 |
+
|
93 |
+
Once you have your own authentication credentials you can work directly with the API client.
|
94 |
+
This example shows the main methods you might use:
|
95 |
+
|
96 |
+
```php
|
97 |
+
try {
|
98 |
+
$Client = twitter_api_client('some client');
|
99 |
+
$Client->set_oauth( 'my consumer key', 'my consumer secret', 'their access key', 'their access secret' );
|
100 |
+
$user = $Client->call( 'users/show', array( 'screen_name' => 'timwhitlock' ), 'GET' );
|
101 |
+
var_dump( $user );
|
102 |
+
}
|
103 |
+
catch( TwitterApiRateLimitException $Ex ){
|
104 |
+
$info = $Client->last_rate_limit();
|
105 |
+
wp_die( 'Rate limit exceeded. Try again at '.date( 'H:i:s', $info['reset'] ) );
|
106 |
+
}
|
107 |
+
catch( TwitterApiException $Ex ){
|
108 |
+
wp_die( 'Twitter responded with status '.$Ex->getStatus().', '.$Ex->getMessage() );
|
109 |
+
}
|
110 |
+
catch( Exception $Ex ){
|
111 |
+
wp_die( 'Fatal error, '. $Ex->getMessage() );
|
112 |
+
}
|
113 |
+
```
|
{lang → api/lang}/README.md
RENAMED
@@ -12,4 +12,5 @@ Many thanks to the following translators:
|
|
12 |
|
13 |
* **pt_BR** [Leandro Dimitrio](http://wordpress.org/support/profile/leandrodimitrio)
|
14 |
* **de_DE** [Florian Felsing](https://twitter.com/FlorianFelsing) and [David Noh](http://wordpress.org/support/profile/david_noh)
|
15 |
-
* **ru_RU** [Andrey Yakovenko](https://twitter.com/YakovenkoAndrey)
|
|
12 |
|
13 |
* **pt_BR** [Leandro Dimitrio](http://wordpress.org/support/profile/leandrodimitrio)
|
14 |
* **de_DE** [Florian Felsing](https://twitter.com/FlorianFelsing) and [David Noh](http://wordpress.org/support/profile/david_noh)
|
15 |
+
* **ru_RU** [Andrey Yakovenko](https://twitter.com/YakovenkoAndrey)
|
16 |
+
* **nl_NL** [Daniel Wichers](https://twitter.com/dwichers)
|
api/lang/twitter-api-de_DE.mo
ADDED
Binary file
|
{lang → api/lang}/twitter-api-de_DE.po
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: Twitter API
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
-
"Language-Team:
|
9 |
"Language: German\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
@@ -17,282 +17,282 @@ msgstr ""
|
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
-
|
21 |
-
msgid "Accepted"
|
22 |
-
msgstr "Akzeptiert"
|
23 |
-
|
24 |
-
#. asset: Conflict
|
25 |
-
msgid "Conflict"
|
26 |
-
msgstr ""
|
27 |
-
|
28 |
-
#. asset: Continue
|
29 |
-
msgid "Continue"
|
30 |
-
msgstr "Weiter"
|
31 |
-
|
32 |
-
#. asset: Created
|
33 |
-
msgid "Created"
|
34 |
-
msgstr "Erstellt"
|
35 |
-
|
36 |
-
#. asset: Forbidden
|
37 |
-
msgid "Forbidden"
|
38 |
-
msgstr ""
|
39 |
-
|
40 |
-
#. asset: Found
|
41 |
-
msgid "Found"
|
42 |
-
msgstr "Gefunden"
|
43 |
-
|
44 |
-
#. asset: Gone
|
45 |
-
msgid "Gone"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#. asset: OK
|
49 |
-
msgid "OK"
|
50 |
-
msgstr "OK"
|
51 |
-
|
52 |
-
#. asset: about-an-hour-ago
|
53 |
msgid "About an hour ago"
|
54 |
msgid_plural "About %u hours ago"
|
55 |
-
msgstr[0]
|
56 |
msgstr[1] "Vor ungefähr %u Stunden"
|
57 |
|
58 |
-
|
|
|
|
|
|
|
|
|
59 |
msgid "Authenticated as @%s"
|
60 |
msgstr "Authentifiziert als @%s"
|
61 |
|
62 |
-
|
63 |
msgid "Authorization Required"
|
64 |
msgstr ""
|
65 |
|
66 |
-
|
67 |
msgid "Bad Request"
|
68 |
msgstr ""
|
69 |
|
70 |
-
|
71 |
msgid "Cannot enable Twitter API cache without APC extension"
|
72 |
msgstr "Der Twitter API Cache kann ohne APC Erweiterung nicht aktiviert werden"
|
73 |
|
74 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
msgid "Expectation Failed"
|
76 |
msgstr ""
|
77 |
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
msgid "Gateway Time-out"
|
80 |
msgstr ""
|
81 |
|
82 |
-
|
|
|
|
|
|
|
|
|
83 |
msgid "HTTP Version not supported"
|
84 |
msgstr "HTTP Version wird nicht unterstützt"
|
85 |
|
86 |
-
|
87 |
msgid "Invalid OAuth token"
|
88 |
msgstr "Ungültiger OAuth token"
|
89 |
|
90 |
-
|
91 |
msgid "Invalid Twitter parameter"
|
92 |
msgstr "Ungültiger Twitter Parameter"
|
93 |
|
94 |
-
|
95 |
msgid "Just now"
|
96 |
msgstr "Gerade eben"
|
97 |
|
98 |
-
|
99 |
msgid "Key required even if secret is empty"
|
100 |
msgstr ""
|
101 |
|
102 |
-
|
103 |
msgid "Latest Tweets"
|
104 |
msgstr "Neueste Tweets"
|
105 |
|
106 |
-
|
107 |
msgid "Length Required"
|
108 |
msgstr ""
|
109 |
|
110 |
-
|
111 |
msgid "Malformed response from Twitter"
|
112 |
msgstr ""
|
113 |
|
114 |
-
|
115 |
msgid "Method Not Allowed"
|
116 |
msgstr ""
|
117 |
|
118 |
-
|
119 |
msgid "Moved Permanently"
|
120 |
msgstr ""
|
121 |
|
122 |
-
|
123 |
msgid "Multiple Choices"
|
124 |
msgstr ""
|
125 |
|
126 |
-
|
127 |
msgid "No Content"
|
128 |
msgstr "Kein Inhalt"
|
129 |
|
130 |
-
|
131 |
msgid "Non-Authoritative Information"
|
132 |
msgstr ""
|
133 |
|
134 |
-
|
135 |
msgid "Not Acceptable"
|
136 |
msgstr ""
|
137 |
|
138 |
-
|
139 |
msgid "Not Found"
|
140 |
msgstr ""
|
141 |
|
142 |
-
|
143 |
msgid "Not Implemented"
|
144 |
msgstr "Nicht implementiert"
|
145 |
|
146 |
-
|
147 |
msgid "Not Modified"
|
148 |
msgstr "Nicht modifiziert"
|
149 |
|
150 |
-
|
151 |
msgid "Number of tweets"
|
152 |
msgstr "Anzahl an Tweets"
|
153 |
|
154 |
-
|
|
|
|
|
|
|
|
|
155 |
msgid "Partial Content"
|
156 |
msgstr ""
|
157 |
|
158 |
-
|
159 |
msgid "Payment Required"
|
160 |
msgstr ""
|
161 |
|
162 |
-
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Das Plugin wurde noch nicht bei Twitter authentifiziert"
|
165 |
|
166 |
-
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr ""
|
169 |
|
170 |
-
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr ""
|
173 |
|
174 |
-
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr ""
|
177 |
|
178 |
-
|
179 |
msgid "Request Time-out"
|
180 |
msgstr ""
|
181 |
|
182 |
-
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr ""
|
185 |
|
186 |
-
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr ""
|
189 |
|
190 |
-
|
191 |
msgid "Reset Content"
|
192 |
msgstr ""
|
193 |
|
194 |
-
|
195 |
msgid "Save settings"
|
196 |
msgstr "Einstellungen speichern"
|
197 |
|
198 |
-
|
199 |
msgid "See Other"
|
200 |
msgstr ""
|
201 |
|
202 |
-
|
203 |
msgid "Show Replies"
|
204 |
msgstr "Antworten anzeigen"
|
205 |
|
206 |
-
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Retweets anzeigen"
|
209 |
|
210 |
-
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Protokoll wird gewechselt"
|
213 |
|
214 |
-
|
215 |
msgid "Temporary Redirect"
|
216 |
msgstr ""
|
217 |
|
218 |
-
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Diese Informationen findest du in"
|
221 |
|
222 |
-
|
223 |
msgid "Twitter API"
|
224 |
msgstr "Twitter API"
|
225 |
|
226 |
-
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
msgstr "Einstellungen zur Twitter API Authentifizierung"
|
229 |
|
230 |
-
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr ""
|
233 |
|
234 |
-
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Die Twitter Anwendung ist nicht vollständig konfiguriert"
|
237 |
|
238 |
-
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Die Twitter Anwendung ist nicht vollständig konfiguriert"
|
241 |
|
242 |
-
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Twitter Client nicht authentifiziert"
|
245 |
|
246 |
-
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Twitter Fehler #%d"
|
249 |
|
250 |
-
|
251 |
msgid "Twitter handle"
|
252 |
msgstr "Twitter Handle"
|
253 |
|
254 |
-
|
255 |
msgid "Twitter is not responding"
|
256 |
msgstr "Twitter antwortet nicht"
|
257 |
|
258 |
-
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr ""
|
261 |
|
262 |
-
|
263 |
msgid "Twitter server error"
|
264 |
msgstr "Twitter Server Fehler"
|
265 |
|
266 |
-
|
267 |
msgid "Unsupported Media Type"
|
268 |
msgstr ""
|
269 |
|
270 |
-
|
271 |
msgid "Use Proxy"
|
272 |
msgstr ""
|
273 |
|
274 |
-
|
275 |
msgid "Widget title"
|
276 |
msgstr "Titel"
|
277 |
|
278 |
-
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Wordpress HTTP Request Fehler"
|
281 |
|
282 |
-
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
-
msgstr[0]
|
286 |
msgstr[1] "Vor %u Minuten"
|
287 |
|
288 |
-
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Gestern um"
|
291 |
|
292 |
-
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Dir fehlen die Rechte, um die Twitter API Einstellungen zu verwalten"
|
295 |
|
296 |
-
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "deinem Twitter Dashboard"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: Twitter API plugin\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
+
"PO-Revision-Date: Fri, 21 Mar 2014 14:49:33 +0000\n"
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
+
"Language-Team: Wordpress\n"
|
9 |
"Language: German\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
+
#: about-an-hour-ago
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
msgid "About an hour ago"
|
22 |
msgid_plural "About %u hours ago"
|
23 |
+
msgstr[0] "Vor ungefähr 1 Stunde"
|
24 |
msgstr[1] "Vor ungefähr %u Stunden"
|
25 |
|
26 |
+
#: accepted
|
27 |
+
msgid "Accepted"
|
28 |
+
msgstr "Akzeptiert"
|
29 |
+
|
30 |
+
#: authenticated-as-x
|
31 |
msgid "Authenticated as @%s"
|
32 |
msgstr "Authentifiziert als @%s"
|
33 |
|
34 |
+
#: authorization-required
|
35 |
msgid "Authorization Required"
|
36 |
msgstr ""
|
37 |
|
38 |
+
#: bad-request
|
39 |
msgid "Bad Request"
|
40 |
msgstr ""
|
41 |
|
42 |
+
#: cannot-enable-twitter-api-cache-without-apc-extens
|
43 |
msgid "Cannot enable Twitter API cache without APC extension"
|
44 |
msgstr "Der Twitter API Cache kann ohne APC Erweiterung nicht aktiviert werden"
|
45 |
|
46 |
+
#: conflict
|
47 |
+
msgid "Conflict"
|
48 |
+
msgstr ""
|
49 |
+
|
50 |
+
#: continue
|
51 |
+
msgid "Continue"
|
52 |
+
msgstr "Weiter"
|
53 |
+
|
54 |
+
#: created
|
55 |
+
msgid "Created"
|
56 |
+
msgstr "Erstellt"
|
57 |
+
|
58 |
+
#: expectation-failed
|
59 |
msgid "Expectation Failed"
|
60 |
msgstr ""
|
61 |
|
62 |
+
#: forbidden
|
63 |
+
msgid "Forbidden"
|
64 |
+
msgstr ""
|
65 |
+
|
66 |
+
#: found
|
67 |
+
msgid "Found"
|
68 |
+
msgstr "Gefunden"
|
69 |
+
|
70 |
+
#: gateway-time-out
|
71 |
msgid "Gateway Time-out"
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: gone
|
75 |
+
msgid "Gone"
|
76 |
+
msgstr ""
|
77 |
+
|
78 |
+
#: http-version-not-supported
|
79 |
msgid "HTTP Version not supported"
|
80 |
msgstr "HTTP Version wird nicht unterstützt"
|
81 |
|
82 |
+
#: invalid-oauth-token
|
83 |
msgid "Invalid OAuth token"
|
84 |
msgstr "Ungültiger OAuth token"
|
85 |
|
86 |
+
#: invalid-twitter-parameter
|
87 |
msgid "Invalid Twitter parameter"
|
88 |
msgstr "Ungültiger Twitter Parameter"
|
89 |
|
90 |
+
#: just-now
|
91 |
msgid "Just now"
|
92 |
msgstr "Gerade eben"
|
93 |
|
94 |
+
#: key-required-even-if-secret-is-empty
|
95 |
msgid "Key required even if secret is empty"
|
96 |
msgstr ""
|
97 |
|
98 |
+
#: latest-tweets
|
99 |
msgid "Latest Tweets"
|
100 |
msgstr "Neueste Tweets"
|
101 |
|
102 |
+
#: length-required
|
103 |
msgid "Length Required"
|
104 |
msgstr ""
|
105 |
|
106 |
+
#: malformed-response-from-twitter
|
107 |
msgid "Malformed response from Twitter"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: method-not-allowed
|
111 |
msgid "Method Not Allowed"
|
112 |
msgstr ""
|
113 |
|
114 |
+
#: moved-permanently
|
115 |
msgid "Moved Permanently"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: multiple-choices
|
119 |
msgid "Multiple Choices"
|
120 |
msgstr ""
|
121 |
|
122 |
+
#: no-content
|
123 |
msgid "No Content"
|
124 |
msgstr "Kein Inhalt"
|
125 |
|
126 |
+
#: non-authoritative-information
|
127 |
msgid "Non-Authoritative Information"
|
128 |
msgstr ""
|
129 |
|
130 |
+
#: not-acceptable
|
131 |
msgid "Not Acceptable"
|
132 |
msgstr ""
|
133 |
|
134 |
+
#: not-found
|
135 |
msgid "Not Found"
|
136 |
msgstr ""
|
137 |
|
138 |
+
#: not-implemented
|
139 |
msgid "Not Implemented"
|
140 |
msgstr "Nicht implementiert"
|
141 |
|
142 |
+
#: not-modified
|
143 |
msgid "Not Modified"
|
144 |
msgstr "Nicht modifiziert"
|
145 |
|
146 |
+
#: number-of-tweets
|
147 |
msgid "Number of tweets"
|
148 |
msgstr "Anzahl an Tweets"
|
149 |
|
150 |
+
#: ok
|
151 |
+
msgid "OK"
|
152 |
+
msgstr "OK"
|
153 |
+
|
154 |
+
#: partial-content
|
155 |
msgid "Partial Content"
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: payment-required
|
159 |
msgid "Payment Required"
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: plugin-not-yet-authenticated-with-twitter
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Das Plugin wurde noch nicht bei Twitter authentifiziert"
|
165 |
|
166 |
+
#: precondition-failed
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: proxy-authentication-required
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr ""
|
173 |
|
174 |
+
#: request-entity-too-large
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: request-time-out
|
179 |
msgid "Request Time-out"
|
180 |
msgstr ""
|
181 |
|
182 |
+
#: request-uri-too-large
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr ""
|
185 |
|
186 |
+
#: requested-range-not-satisfiable
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: reset-content
|
191 |
msgid "Reset Content"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: save-settings
|
195 |
msgid "Save settings"
|
196 |
msgstr "Einstellungen speichern"
|
197 |
|
198 |
+
#: see-other
|
199 |
msgid "See Other"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: show-replies
|
203 |
msgid "Show Replies"
|
204 |
msgstr "Antworten anzeigen"
|
205 |
|
206 |
+
#: show-retweets
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Retweets anzeigen"
|
209 |
|
210 |
+
#: switching-protocols
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Protokoll wird gewechselt"
|
213 |
|
214 |
+
#: temporary-redirect
|
215 |
msgid "Temporary Redirect"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: these-details-are-available-in
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Diese Informationen findest du in"
|
221 |
|
222 |
+
#: twitter-api
|
223 |
msgid "Twitter API"
|
224 |
msgstr "Twitter API"
|
225 |
|
226 |
+
#: twitter-api-authentication-settings
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
msgstr "Einstellungen zur Twitter API Authentifizierung"
|
229 |
|
230 |
+
#: twitter-api-rate-limit-exceeded
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: twitter-application-is-not-fully-configured
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Die Twitter Anwendung ist nicht vollständig konfiguriert"
|
237 |
|
238 |
+
#: twitter-application-not-fully-configured
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Die Twitter Anwendung ist nicht vollständig konfiguriert"
|
241 |
|
242 |
+
#: twitter-client-not-authenticated
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Twitter Client nicht authentifiziert"
|
245 |
|
246 |
+
#: twitter-error-x
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Twitter Fehler #%d"
|
249 |
|
250 |
+
#: twitter-handle
|
251 |
msgid "Twitter handle"
|
252 |
msgstr "Twitter Handle"
|
253 |
|
254 |
+
#: twitter-is-not-responding
|
255 |
msgid "Twitter is not responding"
|
256 |
msgstr "Twitter antwortet nicht"
|
257 |
|
258 |
+
#: twitter-is-too-busy-to-respond
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr ""
|
261 |
|
262 |
+
#: twitter-server-error
|
263 |
msgid "Twitter server error"
|
264 |
msgstr "Twitter Server Fehler"
|
265 |
|
266 |
+
#: unsupported-media-type
|
267 |
msgid "Unsupported Media Type"
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: use-proxy
|
271 |
msgid "Use Proxy"
|
272 |
msgstr ""
|
273 |
|
274 |
+
#: widget-title
|
275 |
msgid "Widget title"
|
276 |
msgstr "Titel"
|
277 |
|
278 |
+
#: wordpress-http-request-failure
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Wordpress HTTP Request Fehler"
|
281 |
|
282 |
+
#: x-minute-ago
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
+
msgstr[0] "Vor 1 Minute"
|
286 |
msgstr[1] "Vor %u Minuten"
|
287 |
|
288 |
+
#: yesterday-at
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Gestern um"
|
291 |
|
292 |
+
#: you-dont-have-permission-to-manage-twitter-api-set
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Dir fehlen die Rechte, um die Twitter API Einstellungen zu verwalten"
|
295 |
|
296 |
+
#: your-twitter-dashboard
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "deinem Twitter Dashboard"
|
api/lang/twitter-api-nl_NL.mo
ADDED
Binary file
|
{lang → api/lang}/twitter-api-nl_NL.po
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: Twitter API
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
-
"Language-Team:
|
9 |
"Language: Dutch\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
@@ -17,282 +17,282 @@ msgstr ""
|
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
-
|
21 |
-
msgid "Accepted"
|
22 |
-
msgstr "Geaccepteerd"
|
23 |
-
|
24 |
-
#. asset: Conflict
|
25 |
-
msgid "Conflict"
|
26 |
-
msgstr "Conflict"
|
27 |
-
|
28 |
-
#. asset: Continue
|
29 |
-
msgid "Continue"
|
30 |
-
msgstr "Ga verder"
|
31 |
-
|
32 |
-
#. asset: Created
|
33 |
-
msgid "Created"
|
34 |
-
msgstr "Gemaakt"
|
35 |
-
|
36 |
-
#. asset: Forbidden
|
37 |
-
msgid "Forbidden"
|
38 |
-
msgstr "Verboden"
|
39 |
-
|
40 |
-
#. asset: Found
|
41 |
-
msgid "Found"
|
42 |
-
msgstr "Gevonden"
|
43 |
-
|
44 |
-
#. asset: Gone
|
45 |
-
msgid "Gone"
|
46 |
-
msgstr "Weg"
|
47 |
-
|
48 |
-
#. asset: OK
|
49 |
-
msgid "OK"
|
50 |
-
msgstr "Ok"
|
51 |
-
|
52 |
-
#. asset: about-an-hour-ago
|
53 |
msgid "About an hour ago"
|
54 |
msgid_plural "About %u hours ago"
|
55 |
-
msgstr[0]
|
56 |
msgstr[1] "Ongeveer %u uur geleden"
|
57 |
|
58 |
-
|
|
|
|
|
|
|
|
|
59 |
msgid "Authenticated as @%s"
|
60 |
msgstr "Authorizeren als @%s"
|
61 |
|
62 |
-
|
63 |
msgid "Authorization Required"
|
64 |
msgstr "Authorizatie vereist"
|
65 |
|
66 |
-
|
67 |
msgid "Bad Request"
|
68 |
msgstr "Foute request"
|
69 |
|
70 |
-
|
71 |
msgid "Cannot enable Twitter API cache without APC extension"
|
72 |
msgstr "Kan de Twitter API Cache niet activeren zonder de APC extensie"
|
73 |
|
74 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
msgid "Expectation Failed"
|
76 |
-
msgstr "
|
77 |
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
msgid "Gateway Time-out"
|
80 |
msgstr "Gateway time-out"
|
81 |
|
82 |
-
|
|
|
|
|
|
|
|
|
83 |
msgid "HTTP Version not supported"
|
84 |
msgstr "HTTP Versie niet ondersteund"
|
85 |
|
86 |
-
|
87 |
msgid "Invalid OAuth token"
|
88 |
msgstr "Ongeldige OAuth token"
|
89 |
|
90 |
-
|
91 |
msgid "Invalid Twitter parameter"
|
92 |
-
msgstr "Ongeldige Twitter
|
93 |
|
94 |
-
|
95 |
msgid "Just now"
|
96 |
msgstr "Zojuist"
|
97 |
|
98 |
-
|
99 |
msgid "Key required even if secret is empty"
|
100 |
-
msgstr "Key vereist
|
101 |
|
102 |
-
|
103 |
msgid "Latest Tweets"
|
104 |
msgstr "Laatste tweets"
|
105 |
|
106 |
-
|
107 |
msgid "Length Required"
|
108 |
msgstr "Lengte vereist"
|
109 |
|
110 |
-
|
111 |
msgid "Malformed response from Twitter"
|
112 |
-
msgstr "Onjuiste response
|
113 |
|
114 |
-
|
115 |
msgid "Method Not Allowed"
|
116 |
msgstr "Methode niet toegestaan"
|
117 |
|
118 |
-
|
119 |
msgid "Moved Permanently"
|
120 |
msgstr "Permanent verhuisd"
|
121 |
|
122 |
-
|
123 |
msgid "Multiple Choices"
|
124 |
-
msgstr "
|
125 |
|
126 |
-
|
127 |
msgid "No Content"
|
128 |
msgstr "Geen inhoud"
|
129 |
|
130 |
-
|
131 |
msgid "Non-Authoritative Information"
|
132 |
msgstr "Niet-geauthoriseerde informatie"
|
133 |
|
134 |
-
|
135 |
msgid "Not Acceptable"
|
136 |
msgstr "Niet acceptabel"
|
137 |
|
138 |
-
|
139 |
msgid "Not Found"
|
140 |
msgstr "Niet gevonden"
|
141 |
|
142 |
-
|
143 |
msgid "Not Implemented"
|
144 |
-
msgstr "Niet
|
145 |
|
146 |
-
|
147 |
msgid "Not Modified"
|
148 |
msgstr "Niet aangepast"
|
149 |
|
150 |
-
|
151 |
msgid "Number of tweets"
|
152 |
msgstr "Aantal tweets"
|
153 |
|
154 |
-
|
|
|
|
|
|
|
|
|
155 |
msgid "Partial Content"
|
156 |
msgstr "Gedeeltelijke content"
|
157 |
|
158 |
-
|
159 |
msgid "Payment Required"
|
160 |
msgstr "Betaling vereist"
|
161 |
|
162 |
-
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Plugin nog niet geauthoriseerd bij Twitter"
|
165 |
|
166 |
-
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr "Precondition fout"
|
169 |
|
170 |
-
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr "Proxy authenticatie vereist"
|
173 |
|
174 |
-
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr "Request entiteit te groot"
|
177 |
|
178 |
-
|
179 |
msgid "Request Time-out"
|
180 |
msgstr "Request time-out"
|
181 |
|
182 |
-
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr "Request-URI te groot"
|
185 |
|
186 |
-
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr "Gevraagd bereik niet voldoende"
|
189 |
|
190 |
-
|
191 |
msgid "Reset Content"
|
192 |
msgstr "Content resetten"
|
193 |
|
194 |
-
|
195 |
msgid "Save settings"
|
196 |
msgstr "Instellingen opslaan"
|
197 |
|
198 |
-
|
199 |
msgid "See Other"
|
200 |
msgstr "Bekijk andere"
|
201 |
|
202 |
-
|
203 |
msgid "Show Replies"
|
204 |
-
msgstr "
|
205 |
|
206 |
-
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Retweets laten zien"
|
209 |
|
210 |
-
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Protocol wisselen"
|
213 |
|
214 |
-
|
215 |
msgid "Temporary Redirect"
|
216 |
-
msgstr "
|
217 |
|
218 |
-
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Deze details zijn beschikbaar in"
|
221 |
|
222 |
-
|
223 |
msgid "Twitter API"
|
224 |
msgstr "Twitter API"
|
225 |
|
226 |
-
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
-
msgstr "Twitter API authenticatie
|
229 |
|
230 |
-
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr "Twitter API limiet bereikt"
|
233 |
|
234 |
-
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Twitter applicatie is niet volledig geconfigureerd"
|
237 |
|
238 |
-
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Twitter apllicatie is niet volledig geconfigureerd"
|
241 |
|
242 |
-
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Twitter Client niet geauthoriseerd"
|
245 |
|
246 |
-
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Twitter fout #%d"
|
249 |
|
250 |
-
|
251 |
msgid "Twitter handle"
|
252 |
-
msgstr "
|
253 |
|
254 |
-
|
255 |
msgid "Twitter is not responding"
|
256 |
-
msgstr "Twitter
|
257 |
|
258 |
-
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr "Twitter is te druk om te antwoorden"
|
261 |
|
262 |
-
|
263 |
msgid "Twitter server error"
|
264 |
-
msgstr "Twitter
|
265 |
|
266 |
-
|
267 |
msgid "Unsupported Media Type"
|
268 |
-
msgstr "
|
269 |
|
270 |
-
|
271 |
msgid "Use Proxy"
|
272 |
msgstr "Gebruik proxy"
|
273 |
|
274 |
-
|
275 |
msgid "Widget title"
|
276 |
msgstr "Titel"
|
277 |
|
278 |
-
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Wordpress HTTP Request fout"
|
281 |
|
282 |
-
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
-
msgstr[0]
|
286 |
-
msgstr[1] "%u minuten"
|
287 |
|
288 |
-
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Gisteren om"
|
291 |
|
292 |
-
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Je hebt geen rechten om de Twitter API instellingen aan te passen"
|
295 |
|
296 |
-
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "Twitter Dashboard"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: Twitter API plugin\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
+
"PO-Revision-Date: Fri, 21 Mar 2014 14:49:34 +0000\n"
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
+
"Language-Team: Wordpress\n"
|
9 |
"Language: Dutch\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
+
#: about-an-hour-ago
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
msgid "About an hour ago"
|
22 |
msgid_plural "About %u hours ago"
|
23 |
+
msgstr[0] "Ongeveer 1 uur geleden"
|
24 |
msgstr[1] "Ongeveer %u uur geleden"
|
25 |
|
26 |
+
#: accepted
|
27 |
+
msgid "Accepted"
|
28 |
+
msgstr "Geaccepteerd"
|
29 |
+
|
30 |
+
#: authenticated-as-x
|
31 |
msgid "Authenticated as @%s"
|
32 |
msgstr "Authorizeren als @%s"
|
33 |
|
34 |
+
#: authorization-required
|
35 |
msgid "Authorization Required"
|
36 |
msgstr "Authorizatie vereist"
|
37 |
|
38 |
+
#: bad-request
|
39 |
msgid "Bad Request"
|
40 |
msgstr "Foute request"
|
41 |
|
42 |
+
#: cannot-enable-twitter-api-cache-without-apc-extens
|
43 |
msgid "Cannot enable Twitter API cache without APC extension"
|
44 |
msgstr "Kan de Twitter API Cache niet activeren zonder de APC extensie"
|
45 |
|
46 |
+
#: conflict
|
47 |
+
msgid "Conflict"
|
48 |
+
msgstr "Conflict"
|
49 |
+
|
50 |
+
#: continue
|
51 |
+
msgid "Continue"
|
52 |
+
msgstr "Ga verder"
|
53 |
+
|
54 |
+
#: created
|
55 |
+
msgid "Created"
|
56 |
+
msgstr "Gemaakt"
|
57 |
+
|
58 |
+
#: expectation-failed
|
59 |
msgid "Expectation Failed"
|
60 |
+
msgstr "Verwachtingsfout"
|
61 |
|
62 |
+
#: forbidden
|
63 |
+
msgid "Forbidden"
|
64 |
+
msgstr "Verboden"
|
65 |
+
|
66 |
+
#: found
|
67 |
+
msgid "Found"
|
68 |
+
msgstr "Gevonden"
|
69 |
+
|
70 |
+
#: gateway-time-out
|
71 |
msgid "Gateway Time-out"
|
72 |
msgstr "Gateway time-out"
|
73 |
|
74 |
+
#: gone
|
75 |
+
msgid "Gone"
|
76 |
+
msgstr "Weg"
|
77 |
+
|
78 |
+
#: http-version-not-supported
|
79 |
msgid "HTTP Version not supported"
|
80 |
msgstr "HTTP Versie niet ondersteund"
|
81 |
|
82 |
+
#: invalid-oauth-token
|
83 |
msgid "Invalid OAuth token"
|
84 |
msgstr "Ongeldige OAuth token"
|
85 |
|
86 |
+
#: invalid-twitter-parameter
|
87 |
msgid "Invalid Twitter parameter"
|
88 |
+
msgstr "Ongeldige Twitter parameter"
|
89 |
|
90 |
+
#: just-now
|
91 |
msgid "Just now"
|
92 |
msgstr "Zojuist"
|
93 |
|
94 |
+
#: key-required-even-if-secret-is-empty
|
95 |
msgid "Key required even if secret is empty"
|
96 |
+
msgstr "Key (sleutel) vereist ookal is secret (geheim) leeg"
|
97 |
|
98 |
+
#: latest-tweets
|
99 |
msgid "Latest Tweets"
|
100 |
msgstr "Laatste tweets"
|
101 |
|
102 |
+
#: length-required
|
103 |
msgid "Length Required"
|
104 |
msgstr "Lengte vereist"
|
105 |
|
106 |
+
#: malformed-response-from-twitter
|
107 |
msgid "Malformed response from Twitter"
|
108 |
+
msgstr "Onjuiste response van Twitter"
|
109 |
|
110 |
+
#: method-not-allowed
|
111 |
msgid "Method Not Allowed"
|
112 |
msgstr "Methode niet toegestaan"
|
113 |
|
114 |
+
#: moved-permanently
|
115 |
msgid "Moved Permanently"
|
116 |
msgstr "Permanent verhuisd"
|
117 |
|
118 |
+
#: multiple-choices
|
119 |
msgid "Multiple Choices"
|
120 |
+
msgstr "Meerdere keuzes"
|
121 |
|
122 |
+
#: no-content
|
123 |
msgid "No Content"
|
124 |
msgstr "Geen inhoud"
|
125 |
|
126 |
+
#: non-authoritative-information
|
127 |
msgid "Non-Authoritative Information"
|
128 |
msgstr "Niet-geauthoriseerde informatie"
|
129 |
|
130 |
+
#: not-acceptable
|
131 |
msgid "Not Acceptable"
|
132 |
msgstr "Niet acceptabel"
|
133 |
|
134 |
+
#: not-found
|
135 |
msgid "Not Found"
|
136 |
msgstr "Niet gevonden"
|
137 |
|
138 |
+
#: not-implemented
|
139 |
msgid "Not Implemented"
|
140 |
+
msgstr "Niet geïmplementeerd"
|
141 |
|
142 |
+
#: not-modified
|
143 |
msgid "Not Modified"
|
144 |
msgstr "Niet aangepast"
|
145 |
|
146 |
+
#: number-of-tweets
|
147 |
msgid "Number of tweets"
|
148 |
msgstr "Aantal tweets"
|
149 |
|
150 |
+
#: ok
|
151 |
+
msgid "OK"
|
152 |
+
msgstr "Oké"
|
153 |
+
|
154 |
+
#: partial-content
|
155 |
msgid "Partial Content"
|
156 |
msgstr "Gedeeltelijke content"
|
157 |
|
158 |
+
#: payment-required
|
159 |
msgid "Payment Required"
|
160 |
msgstr "Betaling vereist"
|
161 |
|
162 |
+
#: plugin-not-yet-authenticated-with-twitter
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Plugin nog niet geauthoriseerd bij Twitter"
|
165 |
|
166 |
+
#: precondition-failed
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr "Precondition fout"
|
169 |
|
170 |
+
#: proxy-authentication-required
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr "Proxy authenticatie vereist"
|
173 |
|
174 |
+
#: request-entity-too-large
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr "Request entiteit te groot"
|
177 |
|
178 |
+
#: request-time-out
|
179 |
msgid "Request Time-out"
|
180 |
msgstr "Request time-out"
|
181 |
|
182 |
+
#: request-uri-too-large
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr "Request-URI te groot"
|
185 |
|
186 |
+
#: requested-range-not-satisfiable
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr "Gevraagd bereik niet voldoende"
|
189 |
|
190 |
+
#: reset-content
|
191 |
msgid "Reset Content"
|
192 |
msgstr "Content resetten"
|
193 |
|
194 |
+
#: save-settings
|
195 |
msgid "Save settings"
|
196 |
msgstr "Instellingen opslaan"
|
197 |
|
198 |
+
#: see-other
|
199 |
msgid "See Other"
|
200 |
msgstr "Bekijk andere"
|
201 |
|
202 |
+
#: show-replies
|
203 |
msgid "Show Replies"
|
204 |
+
msgstr "Antwoorden laten zien"
|
205 |
|
206 |
+
#: show-retweets
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Retweets laten zien"
|
209 |
|
210 |
+
#: switching-protocols
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Protocol wisselen"
|
213 |
|
214 |
+
#: temporary-redirect
|
215 |
msgid "Temporary Redirect"
|
216 |
+
msgstr "Tijdelijke omleiding"
|
217 |
|
218 |
+
#: these-details-are-available-in
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Deze details zijn beschikbaar in"
|
221 |
|
222 |
+
#: twitter-api
|
223 |
msgid "Twitter API"
|
224 |
msgstr "Twitter API"
|
225 |
|
226 |
+
#: twitter-api-authentication-settings
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
+
msgstr "Twitter API authenticatie-instellingen"
|
229 |
|
230 |
+
#: twitter-api-rate-limit-exceeded
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr "Twitter API limiet bereikt"
|
233 |
|
234 |
+
#: twitter-application-is-not-fully-configured
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Twitter applicatie is niet volledig geconfigureerd"
|
237 |
|
238 |
+
#: twitter-application-not-fully-configured
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Twitter apllicatie is niet volledig geconfigureerd"
|
241 |
|
242 |
+
#: twitter-client-not-authenticated
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Twitter Client niet geauthoriseerd"
|
245 |
|
246 |
+
#: twitter-error-x
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Twitter fout #%d"
|
249 |
|
250 |
+
#: twitter-handle
|
251 |
msgid "Twitter handle"
|
252 |
+
msgstr "Twitternaam"
|
253 |
|
254 |
+
#: twitter-is-not-responding
|
255 |
msgid "Twitter is not responding"
|
256 |
+
msgstr "Twitter reageert niet"
|
257 |
|
258 |
+
#: twitter-is-too-busy-to-respond
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr "Twitter is te druk om te antwoorden"
|
261 |
|
262 |
+
#: twitter-server-error
|
263 |
msgid "Twitter server error"
|
264 |
+
msgstr "Twitter serverfout"
|
265 |
|
266 |
+
#: unsupported-media-type
|
267 |
msgid "Unsupported Media Type"
|
268 |
+
msgstr "Ongeldig mediatype"
|
269 |
|
270 |
+
#: use-proxy
|
271 |
msgid "Use Proxy"
|
272 |
msgstr "Gebruik proxy"
|
273 |
|
274 |
+
#: widget-title
|
275 |
msgid "Widget title"
|
276 |
msgstr "Titel"
|
277 |
|
278 |
+
#: wordpress-http-request-failure
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Wordpress HTTP Request fout"
|
281 |
|
282 |
+
#: x-minute-ago
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
+
msgstr[0] "1 minuut geleden"
|
286 |
+
msgstr[1] "%u minuten geleden"
|
287 |
|
288 |
+
#: yesterday-at
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Gisteren om"
|
291 |
|
292 |
+
#: you-dont-have-permission-to-manage-twitter-api-set
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Je hebt geen rechten om de Twitter API instellingen aan te passen"
|
295 |
|
296 |
+
#: your-twitter-dashboard
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "Twitter Dashboard"
|
api/lang/twitter-api-pt_BR.mo
ADDED
Binary file
|
{lang → api/lang}/twitter-api-pt_BR.po
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: Twitter API
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
-
"Language-Team:
|
9 |
"Language: Portuguese (Brazil)\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
@@ -17,282 +17,282 @@ msgstr ""
|
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
-
|
21 |
-
msgid "Accepted"
|
22 |
-
msgstr "Aceito"
|
23 |
-
|
24 |
-
#. asset: Conflict
|
25 |
-
msgid "Conflict"
|
26 |
-
msgstr "Conflito"
|
27 |
-
|
28 |
-
#. asset: Continue
|
29 |
-
msgid "Continue"
|
30 |
-
msgstr "Continuar"
|
31 |
-
|
32 |
-
#. asset: Created
|
33 |
-
msgid "Created"
|
34 |
-
msgstr "Criado"
|
35 |
-
|
36 |
-
#. asset: Forbidden
|
37 |
-
msgid "Forbidden"
|
38 |
-
msgstr "Proibido"
|
39 |
-
|
40 |
-
#. asset: Found
|
41 |
-
msgid "Found"
|
42 |
-
msgstr "Encontrado(a)"
|
43 |
-
|
44 |
-
#. asset: Gone
|
45 |
-
msgid "Gone"
|
46 |
-
msgstr "Já era"
|
47 |
-
|
48 |
-
#. asset: OK
|
49 |
-
msgid "OK"
|
50 |
-
msgstr "OK"
|
51 |
-
|
52 |
-
#. asset: about-an-hour-ago
|
53 |
msgid "About an hour ago"
|
54 |
msgid_plural "About %u hours ago"
|
55 |
-
msgstr[0]
|
56 |
msgstr[1] "Cerca de %u horas atrás"
|
57 |
|
58 |
-
|
|
|
|
|
|
|
|
|
59 |
msgid "Authenticated as @%s"
|
60 |
msgstr "Autenticado como @%s"
|
61 |
|
62 |
-
|
63 |
msgid "Authorization Required"
|
64 |
msgstr "Autorização exigida"
|
65 |
|
66 |
-
|
67 |
msgid "Bad Request"
|
68 |
msgstr "Bad Request"
|
69 |
|
70 |
-
|
71 |
msgid "Cannot enable Twitter API cache without APC extension"
|
72 |
msgstr "Não é possível habilitar o cache da API do Twiiter sem APC..."
|
73 |
|
74 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
msgid "Expectation Failed"
|
76 |
msgstr "Falha na expectativa"
|
77 |
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
msgid "Gateway Time-out"
|
80 |
msgstr "Timeout no Gateway"
|
81 |
|
82 |
-
|
|
|
|
|
|
|
|
|
83 |
msgid "HTTP Version not supported"
|
84 |
msgstr "Versão HTTP não suportada"
|
85 |
|
86 |
-
|
87 |
msgid "Invalid OAuth token"
|
88 |
msgstr "Token OAuth inválido"
|
89 |
|
90 |
-
|
91 |
msgid "Invalid Twitter parameter"
|
92 |
msgstr "Parâmetro do Twitter inválido"
|
93 |
|
94 |
-
|
95 |
msgid "Just now"
|
96 |
msgstr "Agora mesmo"
|
97 |
|
98 |
-
|
99 |
msgid "Key required even if secret is empty"
|
100 |
msgstr "Chave exigida mesmo se o secret estiver vazio"
|
101 |
|
102 |
-
|
103 |
msgid "Latest Tweets"
|
104 |
msgstr "Últimos Tweets"
|
105 |
|
106 |
-
|
107 |
msgid "Length Required"
|
108 |
msgstr "Comprimento exigido"
|
109 |
|
110 |
-
|
111 |
msgid "Malformed response from Twitter"
|
112 |
msgstr "Resposta \"malformed\" do Twitter"
|
113 |
|
114 |
-
|
115 |
msgid "Method Not Allowed"
|
116 |
msgstr "Método Não Permitido"
|
117 |
|
118 |
-
|
119 |
msgid "Moved Permanently"
|
120 |
msgstr "Movido permanentemente"
|
121 |
|
122 |
-
|
123 |
msgid "Multiple Choices"
|
124 |
msgstr "Múltipla escolha"
|
125 |
|
126 |
-
|
127 |
msgid "No Content"
|
128 |
msgstr "Sem conteúdo"
|
129 |
|
130 |
-
|
131 |
msgid "Non-Authoritative Information"
|
132 |
msgstr "Informação não-autoritativa"
|
133 |
|
134 |
-
|
135 |
msgid "Not Acceptable"
|
136 |
msgstr "Não Aceitável"
|
137 |
|
138 |
-
|
139 |
msgid "Not Found"
|
140 |
msgstr "Não Encontrado"
|
141 |
|
142 |
-
|
143 |
msgid "Not Implemented"
|
144 |
msgstr "Não Implementado"
|
145 |
|
146 |
-
|
147 |
msgid "Not Modified"
|
148 |
msgstr "Não modificado"
|
149 |
|
150 |
-
|
151 |
msgid "Number of tweets"
|
152 |
msgstr "Número de tweets"
|
153 |
|
154 |
-
|
|
|
|
|
|
|
|
|
155 |
msgid "Partial Content"
|
156 |
msgstr "Conteúdo parcial"
|
157 |
|
158 |
-
|
159 |
msgid "Payment Required"
|
160 |
msgstr "Pagamento Exigido"
|
161 |
|
162 |
-
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Plugin ainda não autenticado com o Twitter"
|
165 |
|
166 |
-
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr "Falha na pré-condição"
|
169 |
|
170 |
-
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr "Autenticação Proxy Exigida"
|
173 |
|
174 |
-
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr "Entidade do request muito grande"
|
177 |
|
178 |
-
|
179 |
msgid "Request Time-out"
|
180 |
msgstr "Request Time-out"
|
181 |
|
182 |
-
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr "URI de Request muito grande"
|
185 |
|
186 |
-
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr "Range solicitado não satisfatório"
|
189 |
|
190 |
-
|
191 |
msgid "Reset Content"
|
192 |
msgstr "Resetar conteúdo"
|
193 |
|
194 |
-
|
195 |
msgid "Save settings"
|
196 |
msgstr "Salvar"
|
197 |
|
198 |
-
|
199 |
msgid "See Other"
|
200 |
msgstr "Ver outros"
|
201 |
|
202 |
-
|
203 |
msgid "Show Replies"
|
204 |
msgstr "Mostrar Replies"
|
205 |
|
206 |
-
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Mostrar RTs"
|
209 |
|
210 |
-
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Trocando protocolos"
|
213 |
|
214 |
-
|
215 |
msgid "Temporary Redirect"
|
216 |
msgstr "Redirecionamento Temporário"
|
217 |
|
218 |
-
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Detalhes disponíveis em"
|
221 |
|
222 |
-
|
223 |
msgid "Twitter API"
|
224 |
msgstr "API do Twitter"
|
225 |
|
226 |
-
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
msgstr "Configurações de Autenticação da API do Twitter"
|
229 |
|
230 |
-
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr "Taxa de limite da API do Twitter excedida"
|
233 |
|
234 |
-
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Aplicação do Twitter não está totalmente configurada"
|
237 |
|
238 |
-
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Aplicação do Twitter não totalmente configurada"
|
241 |
|
242 |
-
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Cliente do Twitter não autenticado"
|
245 |
|
246 |
-
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Erro no Twitter #%d"
|
249 |
|
250 |
-
|
251 |
msgid "Twitter handle"
|
252 |
msgstr "Login no Twitter"
|
253 |
|
254 |
-
|
255 |
msgid "Twitter is not responding"
|
256 |
msgstr "Twitter não está respondendo"
|
257 |
|
258 |
-
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr "Twitter muito ocupado para responder"
|
261 |
|
262 |
-
|
263 |
msgid "Twitter server error"
|
264 |
msgstr "Erro no Servidor do Twitter"
|
265 |
|
266 |
-
|
267 |
msgid "Unsupported Media Type"
|
268 |
msgstr "Tipo de mídia não suportado"
|
269 |
|
270 |
-
|
271 |
msgid "Use Proxy"
|
272 |
msgstr "Usar Proxy"
|
273 |
|
274 |
-
|
275 |
msgid "Widget title"
|
276 |
msgstr "Título do Widget"
|
277 |
|
278 |
-
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Falha no HTTP request do Wordpress"
|
281 |
|
282 |
-
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
-
msgstr[0]
|
286 |
msgstr[1] "%u minutos atrás"
|
287 |
|
288 |
-
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Ontem às"
|
291 |
|
292 |
-
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Você não tem permissão para gerenciar a API do Twitter"
|
295 |
|
296 |
-
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "seu painel do Twitter"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: Twitter API plugin\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
+
"PO-Revision-Date: Fri, 21 Mar 2014 14:49:33 +0000\n"
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
+
"Language-Team: Wordpress\n"
|
9 |
"Language: Portuguese (Brazil)\n"
|
10 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
11 |
"MIME-Version: 1.0\n"
|
17 |
"X-Loco-Tagged: \n"
|
18 |
"X-Poedit-SourceCharset: UTF-8"
|
19 |
|
20 |
+
#: about-an-hour-ago
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
msgid "About an hour ago"
|
22 |
msgid_plural "About %u hours ago"
|
23 |
+
msgstr[0] "Cerca de uma hora atrás"
|
24 |
msgstr[1] "Cerca de %u horas atrás"
|
25 |
|
26 |
+
#: accepted
|
27 |
+
msgid "Accepted"
|
28 |
+
msgstr "Aceito"
|
29 |
+
|
30 |
+
#: authenticated-as-x
|
31 |
msgid "Authenticated as @%s"
|
32 |
msgstr "Autenticado como @%s"
|
33 |
|
34 |
+
#: authorization-required
|
35 |
msgid "Authorization Required"
|
36 |
msgstr "Autorização exigida"
|
37 |
|
38 |
+
#: bad-request
|
39 |
msgid "Bad Request"
|
40 |
msgstr "Bad Request"
|
41 |
|
42 |
+
#: cannot-enable-twitter-api-cache-without-apc-extens
|
43 |
msgid "Cannot enable Twitter API cache without APC extension"
|
44 |
msgstr "Não é possível habilitar o cache da API do Twiiter sem APC..."
|
45 |
|
46 |
+
#: conflict
|
47 |
+
msgid "Conflict"
|
48 |
+
msgstr "Conflito"
|
49 |
+
|
50 |
+
#: continue
|
51 |
+
msgid "Continue"
|
52 |
+
msgstr "Continuar"
|
53 |
+
|
54 |
+
#: created
|
55 |
+
msgid "Created"
|
56 |
+
msgstr "Criado"
|
57 |
+
|
58 |
+
#: expectation-failed
|
59 |
msgid "Expectation Failed"
|
60 |
msgstr "Falha na expectativa"
|
61 |
|
62 |
+
#: forbidden
|
63 |
+
msgid "Forbidden"
|
64 |
+
msgstr "Proibido"
|
65 |
+
|
66 |
+
#: found
|
67 |
+
msgid "Found"
|
68 |
+
msgstr "Encontrado(a)"
|
69 |
+
|
70 |
+
#: gateway-time-out
|
71 |
msgid "Gateway Time-out"
|
72 |
msgstr "Timeout no Gateway"
|
73 |
|
74 |
+
#: gone
|
75 |
+
msgid "Gone"
|
76 |
+
msgstr "Já era"
|
77 |
+
|
78 |
+
#: http-version-not-supported
|
79 |
msgid "HTTP Version not supported"
|
80 |
msgstr "Versão HTTP não suportada"
|
81 |
|
82 |
+
#: invalid-oauth-token
|
83 |
msgid "Invalid OAuth token"
|
84 |
msgstr "Token OAuth inválido"
|
85 |
|
86 |
+
#: invalid-twitter-parameter
|
87 |
msgid "Invalid Twitter parameter"
|
88 |
msgstr "Parâmetro do Twitter inválido"
|
89 |
|
90 |
+
#: just-now
|
91 |
msgid "Just now"
|
92 |
msgstr "Agora mesmo"
|
93 |
|
94 |
+
#: key-required-even-if-secret-is-empty
|
95 |
msgid "Key required even if secret is empty"
|
96 |
msgstr "Chave exigida mesmo se o secret estiver vazio"
|
97 |
|
98 |
+
#: latest-tweets
|
99 |
msgid "Latest Tweets"
|
100 |
msgstr "Últimos Tweets"
|
101 |
|
102 |
+
#: length-required
|
103 |
msgid "Length Required"
|
104 |
msgstr "Comprimento exigido"
|
105 |
|
106 |
+
#: malformed-response-from-twitter
|
107 |
msgid "Malformed response from Twitter"
|
108 |
msgstr "Resposta \"malformed\" do Twitter"
|
109 |
|
110 |
+
#: method-not-allowed
|
111 |
msgid "Method Not Allowed"
|
112 |
msgstr "Método Não Permitido"
|
113 |
|
114 |
+
#: moved-permanently
|
115 |
msgid "Moved Permanently"
|
116 |
msgstr "Movido permanentemente"
|
117 |
|
118 |
+
#: multiple-choices
|
119 |
msgid "Multiple Choices"
|
120 |
msgstr "Múltipla escolha"
|
121 |
|
122 |
+
#: no-content
|
123 |
msgid "No Content"
|
124 |
msgstr "Sem conteúdo"
|
125 |
|
126 |
+
#: non-authoritative-information
|
127 |
msgid "Non-Authoritative Information"
|
128 |
msgstr "Informação não-autoritativa"
|
129 |
|
130 |
+
#: not-acceptable
|
131 |
msgid "Not Acceptable"
|
132 |
msgstr "Não Aceitável"
|
133 |
|
134 |
+
#: not-found
|
135 |
msgid "Not Found"
|
136 |
msgstr "Não Encontrado"
|
137 |
|
138 |
+
#: not-implemented
|
139 |
msgid "Not Implemented"
|
140 |
msgstr "Não Implementado"
|
141 |
|
142 |
+
#: not-modified
|
143 |
msgid "Not Modified"
|
144 |
msgstr "Não modificado"
|
145 |
|
146 |
+
#: number-of-tweets
|
147 |
msgid "Number of tweets"
|
148 |
msgstr "Número de tweets"
|
149 |
|
150 |
+
#: ok
|
151 |
+
msgid "OK"
|
152 |
+
msgstr "OK"
|
153 |
+
|
154 |
+
#: partial-content
|
155 |
msgid "Partial Content"
|
156 |
msgstr "Conteúdo parcial"
|
157 |
|
158 |
+
#: payment-required
|
159 |
msgid "Payment Required"
|
160 |
msgstr "Pagamento Exigido"
|
161 |
|
162 |
+
#: plugin-not-yet-authenticated-with-twitter
|
163 |
msgid "Plugin not yet authenticated with Twitter"
|
164 |
msgstr "Plugin ainda não autenticado com o Twitter"
|
165 |
|
166 |
+
#: precondition-failed
|
167 |
msgid "Precondition Failed"
|
168 |
msgstr "Falha na pré-condição"
|
169 |
|
170 |
+
#: proxy-authentication-required
|
171 |
msgid "Proxy Authentication Required"
|
172 |
msgstr "Autenticação Proxy Exigida"
|
173 |
|
174 |
+
#: request-entity-too-large
|
175 |
msgid "Request Entity Too Large"
|
176 |
msgstr "Entidade do request muito grande"
|
177 |
|
178 |
+
#: request-time-out
|
179 |
msgid "Request Time-out"
|
180 |
msgstr "Request Time-out"
|
181 |
|
182 |
+
#: request-uri-too-large
|
183 |
msgid "Request-URI Too Large"
|
184 |
msgstr "URI de Request muito grande"
|
185 |
|
186 |
+
#: requested-range-not-satisfiable
|
187 |
msgid "Requested range not satisfiable"
|
188 |
msgstr "Range solicitado não satisfatório"
|
189 |
|
190 |
+
#: reset-content
|
191 |
msgid "Reset Content"
|
192 |
msgstr "Resetar conteúdo"
|
193 |
|
194 |
+
#: save-settings
|
195 |
msgid "Save settings"
|
196 |
msgstr "Salvar"
|
197 |
|
198 |
+
#: see-other
|
199 |
msgid "See Other"
|
200 |
msgstr "Ver outros"
|
201 |
|
202 |
+
#: show-replies
|
203 |
msgid "Show Replies"
|
204 |
msgstr "Mostrar Replies"
|
205 |
|
206 |
+
#: show-retweets
|
207 |
msgid "Show Retweets"
|
208 |
msgstr "Mostrar RTs"
|
209 |
|
210 |
+
#: switching-protocols
|
211 |
msgid "Switching Protocols"
|
212 |
msgstr "Trocando protocolos"
|
213 |
|
214 |
+
#: temporary-redirect
|
215 |
msgid "Temporary Redirect"
|
216 |
msgstr "Redirecionamento Temporário"
|
217 |
|
218 |
+
#: these-details-are-available-in
|
219 |
msgid "These details are available in"
|
220 |
msgstr "Detalhes disponíveis em"
|
221 |
|
222 |
+
#: twitter-api
|
223 |
msgid "Twitter API"
|
224 |
msgstr "API do Twitter"
|
225 |
|
226 |
+
#: twitter-api-authentication-settings
|
227 |
msgid "Twitter API Authentication Settings"
|
228 |
msgstr "Configurações de Autenticação da API do Twitter"
|
229 |
|
230 |
+
#: twitter-api-rate-limit-exceeded
|
231 |
msgid "Twitter API rate limit exceeded"
|
232 |
msgstr "Taxa de limite da API do Twitter excedida"
|
233 |
|
234 |
+
#: twitter-application-is-not-fully-configured
|
235 |
msgid "Twitter application is not fully configured"
|
236 |
msgstr "Aplicação do Twitter não está totalmente configurada"
|
237 |
|
238 |
+
#: twitter-application-not-fully-configured
|
239 |
msgid "Twitter application not fully configured"
|
240 |
msgstr "Aplicação do Twitter não totalmente configurada"
|
241 |
|
242 |
+
#: twitter-client-not-authenticated
|
243 |
msgid "Twitter client not authenticated"
|
244 |
msgstr "Cliente do Twitter não autenticado"
|
245 |
|
246 |
+
#: twitter-error-x
|
247 |
msgid "Twitter error #%d"
|
248 |
msgstr "Erro no Twitter #%d"
|
249 |
|
250 |
+
#: twitter-handle
|
251 |
msgid "Twitter handle"
|
252 |
msgstr "Login no Twitter"
|
253 |
|
254 |
+
#: twitter-is-not-responding
|
255 |
msgid "Twitter is not responding"
|
256 |
msgstr "Twitter não está respondendo"
|
257 |
|
258 |
+
#: twitter-is-too-busy-to-respond
|
259 |
msgid "Twitter is too busy to respond"
|
260 |
msgstr "Twitter muito ocupado para responder"
|
261 |
|
262 |
+
#: twitter-server-error
|
263 |
msgid "Twitter server error"
|
264 |
msgstr "Erro no Servidor do Twitter"
|
265 |
|
266 |
+
#: unsupported-media-type
|
267 |
msgid "Unsupported Media Type"
|
268 |
msgstr "Tipo de mídia não suportado"
|
269 |
|
270 |
+
#: use-proxy
|
271 |
msgid "Use Proxy"
|
272 |
msgstr "Usar Proxy"
|
273 |
|
274 |
+
#: widget-title
|
275 |
msgid "Widget title"
|
276 |
msgstr "Título do Widget"
|
277 |
|
278 |
+
#: wordpress-http-request-failure
|
279 |
msgid "Wordpress HTTP request failure"
|
280 |
msgstr "Falha no HTTP request do Wordpress"
|
281 |
|
282 |
+
#: x-minute-ago
|
283 |
msgid "%u minute ago"
|
284 |
msgid_plural "%u minutes ago"
|
285 |
+
msgstr[0] "1 minuto atrás"
|
286 |
msgstr[1] "%u minutos atrás"
|
287 |
|
288 |
+
#: yesterday-at
|
289 |
msgid "Yesterday at"
|
290 |
msgstr "Ontem às"
|
291 |
|
292 |
+
#: you-dont-have-permission-to-manage-twitter-api-set
|
293 |
msgid "You don't have permission to manage Twitter API settings"
|
294 |
msgstr "Você não tem permissão para gerenciar a API do Twitter"
|
295 |
|
296 |
+
#: your-twitter-dashboard
|
297 |
msgid "your Twitter dashboard"
|
298 |
msgstr "seu painel do Twitter"
|
{lang → api/lang}/twitter-api-ru_RU.mo
RENAMED
Binary file
|
{lang → api/lang}/twitter-api-ru_RU.po
RENAMED
@@ -1,11 +1,11 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: Twitter API
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
-
"Language-Team:
|
9 |
"Language: Russian\n"
|
10 |
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 "
|
11 |
"&& (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
@@ -18,295 +18,295 @@ msgstr ""
|
|
18 |
"X-Loco-Tagged: \n"
|
19 |
"X-Poedit-SourceCharset: UTF-8"
|
20 |
|
21 |
-
|
22 |
-
msgid "Accepted"
|
23 |
-
msgstr "Принято"
|
24 |
-
|
25 |
-
#. asset: Conflict
|
26 |
-
msgid "Conflict"
|
27 |
-
msgstr "Конфликт"
|
28 |
-
|
29 |
-
#. asset: Continue
|
30 |
-
msgid "Continue"
|
31 |
-
msgstr "Продолжить"
|
32 |
-
|
33 |
-
#. asset: Created
|
34 |
-
msgid "Created"
|
35 |
-
msgstr "Создано"
|
36 |
-
|
37 |
-
#. asset: Forbidden
|
38 |
-
msgid "Forbidden"
|
39 |
-
msgstr "Запрещено"
|
40 |
-
|
41 |
-
#. asset: Found
|
42 |
-
msgid "Found"
|
43 |
-
msgstr "Найдено"
|
44 |
-
|
45 |
-
#. asset: Gone
|
46 |
-
msgid "Gone"
|
47 |
-
msgstr "Отправляется"
|
48 |
-
|
49 |
-
#. asset: OK
|
50 |
-
msgid "OK"
|
51 |
-
msgstr "OK"
|
52 |
-
|
53 |
-
#. asset: about-an-hour-ago
|
54 |
msgid "About an hour ago"
|
55 |
msgid_plural "About %u hours ago"
|
56 |
-
msgstr[0]
|
57 |
msgstr[1] "Около %u часов назад"
|
58 |
msgstr[2] ""
|
59 |
|
60 |
-
|
|
|
|
|
|
|
|
|
61 |
msgid "Authenticated as @%s"
|
62 |
msgstr "Авторизован как @%s"
|
63 |
|
64 |
-
|
65 |
msgid "Authorization Required"
|
66 |
msgstr "Требуется Авторизация"
|
67 |
|
68 |
-
|
69 |
msgid "Bad Request"
|
70 |
msgstr "Плохой Запрос"
|
71 |
|
72 |
-
|
73 |
msgid "Cannot enable Twitter API cache without APC extension"
|
74 |
msgstr ""
|
75 |
"Не удается включить Twitter API кэш, без "
|
76 |
"расширения APC"
|
77 |
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
msgid "Expectation Failed"
|
80 |
msgstr "Ожидание не удалось"
|
81 |
|
82 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
msgid "Gateway Time-out"
|
84 |
msgstr "Шлюз Time-out"
|
85 |
|
86 |
-
|
|
|
|
|
|
|
|
|
87 |
msgid "HTTP Version not supported"
|
88 |
msgstr "Не поддерживаемая Версия HTTP"
|
89 |
|
90 |
-
|
91 |
msgid "Invalid OAuth token"
|
92 |
msgstr "Неправильный OAuth token"
|
93 |
|
94 |
-
|
95 |
msgid "Invalid Twitter parameter"
|
96 |
msgstr "Не верный параметр Твиттера"
|
97 |
|
98 |
-
|
99 |
msgid "Just now"
|
100 |
msgstr "Только что"
|
101 |
|
102 |
-
|
103 |
msgid "Key required even if secret is empty"
|
104 |
msgstr ""
|
105 |
"Требуется Ключ, даже если секретный ключ "
|
106 |
"пуст"
|
107 |
|
108 |
-
|
109 |
msgid "Latest Tweets"
|
110 |
msgstr "Latest Tweets (Поледние твиты)"
|
111 |
|
112 |
-
|
113 |
msgid "Length Required"
|
114 |
msgstr "Требуемая Длина"
|
115 |
|
116 |
-
|
117 |
msgid "Malformed response from Twitter"
|
118 |
msgstr "Ошибочный ответ от Твиттера"
|
119 |
|
120 |
-
|
121 |
msgid "Method Not Allowed"
|
122 |
msgstr "Запрещенный метод"
|
123 |
|
124 |
-
|
125 |
msgid "Moved Permanently"
|
126 |
msgstr "Перемещено на постоянно"
|
127 |
|
128 |
-
|
129 |
msgid "Multiple Choices"
|
130 |
msgstr "Множественный выбор"
|
131 |
|
132 |
-
|
133 |
msgid "No Content"
|
134 |
msgstr "Нет подключения"
|
135 |
|
136 |
-
|
137 |
msgid "Non-Authoritative Information"
|
138 |
msgstr "Не авторитетная Информация"
|
139 |
|
140 |
-
|
141 |
msgid "Not Acceptable"
|
142 |
msgstr "Не Приемлемый"
|
143 |
|
144 |
-
|
145 |
msgid "Not Found"
|
146 |
msgstr "Не Найдено"
|
147 |
|
148 |
-
|
149 |
msgid "Not Implemented"
|
150 |
msgstr "Не выполнено"
|
151 |
|
152 |
-
|
153 |
msgid "Not Modified"
|
154 |
msgstr "Не Изменяется"
|
155 |
|
156 |
-
|
157 |
msgid "Number of tweets"
|
158 |
msgstr "Количество твитов"
|
159 |
|
160 |
-
|
|
|
|
|
|
|
|
|
161 |
msgid "Partial Content"
|
162 |
msgstr "Частичное Содержимое"
|
163 |
|
164 |
-
|
165 |
msgid "Payment Required"
|
166 |
msgstr "Требуется Оплата"
|
167 |
|
168 |
-
|
169 |
msgid "Plugin not yet authenticated with Twitter"
|
170 |
msgstr "Плагин еще не получил доступ к Твиттеру"
|
171 |
|
172 |
-
|
173 |
msgid "Precondition Failed"
|
174 |
msgstr "Предварительное условие потерпело неудачу"
|
175 |
|
176 |
-
|
177 |
msgid "Proxy Authentication Required"
|
178 |
msgstr "Требуется Идентификация Proxy"
|
179 |
|
180 |
-
|
181 |
msgid "Request Entity Too Large"
|
182 |
msgstr "Запаршиваемый объект слишком большой"
|
183 |
|
184 |
-
|
185 |
msgid "Request Time-out"
|
186 |
msgstr "Запрос Time-out"
|
187 |
|
188 |
-
|
189 |
msgid "Request-URI Too Large"
|
190 |
msgstr "Запаршиваемый URI слишком большой"
|
191 |
|
192 |
-
|
193 |
msgid "Requested range not satisfiable"
|
194 |
msgstr "Запрошен не выполнимый ряд"
|
195 |
|
196 |
-
|
197 |
msgid "Reset Content"
|
198 |
msgstr "Повторите подключение"
|
199 |
|
200 |
-
|
201 |
msgid "Save settings"
|
202 |
msgstr "Сохранить настройки"
|
203 |
|
204 |
-
|
205 |
msgid "See Other"
|
206 |
msgstr "Посмотрите Другой"
|
207 |
|
208 |
-
|
209 |
msgid "Show Replies"
|
210 |
msgstr "Показывать Ответы"
|
211 |
|
212 |
-
|
213 |
msgid "Show Retweets"
|
214 |
msgstr "Показывать Ретвиты"
|
215 |
|
216 |
-
|
217 |
msgid "Switching Protocols"
|
218 |
msgstr "Переключающиеся Протоколы"
|
219 |
|
220 |
-
|
221 |
msgid "Temporary Redirect"
|
222 |
msgstr "Временное перенаправление"
|
223 |
|
224 |
-
|
225 |
msgid "These details are available in"
|
226 |
msgstr "Эти данные доступны в"
|
227 |
|
228 |
-
|
229 |
msgid "Twitter API"
|
230 |
msgstr "API Твиттера"
|
231 |
|
232 |
-
|
233 |
msgid "Twitter API Authentication Settings"
|
234 |
msgstr "Настройка подключения к API Твиттера"
|
235 |
|
236 |
-
|
237 |
msgid "Twitter API rate limit exceeded"
|
238 |
msgstr "API Твиттера превышает норму"
|
239 |
|
240 |
-
|
241 |
msgid "Twitter application is not fully configured"
|
242 |
msgstr ""
|
243 |
"Приложение Твиттера полностью не "
|
244 |
"настроено"
|
245 |
|
246 |
-
|
247 |
msgid "Twitter application not fully configured"
|
248 |
msgstr ""
|
249 |
"Приложение в Твиттере не полностью "
|
250 |
"настроено"
|
251 |
|
252 |
-
|
253 |
msgid "Twitter client not authenticated"
|
254 |
msgstr "Пользователь Твиттера не аутентифицирован"
|
255 |
|
256 |
-
|
257 |
msgid "Twitter error #%d"
|
258 |
msgstr "Ошибка Твиттера #%d"
|
259 |
|
260 |
-
|
261 |
msgid "Twitter handle"
|
262 |
msgstr "Логин в Твиттере"
|
263 |
|
264 |
-
|
265 |
msgid "Twitter is not responding"
|
266 |
msgstr "Твиттер не отвечает"
|
267 |
|
268 |
-
|
269 |
msgid "Twitter is too busy to respond"
|
270 |
msgstr "Твиттер слишком перегружен, чтобы ответить"
|
271 |
|
272 |
-
|
273 |
msgid "Twitter server error"
|
274 |
msgstr "Ошибка сервера на стороне Твиттера"
|
275 |
|
276 |
-
|
277 |
msgid "Unsupported Media Type"
|
278 |
msgstr "Тип Медиа не поддерживается"
|
279 |
|
280 |
-
|
281 |
msgid "Use Proxy"
|
282 |
msgstr "Используйте Proxy"
|
283 |
|
284 |
-
|
285 |
msgid "Widget title"
|
286 |
msgstr "Заголовок виджета"
|
287 |
|
288 |
-
|
289 |
msgid "Wordpress HTTP request failure"
|
290 |
msgstr "Wordpress неудачный HTTP-запрос "
|
291 |
|
292 |
-
|
293 |
msgid "%u minute ago"
|
294 |
msgid_plural "%u minutes ago"
|
295 |
-
msgstr[0]
|
296 |
msgstr[1] "%u минуты назад"
|
297 |
msgstr[2] ""
|
298 |
|
299 |
-
|
300 |
msgid "Yesterday at"
|
301 |
msgstr "Вчера в "
|
302 |
|
303 |
-
|
304 |
msgid "You don't have permission to manage Twitter API settings"
|
305 |
msgstr ""
|
306 |
"Вы не имеете разрешения управлять "
|
307 |
"настроечными параметрами программного API "
|
308 |
"Твиттера"
|
309 |
|
310 |
-
|
311 |
msgid "your Twitter dashboard"
|
312 |
msgstr "Вашей панеле в Твиттере"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: Twitter API plugin\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: Mon, 29 Jul 2013 10:55:29 +0100\n"
|
6 |
+
"PO-Revision-Date: Fri, 21 Mar 2014 14:49:34 +0000\n"
|
7 |
"Last-Translator: Tim Whitlock\n"
|
8 |
+
"Language-Team: Wordpress\n"
|
9 |
"Language: Russian\n"
|
10 |
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 "
|
11 |
"&& (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
18 |
"X-Loco-Tagged: \n"
|
19 |
"X-Poedit-SourceCharset: UTF-8"
|
20 |
|
21 |
+
#: about-an-hour-ago
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
msgid "About an hour ago"
|
23 |
msgid_plural "About %u hours ago"
|
24 |
+
msgstr[0] "Около часа назад"
|
25 |
msgstr[1] "Около %u часов назад"
|
26 |
msgstr[2] ""
|
27 |
|
28 |
+
#: accepted
|
29 |
+
msgid "Accepted"
|
30 |
+
msgstr "Принято"
|
31 |
+
|
32 |
+
#: authenticated-as-x
|
33 |
msgid "Authenticated as @%s"
|
34 |
msgstr "Авторизован как @%s"
|
35 |
|
36 |
+
#: authorization-required
|
37 |
msgid "Authorization Required"
|
38 |
msgstr "Требуется Авторизация"
|
39 |
|
40 |
+
#: bad-request
|
41 |
msgid "Bad Request"
|
42 |
msgstr "Плохой Запрос"
|
43 |
|
44 |
+
#: cannot-enable-twitter-api-cache-without-apc-extens
|
45 |
msgid "Cannot enable Twitter API cache without APC extension"
|
46 |
msgstr ""
|
47 |
"Не удается включить Twitter API кэш, без "
|
48 |
"расширения APC"
|
49 |
|
50 |
+
#: conflict
|
51 |
+
msgid "Conflict"
|
52 |
+
msgstr "Конфликт"
|
53 |
+
|
54 |
+
#: continue
|
55 |
+
msgid "Continue"
|
56 |
+
msgstr "Продолжить"
|
57 |
+
|
58 |
+
#: created
|
59 |
+
msgid "Created"
|
60 |
+
msgstr "Создано"
|
61 |
+
|
62 |
+
#: expectation-failed
|
63 |
msgid "Expectation Failed"
|
64 |
msgstr "Ожидание не удалось"
|
65 |
|
66 |
+
#: forbidden
|
67 |
+
msgid "Forbidden"
|
68 |
+
msgstr "Запрещено"
|
69 |
+
|
70 |
+
#: found
|
71 |
+
msgid "Found"
|
72 |
+
msgstr "Найдено"
|
73 |
+
|
74 |
+
#: gateway-time-out
|
75 |
msgid "Gateway Time-out"
|
76 |
msgstr "Шлюз Time-out"
|
77 |
|
78 |
+
#: gone
|
79 |
+
msgid "Gone"
|
80 |
+
msgstr "Отправляется"
|
81 |
+
|
82 |
+
#: http-version-not-supported
|
83 |
msgid "HTTP Version not supported"
|
84 |
msgstr "Не поддерживаемая Версия HTTP"
|
85 |
|
86 |
+
#: invalid-oauth-token
|
87 |
msgid "Invalid OAuth token"
|
88 |
msgstr "Неправильный OAuth token"
|
89 |
|
90 |
+
#: invalid-twitter-parameter
|
91 |
msgid "Invalid Twitter parameter"
|
92 |
msgstr "Не верный параметр Твиттера"
|
93 |
|
94 |
+
#: just-now
|
95 |
msgid "Just now"
|
96 |
msgstr "Только что"
|
97 |
|
98 |
+
#: key-required-even-if-secret-is-empty
|
99 |
msgid "Key required even if secret is empty"
|
100 |
msgstr ""
|
101 |
"Требуется Ключ, даже если секретный ключ "
|
102 |
"пуст"
|
103 |
|
104 |
+
#: latest-tweets
|
105 |
msgid "Latest Tweets"
|
106 |
msgstr "Latest Tweets (Поледние твиты)"
|
107 |
|
108 |
+
#: length-required
|
109 |
msgid "Length Required"
|
110 |
msgstr "Требуемая Длина"
|
111 |
|
112 |
+
#: malformed-response-from-twitter
|
113 |
msgid "Malformed response from Twitter"
|
114 |
msgstr "Ошибочный ответ от Твиттера"
|
115 |
|
116 |
+
#: method-not-allowed
|
117 |
msgid "Method Not Allowed"
|
118 |
msgstr "Запрещенный метод"
|
119 |
|
120 |
+
#: moved-permanently
|
121 |
msgid "Moved Permanently"
|
122 |
msgstr "Перемещено на постоянно"
|
123 |
|
124 |
+
#: multiple-choices
|
125 |
msgid "Multiple Choices"
|
126 |
msgstr "Множественный выбор"
|
127 |
|
128 |
+
#: no-content
|
129 |
msgid "No Content"
|
130 |
msgstr "Нет подключения"
|
131 |
|
132 |
+
#: non-authoritative-information
|
133 |
msgid "Non-Authoritative Information"
|
134 |
msgstr "Не авторитетная Информация"
|
135 |
|
136 |
+
#: not-acceptable
|
137 |
msgid "Not Acceptable"
|
138 |
msgstr "Не Приемлемый"
|
139 |
|
140 |
+
#: not-found
|
141 |
msgid "Not Found"
|
142 |
msgstr "Не Найдено"
|
143 |
|
144 |
+
#: not-implemented
|
145 |
msgid "Not Implemented"
|
146 |
msgstr "Не выполнено"
|
147 |
|
148 |
+
#: not-modified
|
149 |
msgid "Not Modified"
|
150 |
msgstr "Не Изменяется"
|
151 |
|
152 |
+
#: number-of-tweets
|
153 |
msgid "Number of tweets"
|
154 |
msgstr "Количество твитов"
|
155 |
|
156 |
+
#: ok
|
157 |
+
msgid "OK"
|
158 |
+
msgstr "OK"
|
159 |
+
|
160 |
+
#: partial-content
|
161 |
msgid "Partial Content"
|
162 |
msgstr "Частичное Содержимое"
|
163 |
|
164 |
+
#: payment-required
|
165 |
msgid "Payment Required"
|
166 |
msgstr "Требуется Оплата"
|
167 |
|
168 |
+
#: plugin-not-yet-authenticated-with-twitter
|
169 |
msgid "Plugin not yet authenticated with Twitter"
|
170 |
msgstr "Плагин еще не получил доступ к Твиттеру"
|
171 |
|
172 |
+
#: precondition-failed
|
173 |
msgid "Precondition Failed"
|
174 |
msgstr "Предварительное условие потерпело неудачу"
|
175 |
|
176 |
+
#: proxy-authentication-required
|
177 |
msgid "Proxy Authentication Required"
|
178 |
msgstr "Требуется Идентификация Proxy"
|
179 |
|
180 |
+
#: request-entity-too-large
|
181 |
msgid "Request Entity Too Large"
|
182 |
msgstr "Запаршиваемый объект слишком большой"
|
183 |
|
184 |
+
#: request-time-out
|
185 |
msgid "Request Time-out"
|
186 |
msgstr "Запрос Time-out"
|
187 |
|
188 |
+
#: request-uri-too-large
|
189 |
msgid "Request-URI Too Large"
|
190 |
msgstr "Запаршиваемый URI слишком большой"
|
191 |
|
192 |
+
#: requested-range-not-satisfiable
|
193 |
msgid "Requested range not satisfiable"
|
194 |
msgstr "Запрошен не выполнимый ряд"
|
195 |
|
196 |
+
#: reset-content
|
197 |
msgid "Reset Content"
|
198 |
msgstr "Повторите подключение"
|
199 |
|
200 |
+
#: save-settings
|
201 |
msgid "Save settings"
|
202 |
msgstr "Сохранить настройки"
|
203 |
|
204 |
+
#: see-other
|
205 |
msgid "See Other"
|
206 |
msgstr "Посмотрите Другой"
|
207 |
|
208 |
+
#: show-replies
|
209 |
msgid "Show Replies"
|
210 |
msgstr "Показывать Ответы"
|
211 |
|
212 |
+
#: show-retweets
|
213 |
msgid "Show Retweets"
|
214 |
msgstr "Показывать Ретвиты"
|
215 |
|
216 |
+
#: switching-protocols
|
217 |
msgid "Switching Protocols"
|
218 |
msgstr "Переключающиеся Протоколы"
|
219 |
|
220 |
+
#: temporary-redirect
|
221 |
msgid "Temporary Redirect"
|
222 |
msgstr "Временное перенаправление"
|
223 |
|
224 |
+
#: these-details-are-available-in
|
225 |
msgid "These details are available in"
|
226 |
msgstr "Эти данные доступны в"
|
227 |
|
228 |
+
#: twitter-api
|
229 |
msgid "Twitter API"
|
230 |
msgstr "API Твиттера"
|
231 |
|
232 |
+
#: twitter-api-authentication-settings
|
233 |
msgid "Twitter API Authentication Settings"
|
234 |
msgstr "Настройка подключения к API Твиттера"
|
235 |
|
236 |
+
#: twitter-api-rate-limit-exceeded
|
237 |
msgid "Twitter API rate limit exceeded"
|
238 |
msgstr "API Твиттера превышает норму"
|
239 |
|
240 |
+
#: twitter-application-is-not-fully-configured
|
241 |
msgid "Twitter application is not fully configured"
|
242 |
msgstr ""
|
243 |
"Приложение Твиттера полностью не "
|
244 |
"настроено"
|
245 |
|
246 |
+
#: twitter-application-not-fully-configured
|
247 |
msgid "Twitter application not fully configured"
|
248 |
msgstr ""
|
249 |
"Приложение в Твиттере не полностью "
|
250 |
"настроено"
|
251 |
|
252 |
+
#: twitter-client-not-authenticated
|
253 |
msgid "Twitter client not authenticated"
|
254 |
msgstr "Пользователь Твиттера не аутентифицирован"
|
255 |
|
256 |
+
#: twitter-error-x
|
257 |
msgid "Twitter error #%d"
|
258 |
msgstr "Ошибка Твиттера #%d"
|
259 |
|
260 |
+
#: twitter-handle
|
261 |
msgid "Twitter handle"
|
262 |
msgstr "Логин в Твиттере"
|
263 |
|
264 |
+
#: twitter-is-not-responding
|
265 |
msgid "Twitter is not responding"
|
266 |
msgstr "Твиттер не отвечает"
|
267 |
|
268 |
+
#: twitter-is-too-busy-to-respond
|
269 |
msgid "Twitter is too busy to respond"
|
270 |
msgstr "Твиттер слишком перегружен, чтобы ответить"
|
271 |
|
272 |
+
#: twitter-server-error
|
273 |
msgid "Twitter server error"
|
274 |
msgstr "Ошибка сервера на стороне Твиттера"
|
275 |
|
276 |
+
#: unsupported-media-type
|
277 |
msgid "Unsupported Media Type"
|
278 |
msgstr "Тип Медиа не поддерживается"
|
279 |
|
280 |
+
#: use-proxy
|
281 |
msgid "Use Proxy"
|
282 |
msgstr "Используйте Proxy"
|
283 |
|
284 |
+
#: widget-title
|
285 |
msgid "Widget title"
|
286 |
msgstr "Заголовок виджета"
|
287 |
|
288 |
+
#: wordpress-http-request-failure
|
289 |
msgid "Wordpress HTTP request failure"
|
290 |
msgstr "Wordpress неудачный HTTP-запрос "
|
291 |
|
292 |
+
#: x-minute-ago
|
293 |
msgid "%u minute ago"
|
294 |
msgid_plural "%u minutes ago"
|
295 |
+
msgstr[0] "1 минуту назад"
|
296 |
msgstr[1] "%u минуты назад"
|
297 |
msgstr[2] ""
|
298 |
|
299 |
+
#: yesterday-at
|
300 |
msgid "Yesterday at"
|
301 |
msgstr "Вчера в "
|
302 |
|
303 |
+
#: you-dont-have-permission-to-manage-twitter-api-set
|
304 |
msgid "You don't have permission to manage Twitter API settings"
|
305 |
msgstr ""
|
306 |
"Вы не имеете разрешения управлять "
|
307 |
"настроечными параметрами программного API "
|
308 |
"Твиттера"
|
309 |
|
310 |
+
#: your-twitter-dashboard
|
311 |
msgid "your Twitter dashboard"
|
312 |
msgstr "Вашей панеле в Твиттере"
|
{lang → api/lang}/twitter-api.pot
RENAMED
@@ -2,9 +2,9 @@
|
|
2 |
#, fuzzy
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Twitter API
|
6 |
"Report-Msgid-Bugs-To: Tim Whitlock\n"
|
7 |
-
"POT-Creation-Date:
|
8 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
9 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS\n"
|
10 |
"Language-Team: \n"
|
@@ -16,282 +16,282 @@ msgstr ""
|
|
16 |
"X-Generator: Loco https://localise.biz\n"
|
17 |
"X-Poedit-SourceCharset: UTF-8"
|
18 |
|
19 |
-
|
20 |
-
msgid "
|
21 |
-
|
|
|
|
|
22 |
|
23 |
-
|
24 |
-
msgid "
|
25 |
msgstr ""
|
26 |
|
27 |
-
|
28 |
-
msgid "
|
29 |
msgstr ""
|
30 |
|
31 |
-
|
32 |
-
msgid "
|
33 |
msgstr ""
|
34 |
|
35 |
-
|
36 |
-
msgid "
|
37 |
msgstr ""
|
38 |
|
39 |
-
|
40 |
-
msgid "
|
41 |
msgstr ""
|
42 |
|
43 |
-
|
44 |
-
msgid "
|
45 |
msgstr ""
|
46 |
|
47 |
-
|
48 |
-
msgid "
|
49 |
msgstr ""
|
50 |
|
51 |
-
|
52 |
-
msgid "
|
53 |
-
msgid_plural "About %u hours ago"
|
54 |
-
msgstr[0] ""
|
55 |
-
msgstr[1] ""
|
56 |
-
|
57 |
-
#. asset: authenticated-as-x
|
58 |
-
msgid "Authenticated as @%s"
|
59 |
msgstr ""
|
60 |
|
61 |
-
|
62 |
-
msgid "
|
63 |
msgstr ""
|
64 |
|
65 |
-
|
66 |
-
msgid "
|
67 |
msgstr ""
|
68 |
|
69 |
-
|
70 |
-
msgid "
|
71 |
msgstr ""
|
72 |
|
73 |
-
|
74 |
-
msgid "
|
75 |
msgstr ""
|
76 |
|
77 |
-
|
78 |
-
msgid "
|
79 |
msgstr ""
|
80 |
|
81 |
-
|
82 |
msgid "HTTP Version not supported"
|
83 |
msgstr ""
|
84 |
|
85 |
-
|
86 |
msgid "Invalid OAuth token"
|
87 |
msgstr ""
|
88 |
|
89 |
-
|
90 |
msgid "Invalid Twitter parameter"
|
91 |
msgstr ""
|
92 |
|
93 |
-
|
94 |
msgid "Just now"
|
95 |
msgstr ""
|
96 |
|
97 |
-
|
98 |
msgid "Key required even if secret is empty"
|
99 |
msgstr ""
|
100 |
|
101 |
-
|
102 |
msgid "Latest Tweets"
|
103 |
msgstr ""
|
104 |
|
105 |
-
|
106 |
msgid "Length Required"
|
107 |
msgstr ""
|
108 |
|
109 |
-
|
110 |
msgid "Malformed response from Twitter"
|
111 |
msgstr ""
|
112 |
|
113 |
-
|
114 |
msgid "Method Not Allowed"
|
115 |
msgstr ""
|
116 |
|
117 |
-
|
118 |
msgid "Moved Permanently"
|
119 |
msgstr ""
|
120 |
|
121 |
-
|
122 |
msgid "Multiple Choices"
|
123 |
msgstr ""
|
124 |
|
125 |
-
|
126 |
msgid "No Content"
|
127 |
msgstr ""
|
128 |
|
129 |
-
|
130 |
msgid "Non-Authoritative Information"
|
131 |
msgstr ""
|
132 |
|
133 |
-
|
134 |
msgid "Not Acceptable"
|
135 |
msgstr ""
|
136 |
|
137 |
-
|
138 |
msgid "Not Found"
|
139 |
msgstr ""
|
140 |
|
141 |
-
|
142 |
msgid "Not Implemented"
|
143 |
msgstr ""
|
144 |
|
145 |
-
|
146 |
msgid "Not Modified"
|
147 |
msgstr ""
|
148 |
|
149 |
-
|
150 |
msgid "Number of tweets"
|
151 |
msgstr ""
|
152 |
|
153 |
-
|
|
|
|
|
|
|
|
|
154 |
msgid "Partial Content"
|
155 |
msgstr ""
|
156 |
|
157 |
-
|
158 |
msgid "Payment Required"
|
159 |
msgstr ""
|
160 |
|
161 |
-
|
162 |
msgid "Plugin not yet authenticated with Twitter"
|
163 |
msgstr ""
|
164 |
|
165 |
-
|
166 |
msgid "Precondition Failed"
|
167 |
msgstr ""
|
168 |
|
169 |
-
|
170 |
msgid "Proxy Authentication Required"
|
171 |
msgstr ""
|
172 |
|
173 |
-
|
174 |
msgid "Request Entity Too Large"
|
175 |
msgstr ""
|
176 |
|
177 |
-
|
178 |
msgid "Request Time-out"
|
179 |
msgstr ""
|
180 |
|
181 |
-
|
182 |
msgid "Request-URI Too Large"
|
183 |
msgstr ""
|
184 |
|
185 |
-
|
186 |
msgid "Requested range not satisfiable"
|
187 |
msgstr ""
|
188 |
|
189 |
-
|
190 |
msgid "Reset Content"
|
191 |
msgstr ""
|
192 |
|
193 |
-
|
194 |
msgid "Save settings"
|
195 |
msgstr ""
|
196 |
|
197 |
-
|
198 |
msgid "See Other"
|
199 |
msgstr ""
|
200 |
|
201 |
-
|
202 |
msgid "Show Replies"
|
203 |
msgstr ""
|
204 |
|
205 |
-
|
206 |
msgid "Show Retweets"
|
207 |
msgstr ""
|
208 |
|
209 |
-
|
210 |
msgid "Switching Protocols"
|
211 |
msgstr ""
|
212 |
|
213 |
-
|
214 |
msgid "Temporary Redirect"
|
215 |
msgstr ""
|
216 |
|
217 |
-
|
218 |
msgid "These details are available in"
|
219 |
msgstr ""
|
220 |
|
221 |
-
|
222 |
msgid "Twitter API"
|
223 |
msgstr ""
|
224 |
|
225 |
-
|
226 |
msgid "Twitter API Authentication Settings"
|
227 |
msgstr ""
|
228 |
|
229 |
-
|
230 |
msgid "Twitter API rate limit exceeded"
|
231 |
msgstr ""
|
232 |
|
233 |
-
|
234 |
msgid "Twitter application is not fully configured"
|
235 |
msgstr ""
|
236 |
|
237 |
-
|
238 |
msgid "Twitter application not fully configured"
|
239 |
msgstr ""
|
240 |
|
241 |
-
|
242 |
msgid "Twitter client not authenticated"
|
243 |
msgstr ""
|
244 |
|
245 |
-
|
246 |
msgid "Twitter error #%d"
|
247 |
msgstr ""
|
248 |
|
249 |
-
|
250 |
msgid "Twitter handle"
|
251 |
msgstr ""
|
252 |
|
253 |
-
|
254 |
msgid "Twitter is not responding"
|
255 |
msgstr ""
|
256 |
|
257 |
-
|
258 |
msgid "Twitter is too busy to respond"
|
259 |
msgstr ""
|
260 |
|
261 |
-
|
262 |
msgid "Twitter server error"
|
263 |
msgstr ""
|
264 |
|
265 |
-
|
266 |
msgid "Unsupported Media Type"
|
267 |
msgstr ""
|
268 |
|
269 |
-
|
270 |
msgid "Use Proxy"
|
271 |
msgstr ""
|
272 |
|
273 |
-
|
274 |
msgid "Widget title"
|
275 |
msgstr ""
|
276 |
|
277 |
-
|
278 |
msgid "Wordpress HTTP request failure"
|
279 |
msgstr ""
|
280 |
|
281 |
-
|
282 |
msgid "%u minute ago"
|
283 |
msgid_plural "%u minutes ago"
|
284 |
-
msgstr[0]
|
285 |
msgstr[1] ""
|
286 |
|
287 |
-
|
288 |
msgid "Yesterday at"
|
289 |
msgstr ""
|
290 |
|
291 |
-
|
292 |
msgid "You don't have permission to manage Twitter API settings"
|
293 |
msgstr ""
|
294 |
|
295 |
-
|
296 |
msgid "your Twitter dashboard"
|
297 |
msgstr ""
|
2 |
#, fuzzy
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Twitter API plugin\n"
|
6 |
"Report-Msgid-Bugs-To: Tim Whitlock\n"
|
7 |
+
"POT-Creation-Date: Fri, 21 Mar 2014 14:49:33 +0000\n"
|
8 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
9 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS\n"
|
10 |
"Language-Team: \n"
|
16 |
"X-Generator: Loco https://localise.biz\n"
|
17 |
"X-Poedit-SourceCharset: UTF-8"
|
18 |
|
19 |
+
#: about-an-hour-ago
|
20 |
+
msgid "About an hour ago"
|
21 |
+
msgid_plural "About %u hours ago"
|
22 |
+
msgstr[0] ""
|
23 |
+
msgstr[1] ""
|
24 |
|
25 |
+
#: accepted
|
26 |
+
msgid "Accepted"
|
27 |
msgstr ""
|
28 |
|
29 |
+
#: authenticated-as-x
|
30 |
+
msgid "Authenticated as @%s"
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: authorization-required
|
34 |
+
msgid "Authorization Required"
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: bad-request
|
38 |
+
msgid "Bad Request"
|
39 |
msgstr ""
|
40 |
|
41 |
+
#: cannot-enable-twitter-api-cache-without-apc-extens
|
42 |
+
msgid "Cannot enable Twitter API cache without APC extension"
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: conflict
|
46 |
+
msgid "Conflict"
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: continue
|
50 |
+
msgid "Continue"
|
51 |
msgstr ""
|
52 |
|
53 |
+
#: created
|
54 |
+
msgid "Created"
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
msgstr ""
|
56 |
|
57 |
+
#: expectation-failed
|
58 |
+
msgid "Expectation Failed"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: forbidden
|
62 |
+
msgid "Forbidden"
|
63 |
msgstr ""
|
64 |
|
65 |
+
#: found
|
66 |
+
msgid "Found"
|
67 |
msgstr ""
|
68 |
|
69 |
+
#: gateway-time-out
|
70 |
+
msgid "Gateway Time-out"
|
71 |
msgstr ""
|
72 |
|
73 |
+
#: gone
|
74 |
+
msgid "Gone"
|
75 |
msgstr ""
|
76 |
|
77 |
+
#: http-version-not-supported
|
78 |
msgid "HTTP Version not supported"
|
79 |
msgstr ""
|
80 |
|
81 |
+
#: invalid-oauth-token
|
82 |
msgid "Invalid OAuth token"
|
83 |
msgstr ""
|
84 |
|
85 |
+
#: invalid-twitter-parameter
|
86 |
msgid "Invalid Twitter parameter"
|
87 |
msgstr ""
|
88 |
|
89 |
+
#: just-now
|
90 |
msgid "Just now"
|
91 |
msgstr ""
|
92 |
|
93 |
+
#: key-required-even-if-secret-is-empty
|
94 |
msgid "Key required even if secret is empty"
|
95 |
msgstr ""
|
96 |
|
97 |
+
#: latest-tweets
|
98 |
msgid "Latest Tweets"
|
99 |
msgstr ""
|
100 |
|
101 |
+
#: length-required
|
102 |
msgid "Length Required"
|
103 |
msgstr ""
|
104 |
|
105 |
+
#: malformed-response-from-twitter
|
106 |
msgid "Malformed response from Twitter"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: method-not-allowed
|
110 |
msgid "Method Not Allowed"
|
111 |
msgstr ""
|
112 |
|
113 |
+
#: moved-permanently
|
114 |
msgid "Moved Permanently"
|
115 |
msgstr ""
|
116 |
|
117 |
+
#: multiple-choices
|
118 |
msgid "Multiple Choices"
|
119 |
msgstr ""
|
120 |
|
121 |
+
#: no-content
|
122 |
msgid "No Content"
|
123 |
msgstr ""
|
124 |
|
125 |
+
#: non-authoritative-information
|
126 |
msgid "Non-Authoritative Information"
|
127 |
msgstr ""
|
128 |
|
129 |
+
#: not-acceptable
|
130 |
msgid "Not Acceptable"
|
131 |
msgstr ""
|
132 |
|
133 |
+
#: not-found
|
134 |
msgid "Not Found"
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: not-implemented
|
138 |
msgid "Not Implemented"
|
139 |
msgstr ""
|
140 |
|
141 |
+
#: not-modified
|
142 |
msgid "Not Modified"
|
143 |
msgstr ""
|
144 |
|
145 |
+
#: number-of-tweets
|
146 |
msgid "Number of tweets"
|
147 |
msgstr ""
|
148 |
|
149 |
+
#: ok
|
150 |
+
msgid "OK"
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: partial-content
|
154 |
msgid "Partial Content"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: payment-required
|
158 |
msgid "Payment Required"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: plugin-not-yet-authenticated-with-twitter
|
162 |
msgid "Plugin not yet authenticated with Twitter"
|
163 |
msgstr ""
|
164 |
|
165 |
+
#: precondition-failed
|
166 |
msgid "Precondition Failed"
|
167 |
msgstr ""
|
168 |
|
169 |
+
#: proxy-authentication-required
|
170 |
msgid "Proxy Authentication Required"
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: request-entity-too-large
|
174 |
msgid "Request Entity Too Large"
|
175 |
msgstr ""
|
176 |
|
177 |
+
#: request-time-out
|
178 |
msgid "Request Time-out"
|
179 |
msgstr ""
|
180 |
|
181 |
+
#: request-uri-too-large
|
182 |
msgid "Request-URI Too Large"
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: requested-range-not-satisfiable
|
186 |
msgid "Requested range not satisfiable"
|
187 |
msgstr ""
|
188 |
|
189 |
+
#: reset-content
|
190 |
msgid "Reset Content"
|
191 |
msgstr ""
|
192 |
|
193 |
+
#: save-settings
|
194 |
msgid "Save settings"
|
195 |
msgstr ""
|
196 |
|
197 |
+
#: see-other
|
198 |
msgid "See Other"
|
199 |
msgstr ""
|
200 |
|
201 |
+
#: show-replies
|
202 |
msgid "Show Replies"
|
203 |
msgstr ""
|
204 |
|
205 |
+
#: show-retweets
|
206 |
msgid "Show Retweets"
|
207 |
msgstr ""
|
208 |
|
209 |
+
#: switching-protocols
|
210 |
msgid "Switching Protocols"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: temporary-redirect
|
214 |
msgid "Temporary Redirect"
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: these-details-are-available-in
|
218 |
msgid "These details are available in"
|
219 |
msgstr ""
|
220 |
|
221 |
+
#: twitter-api
|
222 |
msgid "Twitter API"
|
223 |
msgstr ""
|
224 |
|
225 |
+
#: twitter-api-authentication-settings
|
226 |
msgid "Twitter API Authentication Settings"
|
227 |
msgstr ""
|
228 |
|
229 |
+
#: twitter-api-rate-limit-exceeded
|
230 |
msgid "Twitter API rate limit exceeded"
|
231 |
msgstr ""
|
232 |
|
233 |
+
#: twitter-application-is-not-fully-configured
|
234 |
msgid "Twitter application is not fully configured"
|
235 |
msgstr ""
|
236 |
|
237 |
+
#: twitter-application-not-fully-configured
|
238 |
msgid "Twitter application not fully configured"
|
239 |
msgstr ""
|
240 |
|
241 |
+
#: twitter-client-not-authenticated
|
242 |
msgid "Twitter client not authenticated"
|
243 |
msgstr ""
|
244 |
|
245 |
+
#: twitter-error-x
|
246 |
msgid "Twitter error #%d"
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: twitter-handle
|
250 |
msgid "Twitter handle"
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: twitter-is-not-responding
|
254 |
msgid "Twitter is not responding"
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: twitter-is-too-busy-to-respond
|
258 |
msgid "Twitter is too busy to respond"
|
259 |
msgstr ""
|
260 |
|
261 |
+
#: twitter-server-error
|
262 |
msgid "Twitter server error"
|
263 |
msgstr ""
|
264 |
|
265 |
+
#: unsupported-media-type
|
266 |
msgid "Unsupported Media Type"
|
267 |
msgstr ""
|
268 |
|
269 |
+
#: use-proxy
|
270 |
msgid "Use Proxy"
|
271 |
msgstr ""
|
272 |
|
273 |
+
#: widget-title
|
274 |
msgid "Widget title"
|
275 |
msgstr ""
|
276 |
|
277 |
+
#: wordpress-http-request-failure
|
278 |
msgid "Wordpress HTTP request failure"
|
279 |
msgstr ""
|
280 |
|
281 |
+
#: x-minute-ago
|
282 |
msgid "%u minute ago"
|
283 |
msgid_plural "%u minutes ago"
|
284 |
+
msgstr[0] ""
|
285 |
msgstr[1] ""
|
286 |
|
287 |
+
#: yesterday-at
|
288 |
msgid "Yesterday at"
|
289 |
msgstr ""
|
290 |
|
291 |
+
#: you-dont-have-permission-to-manage-twitter-api-set
|
292 |
msgid "You don't have permission to manage Twitter API settings"
|
293 |
msgstr ""
|
294 |
|
295 |
+
#: your-twitter-dashboard
|
296 |
msgid "your Twitter dashboard"
|
297 |
msgstr ""
|
api/lang/update.sh
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/bin/bash
|
2 |
+
#
|
3 |
+
# Script pulls down latest translations from Loco.
|
4 |
+
# Note that the API key is reset between releases.
|
5 |
+
#
|
6 |
+
|
7 |
+
APIKEY=""
|
8 |
+
|
9 |
+
cd "`dirname $0`"
|
10 |
+
|
11 |
+
function loco {
|
12 |
+
echo "Pulling $1_$2..."
|
13 |
+
if [ "enGB" = "$1$2" ]; then
|
14 |
+
wget --quiet "http://localise.biz/api/export/locale/$1-$2.pot?key=$APIKEY" -O "twitter-api.pot"
|
15 |
+
else
|
16 |
+
wget --quiet "http://localise.biz/api/export/locale/$1-$2.po?key=$APIKEY" -O "twitter-api-$1_$2.po"
|
17 |
+
msgfmt --no-hash "twitter-api-$1_$2.po" -o "twitter-api-$1_$2.mo"
|
18 |
+
fi
|
19 |
+
}
|
20 |
+
|
21 |
+
loco en GB
|
22 |
+
loco pt BR
|
23 |
+
loco de DE
|
24 |
+
loco ru RU
|
25 |
+
loco nl NL
|
26 |
+
|
27 |
+
echo Done.
|
{lib → api/lib}/twitter-api-admin.php
RENAMED
@@ -13,7 +13,7 @@
|
|
13 |
function twitter_api_admin_render_header( $subheader, $css = '' ){
|
14 |
?>
|
15 |
<div class="wrap">
|
16 |
-
<h2><?php echo esc_html__('Twitter API Authentication Settings')?></h2>
|
17 |
<div class="<?php echo $css?>">
|
18 |
<h3><?php echo esc_html($subheader)?></h3>
|
19 |
</div>
|
@@ -57,11 +57,11 @@ function twitter_api_admin_render_form(){
|
|
57 |
<input type="text" size="64" name="saf_twitter[access_secret]" id="twitter-api--access-secret" value="<?php echo esc_html($access_secret)?>" />
|
58 |
</p>
|
59 |
<p class="submit">
|
60 |
-
<input type="submit" class="button-primary" value="<?php echo esc_html__('Save settings')?>" />
|
61 |
</p>
|
62 |
<small>
|
63 |
-
<?php echo esc_html__('These details are available in')?>
|
64 |
-
<a href="https://dev.twitter.com/apps"><?php echo esc_html__('your Twitter dashboard')?></a>
|
65 |
</small>
|
66 |
</form>
|
67 |
<?php
|
@@ -87,7 +87,7 @@ function twitter_api_admin_render_login( $consumer_key, $consumer_secret ){
|
|
87 |
// we're storing permanently - not using session here, because WP provides no session API.
|
88 |
_twitter_api_config( array( 'request_secret' => $Token->secret ) );
|
89 |
$href = $Token->get_authorization_url();
|
90 |
-
echo '<p><a class="button-primary" href="',esc_html($href),'">'.esc_html__('Connect to Twitter').'</a></p>';
|
91 |
echo '<p> </p>';
|
92 |
}
|
93 |
|
@@ -99,7 +99,7 @@ function twitter_api_admin_render_login( $consumer_key, $consumer_secret ){
|
|
99 |
*/
|
100 |
function twitter_api_admin_render_page(){
|
101 |
if ( ! current_user_can('manage_options') ){
|
102 |
-
twitter_api_admin_render_header( __("You don't have permission to manage Twitter API settings"),'error');
|
103 |
twitter_api_admin_render_footer();
|
104 |
return;
|
105 |
}
|
@@ -118,7 +118,7 @@ function twitter_api_admin_render_page(){
|
|
118 |
// check whether we have any OAuth params
|
119 |
extract( $conf );
|
120 |
if( ! $consumer_key || ! $consumer_secret ){
|
121 |
-
throw new Exception( __('Twitter application not fully configured') );
|
122 |
}
|
123 |
|
124 |
// else exchange access token if callback // request secret saved as option
|
@@ -136,14 +136,14 @@ function twitter_api_admin_render_page(){
|
|
136 |
|
137 |
// else administrator needs to connect / authenticate with Twitter.
|
138 |
if( ! $access_key || ! $access_secret ){
|
139 |
-
twitter_api_admin_render_header( __('Plugin not yet authenticated with Twitter'), 'error' );
|
140 |
twitter_api_admin_render_login( $consumer_key, $consumer_secret );
|
141 |
}
|
142 |
|
143 |
// else we have auth - verify that tokens are all still valid
|
144 |
else {
|
145 |
$me = twitter_api_get('account/verify_credentials');
|
146 |
-
twitter_api_admin_render_header( sprintf( __('Authenticated as @%s'), $me['screen_name'] ), 'updated' );
|
147 |
}
|
148 |
|
149 |
}
|
@@ -186,7 +186,8 @@ function twitter_api_admin_base_uri(){
|
|
186 |
* Admin menu registration callback
|
187 |
*/
|
188 |
function twitter_api_admin_menu() {
|
189 |
-
|
|
|
190 |
}
|
191 |
|
192 |
|
13 |
function twitter_api_admin_render_header( $subheader, $css = '' ){
|
14 |
?>
|
15 |
<div class="wrap">
|
16 |
+
<h2><?php echo esc_html__('Twitter API Authentication Settings','twitter-api')?></h2>
|
17 |
<div class="<?php echo $css?>">
|
18 |
<h3><?php echo esc_html($subheader)?></h3>
|
19 |
</div>
|
57 |
<input type="text" size="64" name="saf_twitter[access_secret]" id="twitter-api--access-secret" value="<?php echo esc_html($access_secret)?>" />
|
58 |
</p>
|
59 |
<p class="submit">
|
60 |
+
<input type="submit" class="button-primary" value="<?php echo esc_html__('Save settings','twitter-api')?>" />
|
61 |
</p>
|
62 |
<small>
|
63 |
+
<?php echo esc_html__('These details are available in','twitter-api')?>
|
64 |
+
<a href="https://dev.twitter.com/apps"><?php echo esc_html__('your Twitter dashboard','twitter-api')?></a>
|
65 |
</small>
|
66 |
</form>
|
67 |
<?php
|
87 |
// we're storing permanently - not using session here, because WP provides no session API.
|
88 |
_twitter_api_config( array( 'request_secret' => $Token->secret ) );
|
89 |
$href = $Token->get_authorization_url();
|
90 |
+
echo '<p><a class="button-primary" href="',esc_html($href),'">'.esc_html__('Connect to Twitter','twitter-api').'</a></p>';
|
91 |
echo '<p> </p>';
|
92 |
}
|
93 |
|
99 |
*/
|
100 |
function twitter_api_admin_render_page(){
|
101 |
if ( ! current_user_can('manage_options') ){
|
102 |
+
twitter_api_admin_render_header( __("You don't have permission to manage Twitter API settings",'twitter-api'),'error');
|
103 |
twitter_api_admin_render_footer();
|
104 |
return;
|
105 |
}
|
118 |
// check whether we have any OAuth params
|
119 |
extract( $conf );
|
120 |
if( ! $consumer_key || ! $consumer_secret ){
|
121 |
+
throw new Exception( __('Twitter application not fully configured','twitter-api') );
|
122 |
}
|
123 |
|
124 |
// else exchange access token if callback // request secret saved as option
|
136 |
|
137 |
// else administrator needs to connect / authenticate with Twitter.
|
138 |
if( ! $access_key || ! $access_secret ){
|
139 |
+
twitter_api_admin_render_header( __('Plugin not yet authenticated with Twitter','twitter-api'), 'error' );
|
140 |
twitter_api_admin_render_login( $consumer_key, $consumer_secret );
|
141 |
}
|
142 |
|
143 |
// else we have auth - verify that tokens are all still valid
|
144 |
else {
|
145 |
$me = twitter_api_get('account/verify_credentials');
|
146 |
+
twitter_api_admin_render_header( sprintf( __('Authenticated as @%s','twitter-api'), $me['screen_name'] ), 'updated' );
|
147 |
}
|
148 |
|
149 |
}
|
186 |
* Admin menu registration callback
|
187 |
*/
|
188 |
function twitter_api_admin_menu() {
|
189 |
+
$title = __('Twitter API','twitter-api');
|
190 |
+
add_options_page( $title, $title, 'manage_options', 'twitter-api-admin', 'twitter_api_admin_render_page');
|
191 |
}
|
192 |
|
193 |
|
{lib → api/lib}/twitter-api-core.php
RENAMED
@@ -313,6 +313,13 @@ class TwitterApiClient {
|
|
313 |
}
|
314 |
}
|
315 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
316 |
if( isset($cachekey) ){
|
317 |
_twitter_api_cache_set( $cachekey, $data, $this->cache_ttl );
|
318 |
}
|
313 |
}
|
314 |
}
|
315 |
}
|
316 |
+
// some errors appear to use a single key and have no code
|
317 |
+
// e.g. not authorized to view specific content.
|
318 |
+
if( isset($data['error']) ){
|
319 |
+
$code = isset($data['code']) ? $data['code'] : $status;
|
320 |
+
$message = sprintf( __('Twitter error #%d'), $code ).' "'.$data['error'].'"';
|
321 |
+
TwitterApiException::chuck( compact('message','code'), $status );
|
322 |
+
}
|
323 |
if( isset($cachekey) ){
|
324 |
_twitter_api_cache_set( $cachekey, $data, $this->cache_ttl );
|
325 |
}
|
{lib → api/lib}/twitter-api-utils.php
RENAMED
@@ -18,17 +18,95 @@ function twitter_api_html( $src, $target = '_blank', $alreadyhtml = false ){
|
|
18 |
if( ! $alreadyhtml ){
|
19 |
$src = esc_html( $src );
|
20 |
}
|
21 |
-
// linkify URLs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
$src = preg_replace_callback('!(https?://)(\S+)!', 'twitter_api_html_linkify_callback', $src );
|
23 |
if( '_blank' !== $target ){
|
24 |
$src = str_replace( '"_blank"', '"'.$target.'"', $src );
|
25 |
}
|
26 |
-
// linkify @names
|
27 |
-
$src = preg_replace('!@([a-z0-9_]{1,15})!i', '<a class="twitter-screen-name" href="https://twitter.com/\\1" target="'.$target.'">\\0</a>', $src );
|
28 |
-
// linkify #hashtags
|
29 |
-
$src = preg_replace('/(?<!&)#(\w+)/i', '<a class="twitter-hashtag" href="https://twitter.com/search?q=%23\\1&src=hash" target="'.$target.'">\\0</a>', $src );
|
30 |
return $src;
|
31 |
-
}
|
32 |
|
33 |
|
34 |
|
@@ -37,12 +115,12 @@ function twitter_api_html( $src, $target = '_blank', $alreadyhtml = false ){
|
|
37 |
*/
|
38 |
function twitter_api_html_linkify_callback( array $r ){
|
39 |
list( , $proto, $label ) = $r;
|
40 |
-
$
|
41 |
-
$href = $proto.$label;
|
42 |
if( isset($label{30}) ){
|
43 |
$label = substr_replace( $label, '…', 30 );
|
44 |
}
|
45 |
-
|
|
|
46 |
}
|
47 |
|
48 |
|
18 |
if( ! $alreadyhtml ){
|
19 |
$src = esc_html( $src );
|
20 |
}
|
21 |
+
// linkify URLs
|
22 |
+
$src = twitter_api_html_linkify_urls( $src, $target );
|
23 |
+
// linkify @names
|
24 |
+
$src = preg_replace('!@([a-z0-9_]{1,15})!i', '<a class="twitter-screen-name" href="https://twitter.com/\\1" target="'.$target.'" rel="nofollow">\\0</a>', $src );
|
25 |
+
// linkify #hashtags
|
26 |
+
$src = preg_replace('/(?<!&)#(\w+)/i', '<a class="twitter-hashtag" href="https://twitter.com/search?q=%23\\1&src=hash" target="'.$target.'" rel="nofollow">\\0</a>', $src );
|
27 |
+
return $src;
|
28 |
+
}
|
29 |
+
|
30 |
+
|
31 |
+
|
32 |
+
/**
|
33 |
+
* Utility for rendering tweet text as clickable links, from *original* tweet text with entity data.
|
34 |
+
* If you don't have entity data, then use twitter_api_html
|
35 |
+
* @param string plain text tweet
|
36 |
+
* @param array optionally pass known tweet entities to save string parsing
|
37 |
+
* @param string optional target for links, defaults to _blank
|
38 |
+
* @return string HTML source of tweet text
|
39 |
+
*/
|
40 |
+
function twitter_api_html_with_entities( $src, array $entities, $target = '_blank' ){
|
41 |
+
|
42 |
+
// Raw tweet not expected to be encoded
|
43 |
+
$src = esc_html( $src );
|
44 |
+
|
45 |
+
// purposefully not using indicies, due to weird inaccuracies and chances previous filtering
|
46 |
+
$replace = array();
|
47 |
+
|
48 |
+
// Expand URLs, like twitter.com except using actual links
|
49 |
+
if( isset($entities['urls']) && is_array($entities['urls']) ){
|
50 |
+
foreach( $entities['urls'] as $r ){
|
51 |
+
$find = esc_html( $r['url'] );
|
52 |
+
$replace[ $find ] = twitter_api_html_linkify_urls($r['expanded_url']);
|
53 |
+
}
|
54 |
+
}
|
55 |
+
if( isset($entities['media']) && is_array($entities['media']) ){
|
56 |
+
foreach( $entities['media'] as $r ){
|
57 |
+
$find = esc_html( $r['url'] );
|
58 |
+
if( 0 === strpos($r['display_url'], 'pic.twitter.com' ) ) {
|
59 |
+
$replace[ $find ] = twitter_api_html_linkify_urls( 'https://'.$r['display_url'] );
|
60 |
+
}
|
61 |
+
else {
|
62 |
+
$replace[ $find ] = twitter_api_html_linkify_urls( $r['expanded_url'] );
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
66 |
+
// linkify @names using known mentions from twitter if passed
|
67 |
+
if( isset($entities['user_mentions']) ){
|
68 |
+
foreach( (array) $entities['user_mentions'] as $entity ){
|
69 |
+
if( ! empty($entity['screen_name']) && isset($entity['indices']) ){
|
70 |
+
$name = $entity['screen_name'];
|
71 |
+
$find = '@'.$name;
|
72 |
+
$repl = '@'.$name;
|
73 |
+
$replace[$find] = '<a class="twitter-screen-name" href="https://twitter.com/'.$name.'" target="'.$target.'">'.$repl.'</a>';
|
74 |
+
}
|
75 |
+
}
|
76 |
+
}
|
77 |
+
// linkify #hashtags using known entities from twitter if passed
|
78 |
+
if( isset($entities['hashtags']) ){
|
79 |
+
foreach( (array) $entities['hashtags'] as $entity ){
|
80 |
+
if( ! empty($entity['text']) && isset($entity['indices']) ){
|
81 |
+
$query = array( 'q' => '#'.$entity['text'], 'src' => 'hash' );
|
82 |
+
$href = 'https://twitter.com/search?'.http_build_query($query);
|
83 |
+
$html = esc_html( $entity['text'] );
|
84 |
+
$find = '#'.$html;
|
85 |
+
$repl = '#'.$html;
|
86 |
+
$replace[$find] = '<a class="twitter-hashtag" href="'.$href.'" target="'.$target.'">'.$repl.'</a>';
|
87 |
+
}
|
88 |
+
}
|
89 |
+
}
|
90 |
+
// perform final replacement on encoded text
|
91 |
+
if( $replace ){
|
92 |
+
return str_replace( array_keys($replace), array_values($replace), $src );
|
93 |
+
}
|
94 |
+
return $src;
|
95 |
+
}
|
96 |
+
|
97 |
+
|
98 |
+
|
99 |
+
|
100 |
+
/**
|
101 |
+
* linkify URLs (restricting to 30 chars as per twitter.com)
|
102 |
+
*/
|
103 |
+
function twitter_api_html_linkify_urls( $src, $target = '_blank' ){
|
104 |
$src = preg_replace_callback('!(https?://)(\S+)!', 'twitter_api_html_linkify_callback', $src );
|
105 |
if( '_blank' !== $target ){
|
106 |
$src = str_replace( '"_blank"', '"'.$target.'"', $src );
|
107 |
}
|
|
|
|
|
|
|
|
|
108 |
return $src;
|
109 |
+
}
|
110 |
|
111 |
|
112 |
|
115 |
*/
|
116 |
function twitter_api_html_linkify_callback( array $r ){
|
117 |
list( , $proto, $label ) = $r;
|
118 |
+
$href = $proto.html_entity_decode( $label );
|
|
|
119 |
if( isset($label{30}) ){
|
120 |
$label = substr_replace( $label, '…', 30 );
|
121 |
}
|
122 |
+
$label = rtrim( str_replace( '#', '#', $label ), '/#?');
|
123 |
+
return '<a href="'.$href.'" target="_blank" rel="nofollow">'.$label.'</a>';
|
124 |
}
|
125 |
|
126 |
|
{lib → api}/twitter-api.php
RENAMED
@@ -82,12 +82,22 @@ function twitter_api_include(){
|
|
82 |
*/
|
83 |
function twitter_api_basedir(){
|
84 |
static $dir;
|
85 |
-
isset($dir) or $dir = dirname(__FILE__)
|
86 |
return $dir;
|
87 |
}
|
88 |
|
89 |
|
90 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
|
92 |
/**
|
93 |
* Get fully configured and authenticated Twitter API client.
|
@@ -141,27 +151,54 @@ if( is_admin() ){
|
|
141 |
|
142 |
|
143 |
/**
|
144 |
-
* Enable localisation
|
145 |
-
*
|
146 |
*/
|
147 |
-
function
|
148 |
-
static $
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
$mofile =
|
162 |
-
load_textdomain( '
|
163 |
}
|
164 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
165 |
}
|
166 |
|
167 |
-
add_action( 'init', '_twitter_api_init_l10n' );
|
82 |
*/
|
83 |
function twitter_api_basedir(){
|
84 |
static $dir;
|
85 |
+
isset($dir) or $dir = dirname(__FILE__);
|
86 |
return $dir;
|
87 |
}
|
88 |
|
89 |
|
90 |
|
91 |
+
/**
|
92 |
+
* Test if system-configured client is authed and ready to use
|
93 |
+
*/
|
94 |
+
function twitter_api_configured(){
|
95 |
+
function_exists('_twitter_api_config') or twitter_api_include('core');
|
96 |
+
extract( _twitter_api_config() );
|
97 |
+
return $consumer_key && $consumer_secret && $access_key && $access_secret;
|
98 |
+
}
|
99 |
+
|
100 |
+
|
101 |
|
102 |
/**
|
103 |
* Get fully configured and authenticated Twitter API client.
|
151 |
|
152 |
|
153 |
/**
|
154 |
+
* Enable localisation
|
155 |
+
* @internal
|
156 |
*/
|
157 |
+
function twitter_api_load_textdomain( $locale = null ){
|
158 |
+
static $current_locale;
|
159 |
+
if( is_null($locale) ){
|
160 |
+
$locale = get_locale();
|
161 |
+
}
|
162 |
+
if( ! $locale || 0 === strpos($locale,'en') ){
|
163 |
+
$current_locale and unload_textdomain( 'twitter-api' );
|
164 |
+
$locale = 'en_US';
|
165 |
+
}
|
166 |
+
else if( $current_locale !== $locale ){
|
167 |
+
// purposefully not calling load_plugin_textdomain, due to symlinking
|
168 |
+
// and not knowing what plugin this could be called from.
|
169 |
+
$mofile = realpath( twitter_api_basedir().'/lang/twitter-api-'.$locale.'.mo' );
|
170 |
+
if( ! load_textdomain( 'twitter-api', $mofile ) ){
|
171 |
+
$mofile = WP_LANG_DIR . '/plugins/twitter-api-'.$locale.'.mo';
|
172 |
+
load_textdomain( 'twitter-api', $mofile );
|
173 |
}
|
174 |
}
|
175 |
+
// detect changes in plugin locale, binding once only
|
176 |
+
if( ! isset($current_locale) ){
|
177 |
+
add_filter( 'plugin_locale', '_twitter_api_filter_plugin_locale', 10 , 2 );
|
178 |
+
}
|
179 |
+
$current_locale = $locale;
|
180 |
+
}
|
181 |
+
|
182 |
+
|
183 |
+
|
184 |
+
/**
|
185 |
+
* Support locale switching mid execution
|
186 |
+
* @internal
|
187 |
+
*/
|
188 |
+
function _twitter_api_filter_plugin_locale( $locale, $domain ){
|
189 |
+
if( $domain === 'twitter-api' ){
|
190 |
+
twitter_api_load_textdomain( $locale );
|
191 |
+
}
|
192 |
+
return $locale;
|
193 |
+
}
|
194 |
+
|
195 |
+
|
196 |
+
|
197 |
+
/**
|
198 |
+
* legacy function call
|
199 |
+
* @ignore
|
200 |
+
*/
|
201 |
+
function _twitter_api_init_l10n( $locale = null ){
|
202 |
+
return twitter_api_load_textdomain( $locale );
|
203 |
}
|
204 |
|
|
lang/twitter-api-de_DE.mo
DELETED
Binary file
|
lang/twitter-api-nl_NL.mo
DELETED
Binary file
|
lang/twitter-api-pt_BR.mo
DELETED
Binary file
|
lang/update.sh
DELETED
@@ -1,24 +0,0 @@
|
|
1 |
-
#!/bin/bash
|
2 |
-
#
|
3 |
-
# Script pulls down latest translations from Loco.
|
4 |
-
# Note that the API key is reset between releases.
|
5 |
-
#
|
6 |
-
|
7 |
-
APIKEY="";
|
8 |
-
|
9 |
-
cd "`dirname $0`"
|
10 |
-
|
11 |
-
function loco {
|
12 |
-
if [ "enGB" = "$1$2" ]; then
|
13 |
-
wget "http://localise.biz/api/export/locale/$1-$2.pot?key=$APIKEY" -O "twitter-api.pot"
|
14 |
-
else
|
15 |
-
wget "http://localise.biz/api/export/locale/$1-$2.po?key=$APIKEY" -O "twitter-api-$1_$2.po"
|
16 |
-
msgfmt "twitter-api-$1_$2.po" -o "twitter-api-$1_$2.mo"
|
17 |
-
fi
|
18 |
-
}
|
19 |
-
|
20 |
-
loco en GB
|
21 |
-
loco pt BR
|
22 |
-
loco de DE
|
23 |
-
loco ru RU
|
24 |
-
loco nl NL
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
latest-tweets.php
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
-
Plugin Name: Latest Tweets
|
4 |
Plugin URI: http://wordpress.org/extend/plugins/latest-tweets-widget/
|
5 |
Description: Provides a sidebar widget showing latest tweets - compatible with the new Twitter API 1.1
|
6 |
Author: Tim Whitlock
|
7 |
-
Version: 1.0
|
8 |
Author URI: http://timwhitlock.info/
|
9 |
*/
|
10 |
|
@@ -18,14 +18,15 @@ Author URI: http://timwhitlock.info/
|
|
18 |
* @param bool whether to show at replies
|
19 |
* @return array blocks of html expected by the widget
|
20 |
*/
|
21 |
-
function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
22 |
try {
|
23 |
if( ! function_exists('twitter_api_get') ){
|
24 |
-
require_once dirname(__FILE__).'/
|
25 |
-
|
26 |
}
|
27 |
// caching full data set, not just twitter api caching
|
28 |
-
|
|
|
29 |
if( $cachettl ){
|
30 |
$arguments = func_get_args();
|
31 |
$cachekey = 'latest_tweets_'.implode('_', $arguments );
|
@@ -36,6 +37,10 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
36 |
return $rendered;
|
37 |
}
|
38 |
}
|
|
|
|
|
|
|
|
|
39 |
// Build API params for "statuses/user_timeline" // https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline
|
40 |
$trim_user = false;
|
41 |
$include_rts = ! empty($rts);
|
@@ -43,12 +48,11 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
43 |
$params = compact('exclude_replies','include_rts','trim_user','screen_name');
|
44 |
// Stripping tweets means we may get less than $count tweets.
|
45 |
// we'll keep going until we get the amount we need, but may as well get more each time.
|
46 |
-
if( $exclude_replies || ! $include_rts ){
|
47 |
-
$params['count'] =
|
48 |
}
|
49 |
-
// else ensure we always get more than one to avoid infinite loop on max_id bug
|
50 |
else {
|
51 |
-
$params['count'] = max(
|
52 |
}
|
53 |
// pull tweets until we either have enough, or there are no more
|
54 |
$tweets = array();
|
@@ -64,6 +68,10 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
64 |
// skipping manual RT
|
65 |
continue;
|
66 |
}
|
|
|
|
|
|
|
|
|
67 |
$tweets[] = $tweet;
|
68 |
}
|
69 |
if( isset($tweets[$count]) ){
|
@@ -77,8 +85,8 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
77 |
$params['max_id'] = $max_id;
|
78 |
}
|
79 |
// Fix Wordpress's broken timezone implementation
|
80 |
-
$
|
81 |
-
$
|
82 |
if( $os_timezone !== $wp_timezone ){
|
83 |
date_default_timezone_set( $wp_timezone );
|
84 |
}
|
@@ -96,20 +104,29 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
96 |
$date = esc_html( twitter_api_relative_date($time) );
|
97 |
$date = '<time datetime="'.date_i18n( 'Y-m-d H:i:sO', $time ).'">'.$date.'</time>';
|
98 |
}
|
|
|
|
|
|
|
|
|
|
|
99 |
// render and linkify tweet, unless theme overrides with filter
|
100 |
$html = apply_filters('latest_tweets_render_text', $text );
|
101 |
if( $html === $text ){
|
102 |
if( ! function_exists('twitter_api_html') ){
|
103 |
twitter_api_include('utils');
|
104 |
}
|
105 |
-
if( ! empty($entities['urls']) || ! empty($entities['media']) ){
|
106 |
-
$text = twitter_api_expand_urls( $text, $entities );
|
107 |
-
}
|
108 |
// strip characters that will choke Wordpress cache.
|
109 |
if( $cachettl && ! TWITTER_CACHE_APC ){
|
110 |
-
$text = twitter_api_strip_emoji($text);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
}
|
112 |
-
$html = twitter_api_html( $text );
|
113 |
}
|
114 |
// piece together the whole tweet, allowing override
|
115 |
$final = apply_filters('latest_tweets_render_tweet', $html, $date, $link, $tweet );
|
@@ -144,8 +161,8 @@ function latest_tweets_render( $screen_name, $count, $rts, $ats ){
|
|
144 |
* @param bool $ats Whether to show 'at' replies, defaults to true
|
145 |
* @return string HTML <div> element containing a list
|
146 |
*/
|
147 |
-
function latest_tweets_render_html( $screen_name = '', $num = 5, $rts = true, $ats = true ){
|
148 |
-
$items = latest_tweets_render( $screen_name, $num, $rts, $ats );
|
149 |
$list = apply_filters('latest_tweets_render_list', $items, $screen_name );
|
150 |
if( is_array($list) ){
|
151 |
$list = '<ul><li>'.implode('</li><li>',$items).'</li></ul>';
|
@@ -166,11 +183,11 @@ function latest_tweets_render_html( $screen_name = '', $num = 5, $rts = true, $a
|
|
166 |
class Latest_Tweets_Widget extends WP_Widget {
|
167 |
|
168 |
/** @see WP_Widget::__construct */
|
169 |
-
public function __construct( $id_base = false, $name = '
|
170 |
-
if( ! function_exists('
|
171 |
-
require_once dirname(__FILE__).'/
|
172 |
}
|
173 |
-
|
174 |
$this->options = array(
|
175 |
array (
|
176 |
'name' => 'title',
|
@@ -179,26 +196,32 @@ class Latest_Tweets_Widget extends WP_Widget {
|
|
179 |
),
|
180 |
array (
|
181 |
'name' => 'screen_name',
|
182 |
-
'label' => __('Twitter handle'),
|
183 |
'type' => 'text'
|
184 |
),
|
185 |
array (
|
186 |
'name' => 'num',
|
187 |
-
'label' => __('Number of tweets'),
|
188 |
-
'type' => '
|
|
|
|
|
|
|
|
|
|
|
189 |
),
|
190 |
array (
|
191 |
'name' => 'rts',
|
192 |
-
'label' => __('Show Retweets'),
|
193 |
'type' => 'bool'
|
194 |
),
|
195 |
array (
|
196 |
'name' => 'ats',
|
197 |
-
'label' => __('Show Replies'),
|
198 |
'type' => 'bool'
|
199 |
),
|
200 |
);
|
201 |
-
|
|
|
202 |
}
|
203 |
|
204 |
/* ensure no missing keys in instance params */
|
@@ -207,9 +230,10 @@ class Latest_Tweets_Widget extends WP_Widget {
|
|
207 |
$instance = array();
|
208 |
}
|
209 |
$instance += array (
|
210 |
-
'title' => __('Latest Tweets'),
|
211 |
'screen_name' => '',
|
212 |
-
'num' =>
|
|
|
213 |
'rts' => '',
|
214 |
'ats' => '',
|
215 |
);
|
@@ -230,7 +254,7 @@ class Latest_Tweets_Widget extends WP_Widget {
|
|
230 |
}
|
231 |
else {
|
232 |
$attrs = '';
|
233 |
-
echo '<p>'.$label.'<br /><input class="widefat" type="
|
234 |
}
|
235 |
}
|
236 |
}
|
@@ -241,7 +265,7 @@ class Latest_Tweets_Widget extends WP_Widget {
|
|
241 |
// title is themed via Wordpress widget theming techniques
|
242 |
$title = $args['before_title'] . apply_filters('widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
|
243 |
// by default tweets are rendered as an unordered list
|
244 |
-
$items = latest_tweets_render( $screen_name, $num, $rts, $ats );
|
245 |
$list = apply_filters('latest_tweets_render_list', $items, $screen_name );
|
246 |
if( is_array($list) ){
|
247 |
$list = '<ul><li>'.implode('</li><li>',$items).'</li></ul>';
|
@@ -282,7 +306,7 @@ add_shortcode( 'tweets', 'lastest_tweets_shortcode' );
|
|
282 |
|
283 |
if( is_admin() ){
|
284 |
if( ! function_exists('twitter_api_get') ){
|
285 |
-
require_once dirname(__FILE__).'/
|
286 |
}
|
287 |
// extra visibility of API settings link
|
288 |
function latest_tweets_plugin_row_meta( $links, $file ){
|
1 |
<?php
|
2 |
/*
|
3 |
+
Plugin Name: Latest Tweets Widget
|
4 |
Plugin URI: http://wordpress.org/extend/plugins/latest-tweets-widget/
|
5 |
Description: Provides a sidebar widget showing latest tweets - compatible with the new Twitter API 1.1
|
6 |
Author: Tim Whitlock
|
7 |
+
Version: 1.1.0
|
8 |
Author URI: http://timwhitlock.info/
|
9 |
*/
|
10 |
|
18 |
* @param bool whether to show at replies
|
19 |
* @return array blocks of html expected by the widget
|
20 |
*/
|
21 |
+
function latest_tweets_render( $screen_name, $count, $rts, $ats, $pop = 0 ){
|
22 |
try {
|
23 |
if( ! function_exists('twitter_api_get') ){
|
24 |
+
require_once dirname(__FILE__).'/api/twitter-api.php';
|
25 |
+
twitter_api_load_textdomain();
|
26 |
}
|
27 |
// caching full data set, not just twitter api caching
|
28 |
+
// caching is disabled by default in debug mode, but still filtered.
|
29 |
+
$cachettl = (int) apply_filters('latest_tweets_cache_seconds', WP_DEBUG ? 0 : 300 );
|
30 |
if( $cachettl ){
|
31 |
$arguments = func_get_args();
|
32 |
$cachekey = 'latest_tweets_'.implode('_', $arguments );
|
37 |
return $rendered;
|
38 |
}
|
39 |
}
|
40 |
+
// Check configuration before use
|
41 |
+
if( ! twitter_api_configured() ){
|
42 |
+
throw new Exception( __('Plugin not fully configured','twitter-api') );
|
43 |
+
}
|
44 |
// Build API params for "statuses/user_timeline" // https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline
|
45 |
$trim_user = false;
|
46 |
$include_rts = ! empty($rts);
|
48 |
$params = compact('exclude_replies','include_rts','trim_user','screen_name');
|
49 |
// Stripping tweets means we may get less than $count tweets.
|
50 |
// we'll keep going until we get the amount we need, but may as well get more each time.
|
51 |
+
if( $exclude_replies || ! $include_rts || $pop ){
|
52 |
+
$params['count'] = 100;
|
53 |
}
|
|
|
54 |
else {
|
55 |
+
$params['count'] = max( $count, 2 );
|
56 |
}
|
57 |
// pull tweets until we either have enough, or there are no more
|
58 |
$tweets = array();
|
68 |
// skipping manual RT
|
69 |
continue;
|
70 |
}
|
71 |
+
if( $pop > ( $tweet['retweet_count'] + $tweet['favorite_count'] ) ){
|
72 |
+
// skipping tweets not deemed popular enough
|
73 |
+
continue;
|
74 |
+
}
|
75 |
$tweets[] = $tweet;
|
76 |
}
|
77 |
if( isset($tweets[$count]) ){
|
85 |
$params['max_id'] = $max_id;
|
86 |
}
|
87 |
// Fix Wordpress's broken timezone implementation
|
88 |
+
$os_timezone = date_default_timezone_get() or $os_timezone = 'UTC';
|
89 |
+
$wp_timezone = get_option('timezone_string') or $wp_timezone = $os_timezone;
|
90 |
if( $os_timezone !== $wp_timezone ){
|
91 |
date_default_timezone_set( $wp_timezone );
|
92 |
}
|
104 |
$date = esc_html( twitter_api_relative_date($time) );
|
105 |
$date = '<time datetime="'.date_i18n( 'Y-m-d H:i:sO', $time ).'">'.$date.'</time>';
|
106 |
}
|
107 |
+
// handle original retweet text as RT may be truncated
|
108 |
+
if( $include_rts && isset($retweeted_status) && preg_match('/^RT\s+@[a-z0-9_]{1,15}[\s:]+/i', $text, $prefix ) ){
|
109 |
+
$text = $prefix[0].$retweeted_status['text'];
|
110 |
+
unset($retweeted_status);
|
111 |
+
}
|
112 |
// render and linkify tweet, unless theme overrides with filter
|
113 |
$html = apply_filters('latest_tweets_render_text', $text );
|
114 |
if( $html === $text ){
|
115 |
if( ! function_exists('twitter_api_html') ){
|
116 |
twitter_api_include('utils');
|
117 |
}
|
|
|
|
|
|
|
118 |
// strip characters that will choke Wordpress cache.
|
119 |
if( $cachettl && ! TWITTER_CACHE_APC ){
|
120 |
+
$text = twitter_api_strip_emoji( $text );
|
121 |
+
}
|
122 |
+
// htmlify tweet, using entities if we can
|
123 |
+
if( isset($entities) && is_array($entities) ){
|
124 |
+
$html = twitter_api_html_with_entities( $text, $entities );
|
125 |
+
unset($entities);
|
126 |
+
}
|
127 |
+
else {
|
128 |
+
$html = twitter_api_html( $text );
|
129 |
}
|
|
|
130 |
}
|
131 |
// piece together the whole tweet, allowing override
|
132 |
$final = apply_filters('latest_tweets_render_tweet', $html, $date, $link, $tweet );
|
161 |
* @param bool $ats Whether to show 'at' replies, defaults to true
|
162 |
* @return string HTML <div> element containing a list
|
163 |
*/
|
164 |
+
function latest_tweets_render_html( $screen_name = '', $num = 5, $rts = true, $ats = true, $pop = 0 ){
|
165 |
+
$items = latest_tweets_render( $screen_name, $num, $rts, $ats, $pop );
|
166 |
$list = apply_filters('latest_tweets_render_list', $items, $screen_name );
|
167 |
if( is_array($list) ){
|
168 |
$list = '<ul><li>'.implode('</li><li>',$items).'</li></ul>';
|
183 |
class Latest_Tweets_Widget extends WP_Widget {
|
184 |
|
185 |
/** @see WP_Widget::__construct */
|
186 |
+
public function __construct( $id_base = false, $name = '', $widget_options = array(), $control_options = array() ){
|
187 |
+
if( ! function_exists('twitter_api_load_textdomain') ){
|
188 |
+
require_once dirname(__FILE__).'/api/twitter-api.php';
|
189 |
}
|
190 |
+
twitter_api_load_textdomain();
|
191 |
$this->options = array(
|
192 |
array (
|
193 |
'name' => 'title',
|
196 |
),
|
197 |
array (
|
198 |
'name' => 'screen_name',
|
199 |
+
'label' => __('Twitter handle','twitter-api'),
|
200 |
'type' => 'text'
|
201 |
),
|
202 |
array (
|
203 |
'name' => 'num',
|
204 |
+
'label' => __('Number of tweets','twitter-api'),
|
205 |
+
'type' => 'number'
|
206 |
+
),
|
207 |
+
array (
|
208 |
+
'name' => 'pop',
|
209 |
+
'label' => __('Minimum popularity','twitter-api'),
|
210 |
+
'type' => 'number'
|
211 |
),
|
212 |
array (
|
213 |
'name' => 'rts',
|
214 |
+
'label' => __('Show Retweets','twitter-api'),
|
215 |
'type' => 'bool'
|
216 |
),
|
217 |
array (
|
218 |
'name' => 'ats',
|
219 |
+
'label' => __('Show Replies','twitter-api'),
|
220 |
'type' => 'bool'
|
221 |
),
|
222 |
);
|
223 |
+
$name or $name = __('Latest Tweets','twitter-api');
|
224 |
+
parent::__construct( $id_base, $name, $widget_options, $control_options );
|
225 |
}
|
226 |
|
227 |
/* ensure no missing keys in instance params */
|
230 |
$instance = array();
|
231 |
}
|
232 |
$instance += array (
|
233 |
+
'title' => __('Latest Tweets','twitter-api'),
|
234 |
'screen_name' => '',
|
235 |
+
'num' => 5,
|
236 |
+
'pop' => 0,
|
237 |
'rts' => '',
|
238 |
'ats' => '',
|
239 |
);
|
254 |
}
|
255 |
else {
|
256 |
$attrs = '';
|
257 |
+
echo '<p>'.$label.'<br /><input class="widefat" type="',$val['type'],'" value="'.esc_attr($value).'" id="'.$elmid.'" name="'.$fname.'" /></p>';
|
258 |
}
|
259 |
}
|
260 |
}
|
265 |
// title is themed via Wordpress widget theming techniques
|
266 |
$title = $args['before_title'] . apply_filters('widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
|
267 |
// by default tweets are rendered as an unordered list
|
268 |
+
$items = latest_tweets_render( $screen_name, $num, $rts, $ats, $pop );
|
269 |
$list = apply_filters('latest_tweets_render_list', $items, $screen_name );
|
270 |
if( is_array($list) ){
|
271 |
$list = '<ul><li>'.implode('</li><li>',$items).'</li></ul>';
|
306 |
|
307 |
if( is_admin() ){
|
308 |
if( ! function_exists('twitter_api_get') ){
|
309 |
+
require_once dirname(__FILE__).'/api/twitter-api.php';
|
310 |
}
|
311 |
// extra visibility of API settings link
|
312 |
function latest_tweets_plugin_row_meta( $links, $file ){
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://timwhitlock.info/donate-to-a-project/
|
|
4 |
Tags: twitter, tweets, oauth, api, rest, api, widget, sidebar
|
5 |
Requires at least: 3.5.1
|
6 |
Tested up to: 3.5.1
|
7 |
-
Stable tag: 1.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -21,7 +21,7 @@ Built by <a href="//twitter.com/timwhitlock">@timwhitlock</a> / <a rel="author"
|
|
21 |
|
22 |
The underlying Twitter API library is [available on Github](https://github.com/timwhitlock/wp-twitter-api)
|
23 |
|
24 |
-
Also by this author: [Loco Translate](http://wordpress.org/
|
25 |
|
26 |
|
27 |
== Installation ==
|
@@ -62,12 +62,18 @@ These details are available in the [Twitter dashboard](https://dev.twitter.com/a
|
|
62 |
|
63 |
Once you've populated the first two fields, just click the *Connect* button and follow the prompts.
|
64 |
|
65 |
-
=
|
66 |
|
67 |
-
|
|
|
|
|
|
|
|
|
|
|
68 |
`add_filter('https_ssl_verify', '__return_false');`
|
69 |
Do so at your own risk.
|
70 |
|
|
|
71 |
== Screenshots ==
|
72 |
|
73 |
1. Widget screen shows feed options
|
@@ -75,6 +81,16 @@ Do so at your own risk.
|
|
75 |
|
76 |
== Changelog ==
|
77 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
= 1.0.15 =
|
79 |
* Passing additional params to widget_title filter
|
80 |
* Stripping four-byte Unicode sequences before wp cache inserts
|
@@ -137,7 +153,7 @@ Do so at your own risk.
|
|
137 |
|
138 |
== Upgrade Notice ==
|
139 |
|
140 |
-
= 1.0
|
141 |
* Bug fixes and improvements available.
|
142 |
|
143 |
|
4 |
Tags: twitter, tweets, oauth, api, rest, api, widget, sidebar
|
5 |
Requires at least: 3.5.1
|
6 |
Tested up to: 3.5.1
|
7 |
+
Stable tag: 1.1.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
21 |
|
22 |
The underlying Twitter API library is [available on Github](https://github.com/timwhitlock/wp-twitter-api)
|
23 |
|
24 |
+
Also by this author: [Loco Translate](http://wordpress.org/plugins/loco-translate/)
|
25 |
|
26 |
|
27 |
== Installation ==
|
62 |
|
63 |
Once you've populated the first two fields, just click the *Connect* button and follow the prompts.
|
64 |
|
65 |
+
= What is the "Minimum popularity" field? =
|
66 |
|
67 |
+
Here you can specify a number of retweets and favourites that a tweet must have before it's displayed.
|
68 |
+
This is useful for only showing your most interesting content.
|
69 |
+
|
70 |
+
= How can I prevent SSL certificate errors? =
|
71 |
+
|
72 |
+
If you're unable too fix your [PHP cURL](https://php.net/manual/en/book.curl.php) installation, you can disable SSL verification of twitter.com by adding this to your theme functions.php:
|
73 |
`add_filter('https_ssl_verify', '__return_false');`
|
74 |
Do so at your own risk.
|
75 |
|
76 |
+
|
77 |
== Screenshots ==
|
78 |
|
79 |
1. Widget screen shows feed options
|
81 |
|
82 |
== Changelog ==
|
83 |
|
84 |
+
= 1.1.0 =
|
85 |
+
* Handling of truncated retweets
|
86 |
+
* Restructured library directory
|
87 |
+
* More friendly front end error when not configured
|
88 |
+
* Caching disabled in debug mode
|
89 |
+
* Empty timezone_string fix
|
90 |
+
* Better tweet linkifying using entities
|
91 |
+
* Better l10n bootstrapping
|
92 |
+
* Added minimum tweet popularity
|
93 |
+
|
94 |
= 1.0.15 =
|
95 |
* Passing additional params to widget_title filter
|
96 |
* Stripping four-byte Unicode sequences before wp cache inserts
|
153 |
|
154 |
== Upgrade Notice ==
|
155 |
|
156 |
+
= 1.1.0 =
|
157 |
* Bug fixes and improvements available.
|
158 |
|
159 |
|