diff --git a/admin/l10n/messages.pot b/admin/l10n/messages.pot new file mode 100644 index 0000000000..c30a445431 --- /dev/null +++ b/admin/l10n/messages.pot @@ -0,0 +1,91 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-06-19 23:32+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../templates/app.php:22 +msgid "read more" +msgstr "" + +#: ../templates/app.php:24 +msgid "INSTALL" +msgstr "" + +#: ../templates/app_noconn.php:6 ../templates/apps.php:6 +msgid "Apps Repository" +msgstr "" + +#: ../templates/app_noconn.php:7 +msgid "Cannot connect to apps repository" +msgstr "" + +#: ../templates/apps.php:13 ../templates/users.php:6 ../templates/users.php:20 +#: ../templates/users.php:50 +msgid "Name" +msgstr "" + +#: ../templates/apps.php:14 +msgid "Modified" +msgstr "" + +#: ../templates/system.php:6 +msgid "Administration" +msgstr "" + +#: ../templates/system.php:7 +msgid "System Settings" +msgstr "" + +#: ../templates/users.php:13 +msgid "Add user" +msgstr "" + +#: ../templates/users.php:21 +msgid "Password" +msgstr "" + +#: ../templates/users.php:30 +msgid "Create user" +msgstr "" + +#: ../templates/users.php:40 ../templates/users.php:68 +msgid "remove" +msgstr "" + +#: ../templates/users.php:46 +msgid "Groups" +msgstr "" + +#: ../templates/users.php:58 +msgid "Create group" +msgstr "" + +#: ../templates/users.php:94 +msgid "Force new password:" +msgstr "" + +#: ../templates/users.php:96 +msgid "Set" +msgstr "" + +#: ../templates/users.php:102 +msgid "Do you really want to delete user" +msgstr "" + +#: ../templates/users.php:109 +msgid "Do you really want to delete group" +msgstr "" diff --git a/admin/l10n/xgettextfiles b/admin/l10n/xgettextfiles new file mode 100644 index 0000000000..37acbc25de --- /dev/null +++ b/admin/l10n/xgettextfiles @@ -0,0 +1,5 @@ +../templates/app.php +../templates/app_noconn.php +../templates/apps.php +../templates/system.php +../templates/users.php diff --git a/docs/createtranslation.pl b/docs/createtranslation.pl index 4c1c7c38d7..12ba22a5ea 100644 --- a/docs/createtranslation.pl +++ b/docs/createtranslation.pl @@ -16,6 +16,7 @@ foreach my $i ( @files ){ my @strings = (); foreach my $key ( keys( %{$hash} )){ next if $key eq '""'; + next if $hash->{$key}->msgstr() eq '""'; push( @strings, $hash->{$key}->msgid()." => ".$hash->{$key}->msgstr()); } diff --git a/docs/getstrings.pl b/docs/getstrings.pl new file mode 100644 index 0000000000..0325438b55 --- /dev/null +++ b/docs/getstrings.pl @@ -0,0 +1,18 @@ +#!/usr/bin/perl +use strict; + +if( -e 'messages.pot' ){ + `xgettext --files-from=xgettextfiles --join-existing --output=messages.pot --keyword=t` +} +else{ + `xgettext --files-from=xgettextfiles --output=messages.pot --keyword=t` +} + +opendir( DIR, '.' ); +my @files = readdir( DIR ); +closedir( DIR ); + +foreach my $i ( @files ){ + next unless $i =~ m/^(.*)\.po$/; + `xgettext --files-from=xgettextfiles --join-existing --output=$i --keyword=t` +} diff --git a/index.php b/index.php index f4d6f27a3c..5aaa8fb89c 100644 --- a/index.php +++ b/index.php @@ -27,6 +27,8 @@ require_once(dirname(__FILE__).'/lib/base.php'); require_once('appconfig.php'); require_once('template.php'); +OC_UTIL::addScript('setup'); + $not_installed = !OC_CONFIG::getValue('installed', false); $install_called = (isset($_POST['install']) AND $_POST['install']=='true'); diff --git a/js/js.js b/js/js.js index a6765ec62d..7e44b7ce6d 100644 --- a/js/js.js +++ b/js/js.js @@ -1,26 +1,23 @@ -$(document).ready(function() { - // Hide the MySQL config div if needed : - if(!$('#mysql').is(':checked') && $('#hasSQLite').val()=='true') { - $('#use_mysql').hide(); - } - - $('#datadirField').hide(250); - if($('#hasSQLite').val()=='true'){ - $('#databaseField').hide(250); - } - - $('#sqlite').click(function() { - $('#use_mysql').slideUp(250); - }); - - $('#mysql').click(function() { - $('#use_mysql').slideDown(250); - }); - - $('#showAdvanced').click(function() { - $('#datadirField').slideToggle(250); - if($('#hasSQLite').val()=='true'){ - $('#databaseField').slideToggle(250); +var _l10ncache = {}; +function t(app,text){ + if( !( app in _l10ncache )){ + $.post( oc_webroot+'/l10n/javascript.php', {'app': app}, function(jsondata){ + _l10ncache[app] = jsondata.data; + }); + + // Bad answer ... + if( !( app in _l10ncache )){ + _l10ncache[app] = []; } - }); + } + if( typeof( _l10ncache[app][text] ) !== 'undefined' ){ + return _l10ncache[app][text]; + } + else{ + return text; + } +} + +$(document).ready(function(){ + // Put fancy stuff in here }); diff --git a/js/setup.js b/js/setup.js new file mode 100644 index 0000000000..b4616b8b14 --- /dev/null +++ b/js/setup.js @@ -0,0 +1,26 @@ +$(document).ready(function() { + // Hide the MySQL config div if needed : + if(!$('#mysql').is(':checked') && $('#hasSQLite').val()=='true') { + $('#use_mysql').hide(); + } + + $('#datadirField').hide(250); + if($('#hasSQLite').val()=='true'){ + $('#databaseField').hide(250); + } + + $('#sqlite').click(function() { + $('#use_mysql').slideUp(250); + }); + + $('#mysql').click(function() { + $('#use_mysql').slideDown(250); + }); + + $('#showAdvanced').click(function() { + $('#datadirField').slideToggle(250); + if($('#hasSQLite').val()=='true'){ + $('#databaseField').slideToggle(250); + } + }); +}); diff --git a/l10n/de.php b/l10n/de.php new file mode 100644 index 0000000000..fb00345e69 --- /dev/null +++ b/l10n/de.php @@ -0,0 +1,11 @@ + "Sie wurden abgemeldet.", +"Set where to store the data." => "Speicherort der Daten", +"Advanced" => "Erweitert", +"prev" => "zurück", +"Login:" => "Benutzername:", +"Login failed!" => "Anmeldung Fehlgeschlagen!", +"next" => "weiter", +"Password:" => "Passwort:", +"Search" => "Suchen" +); diff --git a/l10n/de.po b/l10n/de.po new file mode 100644 index 0000000000..19b12ca4aa --- /dev/null +++ b/l10n/de.po @@ -0,0 +1,120 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-06-19 23:27+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../templates/404.php:15 +msgid "Error 404, Cloud not found" +msgstr "" + +#: ../templates/installation.php:6 +msgid "Welcome to ownCloud, your personnal cloud." +msgstr "" + +#: ../templates/installation.php:7 +msgid "To finish the installation, please follow the steps below." +msgstr "" + +#: ../templates/installation.php:26 +msgid "Create an admin account." +msgstr "" + +#: ../templates/installation.php:27 +msgid "Login:" +msgstr "Benutzername:" + +#: ../templates/installation.php:28 +msgid "Password:" +msgstr "Passwort:" + +#: ../templates/installation.php:31 +msgid "Advanced" +msgstr "Erweitert" + +#: ../templates/installation.php:34 +msgid "Set where to store the data." +msgstr "Speicherort der Daten" + +#: ../templates/installation.php:35 +msgid "Data directory:" +msgstr "" + +#: ../templates/installation.php:39 +msgid "Configure your database." +msgstr "" + +#: ../templates/installation.php:43 +msgid "I will use a SQLite database. You have nothing to do!" +msgstr "" + +#: ../templates/installation.php:46 +msgid "SQLite" +msgstr "" + +#: ../templates/installation.php:53 +msgid "I will use a MySQL database." +msgstr "" + +#: ../templates/installation.php:59 +msgid "Host:" +msgstr "" + +#: ../templates/installation.php:60 +msgid "Database name:" +msgstr "" + +#: ../templates/installation.php:61 +msgid "Table prefix:" +msgstr "" + +#: ../templates/installation.php:62 +msgid "MySQL user login:" +msgstr "" + +#: ../templates/installation.php:63 +msgid "MySQL user password:" +msgstr "" + +#: ../templates/layout.guest.php:17 ../templates/layout.guest.php:20 +msgid "" +"ownCloud is a personal cloud which runs " +"on your own server.

