Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
converse.js
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
converse.js
Commits
86c6b973
Commit
86c6b973
authored
Mar 30, 2012
by
Michal Čihař
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
3965aaf1
353f99b9
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
144 additions
and
1 deletion
+144
-1
html/dictionaries.html
html/dictionaries.html
+17
-0
html/dictionary.html
html/dictionary.html
+53
-0
html/project.html
html/project.html
+10
-0
media/css/style.css
media/css/style.css
+20
-0
trans/views.py
trans/views.py
+40
-1
urls.py
urls.py
+4
-0
No files found.
html/dictionaries.html
0 → 100644
View file @
86c6b973
{% extends "base.html" %}
{% load i18n %}
{% load url from future %}
{% block breadcums %}
<li><a
href=
"{{ project.get_absolute_url }}"
>
{{ project }}
</a></li>
<li><a
href=
"{% url 'trans.views.show_dictionaries' project=project.slug %}"
>
{% trans "dictionaries" %}
</a></li>
{% endblock %}
{% block content %}
<ul>
{% for dict in dicts %}
<li><a
href=
"{% url 'trans.views.show_dictionary' project=project.slug lang=dict.code %}"
>
{{ dict }}
</a></li>
{% endfor %}
</ul>
{% endblock %}
html/dictionary.html
0 → 100644
View file @
86c6b973
{% extends "base.html" %}
{% load i18n %}
{% load url from future %}
{% block breadcums %}
<li><a
href=
"{{ project.get_absolute_url }}"
>
{{ project }}
</a></li>
<li><a
href=
"{% url 'trans.views.show_dictionaries' project=project.slug %}"
>
{% trans "dictionaries" %}
</a></li>
<li><a
href=
"{% url 'trans.views.show_dictionary' project=project.slug lang=language.code %}"
>
{{ language }}
</a></li>
{% endblock %}
{% block content %}
{% if words.object_list %}
<table>
<thead>
<tr>
<th>
{% trans "Source" %}
</th>
<th>
{% trans "Translation" %}
</th>
<th>
{% trans "Actions" %}
</th>
</tr>
</thead>
<tbody>
{% for word in words.object_list %}
<tr>
<td
class=
"translatetext"
>
{{ word.source }}
</td>
<td
class=
"translatetext"
>
{{ word.target }}
</td>
<td></td>
</tr>
{% endfor %}
</tbody>
</table>
<ul
class=
"pages"
>
{% if words.has_previous %}
<li><a
href=
"?page={{ words.previous_page_number }}"
>
«
</a></li>
{% else %}
<li
class=
"disabled"
><span>
«
</span></li>
{% endif %}
{% for page in words.paginator.page_range %}
<li
{%
if
page =
words.number
%}
class=
"active"
{%
endif
%}
><a
href=
"?page={{ page }}"
>
{{ page }}
</a></li>
{% endfor %}
{% if words.has_next %}
<li><a
href=
"?page={{ words.next_page_number }}"
>
»
</a></li>
{% else %}
<li
class=
"disabled"
><span>
»
</span></li>
{% endif %}
</ul>
{% endif %}
{% endblock %}
html/project.html
View file @
86c6b973
{% extends "base.html" %}
{% load i18n %}
{% load url from future %}
{% block breadcums %}
<li><a
href=
"{{ object.get_absolute_url }}"
>
{{ object }}
</a></li>
...
...
@@ -35,6 +36,15 @@
<h2>
{% trans "Tools" %}
</h2>
<div
class=
"accordion"
>
<h3><a
href=
"#"
>
{% trans "Dictionaries" %}
</a></h3>
<div>
<ul>
{% for dict in dicts %}
<li><a
href=
"{% url 'trans.views.show_dictionary' project=object.slug lang=dict.code %}"
>
{{ dict }}
</a></li>
{% endfor %}
<li><a
href=
"{% url 'trans.views.show_dictionaries' project=object.slug %}"
>
Manage all dictionaries
</a></li>
</ul>
</div>
{% include "git-tools.html" %}
</div>
...
...
media/css/style.css
View file @
86c6b973
...
...
@@ -126,3 +126,23 @@ ins {
del
{
background-color
:
#fc7979
;
}
ul
.pages
{
display
:
block
;
list-style
:
none
;
margin
:
0.5em
;
padding
:
1em
;
}
ul
.pages
li
{
display
:
inline-block
;
}
ul
.pages
li
a
{
padding
:
0.2em
;
border
:
1px
solid
#333
;
}
ul
.pages
li
.active
a
{
font-weight
:
bolder
;
}
ul
.pages
li
.disabled
span
{
padding
:
0.2em
;
border
:
1px
solid
#333
;
}
trans/views.py
View file @
86c6b973
...
...
@@ -9,7 +9,7 @@ from django.contrib import messages
from
django.contrib.auth.decorators
import
login_required
,
permission_required
from
django.contrib.auth.models
import
AnonymousUser
from
django.db.models
import
Q
,
Count
from
django.core.paginator
import
Paginator
,
EmptyPage
,
PageNotAnInteger
from
trans.models
import
Project
,
SubProject
,
Translation
,
Unit
,
Suggestion
,
Check
,
Dictionary
,
Change
from
lang.models
import
Language
...
...
@@ -123,11 +123,50 @@ def show_language(request, lang):
'object'
:
obj
,
}))
def
show_dictionaries
(
request
,
project
):
obj
=
get_object_or_404
(
Project
,
slug
=
project
)
dicts
=
Dictionary
.
objects
.
filter
(
project
=
obj
).
values_list
(
'language'
,
flat
=
True
).
distinct
()
return
render_to_response
(
'dictionaries.html'
,
RequestContext
(
request
,
{
'title'
:
_
(
'Dictionaries'
),
'dicts'
:
Language
.
objects
.
filter
(
id__in
=
dicts
),
'project'
:
obj
,
}))
def
show_dictionary
(
request
,
project
,
lang
):
prj
=
get_object_or_404
(
Project
,
slug
=
project
)
lang
=
get_object_or_404
(
Language
,
code
=
lang
)
words
=
Dictionary
.
objects
.
filter
(
project
=
prj
,
language
=
lang
).
order_by
(
'source'
)
limit
=
request
.
GET
.
get
(
'limit'
,
25
)
page
=
request
.
GET
.
get
(
'page'
,
1
)
paginator
=
Paginator
(
words
,
limit
)
try
:
words
=
paginator
.
page
(
page
)
except
PageNotAnInteger
:
# If page is not an integer, deliver first page.
words
=
paginator
.
page
(
1
)
except
EmptyPage
:
# If page is out of range (e.g. 9999), deliver last page of results.
words
=
paginator
.
page
(
paginator
.
num_pages
)
return
render_to_response
(
'dictionary.html'
,
RequestContext
(
request
,
{
'title'
:
_
(
'%(language)s dictionary for %(project)s'
)
%
{
'language'
:
lang
,
'project'
:
prj
},
'project'
:
prj
,
'language'
:
lang
,
'words'
:
words
,
}))
def
show_project
(
request
,
project
):
obj
=
get_object_or_404
(
Project
,
slug
=
project
)
dicts
=
Dictionary
.
objects
.
filter
(
project
=
obj
).
values_list
(
'language'
,
flat
=
True
).
distinct
()
return
render_to_response
(
'project.html'
,
RequestContext
(
request
,
{
'object'
:
obj
,
'dicts'
:
Language
.
objects
.
filter
(
id__in
=
dicts
),
}))
def
show_subproject
(
request
,
project
,
subproject
):
...
...
urls.py
View file @
86c6b973
...
...
@@ -23,6 +23,10 @@ urlpatterns = patterns('',
url
(
r'^$'
,
'trans.views.home'
),
url
(
r'^projects/$'
,
'django.views.generic.simple.redirect_to'
,
{
'url'
:
'/'
}),
url
(
r'^projects/(?P<project>[^/]*)/$'
,
'trans.views.show_project'
),
url
(
r'^projects/(?P<project>[^/]*)/dictionary/$'
,
'trans.views.show_dictionaries'
),
url
(
r'^projects/(?P<project>[^/]*)/dictionary/(?P<lang>[^/]*)/$'
,
'trans.views.show_dictionary'
),
url
(
r'^projects/(?P<project>[^/]*)/(?P<subproject>[^/]*)/$'
,
'trans.views.show_subproject'
),
url
(
r'^projects/(?P<project>[^/]*)/(?P<subproject>[^/]*)/(?P<lang>[^/]*)/$'
,
'trans.views.show_translation'
),
url
(
r'^projects/(?P<project>[^/]*)/(?P<subproject>[^/]*)/(?P<lang>[^/]*)/translate/$'
,
'trans.views.translate'
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment