Show missing translations. Updated de and pt.

This commit is contained in:
Emanuel Schuetze 2016-01-29 14:52:25 +01:00
parent 3e2874a9a0
commit fb41d0a219
12 changed files with 185 additions and 63 deletions

View File

@ -66,7 +66,7 @@ Keep each item in a single line.</p>
<h4 translate>Please note:</h4>
<ul>
<li><translate>Required comma or semicolon separated values with these column header names in the first row</translate>:<br>
<code>'title, text'</code>
<code>title, text</code>
<li translate>Text is optional and may be empty.
<li translate>Only double quotes are accepted as text delimiter (no single quotes).
<li><a id="downloadLink" href="" ng-click="downloadCSVExample()" translate>Download CSV example file</a>

View File

@ -6,8 +6,8 @@
msgid ""
msgstr ""
"Project-Id-Version: OpenSlides\n"
"PO-Revision-Date: 2016-01-27 20:12+0000\n"
"Last-Translator: Norman Jäckel <transifex16062013@normanjaeckel.de>\n"
"PO-Revision-Date: 2016-01-29 08:09+0000\n"
"Last-Translator: Emanuel Schütze <emanuel.schuetze@intevation.de>\n"
"Language-Team: German (http://www.transifex.com/openslides/openslides/language/de/)\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@ -93,7 +93,7 @@ msgid "Agenda"
msgstr "Tagesordnung"
#: agenda/static/templates/agenda/item-list.html:113
#: core/static/js/core/base.js:281
#: core/static/js/core/base.js:284
#: core/static/templates/core/customslide-detail.html:28
msgid "Agenda item"
msgstr "Tagesordnungspunkt"
@ -106,7 +106,7 @@ msgstr "Alle Wahlen"
msgid "All motions"
msgstr "Alle Anträge"
#: agenda/static/templates/agenda/item-list.html:153
#: agenda/static/templates/agenda/item-list.html:156
#: assignments/static/templates/assignments/assignment-list.html:145
#: core/static/templates/core/tag-list.html:38
#: motions/static/templates/motions/category-list.html:47
@ -287,7 +287,7 @@ msgstr "Darf Dateien hochladen"
msgid "Can use the chat"
msgstr "Darf den Chat benutzen"
#: agenda/static/templates/agenda/item-list.html:196
#: agenda/static/templates/agenda/item-list.html:199
#: assignments/static/templates/assignments/assignment-form.html:13
#: assignments/static/templates/assignments/assignment-list.html:190
#: assignments/static/templates/assignments/assignmentpoll-form.html:17
@ -327,6 +327,14 @@ msgstr "Sachgebiete"
msgid "Category"
msgstr "Sachgebiet"
#: index.html:87
msgid "Change password"
msgstr "Passwort ändern"
#: index.html:38
msgid "Chat"
msgstr "Chat"
#: agenda/static/templates/agenda/item-import.html:127
#: motions/static/templates/motions/motion-import.html:124
#: users/static/templates/users/user-import.html:154
@ -339,7 +347,7 @@ msgstr "Vorschau leeren"
msgid "Closed"
msgstr "Geschlossen"
#: agenda/static/templates/agenda/item-list.html:180
#: agenda/static/templates/agenda/item-list.html:183
#: users/static/js/users/site.js:331
#: users/static/templates/users/user-detail.html:45
#: users/static/templates/users/user-import.html:92
@ -386,6 +394,10 @@ msgstr "Countdowns"
msgid "Current speaker"
msgstr "Aktueller Redner"
#: core/static/js/core/base.js:97
msgid "Czech"
msgstr "Tschechisch"
#: assignments/static/js/assignments/site.js:152
msgid "Default comment on the ballot paper"
msgstr "Voreingestellter Hinweis auf Stimmzettel"
@ -402,7 +414,7 @@ msgstr "Voreingestelltes Passwort"
msgid "Delegate"
msgstr "Delegierte/r"
#: agenda/static/templates/agenda/item-list.html:152
#: agenda/static/templates/agenda/item-list.html:155
#: assignments/static/templates/assignments/assignment-detail.html:155
#: assignments/static/templates/assignments/assignment-list.html:144
#: core/static/templates/core/tag-list.html:37
@ -481,11 +493,11 @@ msgid ""
msgstr "Verschieben Sie Einträge, um die Reihenfolge der Tagesordnung zu ändern. Ihre Änderungen werden sofort gespeichert."
#: agenda/static/templates/agenda/item-list.html:115
#: agenda/static/templates/agenda/item-list.html:191
#: agenda/static/templates/agenda/item-list.html:194
msgid "Duration"
msgstr "Dauer"
#: agenda/static/templates/agenda/item-list.html:149
#: agenda/static/templates/agenda/item-list.html:152
#: assignments/static/templates/assignments/assignment-detail.html:27
#: assignments/static/templates/assignments/assignment-list.html:142
#: core/static/templates/core/customslide-detail.html:23
@ -501,7 +513,7 @@ msgstr "Dauer"
msgid "Edit"
msgstr "Bearbeiten"
#: agenda/static/templates/agenda/item-list.html:202
#: agenda/static/templates/agenda/item-list.html:205
msgid "Edit ..."
msgstr "Bearbeiten ..."
@ -553,7 +565,7 @@ msgstr "Antrag bearbeiten ..."
msgid "Edit participant"
msgstr "Teilnehmer/in bearbeiten"
#: users/static/templates/users/user-detail-profile.html:3
#: index.html:82 users/static/templates/users/user-detail-profile.html:3
msgid "Edit profile"
msgstr "Profil bearbeiten"
@ -614,7 +626,7 @@ msgstr "Fehler: Bezeichner existiert bereits."
msgid "Error: Text is required."
msgstr "Fehler: Text ist erforderlich."
#: agenda/static/js/agenda/site.js:385 motions/static/js/motions/site.js:844
#: agenda/static/js/agenda/site.js:400 motions/static/js/motions/site.js:844
msgid "Error: Title is required."
msgstr "Fehler: Titel ist erforderlich."
@ -753,7 +765,11 @@ msgstr "{{ motions.length - motionsFailed.length }} Anträge importieren"
msgid "Import {{ users.length - usersFailed.length }} participants"
msgstr "{{ users.length - usersFailed.length }} Benutzer importieren"
#: agenda/static/templates/agenda/item-list.html:142
#: legalnotice.html:12
msgid "Installed plugins:"
msgstr "Installierte Plugins:"
#: agenda/static/templates/agenda/item-list.html:145
msgid "Internal item"
msgstr "Interner Eintrag"
@ -779,7 +795,7 @@ msgstr "Ist anwesend"
msgid "Item"
msgstr "Eintrag"
#: agenda/static/templates/agenda/item-list.html:176
#: agenda/static/templates/agenda/item-list.html:179
msgid "Item number"
msgstr "Tagesordnungspunkt-Nummer"
@ -797,6 +813,10 @@ msgstr "Nachname"
msgid "Last speakers"
msgstr "Letzte Redner"
#: index.html:165 legalnotice.html:3
msgid "Legal notice"
msgstr "Impressum"
#: users/static/templates/users/user-list.html:30
msgid "List of access data"
msgstr "Zugangsdatenliste"
@ -807,7 +827,7 @@ msgstr "Teilnehmerliste"
#: agenda/static/templates/agenda/item-detail.html:17
#: agenda/static/templates/agenda/item-detail.html:30
#: agenda/static/templates/agenda/item-list.html:147
#: agenda/static/templates/agenda/item-list.html:150
#: agenda/static/templates/agenda/slide-list-of-speakers.html:7
#: assignments/static/templates/assignments/assignment-detail.html:15
#: core/static/templates/core/customslide-detail.html:11
@ -819,10 +839,14 @@ msgstr "Redeliste"
msgid "Live view"
msgstr "Live-Vorschau"
#: core/static/templates/core/login-form.html:20
#: core/static/templates/core/login-form.html:20 index.html:102
msgid "Login"
msgstr "Anmelden"
#: index.html:93
msgid "Logout"
msgstr "Abmelden"
#: core/static/templates/core/projector-controls.html:154
msgid "Messages"
msgstr "Mitteilungen"
@ -935,6 +959,10 @@ msgstr "Nächste Redner/innen"
msgid "No"
msgstr "Nein"
#: search.html:21
msgid "No results."
msgstr "Keine Ergebnisse."
#: assignments/static/templates/assignments/assignment-list.html:176
msgid "Number of members to be elected"
msgstr "Anzahl der zu wählenden Mitglieder"
@ -1032,6 +1060,10 @@ msgstr "Phase"
msgid "Please note:"
msgstr "Bitte beachten:"
#: core/static/js/core/base.js:96
msgid "Portuguese"
msgstr "Portugiesisch"
#: assignments/static/templates/assignments/assignment-list.html:104
#: assignments/static/templates/assignments/slide_assignment.html:9
msgid "Posts"
@ -1057,7 +1089,7 @@ msgid "Preview"
msgstr "Vorschau"
#: mediafiles/static/templates/mediafiles/mediafile-list.html:70
msgid "Previouse page"
msgid "Previous page"
msgstr "Vorherige Seite"
#: assignments/static/templates/assignments/assignment-detail.html:134
@ -1108,6 +1140,10 @@ msgstr "Antrag projizieren"
msgid "Project user"
msgstr "Benutzer projizieren"
#: index.html:175
msgid "Projector"
msgstr "Projektor"
#: assignments/static/templates/assignments/assignment-detail.html:146
msgid "Publish ballot"
msgstr "Wahlgang veröffentlichen"
@ -1116,7 +1152,7 @@ msgstr "Wahlgang veröffentlichen"
msgid "Published"
msgstr "Veröffentlicht"
#: agenda/static/templates/agenda/item-list.html:150
#: agenda/static/templates/agenda/item-list.html:153
#: assignments/static/templates/assignments/assignment-list.html:143
#: motions/static/templates/motions/motion-list.html:169
#: motions/static/templates/motions/motion-list.html:197
@ -1165,6 +1201,10 @@ msgid ""
"in the first row"
msgstr "Erforderliche Komma- oder Semikolon-separierte Werte mit diesen Spaltennamen in der ersten Zeile"
#: config-form-field.html:27
msgid "Reset"
msgstr "Zurücksetzen"
#: core/static/templates/core/projector-controls.html:99
msgid "Reset countdown"
msgstr "Countdown zurücksetzen"
@ -1208,13 +1248,18 @@ msgstr "Nach oben scrollen"
#: agenda/static/templates/agenda/item-list.html:64
#: assignments/static/templates/assignments/assignment-list.html:40
#: index.html:142
#: mediafiles/static/templates/mediafiles/mediafile-list.html:32
#: motions/static/templates/motions/motion-list.html:46
#: motions/static/templates/motions/motion-list.html:46 search.html:11
#: users/static/templates/users/group-list.html:24
#: users/static/templates/users/user-list.html:56
msgid "Search"
msgstr "Suche"
#: search.html:3
msgid "Search results"
msgstr "Suchergebnisse"
#: agenda/static/templates/agenda/item-list.html:38
#: assignments/static/templates/assignments/assignment-list.html:30
#: mediafiles/static/templates/mediafiles/mediafile-list.html:22
@ -1272,7 +1317,7 @@ msgstr "Anhang auswählen oder suchen ..."
msgid "Separator"
msgstr "Feldtrenner"
#: core/static/js/core/site.js:80
#: config.html:3 core/static/js/core/site.js:80
msgid "Settings"
msgstr "Einstellungen"
@ -1284,7 +1329,7 @@ msgstr "Anzeigen"
msgid "Show PDF files only"
msgstr "Nur PDF-Dateien anzeigen"
#: agenda/static/templates/agenda/item-list.html:188
#: agenda/static/templates/agenda/item-list.html:191
#: assignments/static/js/assignments/site.js:159
#: core/static/js/core/site.js:562 motions/static/js/motions/site.js:247
msgid "Show as agenda item"
@ -1319,6 +1364,10 @@ msgstr "Kleiner"
msgid "Sort agenda"
msgstr "Tagesordnung sortieren"
#: core/static/js/core/base.js:95
msgid "Spanish"
msgstr "Spanisch"
#: assignments/static/templates/assignments/assignmentpoll-form.html:8
#: motions/static/templates/motions/motionpoll-form.html:8
msgid "Special values"
@ -1437,7 +1486,7 @@ msgstr "Triviale Änderung"
msgid "Unsupport motion"
msgstr "Unterstützung zurückziehen"
#: agenda/static/templates/agenda/item-list.html:199
#: agenda/static/templates/agenda/item-list.html:202
#: assignments/static/templates/assignments/assignment-list.html:193
#: motions/static/templates/motions/motion-list.html:257
msgid "Update"
@ -1558,7 +1607,7 @@ msgid "files"
msgstr "Dateien"
#. 'h' means time in hours
#: agenda/static/templates/agenda/item-list.html:161
#: agenda/static/templates/agenda/item-list.html:164
msgid "h"
msgstr "h"

View File

@ -4,7 +4,7 @@
msgid ""
msgstr ""
"Project-Id-Version: OpenSlides\n"
"PO-Revision-Date: 2016-01-27 20:38+0000\n"
"PO-Revision-Date: 2016-01-28 12:31+0000\n"
"Last-Translator: Marco A.G.Pinto <marcoagpinto@mail.telepac.pt>\n"
"Language-Team: Portuguese (Portugal) (http://www.transifex.com/openslides/openslides/language/pt_PT/)\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -91,7 +91,7 @@ msgid "Agenda"
msgstr "Agenda"
#: agenda/static/templates/agenda/item-list.html:113
#: core/static/js/core/base.js:281
#: core/static/js/core/base.js:284
#: core/static/templates/core/customslide-detail.html:28
msgid "Agenda item"
msgstr "Item da agenda"
@ -104,7 +104,7 @@ msgstr "Todas as eleições"
msgid "All motions"
msgstr "Todas as moções"
#: agenda/static/templates/agenda/item-list.html:153
#: agenda/static/templates/agenda/item-list.html:156
#: assignments/static/templates/assignments/assignment-list.html:145
#: core/static/templates/core/tag-list.html:38
#: motions/static/templates/motions/category-list.html:47
@ -285,7 +285,7 @@ msgstr "Pode fazer upload de ficheiros"
msgid "Can use the chat"
msgstr "Pode usar o chat"
#: agenda/static/templates/agenda/item-list.html:196
#: agenda/static/templates/agenda/item-list.html:199
#: assignments/static/templates/assignments/assignment-form.html:13
#: assignments/static/templates/assignments/assignment-list.html:190
#: assignments/static/templates/assignments/assignmentpoll-form.html:17
@ -325,6 +325,14 @@ msgstr "Categorias"
msgid "Category"
msgstr "Categoria"
#: index.html:87
msgid "Change password"
msgstr "Alterar senha"
#: index.html:38
msgid "Chat"
msgstr "Chat"
#: agenda/static/templates/agenda/item-import.html:127
#: motions/static/templates/motions/motion-import.html:124
#: users/static/templates/users/user-import.html:154
@ -337,7 +345,7 @@ msgstr "Limpar pré-visualização"
msgid "Closed"
msgstr "Fechado"
#: agenda/static/templates/agenda/item-list.html:180
#: agenda/static/templates/agenda/item-list.html:183
#: users/static/js/users/site.js:331
#: users/static/templates/users/user-detail.html:45
#: users/static/templates/users/user-import.html:92
@ -384,6 +392,10 @@ msgstr "Contagens regressivas"
msgid "Current speaker"
msgstr "Orador actual"
#: core/static/js/core/base.js:97
msgid "Czech"
msgstr "Tcheco"
#: assignments/static/js/assignments/site.js:152
msgid "Default comment on the ballot paper"
msgstr "Comentário predefinido no boletim de voto"
@ -400,7 +412,7 @@ msgstr "Senha predefinida"
msgid "Delegate"
msgstr "Delegar"
#: agenda/static/templates/agenda/item-list.html:152
#: agenda/static/templates/agenda/item-list.html:155
#: assignments/static/templates/assignments/assignment-detail.html:155
#: assignments/static/templates/assignments/assignment-list.html:144
#: core/static/templates/core/tag-list.html:37
@ -479,11 +491,11 @@ msgid ""
msgstr "Arrasta e larga os itens para alterar a ordem da agenda. A modificação será gravada imediatamente."
#: agenda/static/templates/agenda/item-list.html:115
#: agenda/static/templates/agenda/item-list.html:191
#: agenda/static/templates/agenda/item-list.html:194
msgid "Duration"
msgstr "Duração"
#: agenda/static/templates/agenda/item-list.html:149
#: agenda/static/templates/agenda/item-list.html:152
#: assignments/static/templates/assignments/assignment-detail.html:27
#: assignments/static/templates/assignments/assignment-list.html:142
#: core/static/templates/core/customslide-detail.html:23
@ -499,7 +511,7 @@ msgstr "Duração"
msgid "Edit"
msgstr "Editar"
#: agenda/static/templates/agenda/item-list.html:202
#: agenda/static/templates/agenda/item-list.html:205
msgid "Edit ..."
msgstr "Editar ..."
@ -551,7 +563,7 @@ msgstr "Editar moção ..."
msgid "Edit participant"
msgstr "Editar participante"
#: users/static/templates/users/user-detail-profile.html:3
#: index.html:82 users/static/templates/users/user-detail-profile.html:3
msgid "Edit profile"
msgstr "Editar perfil"
@ -612,7 +624,7 @@ msgstr "Erro: Identificador já existe."
msgid "Error: Text is required."
msgstr "Erro: Texto é necessário."
#: agenda/static/js/agenda/site.js:385 motions/static/js/motions/site.js:844
#: agenda/static/js/agenda/site.js:400 motions/static/js/motions/site.js:844
msgid "Error: Title is required."
msgstr "Erro: Título é necessário."
@ -751,7 +763,11 @@ msgstr "Importar {{ motions.length - motionsFailed.length }} moções"
msgid "Import {{ users.length - usersFailed.length }} participants"
msgstr "Importar {{ users.length - usersFailed.length }} participantes"
#: agenda/static/templates/agenda/item-list.html:142
#: legalnotice.html:12
msgid "Installed plugins:"
msgstr "Plugins instalados:"
#: agenda/static/templates/agenda/item-list.html:145
msgid "Internal item"
msgstr "Item interno"
@ -777,7 +793,7 @@ msgstr "Está presente"
msgid "Item"
msgstr "Item"
#: agenda/static/templates/agenda/item-list.html:176
#: agenda/static/templates/agenda/item-list.html:179
msgid "Item number"
msgstr "Número de item"
@ -795,6 +811,10 @@ msgstr "Apelido"
msgid "Last speakers"
msgstr "Últimos oradores"
#: index.html:165 legalnotice.html:3
msgid "Legal notice"
msgstr "Aviso legal"
#: users/static/templates/users/user-list.html:30
msgid "List of access data"
msgstr "Lista de dados de acesso"
@ -805,7 +825,7 @@ msgstr "Lista de participantes"
#: agenda/static/templates/agenda/item-detail.html:17
#: agenda/static/templates/agenda/item-detail.html:30
#: agenda/static/templates/agenda/item-list.html:147
#: agenda/static/templates/agenda/item-list.html:150
#: agenda/static/templates/agenda/slide-list-of-speakers.html:7
#: assignments/static/templates/assignments/assignment-detail.html:15
#: core/static/templates/core/customslide-detail.html:11
@ -817,10 +837,14 @@ msgstr "Lista de oradores"
msgid "Live view"
msgstr "Visualização ao vivo"
#: core/static/templates/core/login-form.html:20
#: core/static/templates/core/login-form.html:20 index.html:102
msgid "Login"
msgstr "Login"
#: index.html:93
msgid "Logout"
msgstr "Logout"
#: core/static/templates/core/projector-controls.html:154
msgid "Messages"
msgstr "Mensagens"
@ -933,6 +957,10 @@ msgstr "Próximos oradores"
msgid "No"
msgstr "Não"
#: search.html:21
msgid "No results."
msgstr "Sem resultados."
#: assignments/static/templates/assignments/assignment-list.html:176
msgid "Number of members to be elected"
msgstr "Número de membros a serem eleitos"
@ -1030,6 +1058,10 @@ msgstr "Fase"
msgid "Please note:"
msgstr "Por favor nota"
#: core/static/js/core/base.js:96
msgid "Portuguese"
msgstr "Português"
#: assignments/static/templates/assignments/assignment-list.html:104
#: assignments/static/templates/assignments/slide_assignment.html:9
msgid "Posts"
@ -1055,7 +1087,7 @@ msgid "Preview"
msgstr "Visualização"
#: mediafiles/static/templates/mediafiles/mediafile-list.html:70
msgid "Previouse page"
msgid "Previous page"
msgstr "Página anterior"
#: assignments/static/templates/assignments/assignment-detail.html:134
@ -1106,6 +1138,10 @@ msgstr "Moção do projecto"
msgid "Project user"
msgstr "Utilizador do projecto"
#: index.html:175
msgid "Projector"
msgstr "Projector"
#: assignments/static/templates/assignments/assignment-detail.html:146
msgid "Publish ballot"
msgstr "Publicar a votação"
@ -1114,7 +1150,7 @@ msgstr "Publicar a votação"
msgid "Published"
msgstr "Publicado"
#: agenda/static/templates/agenda/item-list.html:150
#: agenda/static/templates/agenda/item-list.html:153
#: assignments/static/templates/assignments/assignment-list.html:143
#: motions/static/templates/motions/motion-list.html:169
#: motions/static/templates/motions/motion-list.html:197
@ -1163,6 +1199,10 @@ msgid ""
"in the first row"
msgstr "Necessário valores separados por vírgula ou ponto e vírgula com esses nomes de cabeçalho de coluna na primeira linha"
#: config-form-field.html:27
msgid "Reset"
msgstr "Redefinir"
#: core/static/templates/core/projector-controls.html:99
msgid "Reset countdown"
msgstr "Redefinir contagem regressiva"
@ -1206,13 +1246,18 @@ msgstr "Scroll para cima"
#: agenda/static/templates/agenda/item-list.html:64
#: assignments/static/templates/assignments/assignment-list.html:40
#: index.html:142
#: mediafiles/static/templates/mediafiles/mediafile-list.html:32
#: motions/static/templates/motions/motion-list.html:46
#: motions/static/templates/motions/motion-list.html:46 search.html:11
#: users/static/templates/users/group-list.html:24
#: users/static/templates/users/user-list.html:56
msgid "Search"
msgstr "Pesquisar"
#: search.html:3
msgid "Search results"
msgstr "Resultados da pesquisa"
#: agenda/static/templates/agenda/item-list.html:38
#: assignments/static/templates/assignments/assignment-list.html:30
#: mediafiles/static/templates/mediafiles/mediafile-list.html:22
@ -1270,7 +1315,7 @@ msgstr "Seleccionar ou pesquisar um anexo ..."
msgid "Separator"
msgstr "Separador"
#: core/static/js/core/site.js:80
#: config.html:3 core/static/js/core/site.js:80
msgid "Settings"
msgstr "Definições"
@ -1282,7 +1327,7 @@ msgstr "Mostrar"
msgid "Show PDF files only"
msgstr "Mostrar apenas ficheiros PDF"
#: agenda/static/templates/agenda/item-list.html:188
#: agenda/static/templates/agenda/item-list.html:191
#: assignments/static/js/assignments/site.js:159
#: core/static/js/core/site.js:562 motions/static/js/motions/site.js:247
msgid "Show as agenda item"
@ -1317,6 +1362,10 @@ msgstr "Menor"
msgid "Sort agenda"
msgstr "Ordenar agenda"
#: core/static/js/core/base.js:95
msgid "Spanish"
msgstr "Espanhol"
#: assignments/static/templates/assignments/assignmentpoll-form.html:8
#: motions/static/templates/motions/motionpoll-form.html:8
msgid "Special values"
@ -1435,7 +1484,7 @@ msgstr "Alteração trivial"
msgid "Unsupport motion"
msgstr "Desapoiar moção"
#: agenda/static/templates/agenda/item-list.html:199
#: agenda/static/templates/agenda/item-list.html:202
#: assignments/static/templates/assignments/assignment-list.html:193
#: motions/static/templates/motions/motion-list.html:257
msgid "Update"
@ -1556,7 +1605,7 @@ msgid "files"
msgstr "ficheiros"
#. 'h' means time in hours
#: agenda/static/templates/agenda/item-list.html:161
#: agenda/static/templates/agenda/item-list.html:164
msgid "h"
msgstr "h"