" +msgstr "" + +#: ../templates/login.php:6 +msgid "Login failed!" +msgstr "Anmeldung Fehlgeschlagen!" + +#: ../templates/logout.php:1 +msgid "You are logged out." +msgstr "Sie wurden abgemeldet." + +#: ../templates/part.pagenavi.php:6 +msgid "prev" +msgstr "zurück" + +#: ../templates/part.pagenavi.php:26 +msgid "next" +msgstr "weiter" + +#: ../templates/part.searchbox.php:3 +msgid "Search" +msgstr "Suchen" + +#: ../templates/installation.php:68 +msgid "Finish setup" +msgstr "" diff --git a/l10n/javascript.php b/l10n/javascript.php new file mode 100644 index 0000000000..a1e84487f6 --- /dev/null +++ b/l10n/javascript.php @@ -0,0 +1,34 @@ +. +* +*/ + +// Init owncloud +require_once('../lib/base.php'); + +$app = $_POST["app"]; + +// We send json data +header( "Content-Type: application/jsonrequest" ); +$l = new OC_L10N( $app ); + +echo json_encode( array( 'status' => 'success', 'data' => $l->getTranslations())); +?> diff --git a/l10n/messages.pot b/l10n/messages.pot new file mode 100644 index 0000000000..591a1c724e --- /dev/null +++ b/l10n/messages.pot @@ -0,0 +1,120 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-06-19 23:27+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../templates/404.php:15 +msgid "Error 404, Cloud not found" +msgstr "" + +#: ../templates/installation.php:6 +msgid "Welcome to ownCloud, your personnal cloud." +msgstr "" + +#: ../templates/installation.php:7 +msgid "To finish the installation, please follow the steps below." +msgstr "" + +#: ../templates/installation.php:26 +msgid "Create an admin account." +msgstr "" + +#: ../templates/installation.php:27 +msgid "Login:" +msgstr "" + +#: ../templates/installation.php:28 +msgid "Password:" +msgstr "" + +#: ../templates/installation.php:31 +msgid "Advanced" +msgstr "" + +#: ../templates/installation.php:34 +msgid "Set where to store the data." +msgstr "" + +#: ../templates/installation.php:35 +msgid "Data directory:" +msgstr "" + +#: ../templates/installation.php:39 +msgid "Configure your database." +msgstr "" + +#: ../templates/installation.php:43 +msgid "I will use a SQLite database. You have nothing to do!" +msgstr "" + +#: ../templates/installation.php:46 +msgid "SQLite" +msgstr "" + +#: ../templates/installation.php:53 +msgid "I will use a MySQL database." +msgstr "" + +#: ../templates/installation.php:59 +msgid "Host:" +msgstr "" + +#: ../templates/installation.php:60 +msgid "Database name:" +msgstr "" + +#: ../templates/installation.php:61 +msgid "Table prefix:" +msgstr "" + +#: ../templates/installation.php:62 +msgid "MySQL user login:" +msgstr "" + +#: ../templates/installation.php:63 +msgid "MySQL user password:" +msgstr "" + +#: ../templates/installation.php:68 +msgid "Finish setup" +msgstr "" + +#: ../templates/layout.guest.php:20 +msgid "" +"ownCloud is a personal cloud which runs " +"on your own server.

