Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin

This commit is contained in:
Christopher Allan Webber 2011-08-19 12:31:31 -05:00
commit 0cbab848b9
21 changed files with 1285 additions and 242 deletions

Binary file not shown.

View File

@ -0,0 +1,319 @@
# Translations template for PROJECT.
# Copyright (C) 2011 ORGANIZATION
# This file is distributed under the same license as the PROJECT project.
#
# <john_w1954@fastmail.fm>, 2011.
# Fernando Inocencio <faigos@gmail.com>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
"POT-Creation-Date: 2011-08-13 19:47-0500\n"
"PO-Revision-Date: 2011-08-15 20:33+0000\n"
"Last-Translator: fajro <faigos@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
"Language: eo\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: mediagoblin/auth/forms.py:24 mediagoblin/auth/forms.py:46
msgid "Username"
msgstr "Uzantnomo"
#: mediagoblin/auth/forms.py:29 mediagoblin/auth/forms.py:50
msgid "Password"
msgstr "Pasvorton"
#: mediagoblin/auth/forms.py:34
msgid "Passwords must match."
msgstr "Pasvortoj devas koincidi. "
#: mediagoblin/auth/forms.py:36
msgid "Confirm password"
msgstr "Retajpu pasvorton"
#: mediagoblin/auth/forms.py:39
msgid "Email address"
msgstr "Retadreso"
#: mediagoblin/auth/views.py:40
msgid "Sorry, registration is disabled on this instance."
msgstr "Bedaŭrinde, registrado estas malaktivita en tiu ĉi instanco."
#: mediagoblin/auth/views.py:57
msgid "Sorry, a user with that name already exists."
msgstr "Bedaŭrinde, uzanto kun tiu nomo jam ekzistas."
#: mediagoblin/auth/views.py:61
msgid "Sorry, that email address has already been taken."
msgstr ""
#: mediagoblin/auth/views.py:159
msgid ""
"Your email address has been verified. You may now login, edit your profile, "
"and submit images!"
msgstr ""
"Vian retadreson estas kontrolita. Vi povas nun ensaluti, redakti vian "
"profilon, kaj alŝuti bildojn!"
#: mediagoblin/auth/views.py:165
msgid "The verification key or user id is incorrect"
msgstr "La kontrol-kodo aŭ la uzantonomo ne estas korekta"
#: mediagoblin/auth/views.py:186
#: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22
msgid "Resent your verification email."
msgstr "Resendi vian kontrol-mesaĝon."
#: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:27
msgid "Title"
msgstr "Titolo"
#: mediagoblin/edit/forms.py:29
msgid "Slug"
msgstr ""
#: mediagoblin/edit/forms.py:30
msgid "The slug can't be empty"
msgstr ""
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:31
msgid "Tags"
msgstr "Etikedoj"
#: mediagoblin/edit/forms.py:38
msgid "Bio"
msgstr "Bio"
#: mediagoblin/edit/forms.py:41
msgid "Website"
msgstr "Retejo"
#: mediagoblin/edit/forms.py:43
msgid "Improperly formed URL"
msgstr ""
#: mediagoblin/edit/views.py:54
msgid "An entry with that slug already exists for this user."
msgstr ""
#: mediagoblin/edit/views.py:75
msgid "You are editing another user's media. Proceed with caution."
msgstr ""
#: mediagoblin/edit/views.py:96
msgid "You are editing a user's profile. Proceed with caution."
msgstr ""
#: mediagoblin/submit/forms.py:25
msgid "File"
msgstr "Dosiero"
#: mediagoblin/submit/views.py:46
msgid "You must provide a file."
msgstr "Vi devas provizi dosieron."
#: mediagoblin/submit/views.py:49
msgid "The file doesn't seem to be an image!"
msgstr ""
#: mediagoblin/submit/views.py:94
msgid "Woohoo! Submitted!"
msgstr ""
#: mediagoblin/templates/mediagoblin/base.html:22
msgid "GNU MediaGoblin"
msgstr "GNU MediaGoblin"
#: mediagoblin/templates/mediagoblin/base.html:45
msgid "Mediagoblin logo"
msgstr " Logogramo de Mediagoblin"
#: mediagoblin/templates/mediagoblin/base.html:51
msgid "Submit media"
msgstr "Alŝuti aŭd-vid-dosieron"
#: mediagoblin/templates/mediagoblin/base.html:62
msgid "verify your email!"
msgstr "kontrolu vian retpoŝton! "
#: mediagoblin/templates/mediagoblin/base.html:72
msgid "Login"
msgstr "Ensaluti"
#: mediagoblin/templates/mediagoblin/base.html:88
msgid ""
"Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a "
"href=\"http://gnu.org/\">GNU project</a>"
msgstr ""
"Provizita de <a href=\"http://mediagoblin.org\">MediaGoblin</a>, unu el la "
"<a href=\"http://gnu.org/\">GNU projectoj</a>"
#: mediagoblin/templates/mediagoblin/root.html:23
msgid "Welcome to GNU MediaGoblin!"
msgstr "Bonvenon al GNU MediaGoblin!"
#: mediagoblin/templates/mediagoblin/root.html:28
msgid "Submit an item"
msgstr "Alŝuti dosieron"
#: mediagoblin/templates/mediagoblin/root.html:33
#, python-format
msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>."
msgstr "Se vi havas konton, vi povas <a href=\"%(login_url)s\">Ensaluti</a>."
#: mediagoblin/templates/mediagoblin/root.html:39
#, python-format
msgid ""
"If you don't have an account, please <a "
"href=\"%(register_url)s\">Register</a>."
msgstr ""
"Se vi ne havas konton, bonvolu <a href=\"%(register_url)s\">Registriĝi</a>."
#: mediagoblin/templates/mediagoblin/auth/login.html:26
msgid "Log in"
msgstr "Ensaluti"
#: mediagoblin/templates/mediagoblin/auth/login.html:29
msgid "Login failed!"
msgstr "Ensalutado malsukcesis!"
#: mediagoblin/templates/mediagoblin/auth/login.html:34
#: mediagoblin/templates/mediagoblin/auth/register.html:30
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35
#: mediagoblin/templates/mediagoblin/submit/start.html:29
msgid "Submit"
msgstr "Alŝuti"
#: mediagoblin/templates/mediagoblin/auth/login.html:42
msgid "Don't have an account yet?"
msgstr "Ĉu ankoraŭ sen konto?"
#: mediagoblin/templates/mediagoblin/auth/login.html:45
msgid "Create one here!"
msgstr "Kreu unu ĉi tie!"
#: mediagoblin/templates/mediagoblin/auth/register.html:27
msgid "Create an account!"
msgstr "Kreu konton!"
#: mediagoblin/templates/mediagoblin/auth/verification_email.txt:19
#, python-format
msgid ""
"Hi %(username)s,\n"
"\n"
"to activate your GNU MediaGoblin account, open the following URL in\n"
"your web browser:\n"
"\n"
"%(verification_url)s"
msgstr ""
"Sal %(username)s,\n"
"\n"
"por aktivigi vian GNU MediaGoblin konton, malfermu la sekvantan URLon en via retumilo:\n"
"\n"
"%(verification_url)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:29
#, python-format
msgid "Editing %(media_title)s"
msgstr "Editing %(media_title)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:36
msgid "Cancel"
msgstr "Nuligi"
#: mediagoblin/templates/mediagoblin/edit/edit.html:37
msgid "Save changes"
msgstr "Konservi ŝanĝojn"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format
msgid "Editing %(username)s's profile"
msgstr "Redaktanta profilon de %(username)s'"
#: mediagoblin/templates/mediagoblin/listings/tag.html:31
msgid "Media tagged with:"
msgstr "Dosiero markita kiel:"
#: mediagoblin/templates/mediagoblin/listings/tag.html:42
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:48
#: mediagoblin/templates/mediagoblin/user_pages/user.html:104
msgid "atom feed"
msgstr "Atom-a informfluado"
#: mediagoblin/templates/mediagoblin/submit/start.html:26
msgid "Submit yer media"
msgstr "Alŝutu vian aŭd-vid-dosieron"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:32
#, python-format
msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media"
msgstr "<a href=\"%(user_url)s\">%(username)s</a>-a aŭd-vid-dosiero"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:53
#: mediagoblin/templates/mediagoblin/user_pages/user.html:32
msgid "Sorry, no such user found."
msgstr "Uzanto ne trovita."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:39
#: mediagoblin/templates/mediagoblin/user_pages/user.html:59
msgid "Verification needed"
msgstr "Kontrolon bezonata"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:42
msgid "Almost done! Your account still needs to be verified."
msgstr "Preskaŭ farite! Via konto ankoraŭ devas esti kontrolita."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:47
msgid ""
"An email should arrive in a few moments with instructions on how to do so."
msgstr ""
"Retmesaĝo alvenos post kelkaj momentoj kun instrukcioj pri kiel tion fari."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:51
msgid "In case it doesn't:"
msgstr "Se tio ne okazas:"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:54
msgid "Resend verification email"
msgstr "Resendu kontrolmesaĝon"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:62
msgid ""
"Someone has registered an account with this username, but it still has to be"
" verified."
msgstr ""
"Iu registris konton kun tiu ĉi uzantonomo, sed ĝi devas ankoraŭ esti "
"kontrolita."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:68
#, python-format
msgid ""
"If you are that person but you've lost your verification email, you can <a "
"href=\"%(login_url)s\">log in</a> and resend it."
msgstr ""
"Se vi estas tiu sed vi perdis vian kontrolmesaĝon, vi povas <a "
"href=\"%(login_url)s\">ensaluti</a> kaj resendi ĝin."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:78
#, python-format
msgid "%(username)s's profile"
msgstr "%(username)s'-a profilo"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:86
msgid "Edit profile"
msgstr "Redakti profilo"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:98
#, python-format
msgid "View all of %(username)s's media"
msgstr "Rigardu ĉiuj aŭd-vid-dosierojn de %(username)s'"
#: mediagoblin/user_pages/forms.py:24
msgid "Comment"
msgstr "Komento"

