Siebrand Mazeland
1652ded48c
i18n/L10n review, extension credits added.
2010-10-04 00:02:24 +02:00
Siebrand Mazeland
362f395e03
Add documentation URL.
2010-10-03 23:56:13 +02:00
Siebrand Mazeland
67f97194e4
i18n/L10n review, plugin credits added.
2010-10-03 23:54:57 +02:00
Siebrand Mazeland
458512aafd
Localisation updates from http://translatewiki.net
2010-10-03 22:46:38 +02:00
Siebrand Mazeland
0f4f6fdb01
* i18n/L10n review.
...
* add onPluginVersion()
2010-10-02 22:25:32 +02:00
Brion Vibber
5c2b073a50
NoticeTitle plugin: link the post title to detail view of the post
2010-10-01 17:54:47 -07:00
Siebrand Mazeland
08054e85fe
Localisation updates from http://translatewiki.net .
2010-10-01 22:34:59 +02:00
Siebrand Mazeland
3dd921332d
Add plugin description thanks to Brion.
2010-10-01 22:21:12 +02:00
Siebrand Mazeland
04b70219db
* i18n review/translator hints added.
...
* whitespace updates.
* added @todo because of missing plugin description. I wasn't able to find out what this does exactly quick enough.
2010-10-01 22:15:26 +02:00
Siebrand Mazeland
2188b6d501
* i18n review/translator documentation added.
...
* onPluginVersion() added.
2010-10-01 22:11:38 +02:00
Siebrand Mazeland
f415e2353d
* i18n review
...
* onPluginVersion
2010-10-01 22:01:18 +02:00
Siebrand Mazeland
267d7b6bff
* i18n review
...
* onPluginVersion() added
2010-10-01 21:53:20 +02:00
Siebrand Mazeland
06ca06fbd1
* L10/i18n review.
...
* Translator hints added
* whitespace updates
2010-10-01 21:45:19 +02:00
Zach Copley
33b16be0a4
Better markup for anon fave tally
2010-10-01 11:31:44 -07:00
Zach Copley
8439774cf7
Allow turning off Anonymous Favoring for specific users' notices
2010-10-01 11:12:53 -07:00
Brion Vibber
d8df140ebb
ShareNotice plugin -- basic buttons per-notice to share the text & a link to the notice on other sites.
...
Default settings list Twitter, Facebook, and Identi.ca as targets.
Using icons built-in, and no magic offsite JS or anything so it won't slow down or break if third-party site goes down.
Default styles are a little limited, but can be customized in theme should one be so inclined.
2010-09-30 18:05:45 -07:00
Brion Vibber
6e58a926e3
ForceGroup plugin: optionally force new users to join a particular group or set of groups on registration; and/or to force posts by members of particular groups to be posted into those groups even if not explicitly mentioned. The posting feature requires a couple quick hook additions in core.
2010-09-30 18:05:44 -07:00
Brion Vibber
8c85f83300
GroupFavorited plugin: adds 'Popular' tab to group navigation showing a popular pages subset for just posts in the group. Not necessarily terribly efficient, should be tested and benchmarked on non-trivial sites
2010-09-30 18:05:44 -07:00
Brion Vibber
ff906331d6
fix comment
2010-09-30 18:05:44 -07:00
Brion Vibber
cb449682e3
Initial SlicedFavorites plugin to allow for customized variants of 'Popular' tab (favorited action) that include or exclude a given set of users. No added UI tabs in this version, beware!
2010-09-30 18:05:44 -07:00
Brion Vibber
46167d6b35
ShareNotice plugin -- basic buttons per-notice to share the text & a link to the notice on other sites.
...
Default settings list Twitter, Facebook, and Identi.ca as targets.
Using icons built-in, and no magic offsite JS or anything so it won't slow down or break if third-party site goes down.
Default styles are a little limited, but can be customized in theme should one be so inclined.
2010-09-30 18:03:25 -07:00
Zach Copley
d8d557cadf
Merge branch 'restricted-disqus' into 0.9.x
2010-09-30 17:00:13 -07:00
Zach Copley
84fba0271d
Forgot to update a call in DisqusPlugin
2010-09-30 16:59:05 -07:00
Zach Copley
1770bcaa60
Merge branch 'restricted-disqus' into 0.9.x
2010-09-30 16:53:44 -07:00
Zach Copley
cdd43d8da9
Less intrusive insertion of Disqus notice count into notice lists
2010-09-30 16:51:19 -07:00
Zach Copley
0d5dadc81d
Change Disqus plugin to allow restricting to users with "richedit" role
2010-09-30 16:39:56 -07:00
Brion Vibber
55a080ea4e
ForceGroup plugin: optionally force new users to join a particular group or set of groups on registration; and/or to force posts by members of particular groups to be posted into those groups even if not explicitly mentioned. The posting feature requires a couple quick hook additions in core.
2010-09-30 16:25:15 -07:00
Brion Vibber
2ecbae308d
GroupFavorited plugin: adds 'Popular' tab to group navigation showing a popular pages subset for just posts in the group. Not necessarily terribly efficient, should be tested and benchmarked on non-trivial sites
2010-09-30 15:56:38 -07:00
Brion Vibber
5c11ad15e1
fix comment
2010-09-30 14:52:00 -07:00
Brion Vibber
3ed726bbcc
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
2010-09-30 14:47:53 -07:00
Brion Vibber
143897bf45
Initial SlicedFavorites plugin to allow for customized variants of 'Popular' tab (favorited action) that include or exclude a given set of users. No added UI tabs in this version, beware!
2010-09-30 14:46:32 -07:00
Zach Copley
23c45d6c49
Merge branch 'anon-fave-plugin' into 0.9.x
2010-09-30 13:59:02 -07:00
Zach Copley
8a28d9cc4d
Merge branch 'anon-fave-plugin'
2010-09-30 13:57:39 -07:00
Brion Vibber
8ad933c86f
Add 'restricted' option to NoticeTitle; if set, only users with 'richedit' role get the fancy extra title field.
2010-09-30 13:33:25 -07:00
Brion Vibber
d7f03dab9e
Added an option to TinyMCE plugin to restrict the rich-text editor to users who have the 'richedit' role. This allows enabling it for a subset of accounts on a site while leaving other users using the regular posting system, which is more stable.
2010-09-30 13:33:20 -07:00
Brion Vibber
bc2b72a872
Add 'restricted' option to NoticeTitle; if set, only users with 'richedit' role get the fancy extra title field.
2010-09-30 13:30:39 -07:00
Brion Vibber
8c37b86e73
Added an option to TinyMCE plugin to restrict the rich-text editor to users who have the 'richedit' role. This allows enabling it for a subset of accounts on a site while leaving other users using the regular posting system, which is more stable.
2010-09-30 13:22:25 -07:00
Brion Vibber
93bea7ff28
Fix for OpenID-only private sites: we were removing the 'login' and 'register' actions from the routing system entirely, which meant that login links & redirects from unauthenticated views on private sites (as well as various re-auth situations even on non-private sites) would break and send to the main page instead.
...
Changed it to leave the 'login' and 'register' actions in the system; we're already taking them over and redirecting them to the OpenID login page, so they won't be reached by accident; but now those redirects can be reached on purpose. ;)
Better long-term fix may be to allow some aliasing, so we can have common_local_url('login') actually send us straight to the OpenID login page instead of having to go through an intermediate redirect, but this'll do.
2010-09-30 12:35:25 -07:00
Brion Vibber
20f2167425
Merge branch 'master' of gitorious.org:statusnet/mainline into feedfix
2010-09-30 11:31:29 -07:00
Brion Vibber
1acc7d66c6
Always specify UTF-8 targt charset for html_entity_decode(); default is 8-bit ISO-8859-1 which causes things to break when we later pass them through things that expect to work with UTF-8. For instance, running through preg_replace() with the /u option results in NULL, leading to problems with OStatus and SubMirror generating their plaintext versions and doing length-cropping.
2010-09-30 11:29:31 -07:00
Zach Copley
8e7532245a
Remove debugging statements
2010-09-29 16:35:17 -07:00
Zach Copley
54f19da3ab
Make createAnonProfile() static
2010-09-29 16:35:16 -07:00
Zach Copley
f79f44801c
- Lookup anon profiles by ID (safer because they are guranteed to be unique) and probably faster
...
- Obfuscate the anonymous user session token to make it hard to figure out the profile ID
2010-09-29 16:35:15 -07:00
Zach Copley
0fe0f42173
Ajax update notice tally
2010-09-29 16:35:15 -07:00
Zach Copley
9109fe3c63
Set initialize_fave_tallys.php executable
2010-09-29 16:35:14 -07:00
Zach Copley
4d6973cd70
Intialize new fave tallys with total existing fave count per notice
2010-09-29 16:35:13 -07:00
Zach Copley
5b49fc25bf
- Increment/decrement notice fave tally
...
- Display tally in notice output
2010-09-29 16:35:13 -07:00
Zach Copley
73297d3749
New DB_DataObject for storing favorites tally
2010-09-29 16:35:13 -07:00
Zach Copley
c10f17dc6b
Initial plugin for allowing anonymous favoriting
2010-09-29 16:35:13 -07:00
Brion Vibber
91f25ca817
YammerImport admin UI now auto-refreshes during running BG progress, whee
2010-09-28 15:59:30 -07:00
Brion Vibber
62d9b66dff
Made YammerImport more robust against errors; can now pause/resume/reset the import state from the admin interface.
2010-09-28 15:59:29 -07:00
Brion Vibber
c62e4d0800
YammerImport: fix for importing over existing user/group nicknames; copies the new data if available onto the existing entry
2010-09-28 15:59:29 -07:00
Brion Vibber
3a1f1a49b2
YammerImport: set some more default fields for user_group registration (still need a group admin tho)
2010-09-28 15:59:29 -07:00
Brion Vibber
782046dc01
YammerImporter: 'group_id' field not always present in message data; avoid notice warning when checking it if it's missing
2010-09-28 15:59:29 -07:00
Brion Vibber
ee6b4c409d
YammerImport admin UI now auto-refreshes during running BG progress, whee
2010-09-28 15:54:44 -07:00
Brion Vibber
588758ed6d
Made YammerImport more robust against errors; can now pause/resume/reset the import state from the admin interface.
2010-09-28 15:45:00 -07:00
Brion Vibber
6cf7b24017
YammerImport: fix for importing over existing user/group nicknames; copies the new data if available onto the existing entry
2010-09-28 13:33:37 -07:00
Brion Vibber
17e5ffbe4e
YammerImport: set some more default fields for user_group registration (still need a group admin tho)
2010-09-28 13:07:55 -07:00
Brion Vibber
05682afee4
YammerImporter: 'group_id' field not always present in message data; avoid notice warning when checking it if it's missing
2010-09-28 13:02:34 -07:00
Brion Vibber
a8d0c04870
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
2010-09-28 12:59:23 -07:00
Siebrand Mazeland
f6c1b8aa49
Localisation updates from http://translatewiki.net
...
* adding the fuzzy messages back now that translatewiki.net processes them properly again.
2010-09-28 21:06:47 +02:00
Brion Vibber
c20cfe2d8e
PHP 5.2 compat fix in YammerPlugin (can't call $var::staticFunction() directly until PHP 5.3)
2010-09-28 11:52:19 -07:00
Brion Vibber
f0b39defb2
Merge branch 'yammer' of gitorious.org:~brion/statusnet/brion-fixes into 0.9.x
2010-09-27 17:26:14 -07:00
Brion Vibber
0477101af7
update README for YammerImport
2010-09-27 17:12:06 -07:00
Brion Vibber
f528cc5548
Yammer import API keys can now be overridden by the admin.
2010-09-27 16:56:48 -07:00
Siebrand Mazeland
ec7ab3af4d
Localisation updates from http://translatewiki.net
...
* first export of L10n for languages other than English. Could use some testing/QA.
2010-09-28 01:09:29 +02:00
Siebrand Mazeland
430d1da976
Update POT files.
2010-09-28 00:03:06 +02:00
Brion Vibber
7c4fcefd31
Enhanced OStatus fixup-shadow.php cleanup script to check for direct matches against user.uri and user_group.uri (for local groups). This should catch cases that were missed before because we were only doing pattern-matching checks, and the pattern didn't match because the site has been renamed and the old URI no longer matches the current domain / path structure.
...
Could use some more thorough testing in practice!
2010-09-27 14:23:10 -07:00
Brion Vibber
585c7f35ca
Yammer import (work run via background queues) now can be started from the admin panel! :DDDD Still requires that the app be registered on your network manually first.
2010-09-27 13:34:35 -07:00
Brion Vibber
05c12c58bb
Ok, got the AJAX clicky-throughs working for yammer auth (if app is already registered), but needs prettification. Yammer ignores callback URLs unless they're pre-registered with the app, and this apparently requires manual intervention to become a 'trusted' app, you don't get it on those you register yourself. Sigh. Also can't use an iframe since it breaks out of the frame (fair 'nuff)
2010-09-27 12:34:01 -07:00
Brion Vibber
eeaab2bc00
Work in progress on fixing auth... looks like the iframe doesn't work though. Sigh.
2010-09-27 12:24:10 -07:00
Brion Vibber
80e0e60c37
Add a comment in UserxrdAction warning future maintainers not to break domain migrations if adding domain checking to the webfinger lookup in future.
2010-09-27 11:38:26 -07:00
Brion Vibber
617b6f4f7d
User user_group.uri to look up local groups for OStatus addressing checks when available. Will still fall back to the URL-scheme-checking code if there's no matching user_group record.
...
Should help with keeping remote groups working when renaming sites -- as long as user_group.uri has been filled out on the site changing its domain and other issues with POST handling are resolved.
2010-09-27 11:29:54 -07:00
Brion Vibber
a6469aeed8
Fix PHP syntax errors introduced during localization fixups in a few files.
2010-09-25 12:10:36 -07:00
Evan Prodromou
0dc5080a5d
Merge remote branch 'gitorious/master'
2010-09-25 06:30:36 -04:00
Zach Copley
dc63626641
Optionally restrict Disqus comments to specific users' notices
2010-09-24 18:29:02 -07:00
Brion Vibber
ebbbaba378
Work in progress on getting the frontend Yammer import form going....
2010-09-24 17:22:44 -07:00
Brion Vibber
19adb7c8d3
Pretty it up a bit more
2010-09-24 16:27:33 -07:00
Brion Vibber
35119f4072
Pretty up the Yammer import status display a bit
2010-09-24 16:15:45 -07:00
Brion Vibber
d962f7092f
Initial progress display of Yammer import state in admin panel
2010-09-24 14:52:51 -07:00
Evan Prodromou
210e486d80
remove unnecesssary fieldset from sitemap admin panel
2010-09-24 16:50:03 -04:00
Brion Vibber
bdd8a587e7
Ok, command-line workflow for YammerImportPlugin seems to mostly work, at least on tiny test site :D
2010-09-23 17:55:13 -07:00
Brion Vibber
dd414db9ea
Work in progress: most of the infrastructure for running import via BG queues or CLI script is now in place (untested, no UI, needs tweaks & fixes)
2010-09-23 16:40:22 -07:00
Zach Copley
62f7d6c74d
Fix strings in Disqus plugin for i18n
2010-09-23 15:46:01 -07:00
Brion Vibber
eb8be9988e
Work in progress: YammerRunner state machine wrapper for running the Yammer import in chunks.
2010-09-23 15:23:56 -07:00
Brion Vibber
5183997e35
A little more cleanup...
2010-09-23 12:52:58 -07:00
Brion Vibber
44ff13c947
More doc comments on SN_YammerClient
2010-09-22 17:53:38 -07:00
Brion Vibber
084befc32f
WORK IN PROGRESS: Starting infrastructure to initiate Yammer import from web UI and process it in the background queues. Totally not complete yet.
2010-09-22 17:51:50 -07:00
Siebrand Mazeland
870be512d2
Update POT files for plugins.
2010-09-23 00:37:16 +02:00
Brion Vibber
a005210438
Initial README for yammer importer
2010-09-22 13:12:39 -07:00
Brion Vibber
12ec7efe90
Split Yammer importer files into subdirs before I get too lost adding UI
2010-09-22 12:52:34 -07:00
Evan Prodromou
b5cfcba471
Merge branch '0.9.x' into activityexport
...
Conflicts:
plugins/OStatus/OStatusPlugin.php
2010-09-22 10:45:34 -04:00
Evan Prodromou
f0105893b0
Merge remote branch 'gitorious/0.9.x' into 0.9.x
2010-09-22 10:35:27 -04:00
Brion Vibber
acd7613933
Fixes for Yammer groups import: pulling explicit list, fixed avatar fetch
2010-09-21 23:19:36 -07:00
Brion Vibber
7a381f2533
Support non-image file uploads in Yammer import
2010-09-21 22:00:25 -07:00
Brion Vibber
0ed506ee93
Add group link on Yammer import (won't work until memberships are fixed)
2010-09-21 18:21:36 -07:00
Brion Vibber
da87d4334a
Fetch more user data in Yammer imports, including the primary email address (preconfirmed, so we can do stuff like tell people to reset their passwords and log in!) and some bio info.
2010-09-21 18:15:32 -07:00
Brion Vibber
9652e77376
Yammer import: mark group posts with the proper group inbox (should we append a !foo or leave them as is, as current?)
2010-09-21 17:35:32 -07:00
Brion Vibber
db5a4ce70d
Pull group descriptions in Yammer import
2010-09-21 17:25:02 -07:00
Brion Vibber
ed3d9a11bf
Image file attachment support for Yammer import
2010-09-21 17:08:40 -07:00
Brion Vibber
47cf29b2a2
Copy favorites in Yammer importer
2010-09-21 16:27:26 -07:00
Brion Vibber
9be9d2f720
Full dump of input data in yamdump also for my reference...
2010-09-21 16:27:10 -07:00
Brion Vibber
0ff28ac8e0
Fix for replies in Yammer import
2010-09-21 16:19:02 -07:00
Brion Vibber
8091c4d291
Avatars for Yammer import
2010-09-21 16:10:44 -07:00
Brion Vibber
3e2cf3876d
Initial semi-working yammer import :D
...
* no avatars
* no details of user accounts or their auth info
* no group memberships or subscriptions
* no attachments
* will probably esplode if >20 messages in your network *whistle innocently*
2010-09-21 15:54:39 -07:00
Brion Vibber
5b9efbb501
fix notices in SN_YammerClient
2010-09-21 15:29:04 -07:00
Brion Vibber
9b1b9b711b
Poking around at import funcs...
2010-09-21 15:24:14 -07:00
Craig Andrews
2db8aa3ec3
Do not allow blank passwords when authenticating against LDAP.
2010-09-21 18:06:24 -04:00
Craig Andrews
8d019c03ee
Do not allow blank passwords when authenticating against LDAP.
2010-09-21 18:05:18 -04:00
Brion Vibber
05af14e1ca
YammerImport: initial processing code for users, groups, and messages
2010-09-21 14:56:20 -07:00
Brion Vibber
14a3697a61
Beginning stub of Yammer message->notice import
2010-09-21 13:56:30 -07:00
Brion Vibber
025184ce75
Split SN_YammerClient out to own class file
2010-09-21 13:29:44 -07:00
Brion Vibber
324fada5ea
initial work on yammer importer code
2010-09-21 13:13:37 -07:00
Brion Vibber
42dd460d3b
Merge branch 'master' into 0.9.x
2010-09-21 12:48:16 -07:00
Evan Prodromou
78ed0348b0
Merge remote branch 'gitorious/0.9.x' into 0.9.x
2010-09-21 14:07:48 -04:00
Evan Prodromou
f7ec40fa42
make some static functions public for OStatus_profile
2010-09-21 06:13:19 -04:00
Brion Vibber
f9e04993dd
Bump up HTTP timeout for OStatus remote-tests.php to 60 seconds; when running without queues and with only bcmath, salmon key generation is absurdly slow.
2010-09-20 16:26:50 -07:00
Brion Vibber
64cdbe6c55
Ticket #2750 : fixes to HTTP caching behavior across login/logout boundaries
...
* now ignoring if-modified-since if we failed an etag if-none-match comparison, per spec
* now including a hash of user id/nickname in most etags, so we'll update the view properly after login/logout
For API methods, checking the API-auth'ed user. (Many change results to include things like 'you're subscribed to this user' or 'this is one of your favorites', so user info is again needed)
There'll still be some last-modified stamps that aren't including user info properly, probably.
2010-09-20 13:42:58 -07:00
Siebrand Mazeland
10f6e14134
Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x
2010-09-20 21:12:56 +02:00
Siebrand Mazeland
bccbe8f519
* i18n/L10n update.
...
* superfluous whitespace removed.
2010-09-20 21:12:43 +02:00
Siebrand Mazeland
a58877a2f8
* i18n/L10n update.
...
* added onPluginVersion().
* superfluous whitespace removed.
2010-09-20 21:12:07 +02:00
Siebrand Mazeland
5cc08ccd07
Superfluous whitespace removed.
2010-09-20 21:11:05 +02:00
Brion Vibber
a3de417ca5
DirectionDetector plugin: tabs to spaces
2010-09-20 12:02:04 -07:00
Brion Vibber
d055b63187
DirectionDetector plugin: cleanup on reference usage & code comments.
...
Changed getClearText() to return its value instead of changing the input to keep things clearer to maintainers.
2010-09-20 12:00:39 -07:00
Siebrand Mazeland
500f8e5a87
* i18n/L10n updates.
...
* remove superfluous whitespace.
2010-09-20 20:54:30 +02:00
Brion Vibber
2475e25e78
Update DirectionDetector plugin to 0.2.0 from everplays
2010-09-20 11:49:39 -07:00
Siebrand Mazeland
e0952bf56b
Superfluous whitespace removed.
2010-09-20 20:40:55 +02:00
Siebrand Mazeland
c0bc3b3042
Superfluous whitespace removed.
2010-09-20 20:39:28 +02:00
Siebrand Mazeland
b4887a0756
Add FIXME for bad message implementation.
2010-09-20 20:00:33 +02:00
Siebrand Mazeland
9679467201
Add onPluginVersion()
2010-09-20 19:59:13 +02:00
Siebrand Mazeland
dfa164069d
Superfluous whitespace removed.
2010-09-20 19:46:01 +02:00
Siebrand Mazeland
f975c17329
Add onPluginVersion()
2010-09-20 19:45:43 +02:00
Siebrand Mazeland
3005f26aa2
Add onPluginVersion()
2010-09-20 19:42:56 +02:00
Siebrand Mazeland
2236e2eaf0
Remove superfluous whitespace.
2010-09-20 19:38:36 +02:00
Siebrand Mazeland
7f3731e2ba
Add onPluginVersion()
2010-09-20 19:38:00 +02:00
Siebrand Mazeland
a4a39a2cc3
FIx inconsistencies in onPluginVersion()
2010-09-20 19:37:43 +02:00
Siebrand Mazeland
667cfcc84a
* add onPluginVersion()
...
* remove superfluous whitespace.
2010-09-20 19:36:09 +02:00
Siebrand Mazeland
c932c0fdc1
Update pot files for plugins.
2010-09-19 17:44:29 +02:00
Siebrand Mazeland
74785c64f8
* L10n i18n update
...
* add translator hints
* update whitespace
* added a bunch of @todos.
2010-09-19 16:32:19 +02:00
Siebrand Mazeland
ecafae8472
* Remove trailing newline in e-mail message.
...
* Superfluous whitespace removed.
2010-09-19 15:52:53 +02:00
Siebrand Mazeland
5a6f616206
* i18n/L10n update
...
* translator comments added
* remove superfluous whitespace
2010-09-19 15:17:36 +02:00
Siebrand Mazeland
8dafb4c612
Add pot files.
2010-09-19 00:26:47 +02:00
Siebrand Mazeland
cf3f693687
Remove superfluous whitespace.
2010-09-19 00:25:52 +02:00
Siebrand Mazeland
8135f7d960
Update pot files for plugins.
2010-09-19 00:24:48 +02:00
Siebrand Mazeland
f1d78942b3
L10n updates.
2010-09-19 00:23:10 +02:00
Siebrand Mazeland
53cfa5349f
* L10n update
...
* superfluous whitespace removed.
2010-09-19 00:20:16 +02:00
Siebrand Mazeland
1564b6aa49
* L10n update
...
* remove superfluous whitespace
2010-09-19 00:19:02 +02:00
Siebrand Mazeland
8b44063ca1
* L10n update
...
* superfluous whitespace removed
2010-09-19 00:17:24 +02:00
Siebrand Mazeland
159e3e7b71
Fix typo
2010-09-19 00:13:06 +02:00
Siebrand Mazeland
02299d5bd7
* i18n/L10n updates.
...
* add FIXMEs for bad i18n.
* add translator hints.
2010-09-19 00:06:21 +02:00