" +msgstr "" + +#: ../templates/login.php:6 +msgid "Login failed!" +msgstr "" + +#: ../templates/logout.php:1 +msgid "You are logged out." +msgstr "" + +#: ../templates/part.pagenavi.php:6 +msgid "prev" +msgstr "" + +#: ../templates/part.pagenavi.php:26 +msgid "next" +msgstr "" + +#: ../templates/part.searchbox.php:3 +msgid "Search" +msgstr "" diff --git a/l10n/xgettextfiles b/l10n/xgettextfiles new file mode 100644 index 0000000000..b5d83a880d --- /dev/null +++ b/l10n/xgettextfiles @@ -0,0 +1,7 @@ +../templates/404.php +../templates/installation.php +../templates/layout.guest.php +../templates/login.php +../templates/logout.php +../templates/part.pagenavi.php +../templates/part.searchbox.php diff --git a/lib/l10n.php b/lib/l10n.php index 2f72b97117..8a7ff9d853 100644 --- a/lib/l10n.php +++ b/lib/l10n.php @@ -109,6 +109,16 @@ class OC_L10N{ return $text; } + /** + * @brief getTranslations + * @returns Fetch all translations + * + * Returns an associative array with all translations + */ + public function getTranslations(){ + return $this->translations; + } + /** * @brief Localization * @param $type Type of localization @@ -202,11 +212,10 @@ class OC_L10N{ closedir($dh); } } - if( isset($_SESSION['user_id']) && $_SESSION['user_id'] && OC_PREFERENCES::getValue( $_SESSION['user_id'], 'core', 'lang' )){ $lang = OC_PREFERENCES::getValue( $_SESSION['user_id'], 'core', 'lang' ); self::$language = $lang; - if( array_search( $lang, $available )){ + if( array_search( $lang, $available ) !== false ){ return $lang; } } @@ -226,12 +235,9 @@ class OC_L10N{ } /** - * @brief find the best language + * @brief find the l10n directory * @param $app App that needs to be translated - * @returns language - * - * Finds the best language. Depends on user settings and browser - * information + * @returns directory */ protected static function findI18nDir( $app ){ global $SERVERROOT; diff --git a/log/l10n/da.php b/log/l10n/da.php new file mode 100644 index 0000000000..8ab99277bf --- /dev/null +++ b/log/l10n/da.php @@ -0,0 +1,14 @@ + "Vis:", +"Uploads" => "Uploads", +"Filter:" => "Filter:", +"Logouts" => "Logouts", +"Logins" => "Logins", +"When" => "Hvornår", +"Downloads" => "Downloads", +"Clear log entries before" => "Slet log poster før", +"What" => "Hvilket", +"entries per page." => "poster pr side.", +"Creations" => "Oprettelser", +"Deletions" => "Sletninger" +); diff --git a/log/l10n/da.po b/log/l10n/da.po new file mode 100644 index 0000000000..5a88aedee9 --- /dev/null +++ b/log/l10n/da.po @@ -0,0 +1,67 @@ +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Mikkel Bjerg Larsen , 2011. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-06-19 16:53+0200\n" +"PO-Revision-Date: 2011-06-19 21:09+0200\n" +"Last-Translator: Mikkel Bjerg Larsen \n" +"Language-Team: American English \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../templates/index.php:4 +msgid "Filter:" +msgstr "Filter:" + +#: ../templates/index.php:7 +msgid "Logins" +msgstr "Logins" + +#: ../templates/index.php:8 +msgid "Logouts" +msgstr "Logouts" + +#: ../templates/index.php:9 +msgid "Downloads" +msgstr "Downloads" + +#: ../templates/index.php:10 +msgid "Uploads" +msgstr "Uploads" + +#: ../templates/index.php:11 +msgid "Creations" +msgstr "Oprettelser" + +#: ../templates/index.php:12 +msgid "Deletions" +msgstr "Sletninger" + +#: ../templates/index.php:15 +msgid "Show:" +msgstr "Vis:" + +#: ../templates/index.php:16 +msgid "entries per page." +msgstr "poster pr side." + +#: ../templates/index.php:26 +msgid "What" +msgstr "Hvilket" + +#: ../templates/index.php:27 +msgid "When" +msgstr "Hvornår" + +#: ../templates/index.php:45 +msgid "Clear log entries before" +msgstr "Slet log poster før" + diff --git a/log/l10n/log b/log/l10n/log index e5e074bf9a..f70eb6af3f 100644 --- a/log/l10n/log +++ b/log/l10n/log @@ -1,3 +1,4 @@ [General] LangCode=de +ProjectID=oc_log TargetLangCode=de diff --git a/templates/404.php b/templates/404.php index 8909db29a4..b287571d16 100644 --- a/templates/404.php +++ b/templates/404.php @@ -12,7 +12,7 @@ if(!isset($_)){//also provide standalone error page " alt="ownCloud" />
  • - Error 404, Cloud not found
    + t( 'Error 404, Cloud not found' ); ?>