View File

@ -183,6 +183,10 @@ angular.module('OpenSlidesApp.motions.site', ['OpenSlidesApp.motions'])
},
// angular-formly fields for motion form
getFormFields: function () {
var workflows = Workflow.getAll();
angular.forEach(workflows, function(workflow) {
workflow.name = gettextCatalog.getString(workflow.name);
});
return [
{
key: 'identifier',
@ -319,7 +323,7 @@ angular.module('OpenSlidesApp.motions.site', ['OpenSlidesApp.motions'])
templateOptions: {
label: gettextCatalog.getString('Workflow'),
optionsAttr: 'bs-options',
options: Workflow.getAll(),
options: workflows,
ngOptions: 'option[to.valueProp] as option in to.options | filter: $select.search',
valueProp: 'id',
labelProp: 'name',
@ -450,7 +454,8 @@ angular.module('OpenSlidesApp.motions.site', ['OpenSlidesApp.motions'])
angular.forEach(workflows, function (workflow) {
if (workflows.length > 1) {
var wf = {}
wf.name = "# "+workflow.name;
wf.name = workflow.name;
wf.workflowSeparator = "-";
$scope.states.push(wf);
}
angular.forEach(workflow.states, function (state) {

View File

@ -97,7 +97,9 @@
<div ng-if="motion.isAllowed('change_state')" class="spacer">
<select ng-if="motion.state.getNextStates().length > 0" ng-model="stateSelect" class="form-control" ng-change="updateState(stateSelect)">
<option value="" translate>--- Set next state ---</option>
<option ng-repeat="state in motion.state.getNextStates()" value="{{ state.id }}">{{ state.action_word }}</option>
<option ng-repeat="state in motion.state.getNextStates()" value="{{ state.id }}">
{{ state.action_word | translate }}
</option>
</select>
<button ng-if="motion.isAllowed('reset_state')" ng-click="reset_state()"
class="btn btn-danger btn-xs spacer">
@ -111,7 +113,7 @@
<ol class="slimlist">
<li ng-repeat="poll in motion.polls" class="spacer"
ng-if="poll.has_votes || operator.hasPerms('motions.can_manage')">
<strong><translate translate-context="ballot">Vote</translate></strong>
<strong translate-comment='ballot of a motion' translate>Vote</strong>
<!-- Edit poll -->
<button os-perms="motions.can_manage" ng-click="openPollDialog(poll, $index+1)"
class="btn btn-default btn-xs" title="{{ 'Edit' | translate }}">

View File

@ -38,7 +38,7 @@
<h4 translate>Please note:</h4>
<ul>
<li><translate>Required comma or semicolon separated values with these column header names in the first row</translate>:<br>
<code>'identifier, title, text, reason, submitter, category'</code>
<code>identifier, title, text, reason, submitter, category</code>
<li translate>Identifier, reason, submitter and category are optional and may be empty.
<li translate>Only double quotes are accepted as text delimiter (no single quotes).
<li><a id="downloadLink" href="" ng-click="downloadCSVExample()" translate>Download CSV example file</a>

View File

@ -60,7 +60,11 @@
<!-- state filter -->
<select ng-model="stateFilter" class="form-control" id="stateFilter">
<option value="" translate>--- Select state ---</option>
<option ng-repeat="state in states" value="{{ state.id }}">{{ state.name }}</option>
<option ng-repeat="state in states" value="{{ state.id }}">
{{ state.workflowSeparator }}
{{ state.name | translate }}
{{ state.workflowSeparator }}
</option>
</select>
</div>
</div>

View File

@ -1,7 +1,7 @@
from django.contrib.auth.models import Permission
from django.db.models import Q
from django.utils.translation import ugettext as _
from django.utils.translation import ugettext_lazy, ugettext_noop
from django.utils.translation import ugettext_lazy
from ..core.config import ConfigVariable
from .models import Group, User
@ -149,9 +149,9 @@ def create_builtin_groups_and_admin(**kwargs):
permission_dict['motions.can_see'],
permission_dict['users.can_see_extra_data'],
permission_dict['users.can_see_name'], )
group_anonymous = Group.objects.create(name=ugettext_noop('Anonymous'), pk=1)
group_anonymous = Group.objects.create(name='Guests', pk=1)
group_anonymous.permissions.add(*base_permissions)
group_registered = Group.objects.create(name=ugettext_noop('Registered'), pk=2)
group_registered = Group.objects.create(name=('Registered users', pk=2)
group_registered.permissions.add(
permission_dict['agenda.can_be_speaker'],
*base_permissions)
@ -163,7 +163,7 @@ def create_builtin_groups_and_admin(**kwargs):
permission_dict['mediafiles.can_upload'],
permission_dict['motions.can_create'],
permission_dict['motions.can_support'], )
group_delegates = Group.objects.create(name=ugettext_noop('Delegates'), pk=3)
group_delegates = Group.objects.create(name='Delegates', pk=3)
group_delegates.permissions.add(*delegates_permissions)
# Staff (pk 4)
@ -181,7 +181,7 @@ def create_builtin_groups_and_admin(**kwargs):
permission_dict['motions.can_create'],
permission_dict['motions.can_manage'],
permission_dict['users.can_manage'], )
group_staff = Group.objects.create(name=ugettext_noop('Staff'), pk=4)
group_staff = Group.objects.create(name='Staff', pk=4)
group_staff.permissions.add(*staff_permissions)
# Add users.can_see_name and users.can_see_extra_data permissions to staff

View File

@ -172,6 +172,19 @@ angular.module('OpenSlidesApp.users', [])
'User',
'Group',
function(User, Group) {}
])
// Mark strings for translation in JavaScript.
.config([
'gettext',
function (gettext) {
// default group names (from users/signals.py)
gettext('Guests');
gettext('Registered users');
gettext('Delegates');
gettext('Staff');
}
]);
}());

View File

@ -42,7 +42,7 @@
<tbody>
<tr ng-repeat="group in groups | filter: filter.search | orderBy:sortby:reverse">
<td>{{ group.id }}
<td><a ui-sref="users.group.detail({id: group.id})">{{ group.name }}</a>
<td><a ui-sref="users.group.detail({id: group.id})">{{ group.name | translate }}</a>
<td os-perms="users.can_manage" class="nobr">
<!-- edit -->
<a ui-sref="users.group.detail.update({id: group.id})" os-perms="users.can_manage"

View File

@ -67,9 +67,9 @@
<h4 translate>Please note:</h4>
<ul>
<li><translate>Required comma or semicolon separated values with these column header names in the first row</translate>:<br>
<code>'title, first_name, last_name, structure level, groups, comment, is active'</code>
<code>title, first_name, last_name, structure level, groups, comment, is active</code>
<li><translate>Default groups</translate>:
<translate>Delegate</translate> <code>3</code>,
<translate>Delegates</translate> <code>3</code>,
<translate>Staff</translate> <code>4</code>
<li translate>At least first name or last name have to be filled in. All
other fields are optional and may be empty.

View File

@ -70,7 +70,7 @@
<!-- group filter -->
<select ng-model="groupFilter" class="form-control" id="groupFilter">
<option value="" translate>--- Select group ---</option>
<option ng-repeat="group in groups" value="{{ group.id }}">{{ group.name }}</option>
<option ng-repeat="group in groups" value="{{ group.id }}">{{ group.name | translate }}</option>
</select>
<!-- isPresent filter -->
<input type="checkbox" ng-model="filterPresent" ng-false-value="''">
@ -155,7 +155,7 @@
<td class="optional">{{ user.structure_level }}
<td class="optional">
<div ng-repeat="group in user.groups">
{{ (groups | filter: {id: group})[0].name }}
{{ (groups | filter: {id: group})[0].name | translate }}
</div>
<td>
<span os-perms="!users.can_manage">