View File

@ -3,13 +3,15 @@
# This file is distributed under the same license as the PROJECT project. # This file is distributed under the same license as the PROJECT project.
# #
# <marktraceur@gmail.com>, 2011. # <marktraceur@gmail.com>, 2011.
# Valentin Villenave <valentin@villenave.net>, 2011.
# <transifex@wandborg.se>, 2011.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: GNU MediaGoblin\n" "Project-Id-Version: GNU MediaGoblin\n"
"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n" "Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
"POT-Creation-Date: 2011-08-08 22:53-0500\n" "POT-Creation-Date: 2011-08-13 19:47-0500\n"
"PO-Revision-Date: 2011-08-10 21:24+0000\n" "PO-Revision-Date: 2011-08-16 13:22+0000\n"
"Last-Translator: MarkTraceur <marktraceur@gmail.com>\n" "Last-Translator: joar <transifex@wandborg.se>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -20,102 +22,112 @@ msgstr ""
#: mediagoblin/auth/forms.py:24 mediagoblin/auth/forms.py:46 #: mediagoblin/auth/forms.py:24 mediagoblin/auth/forms.py:46
msgid "Username" msgid "Username"
msgstr "" msgstr "Nom d'utilisateur"
#: mediagoblin/auth/forms.py:29 mediagoblin/auth/forms.py:50 #: mediagoblin/auth/forms.py:29 mediagoblin/auth/forms.py:50
msgid "Password" msgid "Password"
msgstr "" msgstr "Mot de passe"
#: mediagoblin/auth/forms.py:34 #: mediagoblin/auth/forms.py:34
msgid "Passwords must match." msgid "Passwords must match."
msgstr "" msgstr "Les mots de passe doivent correspondre."
#: mediagoblin/auth/forms.py:36 #: mediagoblin/auth/forms.py:36
msgid "Confirm password" msgid "Confirm password"
msgstr "" msgstr "Confirmer le mot de passe"
#: mediagoblin/auth/forms.py:39 #: mediagoblin/auth/forms.py:39
msgid "Email address" msgid "Email address"
msgstr "" msgstr "Adresse e-mail"
#: mediagoblin/auth/views.py:40 #: mediagoblin/auth/views.py:40
msgid "Sorry, registration is disabled on this instance." msgid "Sorry, registration is disabled on this instance."
msgstr "" msgstr "L'inscription n'est pas activée sur ce serveur, désolé."
#: mediagoblin/auth/views.py:55 #: mediagoblin/auth/views.py:57
msgid "Sorry, a user with that name already exists." msgid "Sorry, a user with that name already exists."
msgstr "Un utilisateur existe déjà avec ce nom, désolé."
#: mediagoblin/auth/views.py:61
msgid "Sorry, that email address has already been taken."
msgstr "" msgstr ""
#: mediagoblin/auth/views.py:152 #: mediagoblin/auth/views.py:159
msgid "" msgid ""
"Your email address has been verified. You may now login, edit your profile, " "Your email address has been verified. You may now login, edit your profile, "
"and submit images!" "and submit images!"
msgstr "" msgstr ""
"Votre adresse e-mail a bien été vérifiée. Vous pouvez maintenant vous "
"identifier, modifier votre profil, et soumettre des images !"
#: mediagoblin/auth/views.py:158 #: mediagoblin/auth/views.py:165
msgid "The verification key or user id is incorrect" msgid "The verification key or user id is incorrect"
msgstr "" msgstr "La clé de vérification ou le nom d'utilisateur est incorrect."
#: mediagoblin/auth/views.py:179 #: mediagoblin/auth/views.py:186
#: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22 #: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22
msgid "Resent your verification email." msgid "Resent your verification email."
msgstr "Nous avons renvoyé votre e-mail de vérification." msgstr "E-mail de vérification renvoyé."
#: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:26 #: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:27
msgid "Title" msgid "Title"
msgstr "" msgstr "Titre"
#: mediagoblin/edit/forms.py:29 #: mediagoblin/edit/forms.py:29
msgid "Slug" msgid "Slug"
msgstr "" msgstr "Légende"
#: mediagoblin/edit/forms.py:30 #: mediagoblin/edit/forms.py:30
msgid "The slug can't be empty" msgid "The slug can't be empty"
msgstr "" msgstr "La légende ne peut pas être laissée vide."
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:31 #: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:31
msgid "Tags" msgid "Tags"
msgstr "" msgstr "Tags"
#: mediagoblin/edit/forms.py:38 #: mediagoblin/edit/forms.py:38
msgid "Bio" msgid "Bio"
msgstr "" msgstr "Bio"
#: mediagoblin/edit/forms.py:41 #: mediagoblin/edit/forms.py:41
msgid "Website" msgid "Website"
msgstr "" msgstr "Site web"
#: mediagoblin/edit/forms.py:43 #: mediagoblin/edit/forms.py:43
msgid "Improperly formed URL" msgid "Improperly formed URL"
msgstr "" msgstr "Adresse web mal formée"
#: mediagoblin/edit/views.py:54 #: mediagoblin/edit/views.py:54
msgid "An entry with that slug already exists for this user." msgid "An entry with that slug already exists for this user."
msgstr "" msgstr "Une entrée existe déjà pour cet utilisateur avec la même légende."
#: mediagoblin/edit/views.py:75 #: mediagoblin/edit/views.py:75
msgid "You are editing another user's media. Proceed with caution." msgid "You are editing another user's media. Proceed with caution."
msgstr "" msgstr ""
"Vous vous apprêtez à modifier le média d'un autre utilisateur. Veuillez "
"prendre garde."
#: mediagoblin/edit/views.py:96 #: mediagoblin/edit/views.py:96
msgid "You are editing a user's profile. Proceed with caution." msgid "You are editing a user's profile. Proceed with caution."
msgstr "" msgstr ""
"Vous vous apprêtez à modifier le profil d'un utilisateur. Veuillez prendre "
"garde."
#: mediagoblin/submit/forms.py:29 #: mediagoblin/submit/forms.py:25
msgid "File" msgid "File"
msgstr "" msgstr "Fichier"
#: mediagoblin/submit/views.py:45 #: mediagoblin/submit/views.py:46
msgid "You must provide a file." msgid "You must provide a file."
msgstr "" msgstr "Il vous faut fournir un fichier."
#: mediagoblin/submit/views.py:48 #: mediagoblin/submit/views.py:49
msgid "The file doesn't seem to be an image!" msgid "The file doesn't seem to be an image!"
msgstr "" msgstr "Ce fichier ne semble pas être une image !"
#: mediagoblin/submit/views.py:96 #: mediagoblin/submit/views.py:94
msgid "Woohoo! Submitted!" msgid "Woohoo! Submitted!"
msgstr "" msgstr "Youhou, c'est envoyé !"
#: mediagoblin/templates/mediagoblin/base.html:22 #: mediagoblin/templates/mediagoblin/base.html:22
msgid "GNU MediaGoblin" msgid "GNU MediaGoblin"
@ -127,73 +139,74 @@ msgstr "logo de MediaGoblin"
#: mediagoblin/templates/mediagoblin/base.html:51 #: mediagoblin/templates/mediagoblin/base.html:51
msgid "Submit media" msgid "Submit media"
msgstr "Soumettez des médias" msgstr "Soumettre un média"
#: mediagoblin/templates/mediagoblin/base.html:62 #: mediagoblin/templates/mediagoblin/base.html:62
msgid "verify your email!" msgid "verify your email!"
msgstr "vérifiez votre addresse e-mail" msgstr "vérifier son adresse e-mail"
#: mediagoblin/templates/mediagoblin/base.html:72 #: mediagoblin/templates/mediagoblin/base.html:72
msgid "Login" msgid "Login"
msgstr "Connexion" msgstr "Identification"
#: mediagoblin/templates/mediagoblin/base.html:88 #: mediagoblin/templates/mediagoblin/base.html:88
msgid "" msgid ""
"Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a " "Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a "
"href=\"http://gnu.org/\">GNU project</a>" "href=\"http://gnu.org/\">GNU project</a>"
msgstr "" msgstr ""
"Alimenté par <a href=\"http://mediagoblin.org\">MediaGoblin</a>, un <a " "Propulsé par <a href=\"http://mediagoblin.org\">MediaGoblin</a>, un projet "
"href=\"http://gnu.org/\">projet GNU</a>" "de <a href=\"http://gnu.org/\">GNU</a>"
#: mediagoblin/templates/mediagoblin/root.html:21 #: mediagoblin/templates/mediagoblin/root.html:23
msgid "Welcome to GNU MediaGoblin!" msgid "Welcome to GNU MediaGoblin!"
msgstr "Bienvenue à GNU MediaGoblin!" msgstr "Bienvenue sur GNU MediaGoblin !"
#: mediagoblin/templates/mediagoblin/root.html:26 #: mediagoblin/templates/mediagoblin/root.html:28
msgid "Submit an item" msgid "Submit an item"
msgstr "Soumettez un fichier" msgstr "Soumettre un fichier"
#: mediagoblin/templates/mediagoblin/root.html:31 #: mediagoblin/templates/mediagoblin/root.html:33
#, python-format #, python-format
msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>." msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>."
msgstr "" msgstr ""
"Si vous avez un compte, vous pouvez <a href=\"%(login_url)s\">Connecter</a>." "Si vous avez un compte, vous pouvez vous <a "
"href=\"%(login_url)s\">identifier</a>."
#: mediagoblin/templates/mediagoblin/root.html:37 #: mediagoblin/templates/mediagoblin/root.html:39
#, python-format #, python-format
msgid "" msgid ""
"If you don't have an account, please <a " "If you don't have an account, please <a "
"href=\"%(register_url)s\">Register</a>." "href=\"%(register_url)s\">Register</a>."
msgstr "" msgstr ""
"Si vous n'avez pas un compte, s'il vous plaît, <a " "Si vous n'avez pas de compte, veuillez vous <a "
"href=\"%(register_url)s\">vous inscrivez</a>." "href=\"%(register_url)s\">inscrire</a>."
#: mediagoblin/templates/mediagoblin/auth/login.html:26 #: mediagoblin/templates/mediagoblin/auth/login.html:26
msgid "Log in" msgid "Log in"
msgstr "Connexion" msgstr "S'identifier"
#: mediagoblin/templates/mediagoblin/auth/login.html:29 #: mediagoblin/templates/mediagoblin/auth/login.html:29
msgid "Login failed!" msgid "Login failed!"
msgstr "Connexion manqué" msgstr "L'identification a échoué !"
#: mediagoblin/templates/mediagoblin/auth/login.html:34 #: mediagoblin/templates/mediagoblin/auth/login.html:34
#: mediagoblin/templates/mediagoblin/auth/register.html:30 #: mediagoblin/templates/mediagoblin/auth/register.html:30
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35 #: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35
#: mediagoblin/templates/mediagoblin/submit/start.html:32 #: mediagoblin/templates/mediagoblin/submit/start.html:29
msgid "Submit" msgid "Submit"
msgstr "Soumettez" msgstr "Soumettre"
#: mediagoblin/templates/mediagoblin/auth/login.html:42 #: mediagoblin/templates/mediagoblin/auth/login.html:42
msgid "Don't have an account yet?" msgid "Don't have an account yet?"
msgstr "N'avez-vous toujours un compte?" msgstr "Pas encore de compte ?"
#: mediagoblin/templates/mediagoblin/auth/login.html:45 #: mediagoblin/templates/mediagoblin/auth/login.html:45
msgid "Create one here!" msgid "Create one here!"
msgstr "En créez un ici!" msgstr "Créez-en un ici !"
#: mediagoblin/templates/mediagoblin/auth/register.html:27 #: mediagoblin/templates/mediagoblin/auth/register.html:27
msgid "Create an account!" msgid "Create an account!"
msgstr "Créez un compte!" msgstr "Créer un compte !"
#: mediagoblin/templates/mediagoblin/auth/verification_email.txt:19 #: mediagoblin/templates/mediagoblin/auth/verification_email.txt:19
#, python-format #, python-format
@ -205,101 +218,112 @@ msgid ""
"\n" "\n"
"%(verification_url)s" "%(verification_url)s"
msgstr "" msgstr ""
"Bonjour, %(username)s,\n" "Bonjour %(username)s,\n"
"\n" "\n"
"pour activer votre compte de GNU MediaGoblin, ouvrez l'URL suite avec votre navigateur web:\n" "pour activer votre compte sur GNU MediaGoblin, veuillez vous rendre à l'adresse suivante avec votre navigateur web:\n"
"\n" "\n"
"%(verification_url)s" "%(verification_url)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:29 #: mediagoblin/templates/mediagoblin/edit/edit.html:29
#, python-format #, python-format
msgid "Editing %(media_title)s" msgid "Editing %(media_title)s"
msgstr "On édit %(media_title)s" msgstr "Modification de %(media_title)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:36 #: mediagoblin/templates/mediagoblin/edit/edit.html:36
msgid "Cancel" msgid "Cancel"
msgstr "Annulez" msgstr "Annuler"
#: mediagoblin/templates/mediagoblin/edit/edit.html:37 #: mediagoblin/templates/mediagoblin/edit/edit.html:37
msgid "Save changes" msgid "Save changes"
msgstr "Enregistrez les modifications" msgstr "Enregistrer les modifications"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29 #: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format #, python-format
msgid "Editing %(username)s's profile" msgid "Editing %(username)s's profile"
msgstr "" msgstr "Modification du profil de %(username)s"
#: mediagoblin/templates/mediagoblin/listings/tag.html:29 #: mediagoblin/templates/mediagoblin/listings/tag.html:31
msgid "Media tagged with:" msgid "Media tagged with:"
msgstr "" msgstr "Média comportant les tags suivants :"
#: mediagoblin/templates/mediagoblin/listings/tag.html:40 #: mediagoblin/templates/mediagoblin/listings/tag.html:42
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:46 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:48
#: mediagoblin/templates/mediagoblin/user_pages/user.html:101 #: mediagoblin/templates/mediagoblin/user_pages/user.html:104
msgid "atom feed" msgid "atom feed"
msgstr "" msgstr "flux Atom"
#: mediagoblin/templates/mediagoblin/submit/start.html:26 #: mediagoblin/templates/mediagoblin/submit/start.html:26
msgid "Submit yer media" msgid "Submit yer media"
msgstr "" msgstr "Soumettez ce média"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:30 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:32
#, python-format #, python-format
msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media" msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media"
msgstr "" msgstr "Médias de <a href=\"%(user_url)s\">%(username)s</a>"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:51 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:53
#: mediagoblin/templates/mediagoblin/user_pages/user.html:30 #: mediagoblin/templates/mediagoblin/user_pages/user.html:32
msgid "Sorry, no such user found." msgid "Sorry, no such user found."
msgstr "" msgstr "Impossible de trouver cet utilisateur, désolé."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:37 #: mediagoblin/templates/mediagoblin/user_pages/user.html:39
#: mediagoblin/templates/mediagoblin/user_pages/user.html:57 #: mediagoblin/templates/mediagoblin/user_pages/user.html:59
msgid "Verification needed" msgid "Verification needed"
msgstr "" msgstr "Vérification requise"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:40 #: mediagoblin/templates/mediagoblin/user_pages/user.html:42
msgid "Almost done! Your account still needs to be verified." msgid "Almost done! Your account still needs to be verified."
msgstr "" msgstr "C'est presque fini ! Il vous faut encore vérifier votre compte."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:45 #: mediagoblin/templates/mediagoblin/user_pages/user.html:47
msgid "" msgid ""
"An email should arrive in a few moments with instructions on how to do so." "An email should arrive in a few moments with instructions on how to do so."
msgstr "" msgstr ""
"Un e-mail devrait vous parvenir dans quelques instants ; il vous indiquera "
"comment procéder."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:49 #: mediagoblin/templates/mediagoblin/user_pages/user.html:51
msgid "In case it doesn't:" msgid "In case it doesn't:"
msgstr "" msgstr "Si la vérification n'est pas arrivée à bon port :"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:52 #: mediagoblin/templates/mediagoblin/user_pages/user.html:54
msgid "Resend verification email" msgid "Resend verification email"
msgstr "" msgstr "Renvoyer l'e-mail de vérification"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:60 #: mediagoblin/templates/mediagoblin/user_pages/user.html:62
msgid "" msgid ""
"Someone has registered an account with this username, but it still has to be" "Someone has registered an account with this username, but it still has to be"
" verified." " verified."
msgstr "" msgstr ""
"Quelqu'un a créé un compte à ce nom, mais le compte n'a pas encore été "
"vérifié."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:66 #: mediagoblin/templates/mediagoblin/user_pages/user.html:68
#, python-format #, python-format
msgid "" msgid ""
"If you are that person but you've lost your verification email, you can <a " "If you are that person but you've lost your verification email, you can <a "
"href=\"%(login_url)s\">log in</a> and resend it." "href=\"%(login_url)s\">log in</a> and resend it."
msgstr "" msgstr ""
"Si c'est de vous qu'il s'agit, mais que vous avez perdu l'e-mail de "
"vérification, vous pouvez vous <a href=\"%(login_url)s\">identifier</a> et "
"le renvoyer."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:76 #: mediagoblin/templates/mediagoblin/user_pages/user.html:78
#, python-format #, python-format
msgid "%(username)s's profile" msgid "%(username)s's profile"
msgstr "" msgstr "profil de %(username)s"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:84 #: mediagoblin/templates/mediagoblin/user_pages/user.html:86
msgid "Edit profile" msgid "Edit profile"
msgstr "" msgstr "Modifier le profil"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:95 #: mediagoblin/templates/mediagoblin/user_pages/user.html:98
#, python-format #, python-format
msgid "View all of %(username)s's media" msgid "View all of %(username)s's media"
msgstr "Voir tous les médias de %(username)s"
#: mediagoblin/user_pages/forms.py:24
msgid "Comment"
msgstr "" msgstr ""

Binary file not shown.

View File

@ -0,0 +1,310 @@
# Translations template for PROJECT.
# Copyright (C) 2011 ORGANIZATION
# This file is distributed under the same license as the PROJECT project.
#
# <averym@gmail.com>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
"POT-Creation-Date: 2011-08-13 19:47-0500\n"
"PO-Revision-Date: 2011-08-14 00:47+0000\n"
"Last-Translator: cwebber <cwebber@dustycloud.org>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
"Language: ja\n"
"Plural-Forms: nplurals=1; plural=0\n"
#: mediagoblin/auth/forms.py:24 mediagoblin/auth/forms.py:46
msgid "Username"
msgstr "ユーザネーム"
#: mediagoblin/auth/forms.py:29 mediagoblin/auth/forms.py:50
msgid "Password"
msgstr "パスワード"
#: mediagoblin/auth/forms.py:34
msgid "Passwords must match."
msgstr "パスワードが一致している必要があります。"
#: mediagoblin/auth/forms.py:36
msgid "Confirm password"
msgstr "パスワードを確認"
#: mediagoblin/auth/forms.py:39
msgid "Email address"
msgstr "メールアドレス"
#: mediagoblin/auth/views.py:40
msgid "Sorry, registration is disabled on this instance."
msgstr "申し訳ありませんが、このインスタンスで登録は無効になっています。"
#: mediagoblin/auth/views.py:57
msgid "Sorry, a user with that name already exists."
msgstr "申し訳ありませんが、その名前を持つユーザーがすでに存在しています。"
#: mediagoblin/auth/views.py:61
msgid "Sorry, that email address has already been taken."
msgstr ""
#: mediagoblin/auth/views.py:159
msgid ""
"Your email address has been verified. You may now login, edit your profile, "
"and submit images!"
msgstr "メアドが確認されています。これで、ログインしてプロファイルを編集し、画像を提出することができます!"
#: mediagoblin/auth/views.py:165
msgid "The verification key or user id is incorrect"
msgstr "検証キーまたはユーザーIDが間違っています"
#: mediagoblin/auth/views.py:186
#: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22
msgid "Resent your verification email."
msgstr "検証メールを再送しました。"
#: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:27
msgid "Title"
msgstr "タイトル"
#: mediagoblin/edit/forms.py:29
msgid "Slug"
msgstr "スラグ"
#: mediagoblin/edit/forms.py:30
msgid "The slug can't be empty"
msgstr "スラグは必要です。"
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:31
msgid "Tags"
msgstr "タグ"
#: mediagoblin/edit/forms.py:38
msgid "Bio"
msgstr "自己紹介"
#: mediagoblin/edit/forms.py:41
msgid "Website"
msgstr "URL"
#: mediagoblin/edit/forms.py:43
msgid "Improperly formed URL"
msgstr "不適切な形式のURL"
#: mediagoblin/edit/views.py:54
msgid "An entry with that slug already exists for this user."
msgstr "そのスラグを持つエントリは、このユーザーは既に存在します。"
#: mediagoblin/edit/views.py:75
msgid "You are editing another user's media. Proceed with caution."
msgstr "あなたは、他のユーザーのメディアを編集しています。ご注意ください。"
#: mediagoblin/edit/views.py:96
msgid "You are editing a user's profile. Proceed with caution."
msgstr "あなたは、他のユーザーのプロファイルを編集しています。ご注意ください。"
#: mediagoblin/submit/forms.py:25
msgid "File"
msgstr "ファイル"
#: mediagoblin/submit/views.py:46
msgid "You must provide a file."
msgstr "ファイルを提供する必要があります。"
#: mediagoblin/submit/views.py:49
msgid "The file doesn't seem to be an image!"
msgstr "ファイルが画像ではないようです!"
#: mediagoblin/submit/views.py:94
msgid "Woohoo! Submitted!"
msgstr "投稿終了!"
#: mediagoblin/templates/mediagoblin/base.html:22
msgid "GNU MediaGoblin"
msgstr "GNU MediaGoblin"
#: mediagoblin/templates/mediagoblin/base.html:45
msgid "Mediagoblin logo"
msgstr "MediaGoblinロゴ"
#: mediagoblin/templates/mediagoblin/base.html:51
msgid "Submit media"
msgstr "コンテンツを投稿"
#: mediagoblin/templates/mediagoblin/base.html:62
msgid "verify your email!"
msgstr "メアドを確認してください!"
#: mediagoblin/templates/mediagoblin/base.html:72
msgid "Login"
msgstr "ログイン"
#: mediagoblin/templates/mediagoblin/base.html:88
msgid ""
"Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a "
"href=\"http://gnu.org/\">GNU project</a>"
msgstr ""
"Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a "
"href=\"http://gnu.org/\">GNU project</a>"
#: mediagoblin/templates/mediagoblin/root.html:23
msgid "Welcome to GNU MediaGoblin!"
msgstr "GNU MediaGoblinへようこそ"
#: mediagoblin/templates/mediagoblin/root.html:28
msgid "Submit an item"
msgstr "アイテムを投稿"
#: mediagoblin/templates/mediagoblin/root.html:33
#, python-format
msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>."
msgstr "もしアカウントが持ったら、<a href=\"%(login_url)s\">ログイン</a>できます。"
#: mediagoblin/templates/mediagoblin/root.html:39
#, python-format
msgid ""
"If you don't have an account, please <a "
"href=\"%(register_url)s\">Register</a>."
msgstr "アカウントが持っていなければ、<a href=\"%(register_url)s\">登録</a>してお願いします。"
#: mediagoblin/templates/mediagoblin/auth/login.html:26
msgid "Log in"
msgstr "ログイン"
#: mediagoblin/templates/mediagoblin/auth/login.html:29
msgid "Login failed!"
msgstr "ログイン失敗!"
#: mediagoblin/templates/mediagoblin/auth/login.html:34
#: mediagoblin/templates/mediagoblin/auth/register.html:30
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35
#: mediagoblin/templates/mediagoblin/submit/start.html:29
msgid "Submit"
msgstr "送信"
#: mediagoblin/templates/mediagoblin/auth/login.html:42
msgid "Don't have an account yet?"
msgstr "まだアカウントを持っていませんか?"
#: mediagoblin/templates/mediagoblin/auth/login.html:45
msgid "Create one here!"
msgstr "ここで作成!"
#: mediagoblin/templates/mediagoblin/auth/register.html:27
msgid "Create an account!"
msgstr "アカウントを作成!"
#: mediagoblin/templates/mediagoblin/auth/verification_email.txt:19
#, python-format
msgid ""
"Hi %(username)s,\n"
"\n"
"to activate your GNU MediaGoblin account, open the following URL in\n"
"your web browser:\n"
"\n"
"%(verification_url)s"
msgstr ""
"%(username)s様へ\n"
"\n"
"GNU MediaGoblinアカウントを検証にするには、このURLを開いてください。\n"
"\n"
"%(verification_url)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:29
#, python-format
msgid "Editing %(media_title)s"
msgstr "%(media_title)sを編集中"
#: mediagoblin/templates/mediagoblin/edit/edit.html:36
msgid "Cancel"
msgstr "キャンセル"
#: mediagoblin/templates/mediagoblin/edit/edit.html:37
msgid "Save changes"
msgstr "投稿する"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format
msgid "Editing %(username)s's profile"
msgstr "%(username)sさんのプロフィールを編集中"
#: mediagoblin/templates/mediagoblin/listings/tag.html:31
msgid "Media tagged with:"
msgstr "タグ付けされたコンテンツ:"
#: mediagoblin/templates/mediagoblin/listings/tag.html:42
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:48
#: mediagoblin/templates/mediagoblin/user_pages/user.html:104
msgid "atom feed"
msgstr "Atomフィード"
#: mediagoblin/templates/mediagoblin/submit/start.html:26
msgid "Submit yer media"
msgstr "コンテンツを投稿"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:32
#, python-format
msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media"
msgstr "<a href=\"%(user_url)s\">%(username)s</a>さんのコンテンツ"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:53
#: mediagoblin/templates/mediagoblin/user_pages/user.html:32
msgid "Sorry, no such user found."
msgstr "申し訳ありませんが、そのユーザーは見つかりませんでした。"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:39
#: mediagoblin/templates/mediagoblin/user_pages/user.html:59
msgid "Verification needed"
msgstr "確認必要"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:42
msgid "Almost done! Your account still needs to be verified."
msgstr "ほぼ完了!アカウントを検証する必要があります。"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:47
msgid ""
"An email should arrive in a few moments with instructions on how to do so."
msgstr "メールは、その方法の指示でいくつかの瞬間に到着します。"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:51
msgid "In case it doesn't:"
msgstr "到着しない場合は、"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:54
msgid "Resend verification email"
msgstr "確認メールを再送信"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:62
msgid ""
"Someone has registered an account with this username, but it still has to be"
" verified."
msgstr "誰かがこのユーザ名でアカウントを登録しているが、まだ検証する必要があります。"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:68
#, python-format
msgid ""
"If you are that person but you've lost your verification email, you can <a "
"href=\"%(login_url)s\">log in</a> and resend it."
msgstr "あなたの確認メールを紛失した場合、<a href=\"%(login_url)s\">ログイン</a>して再送できます。"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:78
#, python-format
msgid "%(username)s's profile"
msgstr "%(username)sさんのプロフィール"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:86
msgid "Edit profile"
msgstr "プロフィールを編集"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:98
#, python-format
msgid "View all of %(username)s's media"
msgstr "%(username)sさんのコンテンツをすべて見る"
#: mediagoblin/user_pages/forms.py:24
msgid "Comment"
msgstr ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: GNU MediaGoblin\n" "Project-Id-Version: GNU MediaGoblin\n"
"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n" "Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
"POT-Creation-Date: 2011-08-08 22:53-0500\n" "POT-Creation-Date: 2011-08-13 19:47-0500\n"
"PO-Revision-Date: 2011-08-09 15:00+0000\n" "PO-Revision-Date: 2011-08-16 13:22+0000\n"
"Last-Translator: joar <transifex@wandborg.se>\n" "Last-Translator: joar <transifex@wandborg.se>\n"
"Language-Team: Swedish (http://www.transifex.net/projects/p/mediagoblin/team/sv/)\n" "Language-Team: Swedish (http://www.transifex.net/projects/p/mediagoblin/team/sv/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -42,11 +42,15 @@ msgstr "E-postadress"
msgid "Sorry, registration is disabled on this instance." msgid "Sorry, registration is disabled on this instance."
msgstr "Vi beklagar, registreringen är avtängd på den här instansen." msgstr "Vi beklagar, registreringen är avtängd på den här instansen."
#: mediagoblin/auth/views.py:55 #: mediagoblin/auth/views.py:57
msgid "Sorry, a user with that name already exists." msgid "Sorry, a user with that name already exists."
msgstr "En användare med det användarnamnet finns redan." msgstr "En användare med det användarnamnet finns redan."
#: mediagoblin/auth/views.py:152 #: mediagoblin/auth/views.py:61
msgid "Sorry, that email address has already been taken."
msgstr "Den e-postadressen är redan tagen."
#: mediagoblin/auth/views.py:159
msgid "" msgid ""
"Your email address has been verified. You may now login, edit your profile, " "Your email address has been verified. You may now login, edit your profile, "
"and submit images!" "and submit images!"
@ -54,16 +58,16 @@ msgstr ""
"Din e-postadress är verifierad. Du kan nu logga in, redigera din profil och " "Din e-postadress är verifierad. Du kan nu logga in, redigera din profil och "
"ladda upp filer!" "ladda upp filer!"
#: mediagoblin/auth/views.py:158 #: mediagoblin/auth/views.py:165
msgid "The verification key or user id is incorrect" msgid "The verification key or user id is incorrect"
msgstr "Verifieringsnyckeln eller användar-IDt är fel." msgstr "Verifieringsnyckeln eller användar-IDt är fel."
#: mediagoblin/auth/views.py:179 #: mediagoblin/auth/views.py:186
#: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22 #: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22
msgid "Resent your verification email." msgid "Resent your verification email."
msgstr "Skickade ett nytt verifierings-email." msgstr "Skickade ett nytt verifierings-email."
#: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:26 #: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:27
msgid "Title" msgid "Title"
msgstr "Titel" msgstr "Titel"
@ -103,19 +107,19 @@ msgstr "Var försiktig, du redigerar någon annans inlägg."
msgid "You are editing a user's profile. Proceed with caution." msgid "You are editing a user's profile. Proceed with caution."
msgstr "Var försiktig, du redigerar en annan användares profil." msgstr "Var försiktig, du redigerar en annan användares profil."
#: mediagoblin/submit/forms.py:29 #: mediagoblin/submit/forms.py:25
msgid "File" msgid "File"
msgstr "Fil" msgstr "Fil"
#: mediagoblin/submit/views.py:45 #: mediagoblin/submit/views.py:46
msgid "You must provide a file." msgid "You must provide a file."
msgstr "Du måste ange en fil" msgstr "Du måste ange en fil"
#: mediagoblin/submit/views.py:48 #: mediagoblin/submit/views.py:49
msgid "The file doesn't seem to be an image!" msgid "The file doesn't seem to be an image!"
msgstr "Filen verkar inte vara en giltig bildfil!" msgstr "Filen verkar inte vara en giltig bildfil!"
#: mediagoblin/submit/views.py:96 #: mediagoblin/submit/views.py:94
msgid "Woohoo! Submitted!" msgid "Woohoo! Submitted!"
msgstr "Tjohoo! Upladdat!" msgstr "Tjohoo! Upladdat!"
@ -147,20 +151,20 @@ msgstr ""
"Drivs av <a href=\"http://mediagoblin.org\">MediaGoblin</a>, ett <a " "Drivs av <a href=\"http://mediagoblin.org\">MediaGoblin</a>, ett <a "
"href=\"http://gnu.org/\">GNU</a>-projekt" "href=\"http://gnu.org/\">GNU</a>-projekt"
#: mediagoblin/templates/mediagoblin/root.html:21 #: mediagoblin/templates/mediagoblin/root.html:23
msgid "Welcome to GNU MediaGoblin!" msgid "Welcome to GNU MediaGoblin!"
msgstr "Välkommen till GNU MediaGoblin!" msgstr "Välkommen till GNU MediaGoblin!"
#: mediagoblin/templates/mediagoblin/root.html:26 #: mediagoblin/templates/mediagoblin/root.html:28
msgid "Submit an item" msgid "Submit an item"
msgstr "Ladda upp" msgstr "Ladda upp"
#: mediagoblin/templates/mediagoblin/root.html:31 #: mediagoblin/templates/mediagoblin/root.html:33
#, python-format #, python-format
msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>." msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>."
msgstr "Har du ett konto? <a href=\"%(login_url)s\">Logga in</a>." msgstr "Har du ett konto? <a href=\"%(login_url)s\">Logga in</a>."
#: mediagoblin/templates/mediagoblin/root.html:37 #: mediagoblin/templates/mediagoblin/root.html:39
#, python-format #, python-format
msgid "" msgid ""
"If you don't have an account, please <a " "If you don't have an account, please <a "
@ -179,7 +183,7 @@ msgstr "Inloggning misslyckades!"
#: mediagoblin/templates/mediagoblin/auth/login.html:34 #: mediagoblin/templates/mediagoblin/auth/login.html:34
#: mediagoblin/templates/mediagoblin/auth/register.html:30 #: mediagoblin/templates/mediagoblin/auth/register.html:30
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35 #: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35
#: mediagoblin/templates/mediagoblin/submit/start.html:32 #: mediagoblin/templates/mediagoblin/submit/start.html:29
msgid "Submit" msgid "Submit"
msgstr "Skicka" msgstr "Skicka"
@ -229,13 +233,13 @@ msgstr "Spara"
msgid "Editing %(username)s's profile" msgid "Editing %(username)s's profile"
msgstr "Redigerar %(username)ss profil" msgstr "Redigerar %(username)ss profil"
#: mediagoblin/templates/mediagoblin/listings/tag.html:29 #: mediagoblin/templates/mediagoblin/listings/tag.html:31
msgid "Media tagged with:" msgid "Media tagged with:"
msgstr "Taggat med:" msgstr "Taggat med:"
#: mediagoblin/templates/mediagoblin/listings/tag.html:40 #: mediagoblin/templates/mediagoblin/listings/tag.html:42
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:46 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:48
#: mediagoblin/templates/mediagoblin/user_pages/user.html:101 #: mediagoblin/templates/mediagoblin/user_pages/user.html:104
msgid "atom feed" msgid "atom feed"
msgstr "atom-feed" msgstr "atom-feed"
@ -243,40 +247,40 @@ msgstr "atom-feed"
msgid "Submit yer media" msgid "Submit yer media"
msgstr "Ladda upp" msgstr "Ladda upp"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:30 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:32
#, python-format #, python-format
msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media" msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media"
msgstr "<a href=\"%(user_url)s\">%(username)s</a>s media" msgstr "<a href=\"%(user_url)s\">%(username)s</a>s media"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:51 #: mediagoblin/templates/mediagoblin/user_pages/gallery.html:53
#: mediagoblin/templates/mediagoblin/user_pages/user.html:30 #: mediagoblin/templates/mediagoblin/user_pages/user.html:32
msgid "Sorry, no such user found." msgid "Sorry, no such user found."
msgstr "Finns ingen sådan användare ännu." msgstr "Finns ingen sådan användare ännu."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:37 #: mediagoblin/templates/mediagoblin/user_pages/user.html:39
#: mediagoblin/templates/mediagoblin/user_pages/user.html:57 #: mediagoblin/templates/mediagoblin/user_pages/user.html:59
msgid "Verification needed" msgid "Verification needed"
msgstr "Verifiering krävs" msgstr "Verifiering krävs"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:40 #: mediagoblin/templates/mediagoblin/user_pages/user.html:42
msgid "Almost done! Your account still needs to be verified." msgid "Almost done! Your account still needs to be verified."
msgstr "Nästan klart! Nu behöver du bara verifiera ditt konto." msgstr "Nästan klart! Nu behöver du bara verifiera ditt konto."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:45 #: mediagoblin/templates/mediagoblin/user_pages/user.html:47
msgid "" msgid ""
"An email should arrive in a few moments with instructions on how to do so." "An email should arrive in a few moments with instructions on how to do so."
msgstr "" msgstr ""
"Ett e-postmeddelande med instruktioner kommer att hamna hos dig inom kort." "Ett e-postmeddelande med instruktioner kommer att hamna hos dig inom kort."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:49 #: mediagoblin/templates/mediagoblin/user_pages/user.html:51
msgid "In case it doesn't:" msgid "In case it doesn't:"
msgstr "Om det inte skulle göra det:" msgstr "Om det inte skulle göra det:"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:52 #: mediagoblin/templates/mediagoblin/user_pages/user.html:54
msgid "Resend verification email" msgid "Resend verification email"
msgstr "Skicka ett nytt e-postmeddelande" msgstr "Skicka ett nytt e-postmeddelande"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:60 #: mediagoblin/templates/mediagoblin/user_pages/user.html:62
msgid "" msgid ""
"Someone has registered an account with this username, but it still has to be" "Someone has registered an account with this username, but it still has to be"
" verified." " verified."
@ -284,7 +288,7 @@ msgstr ""
"Det finns redan ett konto med det här användarnamnet, men det behöver " "Det finns redan ett konto med det här användarnamnet, men det behöver "
"verifieras." "verifieras."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:66 #: mediagoblin/templates/mediagoblin/user_pages/user.html:68
#, python-format #, python-format
msgid "" msgid ""
"If you are that person but you've lost your verification email, you can <a " "If you are that person but you've lost your verification email, you can <a "
@ -294,18 +298,22 @@ msgstr ""
"detaljer om hur du verifierar ditt konto så kan du <a " "detaljer om hur du verifierar ditt konto så kan du <a "
"href=\"%(login_url)s\">logga in</a> och begära ett nytt." "href=\"%(login_url)s\">logga in</a> och begära ett nytt."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:76 #: mediagoblin/templates/mediagoblin/user_pages/user.html:78
#, python-format #, python-format
msgid "%(username)s's profile" msgid "%(username)s's profile"
msgstr "%(username)ss profil" msgstr "%(username)ss profil"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:84 #: mediagoblin/templates/mediagoblin/user_pages/user.html:86
msgid "Edit profile" msgid "Edit profile"
msgstr "Redigera profil" msgstr "Redigera profil"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:95 #: mediagoblin/templates/mediagoblin/user_pages/user.html:98
#, python-format #, python-format
msgid "View all of %(username)s's media" msgid "View all of %(username)s's media"
msgstr "Se all media från %(username)s" msgstr "Se all media från %(username)s"
#: mediagoblin/user_pages/forms.py:24
msgid "Comment"
msgstr "Kommentar"

Binary file not shown.

View File

@ -0,0 +1,310 @@
# Translations template for PROJECT.
# Copyright (C) 2011 ORGANIZATION
# This file is distributed under the same license as the PROJECT project.
#
# <chc@citi.sinica.edu.tw>, 2011.
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
"POT-Creation-Date: 2011-08-13 19:47-0500\n"
"PO-Revision-Date: 2011-08-14 00:47+0000\n"
"Last-Translator: cwebber <cwebber@dustycloud.org>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
"Language: zh_TW\n"
"Plural-Forms: nplurals=1; plural=0\n"
#: mediagoblin/auth/forms.py:24 mediagoblin/auth/forms.py:46
msgid "Username"
msgstr "使用者名稱"
#: mediagoblin/auth/forms.py:29 mediagoblin/auth/forms.py:50
msgid "Password"
msgstr "密碼"
#: mediagoblin/auth/forms.py:34
msgid "Passwords must match."
msgstr "密碼必須一至"
#: mediagoblin/auth/forms.py:36
msgid "Confirm password"
msgstr "確認密碼"
#: mediagoblin/auth/forms.py:39
msgid "Email address"
msgstr "電子郵件位置"
#: mediagoblin/auth/views.py:40
msgid "Sorry, registration is disabled on this instance."
msgstr "抱歉, 這個項目已經被暫停註冊."
#: mediagoblin/auth/views.py:57
msgid "Sorry, a user with that name already exists."
msgstr "抱歉, 這個使用者名稱已經存在."
#: mediagoblin/auth/views.py:61
msgid "Sorry, that email address has already been taken."
msgstr ""
#: mediagoblin/auth/views.py:159
msgid ""
"Your email address has been verified. You may now login, edit your profile, "
"and submit images!"
msgstr "你的電子郵件位址已被認證. 你現在就可以登入, 編輯你的個人檔案而且送出照片!"
#: mediagoblin/auth/views.py:165
msgid "The verification key or user id is incorrect"
msgstr "認證碼或是使用者帳號錯誤"
#: mediagoblin/auth/views.py:186
#: mediagoblin/templates/mediagoblin/auth/resent_verification_email.html:22
msgid "Resent your verification email."
msgstr "重送認證郵件."
#: mediagoblin/edit/forms.py:26 mediagoblin/submit/forms.py:27
msgid "Title"
msgstr "稱謂"
#: mediagoblin/edit/forms.py:29
msgid "Slug"
msgstr "自訂字串"
#: mediagoblin/edit/forms.py:30
msgid "The slug can't be empty"
msgstr "自訂字串不能空白"
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:31
msgid "Tags"
msgstr "標籤"
#: mediagoblin/edit/forms.py:38
msgid "Bio"
msgstr "自傳"
#: mediagoblin/edit/forms.py:41
msgid "Website"
msgstr "網站"
#: mediagoblin/edit/forms.py:43
msgid "Improperly formed URL"
msgstr "部正確的網址"
#: mediagoblin/edit/views.py:54
msgid "An entry with that slug already exists for this user."
msgstr "這個自訂字串已經被其他人用了"
#: mediagoblin/edit/views.py:75
msgid "You are editing another user's media. Proceed with caution."
msgstr "你正在編輯他人的媒體檔案. 請謹慎處理."
#: mediagoblin/edit/views.py:96
msgid "You are editing a user's profile. Proceed with caution."
msgstr "你正在編輯他人的檔案. 請謹慎處理."
#: mediagoblin/submit/forms.py:25
msgid "File"
msgstr "檔案"
#: mediagoblin/submit/views.py:46
msgid "You must provide a file."
msgstr "你必須提供一個檔案"
#: mediagoblin/submit/views.py:49
msgid "The file doesn't seem to be an image!"
msgstr "檔案看起來不像是一個圖片喔!"
#: mediagoblin/submit/views.py:94
msgid "Woohoo! Submitted!"
msgstr "喔耶! 送出去了!"
#: mediagoblin/templates/mediagoblin/base.html:22
msgid "GNU MediaGoblin"
msgstr "GNU MediaGoblin"
#: mediagoblin/templates/mediagoblin/base.html:45
msgid "Mediagoblin logo"
msgstr "Mediagoblin 標誌"
#: mediagoblin/templates/mediagoblin/base.html:51
msgid "Submit media"
msgstr "送出媒體"
#: mediagoblin/templates/mediagoblin/base.html:62
msgid "verify your email!"
msgstr "確認您的電子郵件!"
#: mediagoblin/templates/mediagoblin/base.html:72
msgid "Login"
msgstr "登入"
#: mediagoblin/templates/mediagoblin/base.html:88
msgid ""
"Powered by <a href=\"http://mediagoblin.org\">MediaGoblin</a>, a <a "
"href=\"http://gnu.org/\">GNU project</a>"
msgstr ""
"由 <a href=\"http://mediagoblin.org\">MediaGoblin</a> 製作, 她是一個 <a "
"href=\"http://gnu.org/\">GNU project</a>"
#: mediagoblin/templates/mediagoblin/root.html:23
msgid "Welcome to GNU MediaGoblin!"
msgstr "GNU MediaGoblin 歡迎您!"
#: mediagoblin/templates/mediagoblin/root.html:28
msgid "Submit an item"
msgstr "送出一個項目"
#: mediagoblin/templates/mediagoblin/root.html:33
#, python-format
msgid "If you have an account, you can <a href=\"%(login_url)s\">Login</a>."
msgstr "如果您有帳號了, 你可以直接 <a href=\"%(login_url)s\">登入</a>."
#: mediagoblin/templates/mediagoblin/root.html:39
#, python-format
msgid ""
"If you don't have an account, please <a "
"href=\"%(register_url)s\">Register</a>."
msgstr "如果您尚未取得帳號, 請 <a href=\"%(register_url)s\">註冊</a>."
#: mediagoblin/templates/mediagoblin/auth/login.html:26
msgid "Log in"
msgstr "登入"
#: mediagoblin/templates/mediagoblin/auth/login.html:29
msgid "Login failed!"
msgstr "登入錯誤"
#: mediagoblin/templates/mediagoblin/auth/login.html:34
#: mediagoblin/templates/mediagoblin/auth/register.html:30
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:35
#: mediagoblin/templates/mediagoblin/submit/start.html:29
msgid "Submit"
msgstr "送出"
#: mediagoblin/templates/mediagoblin/auth/login.html:42
msgid "Don't have an account yet?"
msgstr "還沒有帳號嗎?"
#: mediagoblin/templates/mediagoblin/auth/login.html:45
msgid "Create one here!"
msgstr "在這裡建立一個吧!"
#: mediagoblin/templates/mediagoblin/auth/register.html:27
msgid "Create an account!"
msgstr "建立一個帳號!"
#: mediagoblin/templates/mediagoblin/auth/verification_email.txt:19
#, python-format
msgid ""
"Hi %(username)s,\n"
"\n"
"to activate your GNU MediaGoblin account, open the following URL in\n"
"your web browser:\n"
"\n"
"%(verification_url)s"
msgstr ""
"嗨 %(username)s,\n"
"\n"
"啟動 GNU MediaGoblin 帳號, 在你的瀏覽器中打開下面的網址:\n"
"\n"
"%(verification_url)s"
#: mediagoblin/templates/mediagoblin/edit/edit.html:29
#, python-format
msgid "Editing %(media_title)s"
msgstr "編輯 %(media_title)s 中"
#: mediagoblin/templates/mediagoblin/edit/edit.html:36
msgid "Cancel"
msgstr "取消"
#: mediagoblin/templates/mediagoblin/edit/edit.html:37
msgid "Save changes"
msgstr "儲存變更"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format
msgid "Editing %(username)s's profile"
msgstr "編輯 %(username)s'的檔案中"
#: mediagoblin/templates/mediagoblin/listings/tag.html:31
msgid "Media tagged with:"
msgstr "媒體被標籤為:"
#: mediagoblin/templates/mediagoblin/listings/tag.html:42
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:48
#: mediagoblin/templates/mediagoblin/user_pages/user.html:104
msgid "atom feed"
msgstr "atom feed"
#: mediagoblin/templates/mediagoblin/submit/start.html:26
msgid "Submit yer media"
msgstr "送出你的媒體檔案"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:32
#, python-format
msgid "<a href=\"%(user_url)s\">%(username)s</a>'s media"
msgstr "<a href=\"%(user_url)s\">%(username)s</a>的媒體"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:53
#: mediagoblin/templates/mediagoblin/user_pages/user.html:32
msgid "Sorry, no such user found."
msgstr "抱歉, 找不到這個使用者."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:39
#: mediagoblin/templates/mediagoblin/user_pages/user.html:59
msgid "Verification needed"
msgstr "需要驗證"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:42
msgid "Almost done! Your account still needs to be verified."
msgstr "快要完成了! 你的帳號仍需要驗證."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:47
msgid ""
"An email should arrive in a few moments with instructions on how to do so."
msgstr "很快的會有一封電子郵件告訴你如何做."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:51
msgid "In case it doesn't:"
msgstr "假設它無法:"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:54
msgid "Resend verification email"
msgstr "重送認證郵件 "
#: mediagoblin/templates/mediagoblin/user_pages/user.html:62
msgid ""
"Someone has registered an account with this username, but it still has to be"
" verified."
msgstr "有人已經註冊了這個帳號, 但此帳號仍需要驗證."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:68
#, python-format
msgid ""
"If you are that person but you've lost your verification email, you can <a "
"href=\"%(login_url)s\">log in</a> and resend it."
msgstr "如果你就是那個人, 但是遺失了認證信, 你可以<a href=\"%(login_url)s\">登入</a> 然後重送一次."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:78
#, python-format
msgid "%(username)s's profile"
msgstr "%(username)s的個人檔案"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:86
msgid "Edit profile"
msgstr "編輯個人檔案"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:98
#, python-format
msgid "View all of %(username)s's media"
msgstr "查看%(username)s的全部媒體檔案"
#: mediagoblin/user_pages/forms.py:24
msgid "Comment"
msgstr ""