diff --git a/templates/installation.php b/templates/installation.php index 880beb9a89..93c00547ab 100644 --- a/templates/installation.php +++ b/templates/installation.php @@ -3,8 +3,8 @@

- Welcome to ownCloud, your personnal cloud.
- To finish the installation, please follow the steps below. + t( 'Welcome to ownCloud, your personnal cloud.' ); ?>
+ t( 'To finish the installation, please follow the steps below.' ); ?>

0): ?> @@ -23,48 +23,48 @@
- Create an admin account. -

-

+ t( 'Create an admin account.' ); ?> +

+

- Advanced '> + t( 'Advanced' ); ?> '>
- Set where to store the data. -

+ t( 'Set where to store the data.' ); ?> +

- Configure your database. + t( 'Configure your database.' ); ?> -

I will use a SQLite database. You have nothing to do !

+

t( 'I will use a SQLite database. You have nothing to do!' ); ?>

-

/>

+

/>

-

I will use a MySQL database.

+

t( 'I will use a MySQL database.' ); ?>

/>

-

-

-

-

-

+

+

+

+

+

-

+

diff --git a/templates/layout.admin.php b/templates/layout.admin.php index 36b824639d..66fb3ccc60 100644 --- a/templates/layout.admin.php +++ b/templates/layout.admin.php @@ -7,6 +7,9 @@ + diff --git a/templates/layout.guest.php b/templates/layout.guest.php index c957553082..ce99b00b9f 100644 --- a/templates/layout.guest.php +++ b/templates/layout.guest.php @@ -7,6 +7,9 @@ + @@ -14,6 +17,6 @@ -

