diff options
31 files changed, 511 insertions, 509 deletions
@@ -1,3 +1,5 @@ *.pyc *.swp +*.log +settings_local.py nbproject diff --git a/django_authopenid/urls.py b/django_authopenid/urls.py index 6843e5c0..9c0887d8 100644 --- a/django_authopenid/urls.py +++ b/django_authopenid/urls.py @@ -21,10 +21,10 @@ urlpatterns = patterns('django_authopenid.views', # name='user_confirmchangepw'), # manage account settings - #url(r'^$', 'account_settings', name='user_account_settings'), + #url(r'^$', _('account_settings'), name='user_account_settings'), #url(r'^%s$' % _('password/'), 'changepw', name='user_changepw'), - url(r'^%s$' % 'email/', 'changeemail', name='user_changeemail',kwargs = {'action':'change'}), - url(r'^%s%s$' % ('email/','validate/'), 'changeemail', name='user_changeemail',kwargs = {'action':'validate'}), + url(r'^%s$' % _('email/'), 'changeemail', name='user_changeemail',kwargs = {'action':'change'}), + url(r'^%s%s$' % (_('email/'),_('validate/')), 'changeemail', name='user_changeemail',kwargs = {'action':'validate'}), #url(r'^%s$' % _('openid/'), 'changeopenid', name='user_changeopenid'), url(r'^%s$' % _('delete/'), 'delete', name='user_delete'), ) diff --git a/forum/views.py b/forum/views.py index 4dc56946..626c93a3 100644 --- a/forum/views.py +++ b/forum/views.py @@ -301,7 +301,7 @@ def ask(request): ip_addr = request.META['REMOTE_ADDR'], ) question.save() - return HttpResponseRedirect('%s%s%s' % ( _('/account/'),_('signin/'),('newquestion/'))) + return HttpResponseRedirect('/%s%s%s' % ( _('account/'),_('signin/'),_('newquestion/'))) else: form = AskForm() @@ -695,7 +695,8 @@ def answer(request, id): ip_addr = request.META['REMOTE_ADDR'], ) anon.save() - return HttpResponseRedirect('/account/signin/newanswer') + return HttpResponseRedirect('/%s%s%s' % ( _('account/'), + _('signin/'),_('newquestion/'))) return HttpResponseRedirect(question.get_absolute_url()) @@ -736,7 +737,7 @@ def tags(request): 'has_next': tags.has_next(), 'previous': tags.previous_page_number(), 'next': tags.next_page_number(), - 'base_url' : '/tags/?sort=%s&' % sortby + 'base_url' : '/%s?sort=%s&' % (_('tags/'), sortby) } }, context_instance=RequestContext(request)) @@ -989,11 +990,11 @@ def users(request): # default else: objects_list = Paginator(User.objects.all().order_by('-reputation'), USERS_PAGE_SIZE) - base_url = '/users/?sort=%s&' % sortby + base_url = '/%s?sort=%s&' % (_('users/'), sortby) else: sortby = "reputation" objects_list = Paginator(User.objects.extra(where=['username like %s'], params=['%' + suser + '%']).order_by('-reputation'), USERS_PAGE_SIZE) - base_url = '/users/?name=%s&sort=%s&' % (suser, sortby) + base_url = '/%s?name=%s&sort=%s&' % (_('users/'), suser, sortby) try: users = objects_list.page(page) @@ -1412,9 +1413,9 @@ def user_responses(request, user_id, user_view): def __init__(self, type, title, question_id, answer_id, time, username, user_id, content): self.type = type self.title = title - self.titlelink = u'/questions/%s/%s#%s' % (question_id, title, answer_id) + self.titlelink = u'/%s%s/%s#%s' % (_('questions/'), question_id, title, answer_id) self.time = time - self.userlink = u'/users/%s/%s/' % (user_id, username) + self.userlink = u'/%s%s/%s/' % (_('users/'), user_id, username) self.username = username self.content = u'%s ...' % strip_tags(content)[:300] @@ -1747,7 +1748,7 @@ def __generate_comments_json(obj, type, user): "add_date" : comment.added_at.strftime('%Y-%m-%d'), "text" : comment.comment, "user_display_name" : comment_user.username, - "user_url" : "/users/%s/%s" % (comment_user.id, comment_user.username), + "user_url" : "/%s%s/%s" % (_('users/'), comment_user.id, comment_user.username), "delete_url" : delete_url }) @@ -2009,9 +2010,9 @@ def search(request): if keywords is None: return HttpResponseRedirect('/') if search_type == 'tag': - return HttpResponseRedirect('/tags/?q=%s&page=%s' % (keywords.strip(), page)) + return HttpResponseRedirect('/%s?q=%s&page=%s' % (_('tags/'), keywords.strip(), page)) elif search_type == "user": - return HttpResponseRedirect('/users/?q=%s&page=%s' % (keywords.strip(), page)) + return HttpResponseRedirect('/%s?q=%s&page=%s' % (_('users/'), keywords.strip(), page)) elif search_type == "question": template_file = "questions.html" diff --git a/locale/es/LC_MESSAGES/django.mo b/locale/es/LC_MESSAGES/django.mo Binary files differdeleted file mode 100644 index 6c616b17..00000000 --- a/locale/es/LC_MESSAGES/django.mo +++ /dev/null diff --git a/locale/es/LC_MESSAGES/django.po b/locale/es/LC_MESSAGES/django.po index b209c72c..54047c85 100644 --- a/locale/es/LC_MESSAGES/django.po +++ b/locale/es/LC_MESSAGES/django.po @@ -1,30 +1,158 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-08-05 22:28-0400\n" -"PO-Revision-Date: 2009-08-07 11:21-0600\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2009-08-09 22:45-0300\n" +"PO-Revision-Date: \n" +"Last-Translator: Bruno Sarlo <bsarlo@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" -#: settings.py:12 +#: settings.py:12 urls.py:25 forum/views.py:304 forum/views.py:695 msgid "account/" msgstr "cuenta/" -#: settings.py:12 django_authopenid/urls.py:9 django_authopenid/urls.py:10 -#: django_authopenid/urls.py:11 django_authopenid/urls.py:13 -#: forum/views.py:304 templates/authopenid/confirm_email.txt:10 +#: settings.py:12 urls.py:26 django_authopenid/urls.py:9 +#: django_authopenid/urls.py:10 django_authopenid/urls.py:11 +#: django_authopenid/urls.py:13 forum/views.py:304 forum/views.py:696 msgid "signin/" msgstr "ingresar/" +#: urls.py:22 +msgid "upfiles/" +msgstr "archivossubidos/" + +#: urls.py:27 urls.py:28 urls.py:29 django_authopenid/urls.py:26 +#: django_authopenid/urls.py:27 +msgid "email/" +msgstr "email/" + +#: urls.py:27 +msgid "change/" +msgstr "cambiar/" + +#: urls.py:28 +msgid "sendkey/" +msgstr "enviarclave/" + +#: urls.py:29 +msgid "verify/" +msgstr "verificar/" + +#: urls.py:30 +msgid "about/" +msgstr "acercadenosotros/" + +#: urls.py:31 +msgid "faq/" +msgstr "preguntasfrecuentes/" + +#: urls.py:32 +msgid "privacy/" +msgstr "códigodeprivacidad/" + +#: urls.py:33 +msgid "logout/" +msgstr "cerrarsesion/" + +#: urls.py:34 urls.py:35 urls.py:36 urls.py:48 +msgid "answers/" +msgstr "respuestas/" + +#: urls.py:34 urls.py:46 +msgid "comments/" +msgstr "comentarios/" + +#: urls.py:35 urls.py:40 urls.py:54 +msgid "edit/" +msgstr "editar/" + +#: urls.py:36 urls.py:45 +msgid "revisions/" +msgstr "revisiones/" + +#: urls.py:37 urls.py:38 urls.py:39 urls.py:40 urls.py:41 urls.py:42 +#: urls.py:43 urls.py:44 urls.py:45 urls.py:46 urls.py:47 forum/feed.py:19 +#: forum/views.py:1170 forum/views.py:1171 forum/views.py:1410 +msgid "questions/" +msgstr "preguntas/" + +#: urls.py:38 urls.py:64 +msgid "ask/" +msgstr "preguntar/" + +#: urls.py:39 +msgid "unanswered/" +msgstr "sinrespuesta/" + +#: urls.py:41 +msgid "close/" +msgstr "cerrar/" + +#: urls.py:42 +msgid "reopen/" +msgstr "reabrir/" + +#: urls.py:43 +msgid "answer/" +msgstr "respuesta/" + +#: urls.py:44 +msgid "vote/" +msgstr "votar/" + +#: urls.py:47 urls.py:48 django_authopenid/urls.py:29 +msgid "delete/" +msgstr "borrar/" + +#: urls.py:50 +#, fuzzy +msgid "question/" +msgstr "preguntas/" + +#: urls.py:51 urls.py:52 forum/views.py:737 forum/views.py:2007 +msgid "tags/" +msgstr "etiquetas/" + +#: urls.py:53 urls.py:54 urls.py:55 forum/views.py:990 forum/views.py:994 +#: forum/views.py:1412 forum/views.py:2009 +msgid "users/" +msgstr "usuarios/" + +#: urls.py:56 urls.py:57 +msgid "badges/" +msgstr "distinciones/" + +#: urls.py:58 +msgid "messages/" +msgstr "mensajes/" + +#: urls.py:58 +msgid "markread/" +msgstr "marcarleido/" + +#: urls.py:60 +msgid "nimda/" +msgstr "administrador/" + +#: urls.py:61 +msgid "feeds/" +msgstr "" + +#: urls.py:62 +msgid "upload/" +msgstr "subir/" + +#: urls.py:63 urls.py:64 urls.py:65 +msgid "books/" +msgstr "libros/" + +#: urls.py:66 +msgid "search/" +msgstr "buscar/" + #: django_authopenid/forms.py:67 django_authopenid/views.py:102 msgid "i-names are not supported" msgstr "i-names no son soportados" @@ -116,9 +244,9 @@ msgstr "la nueva contraseña no coincide" msgid "Incorrect username." msgstr "Nombre de usuario incorrecto" -#: django_authopenid/urls.py:10 +#: django_authopenid/urls.py:10 forum/views.py:304 forum/views.py:696 msgid "newquestion/" -msgstr "nueva-pregunta/" +msgstr "nuevapregunta/" #: django_authopenid/urls.py:11 msgid "newanswer/" @@ -144,14 +272,15 @@ msgstr "registrarse/" msgid "sendpw/" msgstr "enviarcontrasena/" -#: django_authopenid/urls.py:29 -msgid "delete/" -msgstr "borrar/" +#: django_authopenid/urls.py:27 +#, fuzzy +msgid "validate/" +msgstr "Cambiar dirección email" #: django_authopenid/views.py:108 #, python-format msgid "OpenID %(openid_url)s is invalid" -msgstr "" +msgstr "El OpenID %(openid_url)s no es valido" #: django_authopenid/views.py:417 django_authopenid/views.py:544 msgid "Welcome" @@ -260,7 +389,7 @@ msgstr "pregunta" #: forum/const.py:57 templates/book.html:110 msgid "answer" -msgstr "resputa" +msgstr "respuesta" #: forum/const.py:58 msgid "commented question" @@ -346,10 +475,6 @@ msgstr " - " msgid "latest questions" msgstr "últimas preguntas" -#: forum/feed.py:19 -msgid "questions/" -msgstr "preguntas/" - #: forum/forms.py:14 templates/answer_edit_tips.html:34 #: templates/answer_edit_tips.html.py:38 templates/question_edit_tips.html:31 #: templates/question_edit_tips.html:36 @@ -372,7 +497,7 @@ msgstr "contenido" msgid "question content must be > 10 characters" msgstr "el contenido de la pregunta debe ser al menos de 10 caracteres" -#: forum/forms.py:45 templates/header.html:30 templates/header.html.py:61 +#: forum/forms.py:45 templates/header.html:34 templates/header.html.py:62 msgid "tags" msgstr "etiquetas" @@ -380,6 +505,8 @@ msgstr "etiquetas" msgid "" "Tags are short keywords, with no spaces within. Up to five tags can be used." msgstr "" +"por favor utilice espacio para separar las etiquetas (esto habilitael auto-" +"completado)" #: forum/forms.py:54 templates/question_retag.html:38 msgid "tags are required" @@ -405,6 +532,7 @@ msgstr "" #: templates/question.html.py:380 templates/questions.html:58 #: templates/questions.html.py:70 templates/unanswered.html:48 #: templates/unanswered.html.py:60 +#, fuzzy msgid "community wiki" msgstr "wiki de comunidad" @@ -460,40 +588,40 @@ msgstr "Perfil" msgid "this email has already been registered, please use another one" msgstr "este email ya ha sido registrado, por favor use otro" -#: forum/models.py:238 +#: forum/models.py:243 #, fuzzy, python-format msgid "%(author)s modified the question" msgstr "%(author) modificó la pregunta" -#: forum/models.py:242 +#: forum/models.py:247 #, python-format msgid "%(people)s posted %(new_answer_count)s new answers" msgstr "%(people)s publicaron %(new_answer_count)s nuevas respuestas" -#: forum/models.py:247 +#: forum/models.py:252 #, python-format msgid "%(people)s commented the question" msgstr "%(people)s comentarion la pregunta" -#: forum/models.py:252 +#: forum/models.py:257 #, python-format msgid "%(people)s commented answers" msgstr "%(people)s comentaron la respuesta" -#: forum/models.py:254 -#, python-format -msgid "%(people)s commented the answer" -msgstr "%(people)s comentaron la respuestas" +#: forum/models.py:259 +#, fuzzy, python-format +msgid "%(people)s commented an answer" +msgstr "%(people)s comentaron la respuesta" -#: forum/models.py:433 templates/badges.html:52 +#: forum/models.py:438 templates/badges.html:52 msgid "gold" msgstr "oro" -#: forum/models.py:434 templates/badges.html:60 +#: forum/models.py:439 templates/badges.html:60 msgid "silver" msgstr "plata" -#: forum/models.py:435 templates/badges.html:67 +#: forum/models.py:440 templates/badges.html:67 msgid "bronze" msgstr "bronze" @@ -551,7 +679,7 @@ msgstr "preguntas favoritas" #: forum/user.py:51 msgid "users favorite questions" -msgstr "preguntas favoritas del usuario" +msgstr "preguntas favoritas de los usuarios" #: forum/user.py:52 msgid "profile - favorite questions" @@ -581,31 +709,27 @@ msgstr "preferencias del usuario" msgid "profile - user preferences" msgstr "perfil - preferencia de " -#: forum/views.py:304 -msgid "/account/" -msgstr "/cuenta/" - -#: forum/views.py:943 +#: forum/views.py:944 #, python-format msgid "subscription saved, %(email)s needs validation" msgstr "subscripción guardada, %(email)s necesita validación" -#: forum/views.py:1853 +#: forum/views.py:1854 msgid "uploading images is limited to users with >60 reputation points" msgstr "para subir imagenes debes tener más de 60 puntos de reputación" -#: forum/views.py:1855 +#: forum/views.py:1856 msgid "allowed file types are 'jpg', 'jpeg', 'gif', 'bmp', 'png', 'tiff'" msgstr "" "los tipos de archivos permitidos son 'jpg', 'jpeg', 'gif', 'bmp', 'png', " "'tiff'" -#: forum/views.py:1857 +#: forum/views.py:1858 #, python-format msgid "maximum upload file size is %sK" msgstr "tamaño máximo permitido es archivo %sK" -#: forum/views.py:1859 +#: forum/views.py:1860 #, python-format msgid "" "Error uploading file. Please contact the site administrator. Thank you. %s" @@ -617,7 +741,7 @@ msgid "updates from website" msgstr "actualizaciones del sitio" #: forum/templatetags/extra_tags.py:139 forum/templatetags/extra_tags.py:168 -#: templates/header.html:33 +#: templates/header.html:37 msgid "badges" msgstr "distinciones" @@ -675,7 +799,7 @@ msgstr "ver todas las tags" #: templates/500.html:22 msgid "sorry, system error" -msgstr "" +msgstr "lo sentimos, ha habido un error del sistema" #: templates/500.html:24 msgid "system error log is recorded, error will be fixed as soon as possible" @@ -771,6 +895,7 @@ msgid "be clear and concise" msgstr "ser claro y conciso" #: templates/answer_edit_tips.html:19 templates/question_edit_tips.html:16 +#, fuzzy msgid "see frequently asked questions" msgstr "ver preguntas frecuentes" @@ -813,7 +938,7 @@ msgstr "aprender mas sobre Markdown" #: templates/ask.html:4 templates/ask.html.py:60 msgid "Ask a question" -msgstr "Preguntar" +msgstr "Hacer una pregunta" #: templates/ask.html:67 msgid "login to post question info" @@ -861,8 +986,8 @@ msgid "" "Below is the list of available badges and number of times each type of badge " "has been awarded." msgstr "" -"Debajo esta la lista de las distinciones disponibles y la cantidad de " -"veces que han sido asignadas." +"Debajo esta la lista de las distinciones disponibles y la cantidad de veces " +"que han sido asignadas." #: templates/badges.html:49 msgid "Community badges" @@ -1195,7 +1320,7 @@ msgstr "¿Aún tienes preguntas?" msgid "Please ask your question, help make our community better!" msgstr "Por favor haz tu pregunta, ¡ayudanos a mejorar nuestra comunidad!" -#: templates/faq.html:132 templates/header.html:29 templates/header.html.py:60 +#: templates/faq.html:132 templates/header.html:33 templates/header.html.py:61 msgid "questions" msgstr "preguntas" @@ -1205,7 +1330,7 @@ msgstr "." #: templates/footer.html:7 templates/header.html:14 templates/index.html:83 msgid "about" -msgstr "acerca de" +msgstr "acerca de nosotros" #: templates/footer.html:8 templates/header.html:15 templates/index.html:84 msgid "faq" @@ -1241,29 +1366,31 @@ msgstr "entrar" #: templates/header.html:23 msgid "back to home page" -msgstr "volver al inicio" +msgstr "volver página principal" -#: templates/header.html:31 templates/header.html.py:62 +#: templates/header.html:30 +msgid "ask a question" +msgstr "hacer una pregunta" + +#: templates/header.html:35 templates/header.html.py:63 msgid "users" msgstr "usuarios" -#: templates/header.html:32 +#: templates/header.html:36 +#, fuzzy msgid "books" msgstr "libros" -#: templates/header.html:34 +#: templates/header.html:38 msgid "unanswered questions" msgstr "sin respuesta" -#: templates/header.html:38 +#: templates/header.html:42 msgid "my profile" msgstr "mi perfil" -#: templates/header.html:42 -msgid "ask a question" -msgstr "hacer una pregunta" - -#: templates/header.html:57 +#: templates/header.html:58 +#, fuzzy msgid "search" msgstr "buscar" @@ -1276,6 +1403,7 @@ msgid "Questions" msgstr "Preguntas" #: templates/index.html:24 +#, fuzzy msgid "last updated questions" msgstr "ultimas preguntas actualizadas" @@ -1286,7 +1414,7 @@ msgstr "más nuevas" #: templates/index.html:25 templates/questions.html:27 msgid "hottest questions" -msgstr "preguntas más calientes" +msgstr "preguntas calientes" #: templates/index.html:25 templates/questions.html:27 msgid "hottest" @@ -1359,6 +1487,7 @@ msgid "complete list of questions" msgstr "lista completa de preguntas" #: templates/index.html:121 +#, fuzzy msgid "or" msgstr "ó" @@ -1411,14 +1540,16 @@ msgid "next page" msgstr "próxima página" #: templates/privacy.html:6 templates/privacy.html.py:11 +#, fuzzy msgid "Privacy policy" -msgstr "Código de Privacidad" +msgstr "Privacidad" #: templates/privacy.html:15 msgid "general message about privacy" msgstr "mensaje de privacidad" #: templates/privacy.html:18 +#, fuzzy msgid "Site Visitors" msgstr "Visitantes del Sitio" @@ -1562,7 +1693,7 @@ msgstr "las preguntas más votadas serán mostradas primero" #: templates/question.html:263 msgid "popular answers" -msgstr "respuestas populares serán mostradas primero" +msgstr "respuestas populares" #: templates/question.html:275 msgid "i like this answer (click again to cancel)" @@ -1598,7 +1729,7 @@ msgstr "Tu respuesta" #: templates/question.html:441 msgid "you can answer anonymously and then login" -msgstr "" +msgstr "puedes responder de forma anónima y luego ingresar" #: templates/question.html:465 msgid "Answer the question" @@ -1606,15 +1737,18 @@ msgstr "Responde la pregunta" #: templates/question.html:467 msgid "Notify me daily if there are any new answers." -msgstr "" +msgstr "Notificarme diariamente si hay nuevas respuestas." #: templates/question.html:469 msgid "once you sign in you will be able to subscribe for any updates here" msgstr "" +"una vez que hayas ingresado podrás suscribirte a cualquiera de las " +"actualizaciones aquí." #: templates/question.html:481 +#, fuzzy msgid "Question tags" -msgstr "Etiquetas de la pregunta" +msgstr "Tags de la pregunta" #: templates/question.html:491 msgid "question asked" @@ -1622,8 +1756,9 @@ msgstr "pregunta preguntada" #: templates/question.html:491 templates/question.html.py:497 #: templates/user_info.html:51 +#, fuzzy msgid "ago" -msgstr "atrás" +msgstr " atras" #: templates/question.html:494 msgid "question was seen" @@ -1671,7 +1806,7 @@ msgstr "¿Porqué usar y modificar etiquetas?" #: templates/question_retag.html:89 msgid "tags help us keep Questions organized" -msgstr "" +msgstr "las etiquetas nos permiten mantener las Preguntas organizadas" #: templates/question_retag.html:95 msgid "tag editors receive special awards from the community" @@ -1712,10 +1847,12 @@ msgid_plural "" "\n" "\t\t\thave total %(q_num)s questions tagged %(tagname)s\n" "\t\t\t" -msgstr[0] "\n" +msgstr[0] "" +"\n" "\t\t\ttiene un total de %(q_num)s preguntas etiquetadas con %(tagname)s\n" "\t\t\t" -msgstr[1] "\n" +msgstr[1] "" +"\n" "\t\t\ttiene un total de %(q_num)s preguntas etiquetadas con %(tagname)s\n" "\t\t\t" @@ -1814,6 +1951,7 @@ msgstr "Re-abrir esta pregunta" #: templates/revisions_answer.html:7 templates/revisions_answer.html.py:36 #: templates/revisions_question.html:8 templates/revisions_question.html:36 +#, fuzzy msgid "Revision history" msgstr "Historial de revisiones" @@ -1865,6 +2003,7 @@ msgid "Have a total of" msgstr "Hay un total de" #: templates/user_edit.html:6 +#, fuzzy msgid "Edit user profile" msgstr "Editar perfil de usuario" @@ -1889,8 +2028,9 @@ msgid "Update" msgstr "Actualización" #: templates/user_info.html:34 +#, fuzzy msgid "update profile" -msgstr "" +msgstr "actualizar perfil de usuario" #: templates/user_info.html:40 msgid "real name" @@ -1930,7 +2070,7 @@ msgstr "votos restantes" #: templates/user_preferences.html:10 msgid "Connect with Twitter" -msgstr "" +msgstr "Conectar con Twitter" #: templates/user_preferences.html:12 msgid "Twitter account name:" @@ -1993,6 +2133,7 @@ msgid "see other questions tagged '%(tag)s' " msgstr "ver otras preguntas etiqueteadas '%(tag)s'" #: templates/user_tabs.html:7 +#, fuzzy msgid "User profile" msgstr "Perfil de usuario" @@ -2005,6 +2146,7 @@ msgid "reputation history" msgstr "historial de reputación" #: templates/user_tabs.html:24 +#, fuzzy msgid "favorites" msgstr "favoritos" @@ -2064,7 +2206,7 @@ msgstr "Por favor corrija los errores debajo: " #: templates/authopenid/changeemail.html:30 msgid "Your new Email" -msgstr "" +msgstr "Tu nuevo Email" #: templates/authopenid/changeemail.html:31 #: templates/authopenid/signin.html:138 @@ -2079,7 +2221,7 @@ msgstr "Cambiar dirección email" #: templates/authopenid/changeemail.html:45 #, python-format msgid "validate %(email)s info" -msgstr "" +msgstr "validar información de %(email)s " #: templates/authopenid/changeemail.html:50 msgid "Email not changed" @@ -2088,7 +2230,7 @@ msgstr "Email no modificado." #: templates/authopenid/changeemail.html:53 #, python-format msgid "old %(email)s kept" -msgstr "" +msgstr "se ha conservado el viejo email %(email)s " #: templates/authopenid/changeemail.html:58 msgid "Email changed" @@ -2097,7 +2239,7 @@ msgstr "Email modificado." #: templates/authopenid/changeemail.html:61 #, python-format msgid "your current %(email)s can be used for this" -msgstr "" +msgstr "tu email actual %(email)s puede ser usado para esto" #: templates/authopenid/changeemail.html:66 msgid "Email verified" @@ -2114,7 +2256,7 @@ msgstr "llave de correo no enviada" #: templates/authopenid/changeemail.html:77 #, python-format msgid "email key not sent %(email)s change email here %(change_link)s" -msgstr "" +msgstr "email no enviado %(email)s cambiar email aquí %(change_link)s" #: templates/authopenid/changeopenid.html:8 msgid "Account: change OpenID URL" @@ -2168,7 +2310,7 @@ msgstr "Vincular tu OpenID con tu cuenta en este sitio" #: templates/authopenid/complete.html:12 #, python-format msgid "register new %(provider)s account info" -msgstr "" +msgstr "Registrar una nueva cuenta %(provider)s." #: templates/authopenid/complete.html:14 msgid "This account already exists, please use another." @@ -2181,11 +2323,11 @@ msgstr "Ups, parece que hay errores:" #: templates/authopenid/complete.html:47 msgid "Screen name label" -msgstr "" +msgstr "Nombre de Usuario" #: templates/authopenid/complete.html:48 msgid "Email address label" -msgstr "su email (correo electrónico)" +msgstr "Su email (correo electrónico)" #: templates/authopenid/complete.html:49 msgid "create account" @@ -2211,36 +2353,6 @@ msgstr "Registrarse" msgid "Forgot your password?" msgstr "¿Olvidaste tu contraseña?" -#: templates/authopenid/confirm_email.txt:2 -msgid "Thank you for registering at our Q&A forum!" -msgstr "" - -#: templates/authopenid/confirm_email.txt:4 -msgid "Your account details are:" -msgstr "Los detalles de su cuenta son:" - -#: templates/authopenid/confirm_email.txt:6 -#: templates/authopenid/sendpw_email.txt:7 -msgid "Username:" -msgstr "Nombre de usuario" - -#: templates/authopenid/confirm_email.txt:7 -#: templates/authopenid/delete.html:20 -msgid "Password:" -msgstr "Contraseña" - -#: templates/authopenid/confirm_email.txt:9 -msgid "Please sign in here:" -msgstr "Por favor inicie sesión aquí:" - -#: templates/authopenid/confirm_email.txt:12 -#: templates/authopenid/email_validation.txt:14 -#: templates/authopenid/sendpw_email.txt:13 -msgid "" -"Sincerely,\n" -"Forum Administrator" -msgstr "" - #: templates/authopenid/delete.html:9 msgid "Account: delete account" msgstr "Cuenta: borrar cuenta" @@ -2250,13 +2362,17 @@ msgid "" "Note: After deleting your account, anyone will be able to register this " "username." msgstr "" -"Nota: Luego de borrar tu cuenta, cualquiera podrá registrarse con este " +"Nota: Luego de borrar tu cuenta, cualquiera va a poder registrarse con este " "nombre de usuario." #: templates/authopenid/delete.html:17 msgid "Check confirm box, if you want delete your account." msgstr "Marca caja de confirmación, si deseas borrar tu cuenta." +#: templates/authopenid/delete.html:20 +msgid "Password:" +msgstr "Contraseña" + #: templates/authopenid/delete.html:32 msgid "I am sure I want to delete my account." msgstr "Estoy seguro que quiero borrar mi cuenta." @@ -2273,25 +2389,6 @@ msgstr "(requerido por tu seguridad)" msgid "Delete account permanently" msgstr "Borrar la cuenta de forma permanente" -#: templates/authopenid/email_validation.txt:2 -msgid "Greetings from the Q&A forum" -msgstr "" - -#: templates/authopenid/email_validation.txt:4 -msgid "To make use of the Forum, please follow the link below:" -msgstr "Para usar el Foro, siga el siguiente enlace:" - -#: templates/authopenid/email_validation.txt:8 -msgid "Following the link above will help us verify your email address." -msgstr "El siguiente enlace nos ayudará a verificar su correo electrónico." - -#: templates/authopenid/email_validation.txt:10 -msgid "" -"If you beleive that this message was sent in mistake - \n" -"no further action is needed. Just ingore this email, we apologize\n" -"for any inconvenience" -msgstr "" - #: templates/authopenid/sendpw.html:4 templates/authopenid/sendpw.html.py:8 msgid "Send new password" msgstr "Enviar nueva contraseña" @@ -2328,25 +2425,6 @@ msgstr "" "Nota: tu nueva contraseña solo será activada luego de que hagas click en el " "link de activación en el email enviado." -#: templates/authopenid/sendpw_email.txt:2 -#, python-format -msgid "" -"Someone has requested to reset your password on %(site_url)s.\n" -"If it were not you, it is safe to ignore this email." -msgstr "" - -#: templates/authopenid/sendpw_email.txt:5 -msgid "Your new account details are:" -msgstr "" - -#: templates/authopenid/sendpw_email.txt:8 -msgid "New password:" -msgstr "Nueva contraseña" - -#: templates/authopenid/sendpw_email.txt:10 -msgid "To confirm that you wanted to reset your password please visit:" -msgstr "" - #: templates/authopenid/settings.html:30 msgid "Give your account a new password." msgstr "Crea una nueva contraseña para tu cuenta." @@ -2383,6 +2461,10 @@ msgid "" "log in\n" " " msgstr "" +"\n" +" Tu respuesta a %(title)s %(summary)s será publicada una vez " +"que ingreses \n" +" " #: templates/authopenid/signin.html:35 #, python-format @@ -2391,20 +2473,25 @@ msgid "" " %(title)s %(summary)s will be posted once you log in\n" " " msgstr "" +"Tu pregunta \n" +" %(title)s %(summary)s será publicada una vez que ingreses\n" +" " #: templates/authopenid/signin.html:40 msgid "Click to sign in through any of these services." -msgstr "" +msgstr "Clickea para entrar por cualquiera de estos servicios." #: templates/authopenid/signin.html:103 msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" -msgstr "" +msgstr "Ingresa tu <span id=\"enter_your_what\">nombre de usuario</span>" #: templates/authopenid/signin.html:110 msgid "" "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " "web address" msgstr "" +"Ingresa tu dirección (URL) de <a class=\"openid_logo\" href=\"http://openid." +"net\">OpenID</a>" #: templates/authopenid/signin.html:112 templates/authopenid/signin.html:139 msgid "Login" @@ -2412,9 +2499,7 @@ msgstr "Ingresar" #: templates/authopenid/signin.html:116 msgid "we support two login modes" -msgstr "" -"Puedes ingresar por cualquiera de los siguientes servicios, o " -"tradicionalmente- usando nombre de usuario y contraseña locales" +msgstr "soportamos dos tipos de ingreso" #: templates/authopenid/signin.html:136 msgid "Use login name and password" @@ -2501,173 +2586,8 @@ msgstr "Registrate con tu OpenID" msgid "Login with your OpenID" msgstr "Ingresar con tu OpenID" -#~ msgid "site slogan" -#~ msgstr " slogan del sitio" - -#~ msgid "meta site content" -#~ msgstr "meta descripción" +#~ msgid "/account/" +#~ msgstr "/cuenta/" -#~ msgid "copyright message" -#~ msgstr "mensaje de copyright" - -#~ msgid "" -#~ "please use space to separate tags (this enables autocomplete feature)" -#~ msgstr "" -#~ "por favor utilice espacio para separar las etiquetas (esto habilitael " -#~ "auto-completado)" - -#~ msgid "Use" -#~ msgstr "Usar" - -#~ msgid "learn more about OpenID" -#~ msgstr "aprender mas sobre OpenID" - -#~ msgid "Get your own " -#~ msgstr "Obtiene tu propio " - -#~ msgid "Email: (won't be shown to anyone)" -#~ msgstr "Email: (no será mostrado a nadie)" - -#, fuzzy -#~ msgid "Congratulations! You have new badges: " -#~ msgstr "felicitaciones, la comunidad te ha otorgado una distinción" - -#, fuzzy -#~ msgid "go to see" -#~ msgstr "OK para cerrar" - -#~ msgid "congratulations, community gave you a badge" -#~ msgstr "felicitaciones, la comunidad te ha otorgado una distinción" - -#~ msgid "see" -#~ msgstr "ver" - -#~ msgid "profile" -#~ msgstr "perfil" - -#~ msgid "" -#~ "Anyone can ask questions and give answers, points are not necessary for " -#~ "that." -#~ msgstr "" -#~ "Cualquier usuario puede hacer preguntas y dar respuestas, no es necesario " -#~ "tener reputación para ello." - -#~ msgid "" -#~ "As we've said before, users help running this site. Point system helps " -#~ "select users who can administer this community." -#~ msgstr "" -#~ "Como dijimos antes, los usuarios ayudan a crear este sitio. El sistema de " -#~ "reputación permite seleccionar usuarios que pueden moderar esta comunidad." - -#~ msgid "" -#~ "Reputation points roughly measure how community trusts you. These points " -#~ "are given to you directly by other members of the community." -#~ msgstr "" -#~ "Los puntos de reputación miden a groso modo que tan respetado eres en la " -#~ "comunidad. Los puntos son dados a ti directamente por otros miembros de " -#~ "la comunidad" - -#~ msgid "" -#~ "For example, if you ask an interesting question or give a helpful answer, " -#~ "your input will be upvoted and you will gain more trust in the community." -#~ msgstr "" -#~ "Por ejemplo, si haces una pregunta interesante, o das una respuesta " -#~ "valiosa, tu entrada va a ser votada positivamente y tu ganarás confianza " -#~ "en la comunidad." - -#~ msgid "" -#~ "If on the other hand someone gives a misleading answer, the answer will " -#~ "be voted down and he/she loses some points." -#~ msgstr "" -#~ "Si por el contrario, alguien da una respuesta que no corresponde, la " -#~ "respuesta será votada negativamente y el usuario perderá puntos." - -#~ msgid "" -#~ "Each vote in favor will generate <strong>10</strong> points, each vote " -#~ "against will subtract <strong>2</strong> points." -#~ msgstr "" -#~ "Cada voto a favor generará <strong>10</strong> puntos, cada voto negativo " -#~ "restará <strong>2</strong> puntos." - -#~ msgid "" -#~ "Through the votes of other people you can accumulate a maximum of " -#~ "<strong>200</strong> points." -#~ msgstr "" -#~ "A través del voto de otras personas puedes acumular un máximo de " -#~ "<strong>200</strong> puntos." - -#~ msgid "After accumulating certain number of points, you can do more:" -#~ msgstr "" -#~ "Luego de haber acumulado cierta cantidad de puntos, puedes hacer más:" - -#~ msgid "meta site keywords, comma separated" -#~ msgstr "palabras claves" - -#~ msgid "what is this website" -#~ msgstr "que es este sitio" - -#~ msgid "what can one do on this website" -#~ msgstr "que puede uno hacer en este sitio" - -#~ msgid "Login to answer" -#~ msgstr "Ingresa para responder" - -#~ msgid "Account: change email" -#~ msgstr "Cuenta: cambiar el email" - -#~ msgid "" -#~ "This is where you can change the email address associated with your " -#~ "account. Please keep this email address up to date so we can send you a " -#~ "password-reset email if you request one." -#~ msgstr "" -#~ "Aquí es donde puedes cambiar el email asociado a tu cuenta de usuario.Por " -#~ "favor manten esta dirección de correo al día de forma que podamos " -#~ "mandarte un cambio de contraseña si tu así lo requieres." - -#~ msgid "Email" -#~ msgstr "Email" - -#~ msgid "" -#~ "Your OpenID is accepted. Please complete this to finish registration." -#~ msgstr "" -#~ "Tu OpenID es aceptada. Por favor completa lo siguiente para finalizar el " -#~ "registro." - -#~ msgid "New account" -#~ msgstr "Nueva cuenta" - -#~ msgid "User name (<i>will be shown to others, cannot be modified</i>)" -#~ msgstr "" -#~ "Nombre de usuario (<i>será mostrado a otros, no puede ser modificado</i>)" - -#~ msgid "Email (<i>not shared with anyone</i>)" -#~ msgstr "Email (<i>no será compartido con nadie</i>)" - -#~ msgid "select openid provider" -#~ msgstr "1) Selecciona tu proveedor de OpenID" - -#~ msgid "verify openid link and login" -#~ msgstr "" -#~ "2) Varifica la URL de tu OpenID (escribe tu nombre de usuario donde dice " -#~ "{nombre de usuario} si lo ves) y luego clickea 'ingresar'" - -#~ msgid "Revise tags" -#~ msgstr "Revisar etiquetas" - -#~ msgid "tags are requried" -#~ msgstr "las etiquetas son requeridas" - -#~ msgid "Change now" -#~ msgstr "Cambiar ahora" - -#~ msgid "number of <strong>unanswered</strong> questions" -#~ msgstr "número de respuestas <strong>sin responder</strong>" - -# -#~ msgid "editing tips" -#~ msgstr "Tips" - -#~ msgid "Newest questions shown first." -#~ msgstr "" -#~ "Questions are sorted by <strong>entry date</strong>.Newest questions " -#~ "shown first." +#~ msgid "content/" +#~ msgstr "contenido/" diff --git a/settings_local.py b/settings_local.py deleted file mode 100644 index c0483ffc..00000000 --- a/settings_local.py +++ /dev/null @@ -1,47 +0,0 @@ -# encoding:utf-8 -import os.path - -SITE_SRC_ROOT = os.path.dirname(__file__) -LOG_FILENAME = 'django.lanai.log' - -#for logging -import logging -logging.basicConfig(filename=os.path.join(SITE_SRC_ROOT, 'log', LOG_FILENAME), level=logging.DEBUG,) - -DATABASE_NAME = 'cnprog.sqlite3' # Or path to database file if using sqlite3. -DATABASE_USER = '' # Not used with sqlite3. -DATABASE_PASSWORD = '' # Not used with sqlite3. -DATABASE_ENGINE = 'sqlite3' #mysql, etc - -#Moved from settings.py for better organization. (please check it up to clean up settings.py) - -#email server settings -SERVER_EMAIL = '' -DEFAULT_FROM_EMAIL = 'team@cnprog.com' -EMAIL_HOST_USER = '' -EMAIL_HOST_PASSWORD = '' -EMAIL_SUBJECT_PREFIX = '[cnprog.com]' -EMAIL_HOST='smtp.gmail.com' -EMAIL_PORT='587' -EMAIL_USE_TLS=True - -#LOCALIZATIONS -TIME_ZONE = 'Asia/Chongqing Asia/Chungking' -# LANGUAGE_CODE = 'en-us' - -#OTHER SETTINGS -APP_TITLE = u'CNProg.com 程序员问答社区' -APP_KEYWORDS = u'技术问答社区,中国程序员,编程技术社区,程序员社区,程序员论坛,程序员wiki,程序员博客' -APP_DESCRIPTION = u'中国程序员的编程技术问答社区。我们做专业的、可协作编辑的技术问答社区。' -APP_INTRO = u' <p>CNProg是一个<strong>面向程序员</strong>的可协作编辑的<strong>开放源代码问答社区</strong>。</p><p> 您可以在这里提问各类<strong>程序技术问题</strong> - 问题不分语言和平台。 同时也希望您对力所能及的问题,给予您的宝贵答案。</p>' -APP_COPYRIGHT = 'Copyright CNPROG.COM 2009' - -USE_I18N = True -LANGUAGE_CODE = 'en' -EMAIL_VALIDATION = 'off' -MIN_USERNAME_LENGTH = 1 -EMAIL_UNIQUE = False -APP_URL = 'http://server.com' #used by email notif system and RSS -GOOGLE_SITEMAP_CODE = '55uGNnQVJW8p1bbXeF/Xbh9I7nZBM/wLhRz6N/I1kkA=' -GOOGLE_ANALYTICS_KEY = '' - diff --git a/templates/404.html b/templates/404.html index 7090156b..bfb86e7d 100644 --- a/templates/404.html +++ b/templates/404.html @@ -27,7 +27,7 @@ <ul> <li>{% trans "this question or answer has been deleted;" %}</li> <li>{% trans "url has error - please check it;" %}</li> - <li>{% trans "the page you tried to visit is protected or you don't have sufficient points, see" %} <a href="/faq"> faq</a>;</li> + <li>{% trans "the page you tried to visit is protected or you don't have sufficient points, see" %} <a href="{% url faq %}"> faq</a>;</li> <li>{% trans "if you believe this error 404 should not have occured, please" %} <a href="{{feedback_site_url}}" target="_blank">{% trans "report this problem" %}</a></li> </u> @@ -39,8 +39,8 @@ <script type="text/javascript" src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script> <ul> <li><a href="#" id="linkPrevious">{% trans "back to previous page" %} » </li> - <li><a href="/questions">{% trans "see all questions" %} » </a></li> - <li><a href="/tags/">{% trans "see all tags" %} » </a></li> + <li><a href="{% url questions %}">{% trans "see all questions" %} » </a></li> + <li><a href="{% url tags %}">{% trans "see all tags" %} » </a></li> </u> </div> diff --git a/templates/500.html b/templates/500.html index 313150fb..51e73178 100644 --- a/templates/500.html +++ b/templates/500.html @@ -25,8 +25,8 @@ {% trans "please report the error to the site administrators if you wish" %} <ul> <li><a href="#" id="linkPrevious">{% trans "back to previous page" %}</li> - <li><a href="/questions">{% trans "see latest questions" %}</a></li> - <li><a href="/tags/">{% trans "see tags" %}</a></li> + <li><a href="{% url questions %}">{% trans "see latest questions" %}</a></li> + <li><a href="{% url tags %}">{% trans "see tags" %}</a></li> </u> </div> diff --git a/templates/about.html b/templates/about.html index eaf0d591..7beedb0b 100644 --- a/templates/about.html +++ b/templates/about.html @@ -12,10 +12,13 @@ </div> <div class="content"> - <p>edit file templates/about.html. Below are just suggestions of what can go here</p> - <p>what is your site for?</p> - <p>how does it work? what are roles of members?</p> - <p>is there a place to find out more about this website?</p> + <p>Preguntalo.com.uy es una herramienta social para hacer preguntas y recibir respuestas + de forma colectiva, incentivando a quienes aporten contenidos relevantes mediante un + sistema de reputación.</p> + <p>Si haces una pregunta ques es votada por los usuarios como útil, recibiras + puntos de reputación, también si respondes una pregunta, y más puntos aún si tu respuesta + es aceptada como la correcta!</p> + <p>Estamos en estapa de desarrollo. Si tenés alguna duda, preguntalo.com.uy! :)</p> </div> {% endblock %} <!-- end template about.html --> diff --git a/templates/answer_edit_tips.html b/templates/answer_edit_tips.html index bf1cd516..33e4e242 100644 --- a/templates/answer_edit_tips.html +++ b/templates/answer_edit_tips.html @@ -16,7 +16,7 @@ {% trans "be clear and concise" %} </li> </ul> - <a href="/faq/" target="_blank" title="{% trans "see frequently asked questions" %}" style="float:right;position:relative">faq »</a> + <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}" style="float:right;position:relative">faq »</a> </div> </div> diff --git a/templates/badge.html b/templates/badge.html index 029ba0d9..73cba4ba 100644 --- a/templates/badge.html +++ b/templates/badge.html @@ -28,7 +28,7 @@ </div> <div id="award-list" style="clear:both;margin-left:20px;line-height:25px;"> {% for award in awards %} - <p style="width:185px;float:left"><a href="/users/{{ award.id }}/{{ award.name }}">{{ award.name }}</a> {% get_score_badge_by_details award.rep award.gold award.silver award.bronze %}</p> + <p style="width:185px;float:left"><a href="{% url users %}{{ award.id }}/{{ award.name }}">{{ award.name }}</a> {% get_score_badge_by_details award.rep award.gold award.silver award.bronze %}</p> {% endfor %} </div> diff --git a/templates/book.html b/templates/book.html index 23166cb7..cc6fc77b 100644 --- a/templates/book.html +++ b/templates/book.html @@ -98,7 +98,7 @@ <div class="favorites-empty"> </div> {% endif %} <div id="question-summary-{{question.id}}" class="question-summary narrow"> - <a style="text-decoration: none;" href="/questions/{{question.id}}/{{question.get_question_title}}"> + <a style="text-decoration: none;" href="{% url questions %}{{question.id}}/{{question.get_question_title}}"> <div class="stats"> <div class="votes"> <div class="vote-count-post">{{question.score|intcomma}}</div> @@ -118,7 +118,7 @@ </a> <div class="bookQuestionItem"> <h3> - <a title="{{question.summary|collapse}}" href="/questions/{{question.id}}/{{question.title}}">{{question.title}}</a> + <a title="{{question.summary|collapse}}" href="{% url questions %}{{question.id}}/{{question.title}}">{{question.title}}</a> </h3> <div class="tags"> {% for tag in question.tagname_list %} diff --git a/templates/content/images/logo.png b/templates/content/images/logo.png Binary files differindex 640eb1da..b5501337 100644 --- a/templates/content/images/logo.png +++ b/templates/content/images/logo.png diff --git a/templates/content/images/originals/logo.svg b/templates/content/images/originals/logo.svg new file mode 100644 index 00000000..29c53f60 --- /dev/null +++ b/templates/content/images/originals/logo.svg @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200" + height="60" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.46" + version="1.0" + sodipodi:docname="logo.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + inkscape:export-filename="/home/bruno/repos/preguntalo/templates/content/images/logo.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <defs + id="defs4"> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 526.18109 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="744.09448 : 526.18109 : 1" + inkscape:persp3d-origin="372.04724 : 350.78739 : 1" + id="perspective10" /> + <inkscape:perspective + id="perspective2390" + inkscape:persp3d-origin="372.04724 : 350.78739 : 1" + inkscape:vp_z="744.09448 : 526.18109 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 526.18109 : 1" + sodipodi:type="inkscape:persp3d" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + gridtolerance="10000" + guidetolerance="10" + objecttolerance="10" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.979899" + inkscape:cx="130.73959" + inkscape:cy="39.353001" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:window-width="1280" + inkscape:window-height="732" + inkscape:window-x="0" + inkscape:window-y="24" /> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(-154.28572,-485.2193)"> + <text + xml:space="preserve" + style="font-size:35.70877075px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:semi-condensed;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#008000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Semi-Condensed" + x="154.2048" + y="532.07758" + id="text2396" + sodipodi:linespacing="125%" + inkscape:export-filename="/home/bruno/repos/preguntalo/templates/content/images/text2424.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"><tspan + sodipodi:role="line" + id="tspan2398" + x="154.2048" + y="532.07758">Preguntalo</tspan></text> + <text + xml:space="preserve" + style="font-size:12.09910297px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:semi-condensed;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Semi-Condensed" + x="303.99615" + y="542.42242" + id="text2400" + sodipodi:linespacing="125%" + inkscape:export-filename="/home/bruno/repos/preguntalo/templates/content/images/text2424.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"><tspan + sodipodi:role="line" + id="tspan2402" + x="303.99615" + y="542.42242" + style="font-size:12.09910297px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:semi-condensed;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#808080;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Semi-Condensed">.com.uy</tspan></text> + <text + xml:space="preserve" + style="font-size:10.5875988px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:semi-condensed;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans Bold Semi-Condensed" + x="157.2961" + y="502.24216" + id="text2424" + inkscape:export-filename="/home/bruno/repos/preguntalo/templates/content/images/text2424.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan2426" + x="157.2961" + y="502.24216">Si no lo sabes ¿?#*!...</tspan></text> + </g> +</svg> diff --git a/templates/content/style/style.css b/templates/content/style/style.css index e353dd47..1f992b7b 100644 --- a/templates/content/style/style.css +++ b/templates/content/style/style.css @@ -110,7 +110,7 @@ blockquote margin-bottom:-3px; } #navBar {float:clear;position:relative;display:block;width:960px;} -#navBar .nav {margin:20px 0px 0px 16px; +#navBar .nav {margin:50px 0px 0px 16px; /*letter-spacing:1px; */ } #navBar .nav a {color:#333333; background-color:#F9F7ED; @@ -118,13 +118,14 @@ blockquote border-bottom: none; padding:0px 12px 3px 12px; height:25px; line-height:30px;margin-left:10px; font-size:14px; font-weight:400; text-decoration:none;display: block;float: left;} #navBar .nav a:hover {text-decoration:underline} -#navBar .nav a.on {height:24px;line-height:28px;border:1px solid #d64000; background:#B02B2C; color:#FFF; font-weight:600; text-decoration:none} -#navBar .nav a.special {font-size:15px; color:#B02B2C; font-weight:bold; text-decoration:none; } +#navBar .nav a.on {height:24px;line-height:28px;border:1px solid green; background:green; color:#FFF; font-weight:600; text-decoration:none} +#navBar .nav a.special {font-size:15px; color:green; font-weight:bold; text-decoration:none; border:solid 1px;} #navBar .nav a.special:hover {text-decoration:underline;} -#navBar .nav div.focus {float:right; padding-right:0px;} +#navBar .nav div.focus {position: absolute; top:10px; + padding-right:0px;} /*搜索栏*/ #searchBar { - background-color:#9db2b1;/*#e9b96e;*/ + background-color:green;/*#e9b96e;*/ padding:5px 0 0 0;} /* #B02B2C */ #searchBar .content { } #searchBar .searchInput {font-size:13px; height:18px; width:400px;} diff --git a/templates/faq.html b/templates/faq.html index 7e99ae7f..8adee552 100644 --- a/templates/faq.html +++ b/templates/faq.html @@ -115,7 +115,7 @@ <div> <h3 class="subtitle">{% trans "To register, do I need to create new password?" %}</h3> <p>{% trans "No, you don't have to. You can login through any service that supports OpenID, e.g. Google, Yahoo, AOL, etc." %} - <strong><a href="/account/signin">{% trans "Login now!" %}</a> »</strong> + <strong><a href="{% url user_signin %}">{% trans "Login now!" %}</a> »</strong> </p> </div> @@ -129,7 +129,7 @@ <h3 class="subtitle">{% trans "Still have questions?" %}</h3> <p>{% trans "Please ask your question, help make our community better!" %} <!-- - <a href="/tags/faq" class="big">{% trans "site title" %} {% trans "questions" %}</a>{% trans "." %} + <a href="{% url tags %}faq" class="big">{% trans "site title" %} {% trans "questions" %}</a>{% trans "." %} --> </p> </div> diff --git a/templates/footer.html b/templates/footer.html index c291c328..f182ca3c 100644 --- a/templates/footer.html +++ b/templates/footer.html @@ -4,11 +4,11 @@ <!-- 页面底部开始: --> <div id="ground"> <div class="footerLinks" > - <a href="/about">{% trans "about" %}</a><span class="link-separator"> |</span> - <a href="/faq">{% trans "faq" %}</a><span class="link-separator"> |</span> + <a href="{% url about %}">{% trans "about" %}</a><span class="link-separator"> |</span> + <a href="{% url faq %}">{% trans "faq" %}</a><span class="link-separator"> |</span> <a href="{{ blog_url }}">{% trans "blog" %}</a><span class="link-separator"> |</span> <a href="{{ webmaster_email }}">{% trans "contact us" %}</a><span class="link-separator"> |</span> - <a href="/privacy">{% trans "privacy policy" %}</a><span class="link-separator"> |</span> + <a href="{% url privacy %}">{% trans "privacy policy" %}</a><span class="link-separator"> |</span> <a href="{{ feedback_url }}" target="_blank">{% trans "give feedback" %}</a> </div> <p style="margin-top:10px;"> diff --git a/templates/header.html b/templates/header.html index d606e9e7..077de586 100644 --- a/templates/header.html +++ b/templates/header.html @@ -6,13 +6,13 @@ <div id="top"> <!--<div id="header">--> {% if request.user.is_authenticated %} - <a href="/users/{{ request.user.id }}/{{ request.user.username }}/">{{ request.user.username }}</a> {% get_score_badge request.user %} - <a href="/logout/">{% trans "logout" %}</a> + <a href="{% url users %}{{ request.user.id }}/{{ request.user.username }}/">{{ request.user.username }}</a> {% get_score_badge request.user %} + <a href="{% url logout %}">{% trans "logout" %}</a> {% else %} - <a href="/account/signin">{% trans "login" %}</a> + <a href="{% url user_signin %}">{% trans "login" %}</a> {% endif %} - <a href="/about">{% trans "about" %}</a> - <a href="/faq">{% trans "faq" %}</a> + <a href="{% url about %}">{% trans "about" %}</a> + <a href="{% url faq %}">{% trans "faq" %}</a> <!--</div>--> </div> <table width="100%" border="0" cellspacing="0" cellpadding="0"> @@ -26,21 +26,22 @@ </td> <td width="77%" valign="bottom"> <div class="nav"> - <a id="nav_questions" href="/questions/" >{% trans "questions" %}</a> - <a id="nav_tags" href="/tags/">{% trans "tags" %}</a> - <a id="nav_users" href="/users/">{% trans "users" %}</a> - <!--<a id="nav_books" href="/books/">{% trans "books" %}</a>--> - <a id="nav_badges" href="/badges/">{% trans "badges" %}</a> - <a id="nav_unanswered" href="/questions/unanswered/">{% trans "unanswered questions" %}</a> + <div class="focus"> + <a id="nav_ask" href="{% url ask %}" class="special">{% trans "ask a question" %}</a> + </div> + + <a id="nav_questions" href="{% url questions %}" >{% trans "questions" %}</a> + <a id="nav_tags" href="{% url tags %}">{% trans "tags" %}</a> + <a id="nav_users" href="{% url users %}">{% trans "users" %}</a> + <!--<a id="nav_books" href="{% url books %}">{% trans "books" %}</a>--> + <a id="nav_badges" href="{% url badges %}">{% trans "badges" %}</a> + <a id="nav_unanswered" href="{% url unanswered %}">{% trans "unanswered questions" %}</a> {% comment %}<!-- i think this needs to be removed -e.f. --> {% if request.user.is_authenticated %} - <a id="nav_profile" href="/users/{{ request.user.id }}/{{ request.user.username }}/">{% trans "my profile" %}</a> + <a id="nav_profile" href="{% url user %}{{ request.user.id }}/{{ request.user.username }}/">{% trans "my profile" %}</a> {% endif %} {% endcomment %} - <div class="focus"> - <a id="nav_ask" href="/questions/ask/" class="special">{% trans "ask a question" %}</a> - </div> </div> </td> @@ -51,7 +52,7 @@ <table width="100%" border="0" cellpadding="0" cellspacing="0" class="content"> <tr> <td align="center" valign="middle"> - <form action="/search/" method="get"> + <form action="{% url search %}" method="GET"> <div> <input type="text" class="searchInput" value="{{ keywords }}" name="q" id="keywords" /> <input type="submit" name="Submit" value="{% trans "search" %}" class="searchBtn" /> diff --git a/templates/index.html b/templates/index.html index 964721f7..b358c384 100644 --- a/templates/index.html +++ b/templates/index.html @@ -24,7 +24,7 @@ <a id="latest" href="?sort=latest" title="{% trans "last updated questions" %}" >{% trans "newest" %}</a> <a id="hottest" href="?sort=hottest" title="{% trans "hottest questions" %}" >{% trans "hottest" %}</a> <a id="mostvoted" href="?sort=mostvoted" title="{% trans "most voted questions" %}" >{% trans "most voted" %}</a> - <a id="all" href="/questions/" title="{% trans "all questions" %}" >{% trans "all questions" %}</a> + <a id="all" href="{% url questions %}" title="{% trans "all questions" %}" >{% trans "all questions" %}</a> </div> </div> <!-- 问题列表 --> @@ -79,9 +79,9 @@ <div class="boxA"> <h3>{% trans "welcome to website" %}</h3> <div class="body"> - {{settings.APP_INTRO|safe}} - <div class="more"><a href="/about">{% trans "about" %} »</a></div> - <div class="more"><a href="/faq">{% trans "faq" %} »</a></div> + {{ settings.APP_INTRO|safe }} + <div class="more"><a href="{% url about %}">{% trans "about" %} »</a></div> + <div class="more"><a href="{% url faq %}">{% trans "faq" %} »</a></div> </div> </div> {% endif %} @@ -93,8 +93,8 @@ <a rel="tag" title="{% blocktrans with tag.name as tagname %}see questions tagged '{{tagname}}'{% endblocktrans %}" href="{% url forum.views.tag tag.name|urlencode %}">{{ tag.name }}</a> {% endfor %} - </div> - <div class="more"><a href="/tags">{% trans "popular tags" %} »</a> </div> + </p> + <div class="more"><a href="{% url tags %}">{% trans "popular tags" %} »</a> </div> </div> </div> {% if awards %} @@ -104,13 +104,13 @@ <ul class="badge-list"> {% for award in awards %} <li> - <a href="/badges/{{award.badge_id}}/{{award.badge_name}}" title="{{ award.badge_description }}" class="medal"> + <a href="{% url badges %}{{award.badge_id}}/{{award.badge_name}}" title="{{ award.badge_description }}" class="medal"> <span class="badge{{ award.badge_type }}">●</span> {{ award.badge_name }}</a> {% trans "given to" %} - <a href="/users/{{award.user_id}}/{{award.user_name}}">{{ award.user_name }}</a> + <a href="{% url users %}{{award.user_id}}/{{award.user_name}}">{{ award.user_name }}</a> </li> {% endfor %} </ul> - <div class="more"><a href="/badges/">{% trans "all awards" %} »</a> </div> + <div class="more"><a href="{% url badges %}">{% trans "all awards" %} »</a> </div> </div> </div> {% endif %} @@ -120,7 +120,7 @@ {% endblock %} {% block tail %} <div style="padding:5px 0 5px 5px;"> -<span class="evenMore">{% trans "Still looking for more? See" %} <a href="/questions/">{% trans "complete list of questions" %}</a> {% trans "or" %} <a href="/tags/">{% trans "popular tags" %}</a>{% trans "." %} {% trans "Please help us answer" %} <a href="/questions/unanswered">{% trans "list of unanswered questions" %}</a>{% trans "." %}</span> +<span class="evenMore">{% trans "Still looking for more? See" %} <a href="{% url questions %}">{% trans "complete list of questions" %}</a> {% trans "or" %} <a href="/tags/">{% trans "popular tags" %}</a>{% trans "." %} {% trans "Please help us answer" %} <a href="{% url questions %}unanswered">{% trans "list of unanswered questions" %}</a>{% trans "." %}</span> </div> {% endblock %} <!-- index.html --> diff --git a/templates/question.html b/templates/question.html index a2628859..0e1b8cb2 100644 --- a/templates/question.html +++ b/templates/question.html @@ -30,7 +30,7 @@ {% if not question.closed and request.user.is_authenticated %}initEditor();{% endif %} lanai.highlightSyntax(); - $('#btLogin').bind('click', function(){window.location.href='/account/signin/'; } ) + $('#btLogin').bind('click', function(){window.location.href='{% url user_signin %}'; } ) }); function initEditor(){ @@ -122,7 +122,7 @@ <div id="question-tags" class="tags" > {% for tag in question.tagname_list %} <a href="{% url forum.views.tag tag|urlencode %}" class="post-tag" - title="{% trans "see questions tagged" %}'{{ tag }}'{% trans "using tags" %}" rel="tag">{{ tag }}</a> + title="{% trans "see questions tagged" %} '{{ tag }}' {% trans "using tags" %}" rel="tag">{{ tag }}</a> {% endfor %} </div> <div id="question-controls" style="clear:both;"> @@ -174,7 +174,7 @@ {% gravatar question.last_edited_by 32 %} </td> <td style="width:160px; vertical-align:top"> - <a href="/users/{{ question.last_edited_by.id }}/{{ question.last_edited_by.username }}">{{ question.last_edited_by.username }}</a> + <a href="{% url users %}{{ question.last_edited_by.id }}/{{ question.last_edited_by.username }}">{{ question.last_edited_by.username }}</a> </td> </tr> {% else %} @@ -189,7 +189,7 @@ {% gravatar question.last_edited_by 32 %} </td> <td style="width:160px; vertical-align:top"> - <div><a href="/users/{{ question.last_edited_by.id }}/{{ question.last_edited_by.username }}">{{ question.last_edited_by.username }}</a></div> + <div><a href="{% url users %}{{ question.last_edited_by.id }}/{{ question.last_edited_by.username }}">{{ question.last_edited_by.username }}</a></div> <div> {% get_score_badge question.last_edited_by %} @@ -223,7 +223,7 @@ {% gravatar question.author 32 %} </td> <td align="left" style="width:160px;vertical-align:top"> - <div><a href="/users/{{ question.author.id }}/{{ question.author }}">{{ question.author }}</a></div> + <div><a href="{% url users %}{{ question.author.id }}/{{ question.author }}">{{ question.author }}</a></div> <div> {% get_score_badge question.author %} </div> @@ -361,7 +361,7 @@ {% gravatar answer.last_edited_by 32 %} </td> <td style="width:160px; vertical-align:top"> - <div><a href="/users/{{ answer.last_edited_by.id }}/{{ answer.last_edited_by.username }}">{{ answer.last_edited_by.username }}</a></div> + <div><a href="{% url users %}{{ answer.last_edited_by.id }}/{{ answer.last_edited_by.username }}">{{ answer.last_edited_by.username }}</a></div> </td> </tr> @@ -377,7 +377,7 @@ {% gravatar answer.last_edited_by 32 %} </td> <td style="width:160px; vertical-align:top"> - <div><a href="/users/{{ answer.last_edited_by.id }}/{{ answer.last_edited_by.username }}">{{ answer.last_edited_by.username }}</a></div> + <div><a href="{% url users %}{{ answer.last_edited_by.id }}/{{ answer.last_edited_by.username }}">{{ answer.last_edited_by.username }}</a></div> <div> {% get_score_badge answer.last_edited_by %} </div> @@ -407,7 +407,7 @@ {% gravatar answer.author 32 %} </td> <td style="width:160px; vertical-align:top"> - <div><a href="/users/{{ answer.author.id }}/{{ answer.author.username }}">{{ answer.author }}</a></div> + <div><a href="{% url users %}{{ answer.author.id }}/{{ answer.author.username }}">{{ answer.author }}</a></div> <div> {% get_score_badge answer.author %} </div> @@ -516,7 +516,7 @@ <div class="questions-related"> {% for question in similar_questions %} <p> - <a href="/questions/{{question.id}}/{{ question.get_question_title }}">{{ question.get_question_title }}</a> + <a href="{% url questions %}{{question.id}}/{{ question.get_question_title }}">{{ question.get_question_title }}</a> </p> {% endfor %} </div> diff --git a/templates/question_edit_tips.html b/templates/question_edit_tips.html index ef6dca15..85614595 100644 --- a/templates/question_edit_tips.html +++ b/templates/question_edit_tips.html @@ -13,7 +13,8 @@ {% trans "be clear and concise" %} </li> </ul> - <a href="/faq/" target="_blank" title="{% trans "see frequently asked questions" %}" style="float:right;position:relative">faq »</a> + <a href="{% url faq %}" target="_blank" title="{% trans "see frequently asked questions" %}" style="float:right;position:relative">{% trans "faq" %} »</a> + <br> </div> </div> diff --git a/templates/revisions_answer.html b/templates/revisions_answer.html index 9c2e53eb..23606dc9 100644 --- a/templates/revisions_answer.html +++ b/templates/revisions_answer.html @@ -73,7 +73,7 @@ </td> <td style="width:120px; vertical-align:top"> <div style="height:18px"> - <a href="/users/{{ revision.author.id }}/{{ revision.author.username }}">{{ revision.author.username }}</a></div> + <a href="{% url users %}{{ revision.author.id }}/{{ revision.author.username }}">{{ revision.author.username }}</a></div> <div> {% get_score_badge revision.author %} </div> diff --git a/templates/revisions_question.html b/templates/revisions_question.html index 7ada3e74..b76ced24 100644 --- a/templates/revisions_question.html +++ b/templates/revisions_question.html @@ -73,7 +73,7 @@ </td> <td style="width:120px; vertical-align:top"> <div style="height:18px"> - <a href="/users/{{ revision.author.id }}/{{ revision.author.username }}">{{ revision.author.username }}</a></div> + <a href="{% url users %}{{ revision.author.id }}/{{ revision.author.username }}">{{ revision.author.username }}</a></div> <div> {% get_score_badge revision.author %} </div> diff --git a/templates/tags.html b/templates/tags.html index 65a7e4dd..f558594a 100644 --- a/templates/tags.html +++ b/templates/tags.html @@ -29,8 +29,8 @@ <div class="tabBar"> <div class="headQuestions">{% trans "Tag list" %}</div> <div class="tabsA"> - <a id="sort_name" href="/tags/?sort=name" class="off" title="{% trans "sorted alphabetically" %}">{% trans "by name" %}</a> - <a id="sort_used" href="/tags/?sort=used" class="off" title="{% trans "sorted by frequency of tag use" %}">{% trans "by popularity" %}</a> + <a id="sort_name" href="{% url tags %}?sort=name" class="off" title="{% trans "sorted alphabetically" %}">{% trans "by name" %}</a> + <a id="sort_used" href="{% url tags %}?sort=used" class="off" title="{% trans "sorted by frequency of tag use" %}">{% trans "by popularity" %}</a> </div> </div> <div id="searchtags"> diff --git a/templates/user_info.html b/templates/user_info.html index 86e36023..e56fb143 100644 --- a/templates/user_info.html +++ b/templates/user_info.html @@ -31,7 +31,7 @@ <th width="130" align="left"><strong>{% trans "Registered user" %}</strong></th> <th width="230" align="right"> {% if request.user|can_view_user_edit:view_user %} - <span class="user-edit-link"><a href="/users/{{ view_user.id }}/edit/">{% trans "update profile" %}</a></span> + <span class="user-edit-link"><a href="{% url users %}{{ view_user.id }}/{% trans "edit/" %}">{% trans "update profile" %}</a></span> {% endif %} </th> </tr> diff --git a/templates/user_reputation.html b/templates/user_reputation.html index bb7200de..270bb37d 100644 --- a/templates/user_reputation.html +++ b/templates/user_reputation.html @@ -33,7 +33,7 @@ <div style="float:left;width:20px;color:red">{{ rep.negative }}</div> </div> - <a href="/questions/{{ rep.question_id }}/{{ rep.title }}">{{ rep.title }}</a> <span class="small">({{ rep.reputed_at }})</span> + <a href="{% url questions %}{{ rep.question_id }}/{{ rep.title }}">{{ rep.title }}</a> <span class="small">({{ rep.reputed_at }})</span> </p> {% endfor %} </div> diff --git a/templates/user_stats.html b/templates/user_stats.html index 2c2a7a72..7313fac3 100644 --- a/templates/user_stats.html +++ b/templates/user_stats.html @@ -33,14 +33,14 @@ <div class="user-stats-table"> {% for answered_question in answered_questions %} <div class="answer-summary"> - <a title="{{answered_question.summary|collapse}}" href="/questions/{{answered_question.id}}/{{answered_question.title}}#{{answered_question.answer_id}}"> + <a title="{{answered_question.summary}}" href="{% url questions %}{{answered_question.id}}/{{answered_question.title}}#{{answered_question.answer_id}}"> <div class="answer-votes {% if answered_question.accepted %}answered-accepted{% endif %}" title="{% blocktrans with answered_question.vote_count as vote_count %}the answer has been voted for {{ vote_count }} times{% endblocktrans %} {% if answered_question.accepted %}{% trans "this answer has been selected as correct" %}{%endif%}"> {{ answered_question.vote_count }} </div> </a> <div class="answer-link"> - <a href="/questions/{{answered_question.id}}/{{answered_question.title}}#{{answered_question.answer_id}}">{{answered_question.title}}</a> {% if answered_question.comment_count %}<span + <a href="{% url questions %}{{answered_question.id}}/{{answered_question.title}}#{{answered_question.answer_id}}">{{answered_question.title}}</a> {% if answered_question.comment_count %}<span title="{% blocktrans with answered_question.comment_count as comment_count %}the answer has been commented {{ comment_count }} times{% endblocktrans %}">({{answered_question.comment_count}})</span>{% endif %} </div> </div> @@ -120,7 +120,7 @@ <tr> <td width="180" style="line-height:35px"> {% for award in awards %} - <a href="/badges/{{award.id}}/{{award.name}}" title="{{ award.description }}" class="medal"><span class="badge{{ award.type }}">●</span> {{ award.name }}</a><span class="tag-number"> × {{ award.count|intcomma }}</span><br/> + <a href="{% url badges %}{{award.id}}/{{award.name}}" title="{{ award.description }}" class="medal"><span class="badge{{ award.type }}">●</span> {{ award.name }}</a><span class="tag-number"> × {{ award.count|intcomma }}</span><br/> {% if forloop.counter|divisibleby:"6" %} </td> <td width="180" style="line-height:35px"> diff --git a/templates/user_tabs.html b/templates/user_tabs.html index 7800eb00..96cc5aca 100644 --- a/templates/user_tabs.html +++ b/templates/user_tabs.html @@ -4,28 +4,28 @@ <div class="tabBar"> <div class="tabsA"> <a id="stats" {% ifequal tab_name "stats" %}class="on"{% endifequal %} - title="{% trans "User profile" %}" href="/users/{{view_user.id}}/{{view_user.username}}?sort=stats">{% trans "overview" %}</a> + title="{% trans "User profile" %}" href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=stats">{% trans "overview" %}</a> <a id="recent" {% ifequal tab_name "recent" %}class="on"{% endifequal %} - title="{% trans "recent activity" %}" href="/users/{{view_user.id}}/{{view_user.username}}?sort=recent">{% trans "recent activity" %}</a> + title="{% trans "recent activity" %}" href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=recent">{% trans "recent activity" %}</a> {% if request.user|is_user_self:view_user %} <a id="responses" {% ifequal tab_name "responses" %}class="on"{% endifequal %} title="{% trans "comments and answers to others questions" %}" - href="/users/{{view_user.id}}/{{view_user.username}}?sort=responses">{% trans "responses" %}</a> + href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=responses">{% trans "responses" %}</a> {% endif %} <a id="reputation" {% ifequal tab_name "reputation" %}class="on"{% endifequal %} title="{% trans "graph of user reputation" %}" - href="/users/{{view_user.id}}/{{view_user.username}}?sort=reputation">{% trans "reputation history" %}</a> + href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=reputation">{% trans "reputation history" %}</a> {% if request.user|can_view_user_votes:view_user %} <a id="votes" {% ifequal tab_name "votes" %}class="on"{% endifequal %} - title="{% trans "user vote record" %}" href="/users/{{view_user.id}}/{{view_user.username}}?sort=votes">{% trans "casted votes" %}</a> + title="{% trans "user vote record" %}" href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=votes">{% trans "casted votes" %}</a> {% endif %} <a id="favorites" {% ifequal tab_name "favorites" %}class="on"{% endifequal %} - title="{% trans "questions that user selected as his/her favorite" %}" - href="/users/{{view_user.id}}/{{view_user.username}}?sort=favorites">{% trans "favorites" %}</a> + title="{% trans "questions that user selected as his/her favorite" + href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=favorites">{% trans "favorites" %}</a> {% if request.user|can_view_user_preferences:view_user %} <a id="preferences" {% ifequal tab_name "preferences" %}class="on"{% endifequal %} title="{% trans "user preference settings" %}" - href="/users/{{view_user.id}}/{{view_user.username}}?sort=preferences">{% trans "settings" %}</a> + href="{% url users %}{{view_user.id}}/{{view_user.username}}?sort=preferences">{% trans "settings" %}</a> {% endif %} </div> </div> diff --git a/templates/user_votes.html b/templates/user_votes.html index 80fa27ee..45134ac9 100644 --- a/templates/user_votes.html +++ b/templates/user_votes.html @@ -18,9 +18,9 @@ </div> <div style="float:left;overflow:hidden;width:750px"> {% ifequal vote.answer_id 0 %} - <span class="question-title-link"><a href="/questions/{{ vote.question_id }}/{{ vote.title }}">{{ vote.title }}</a></span> + <span class="question-title-link"><a href="{% url questions %}{{ vote.question_id }}/{{ vote.title }}">{{ vote.title }}</a></span> {% else %} - <span class="answer-title-link" ><a href="/questions/{{ vote.question_id }}/{{ vote.title }}#{{ vote.answer_id }}">{{ vote.title }}</a></span> + <span class="answer-title-link" ><a href="{% url questions %}{{ vote.question_id }}/{{ vote.title }}#{{ vote.answer_id }}">{{ vote.title }}</a></span> {% endifequal %} <div style="height:5px"></div> </div> diff --git a/templates/users_questions.html b/templates/users_questions.html index 7b00fd3f..dd818ddb 100644 --- a/templates/users_questions.html +++ b/templates/users_questions.html @@ -23,7 +23,7 @@ <div class="favorites-empty"> </div> {% endif %} <div id="question-summary-{{question.id}}" class="question-summary narrow"> - <a style="text-decoration: none;" href="/questions/{{question.id}}/{{question.get_question_title}}"> + <a style="text-decoration: none;" href="{% url questions %}{{question.id}}/{{question.get_question_title}}"> <div class="stats"> <div class="votes"> <div class="vote-count-post">{{question.vote_count|intcomma}}</div> @@ -43,7 +43,7 @@ </a> <div class="summary"> <h3> - <a title="{{question.summary|collapse}}" href="/questions/{{question.id}}/{{question.title}}">{{question.title}}</a> + <a title="{{question.summary}}" href="{% url questions %}{{question.id}}/{{question.title}}">{{question.title}}</a> </h3> <div class="tags"> {% convert2tagname_list question %} @@ -55,7 +55,7 @@ <div class="started"> <span class="relativetime" title="{{question.last_activity_at}}">{% diff_date question.last_activity_at %}</span> {% if question.la_username %} - <a href="/users/{{question.la_user_id}}/{{question.la_username}}">{{question.la_username}}</a> {% get_score_badge_by_details question.la_user_reputation question.la_user_gold question.la_user_silver question.la_user_bronze%} + <a href="{% url users %}{{question.la_user_id}}/{{question.la_username}}">{{question.la_username}}</a> {% get_score_badge_by_details question.la_user_reputation question.la_user_gold question.la_user_silver question.la_user_bronze%} {% endif %} </div> </div> @@ -4,6 +4,7 @@ from django.contrib import admin from forum.views import index from forum import views as app from forum.feed import RssLastestQuestionsFeed +from django.utils.translation import ugettext as _ admin.autodiscover() feeds = { @@ -18,50 +19,50 @@ urlpatterns = patterns('', (r'^content/(?P<path>.*)$', 'django.views.static.serve', {'document_root': os.path.join(APP_PATH, 'templates/content').replace('\\','/')} ), - (r'^upfiles/(?P<path>.*)$', 'django.views.static.serve', + (r'^%s(?P<path>.*)$' % _('upfiles/'), 'django.views.static.serve', {'document_root': os.path.join(APP_PATH, 'templates/upfiles').replace('\\','/')} ), - (r'^account/', include('django_authopenid.urls')), - (r'^signin/$', 'django_authopenid.views.signin'), - url(r'^email/change/$', 'django_authopenid.views.changeemail', name='user_changeemail'), - url(r'^email/sendkey/$', 'django_authopenid.views.send_email_key'), - url(r'^email/verify/(?P<id>\d+)/(?P<key>[\dabcdef]{32})/$', 'django_authopenid.views.verifyemail', name='user_verifyemail'), - url(r'^about/$', app.about, name='about'), - url(r'^faq/$', app.faq, name='faq'), - url(r'^privacy/$', app.privacy, name='privacy'), - url(r'^logout/$', app.logout, name='logout'), - url(r'^answers/(?P<id>\d+)/comments/$', app.answer_comments, name='answer_comments'), - url(r'^answers/(?P<id>\d+)/edit/$', app.edit_answer, name='edit_answer'), - url(r'^answers/(?P<id>\d+)/revisions/$', app.answer_revisions, name='answer_revisions'), - url(r'^questions/$', app.questions, name='questions'), - url(r'^questions/ask/$', app.ask, name='ask'), - url(r'^questions/unanswered/$', app.unanswered, name='unanswered'), - url(r'^questions/(?P<id>\d+)/edit/$', app.edit_question, name='edit_question'), - url(r'^questions/(?P<id>\d+)/close/$', app.close, name='close'), - url(r'^questions/(?P<id>\d+)/reopen/$', app.reopen, name='reopen'), - url(r'^questions/(?P<id>\d+)/answer/$', app.answer, name='answer'), - url(r'^questions/(?P<id>\d+)/vote/$', app.vote, name='vote'), - url(r'^questions/(?P<id>\d+)/revisions/$', app.question_revisions, name='question_revisions'), - url(r'^questions/(?P<id>\d+)/comments/$', app.question_comments, name='question_comments'), - url(r'^questions/(?P<question_id>\d+)/comments/(?P<comment_id>\d+)/delete/$', app.delete_question_comment, name='delete_question_comment'), - url(r'^answers/(?P<answer_id>\d+)/comments/(?P<comment_id>\d+)/delete/$', app.delete_answer_comment, name='delete_answer_comment'), + (r'^%s' % _('account/'), include('django_authopenid.urls')), + (r'^%s/$' % _('signin/'), 'django_authopenid.views.signin'), + url(r'^%s%s$' % (_('email/'), _('change/')), 'django_authopenid.views.changeemail', name='user_changeemail'), + url(r'^%s%s$' % (_('email/'), _('sendkey/')), 'django_authopenid.views.send_email_key'), + url(r'^%s%s(?P<id>\d+)/(?P<key>[\dabcdef]{32})/$' % (_('email/'), _('verify/')), 'django_authopenid.views.verifyemail', name='user_verifyemail'), + url(r'^%s$' % _('about/'), app.about, name='about'), + url(r'^%s$' % _('faq/'), app.faq, name='faq'), + url(r'^%s$' % _('privacy/'), app.privacy, name='privacy'), + url(r'^%s$' % _('logout/'), app.logout, name='logout'), + url(r'^%s(?P<id>\d+)/%s$' % (_('answers/'), _('comments/')), app.answer_comments, name='answer_comments'), + url(r'^%s(?P<id>\d+)/%s$' % (_('answers/'), _('edit/')), app.edit_answer, name='edit_answer'), + url(r'^%s(?P<id>\d+)/%s$' % (_('answers/'), _('revisions/')), app.answer_revisions, name='answer_revisions'), + url(r'^%s$' % _('questions/'), app.questions, name='questions'), + url(r'^%s%s$' % (_('questions/'), _('ask/')), app.ask, name='ask'), + url(r'^%s%s$' % (_('questions/'), _('unanswered/')), app.unanswered, name='unanswered'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('edit/')), app.edit_question, name='edit_question'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('close/')), app.close, name='close'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('reopen/')), app.reopen, name='reopen'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('answer/')), app.answer, name='answer'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('vote/')), app.vote, name='vote'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('revisions/')), app.question_revisions, name='question_revisions'), + url(r'^%s(?P<id>\d+)/%s$' % (_('questions/'), _('comments/')), app.question_comments, name='question_comments'), + url(r'^%s(?P<question_id>\d+)/%s(?P<comment_id>\d+)/%s$' % (_('questions/'), _('questions/'),_('delete/')), app.delete_question_comment, name='delete_question_comment'), + url(r'^%s(?P<answer_id>\d+)/%s(?P<comment_id>\d+)/%s$' % (_('answers/'), _('answers/'),_('delete/')), app.delete_answer_comment, name='delete_answer_comment'), #place general question item in the end of other operations - url(r'^questions/(?P<id>\d+)//*', app.question, name='question'), - (r'^tags/$', app.tags), - (r'^tags/(?P<tag>[^/]+)/$', app.tag), - (r'^users/$',app.users), - url(r'^users/(?P<id>\d+)/edit/$', app.edit_user, name='edit_user'), - url(r'^users/(?P<id>\d+)//*', app.user, name='user'), - url(r'^badges/$',app.badges, name='badges'), - url(r'^badges/(?P<id>\d+)//*', app.badge, name='badge'), - url(r'^messages/markread/$',app.read_message, name='read_message'), - # (r'^admin/doc/', include('django.contrib.admindocs.urls')), - (r'^nimda/(.*)', admin.site.root), - (r'^feeds/(?P<url>.*)/$', 'django.contrib.syndication.views.feed', {'feed_dict': feeds}), - (r'^upload/$', app.upload), - url(r'^books/$', app.books, name='books'), - url(r'^books/ask/(?P<short_name>[^/]+)/$', app.ask_book, name='ask_book'), - url(r'^books/(?P<short_name>[^/]+)/$', app.book, name='book'), - url(r'^search/$', app.search, name='search'), + url(r'^%s(?P<id>\d+)//*' % _('question/'), app.question, name='question'), + url(r'^%s$' % _('tags/'), app.tags, name='tags'), + url(r'^%s(?P<tag>[^/]+)/$' % _('tags/'), app.tag), + url(r'^%s$' % _('users/'),app.users, name='users'), + url(r'^%s(?P<id>\d+)/%s$' % (_('users/'), _('edit/')), app.edit_user, name='edit_user'), + url(r'^%s(?P<id>\d+)//*' % _('users/'), app.user, name='user'), + url(r'^%s$' % _('badges/'),app.badges, name='badges'), + url(r'^%s(?P<id>\d+)//*' % _('badges/'), app.badge, name='badge'), + url(r'^%s%s$' % (_('messages/'), _('markread/')),app.read_message, name='read_message'), + # (r'^admin/doc/' % _('admin/doc'), include('django.contrib.admindocs.urls')), + (r'^%s(.*)' % _('nimda/'), admin.site.root), + url(r'^feeds/(?P<url>.*)/$', 'django.contrib.syndication.views.feed', {'feed_dict': feeds}), + (r'^%s$' % _('upload/'), app.upload), + url(r'^%s$' % _('books/'), app.books, name='books'), + url(r'^%s%s(?P<short_name>[^/]+)/$' % (_('books/'), _('ask/')), app.ask_book, name='ask_book'), + url(r'^%s(?P<short_name>[^/]+)/$' % _('books/'), app.book, name='book'), + url(r'^%s$' % _('search/'), app.search, name='search'), (r'^i18n/', include('django.conf.urls.i18n')), ) |