View File

@ -14,23 +14,13 @@ form {
padding: 0px; padding: 0px;
} }
/* Carter One font */
@font-face {
font-family: 'Carter One';
font-style: normal;
font-weight: normal;
src: local('CarterOne'), url('http://themes.googleusercontent.com/font?kit=VjW2qt1pkqVtO22ObxgEBRsxEYwM7FgeyaSgU71cLG0') format('woff');
}
/* text styles */ /* text styles */
h1{ h1{
font-family: 'Carter One',arial,serif;
margin-bottom: 15px; margin-bottom: 15px;
margin-top: 15px; margin-top: 15px;
color: #fff; color: #fff;
font-size: 30px; font-size: 1.875em;
} }
h2{ h2{
@ -39,12 +29,12 @@ h2{
} }
h3{ h3{
border-bottom: 1px solid #222; border-bottom: 1px solid #333;
font-size: 18px; font-size: 1.125em;
} }
a { a {
color: #999; color: #86D4B1;
} }
a.highlight { a.highlight {
@ -66,7 +56,12 @@ label {
height: 36px; height: 36px;
padding-top: 14px; padding-top: 14px;
margin-bottom: 20px; margin-bottom: 20px;
border-bottom: 1px solid #222222; border-bottom: 1px solid #333;
}
a.mediagoblin_logo{
color: #fff;
font-weight: bold;
} }
.header_submit{ .header_submit{
@ -79,21 +74,21 @@ label {
background-image: -o-linear-gradient(top, #D2D2D2, #aaa); background-image: -o-linear-gradient(top, #D2D2D2, #aaa);
background-image: linear-gradient(top, #D2D2D2, #aaa); background-image: linear-gradient(top, #D2D2D2, #aaa);
box-shadow: 0px 0px 4px #000; box-shadow: 0px 0px 4px #000;
border-radius: 5px 5px 5px 5px; border-radius: 3px;
margin: 8px; margin: 8px;
padding: 3px 8px; padding: 3px 8px;
text-decoration: none; text-decoration: none;
border: medium none; border: medium none;
font-family: 'Carter One',arial,serif; font-style: normal;
} }
.mediagoblin_footer { .mediagoblin_footer {
height: 30px; height: 30px;
border-top: 1px solid #222222; border-top: 1px solid #333;
bottom: 0px; bottom: 0px;
padding-top: 8px; padding-top: 8px;
text-align: center; text-align: center;
font-size: 14px; font-size: 0.8125em;
color: #999; color: #999;
} }
@ -108,7 +103,6 @@ label {
/* common website elements */ /* common website elements */
.button { .button {
font-family: 'Carter One', arial, serif;
height: 32px; height: 32px;
min-width: 99px; min-width: 99px;
background-color: #86d4b1; background-color: #86d4b1;
@ -119,11 +113,10 @@ label {
background-image: -o-linear-gradient(top, #86d4b1, #62caa2); background-image: -o-linear-gradient(top, #86d4b1, #62caa2);
background-image: linear-gradient(top, #86d4b1, #62caa2); background-image: linear-gradient(top, #86d4b1, #62caa2);
box-shadow: 0px 0px 4px #000; box-shadow: 0px 0px 4px #000;
border-radius: 5px; border-radius: 3px;
border: none; border: none;
color: #272727; color: #272727;
margin: 10px 0px 10px 15px; margin: 10px 0px 10px 15px;
font-size: 1em;
text-align: center; text-align: center;
padding-left: 11px; padding-left: 11px;
padding-right: 11px; padding-right: 11px;
@ -138,13 +131,20 @@ text-align: center;
margin: 5px; margin: 5px;
} }
.empty_space{
background-color: #222;
font-style: italic;
text-align: center;
height: 160px;
padding-top: 70px;
}
/* forms */ /* forms */
.form_box { .form_box {
background-color: #222; background-color: #222;
background-image: url("../images/background_lines.png"); background-image: url("../images/background_lines.png");
background-repeat: repeat-x; background-repeat: repeat-x;
font-size: 18px;
padding-bottom: 30px; padding-bottom: 30px;
padding-top: 30px; padding-top: 30px;
margin-left: auto; margin-left: auto;
@ -157,13 +157,8 @@ text-align: center;
background-image: url("../images/background_edit.png"); background-image: url("../images/background_edit.png");
} }
.form_box h1 {
font-size: 28px;
}
.form_field_input input, .form_field_input textarea { .form_field_input input, .form_field_input textarea {
width: 100%; width: 100%;
font-size: 18px;
} }
.form_field_box { .form_field_box {
@ -178,7 +173,6 @@ text-align: center;
background-color: #87453b; background-color: #87453b;
color: #fff; color: #fff;
border: none; border: none;
font-size: 16px;
padding: 9px; padding: 9px;
margin-top: 8px; margin-top: 8px;
margin-bottom: 8px; margin-bottom: 8px;
@ -193,7 +187,7 @@ text-align: center;
.comment_author { .comment_author {
margin-bottom: 40px; margin-bottom: 40px;
padding-top: 4px; padding-top: 4px;
font-size: 14px; font-size: 0.9em;
} }
.comment_content p { .comment_content p {
@ -205,7 +199,6 @@ text-align: center;
.media_thumbnail { .media_thumbnail {
padding: 0px; padding: 0px;
width: 180px; width: 180px;
height: 180px;
overflow: hidden; overflow: hidden;
float: left; float: left;
margin: 0px 4px 10px 4px; margin: 0px 4px 10px 4px;
@ -214,8 +207,12 @@ text-align: center;
/* media detail */ /* media detail */
.media_image_container { h2.media_title{
text-align: center; margin-bottom: 0px;
}
p.media_uploader{
font-size: 0.9em;
} }
/* icons */ /* icons */
@ -232,10 +229,9 @@ img.media_icon{
display: block; display: block;
float: left; float: left;
text-align: center; text-align: center;
background-color: #222; background-color: #333;
text-decoration: none; text-decoration: none;
padding: 12px 0pt; padding: 12px 0pt;
font-family: 'Carter One', arial, serif;
font-size: 2em; font-size: 2em;
margin: 0 0 20px margin: 0 0 20px
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 522 B

After

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 839 B

View File

@ -39,11 +39,9 @@
<div class="container_16"> <div class="container_16">
<div class="grid_16 mediagoblin_header"> <div class="grid_16 mediagoblin_header">
{% block mediagoblin_logo %} {% block mediagoblin_logo %}
<a class="mediagoblin_logo" <a class="mediagoblin_logo" href="{{ request.urlgen('index') }}">
href="{{ request.urlgen('index') }}"> MediaGoblin<img src="{{ request.staticdirect('/images/logo.png') }}"
<img src="{{ request.staticdirect('/images/logo.png') }}" alt="{% trans %}MediaGoblin logo{% endtrans %}" /></a>
alt="{% trans %}Mediagoblin logo{% endtrans %}" />
</a>
{% endblock %} {% endblock %}
{% if request.user and request.user['status'] == 'active' %} {% if request.user and request.user['status'] == 'active' %}
<a class="header_submit" <a class="header_submit"

View File

@ -36,10 +36,9 @@
</div> </div>
<div class="grid_16"> <div class="grid_16">
<a href="{{ request.urlgen( {% set feed_url = request.urlgen(
'mediagoblin.listings.tag_atom_feed', 'mediagoblin.listings.tag_atom_feed',
tag=tag_slug) }}"> tag=tag_slug) %}
{%- trans %}atom feed{% endtrans -%} {% include "mediagoblin/utils/feed_link.html" %}
</a>
</div> </div>
{% endblock %} {% endblock %}

View File

@ -37,16 +37,15 @@
{%- endtrans %} {%- endtrans %}
</h1> </h1>
</div>
<div class="container_16 media_gallery"> <div class="container_16 media_gallery">
{{ object_gallery(request, media_entries, pagination) }} {{ object_gallery(request, media_entries, pagination) }}
</div> </div>
<div class="grid_16"> <div class="grid_16">
<a href="{{ request.urlgen( {% set feed_url = request.urlgen(
'mediagoblin.user_pages.atom_feed', 'mediagoblin.user_pages.atom_feed',
user=user.username) }}"> user=user.username) %}
{%- trans %}atom feed{% endtrans -%} {% include "mediagoblin/utils/feed_link.html" %}
</a>
</div> </div>
{% else %} {% else %}
{# This *should* not occur as the view makes sure we pass in a user. #} {# This *should* not occur as the view makes sure we pass in a user. #}

View File

@ -28,16 +28,10 @@
src="{{ request.app.public_store.file_url( src="{{ request.app.public_store.file_url(
media.get_display_media(media.media_files)) }}" /> media.get_display_media(media.media_files)) }}" />
</div> </div>
<h2 class="media_title">
<h2>
{{media.title}} {{media.title}}
</h2> </h2>
<p class="media_uploader">
{% autoescape False %}
<p>{{ media.description_html }}</p>
{% endautoescape %}
<p>
{% trans date="%4d-%02d-%02d"|format( {% trans date="%4d-%02d-%02d"|format(
media.created.year, media.created.year,
media.created.month, media.created.day), media.created.month, media.created.day),
@ -45,11 +39,13 @@
'mediagoblin.user_pages.user_home', 'mediagoblin.user_pages.user_home',
user=media.uploader().username), user=media.uploader().username),
username=media.uploader().username -%} username=media.uploader().username -%}
&mdash;&nbsp;uploaded on {{ date }} by <a href="{{ user_url }}">{{ username }}</a> Uploaded on {{ date }} by <a href="{{ user_url }}">{{ username }}</a>
{%- endtrans %} {%- endtrans %}
</p> </p>
{% autoescape False %}
<p>{{ media.description_html }}</p>
{% endautoescape %}
<br /> <br />
<h3>{% trans %}Comments{% endtrans %}</h3> <h3>{% trans %}Comments{% endtrans %}</h3>
{% if request.user %} {% if request.user %}
<form action="{{ request.urlgen('mediagoblin.user_pages.media_post_comment', <form action="{{ request.urlgen('mediagoblin.user_pages.media_post_comment',

View File

@ -78,33 +78,79 @@
{%- trans username=user.username %}{{ username }}'s profile{% endtrans -%} {%- trans username=user.username %}{{ username }}'s profile{% endtrans -%}
</h1> </h1>
<div class="grid_6 alpha"> {% if not user['url'] and not user['profile'] %}
{% include "mediagoblin/utils/profile.html" %} {% if request.user['_id'] == user['_id'] %}
{% if request.user['_id'] == user['_id'] or request.user['is_admin'] %} <div class="grid_6 alpha empty_space">
<a href="{{ request.urlgen('mediagoblin.edit.profile') }}?username={{ <p>
user.username }}"> {% trans %}Here's a spot to tell others about yourself.{% endtrans %}
{%- trans %}Edit profile{% endtrans -%} </p>
</a> <a href="{{ request.urlgen('mediagoblin.edit.profile') }}?username={{
user.username }}"
class="header_submit">
{%- trans %}Edit profile{% endtrans -%}
</a>
</div>
{% else %}
<div class="grid_6 alpha empty_space">
<p>
{% trans -%}
This user hasn't filled in their profile (yet).
{%- endtrans %}
</p>
</div>
{% endif %} {% endif %}
</div> {% else %}
<div class="grid_6 alpha">
<div class="grid_10 omega"> {% include "mediagoblin/utils/profile.html" %}
{{ object_gallery(request, media_entries, pagination, {% if request.user['_id'] == user['_id'] or request.user['is_admin'] %}
pagination_base_url=user_gallery_url, col_number=3) }} <a href="{{ request.urlgen('mediagoblin.edit.profile') }}?username={{
{% include "mediagoblin/utils/object_gallery.html" %} user.username }}">
<div class="clear"></div> {%- trans %}Edit profile{% endtrans -%}
<p> </a>
<a href="{{ user_gallery_url }}"> {% endif %}
{% trans username=user.username -%} </div>
View all of {{ username }}'s media{% endtrans -%} {% endif %}
</a>
</p>
<a href="{{ request.urlgen( 'mediagoblin.user_pages.atom_feed',
user=user.username) }}">
{%- trans %}atom feed{% endtrans -%}
</a>
</div>
{% if media_entries.count() %}
<div class="grid_10 omega">
{{ object_gallery(request, media_entries, pagination,
pagination_base_url=user_gallery_url, col_number=3) }}
{% include "mediagoblin/utils/object_gallery.html" %}
<div class="clear"></div>
<p>
<a href="{{ user_gallery_url }}">
{% trans username=user.username -%}
View all of {{ username }}'s media{% endtrans -%}
</a>
</p>
{% set feed_url = request.urlgen(
'mediagoblin.user_pages.atom_feed',
user=user.username) %}
{% include "mediagoblin/utils/feed_link.html" %}
</div>
{% else %}
{% if request.user['_id'] == user['_id'] %}
<div class="grid_10 omega empty_space">
<p>
{% trans -%}
This is where your media will appear, but you don't seem to have added anything yet.
{%- endtrans %}
</p>
<a class="header_submit"
href="{{ request.urlgen('mediagoblin.submit.start') }}">
{%- trans %}Add media{% endtrans -%}
</a>
</div>
{% else %}
<div class="grid_10 omega empty_space">
<p>
{% trans -%}
There doesn't seem to be any media here yet...
{%- endtrans %}
</p>
</div>
{% endif %}
{% endif %}
<div class="clear"></div> <div class="clear"></div>
{% endif %} {% endif %}
{% endblock %} {% endblock %}

View File

@ -0,0 +1,23 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
# Copyright (C) 2011 Free Software Foundation, Inc
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#}
<a href="{{ feed_url }}">
<img src="{{ request.staticdirect('/images/icon_feed.png') }}"
class="media_icon" alt="{% trans %}feed icon{% endtrans %}" />
</a>
<a href="{{ feed_url }}">{%- trans %}Atom feed{% endtrans -%}</a>

View File

@ -18,44 +18,27 @@
{% from "mediagoblin/utils/pagination.html" import render_pagination %} {% from "mediagoblin/utils/pagination.html" import render_pagination %}
{% macro media_grid(request, media_list, col_number=5) %} {% macro media_grid(request, media_entries, col_number=5) %}
{% set num_items = media_list.count() %} <table class="thumb_gallery">
{% set col_counter = 0 %} {% for row in gridify_cursor(media_entries, col_number) %}
{% set row_counter = 0 %} <tr class="thumb_row
{% set item_counter = 0 %} {%- if loop.first %} thumb_row_first
{%- elif loop.last %} thumb_row_last{% endif %}">
{% set num_rows = num_items // col_number %} {% for entry in row %}
{% if num_items % col_number != 0 %} <td class="media_thumbnail thumb_entry
{% set num_rows = num_rows + 1 %} {%- if loop.first %} thumb_entry_first
{% endif %} {%- elif loop.last %} thumb_entry_last{% endif %}">
<div class="thumb_gallery">
{% for entry in media_list %}
{% if col_counter == 0 %}
<div class="thumb_row {% if row_counter == 0 %}thumb_row_first{% endif %}{% if num_rows == row_counter + 1 %}thumb_row_last{% endif %}">
{% endif %}
<div class="media_thumbnail thumb_entry {% if col_counter == 0 %}thumb_entry_first{% endif %}{% if col_number == col_counter + 1 or num_items == item_counter + 1 %}thumb_entry_last{% endif %}">
<a href="{{ entry.url_for_self(request.urlgen) }}"> <a href="{{ entry.url_for_self(request.urlgen) }}">
<img src="{{ request.app.public_store.file_url( <img src="{{ request.app.public_store.file_url(
entry['media_files']['thumb']) }}" /></a> entry['media_files']['thumb']) }}" />
</div> </a>
</td>
{% if col_number == col_counter + 1 or num_items == item_counter + 1 %} {% endfor %}
</div> </tr>
{% set row_counter = row_counter + 1 %}
{% endif %}
{% set item_counter = item_counter + 1 %}
{% set col_counter = col_counter + 1 %}
{% if col_counter == col_number %}
{% set col_counter = 0 %}
{% endif %}
{% endfor %} {% endfor %}
</div> </table>
{%- endmacro %} {%- endmacro %}
{# {#
Render a media gallery with pagination. Render a media gallery with pagination.

View File

@ -100,7 +100,10 @@ def get_jinja_env(template_loader, locale):
# All templates will know how to ... # All templates will know how to ...
# ... fetch all waiting messages and remove them from the queue # ... fetch all waiting messages and remove them from the queue
# ... construct a grid of thumbnails or other media
template_env.globals['fetch_messages'] = messages.fetch_messages template_env.globals['fetch_messages'] = messages.fetch_messages
template_env.globals['gridify_list'] = gridify_list
template_env.globals['gridify_cursor'] = gridify_cursor
if exists(locale): if exists(locale):
SETUP_JINJA_ENVS[locale] = template_env SETUP_JINJA_ENVS[locale] = template_env
@ -628,3 +631,32 @@ class Pagination(object):
""" """
return self.get_page_url_explicit( return self.get_page_url_explicit(
request.path_info, request.GET, page_no) request.path_info, request.GET, page_no)
def gridify_list(this_list, num_cols=5):
"""
Generates a list of lists where each sub-list's length depends on
the number of columns in the list
"""
grid = []
# Figure out how many rows we should have
num_rows = int(ceil(float(len(this_list)) / num_cols))
for row_num in range(num_rows):
slice_min = row_num * num_cols
slice_max = (row_num + 1) * num_cols
row = this_list[slice_min:slice_max]
grid.append(row)
return grid
def gridify_cursor(this_cursor, num_cols=5):
"""
Generates a list of lists where each sub-list's length depends on
the number of columns in the list
"""
return gridify_list(list(this_cursor), num_cols)