ownCloud is a personal cloud which runs on your own server.

+

t( 'ownCloud is a personal cloud which runs on your own server.

' ); ?> diff --git a/templates/layout.user.php b/templates/layout.user.php index da30df294f..f21db202a8 100644 --- a/templates/layout.user.php +++ b/templates/layout.user.php @@ -7,6 +7,9 @@ + diff --git a/templates/login.php b/templates/login.php index 845ae831a4..e0f6ce23e2 100644 --- a/templates/login.php +++ b/templates/login.php @@ -3,7 +3,7 @@
- Login failed! + t( 'Login failed!' ); ?> diff --git a/templates/logout.php b/templates/logout.php index 4a15998a5c..8cbbdd9cc8 100644 --- a/templates/logout.php +++ b/templates/logout.php @@ -1 +1 @@ -You are logged out. +t( 'You are logged out.' ); ?> \ No newline at end of file diff --git a/templates/part.pagenavi.php b/templates/part.pagenavi.php index d48d0cada3..0602b79388 100644 --- a/templates/part.pagenavi.php +++ b/templates/part.pagenavi.php @@ -3,7 +3,7 @@ 0):?> - prev   + t( 'prev' ); ?>   @@ -23,7 +23,7 @@ - next + t( 'next' ); ?> diff --git a/templates/part.searchbox.php b/templates/part.searchbox.php index 910af81ebb..7465a7326e 100644 --- a/templates/part.searchbox.php +++ b/templates/part.searchbox.php @@ -1,4 +1,4 @@ ' method='post'> '/> - + ' class='prettybutton'/> \ No newline at end of file