Feature #2096 » feature_2096_adriano_crestani.patch
| app/helpers/issues_helper.rb (working copy) | ||
|---|---|---|
| 97 | 97 |
|
| 98 | 98 |
unless no_html |
| 99 | 99 |
label = content_tag('strong', label)
|
| 100 |
old_value = content_tag("i", h(old_value)) if detail.old_value
|
|
| 100 | ||
| 101 |
if !custom_field.nil? && custom_field.field_format == 'user_list' |
|
| 102 |
old_value = content_tag("i", old_value) if detail.old_value
|
|
| 103 |
else |
|
| 104 |
old_value = content_tag("i", h(old_value)) if detail.old_value
|
|
| 105 |
end |
|
| 106 | ||
| 107 |
|
|
| 101 | 108 |
old_value = content_tag("strike", old_value) if detail.old_value and (!detail.value or detail.value.empty?)
|
| 109 | ||
| 102 | 110 |
if detail.property == 'attachment' && !value.blank? && a = Attachment.find_by_id(detail.prop_key) |
| 103 | 111 |
# Link to the attachment if it has not been removed |
| 104 | 112 |
value = link_to_attachment(a) |
| 113 |
elsif !custom_field.nil? && custom_field.field_format == 'user_list' |
|
| 114 |
value = content_tag("i", value) if value
|
|
| 105 | 115 |
else |
| 106 | 116 |
value = content_tag("i", h(value)) if value
|
| 107 | 117 |
end |
| app/helpers/custom_fields_helper.rb (working copy) | ||
|---|---|---|
| 44 | 44 |
(custom_field.default_value.blank? ? "<option value=\"\">--- #{l(:actionview_instancetag_blank_option)} ---</option>" : '') :
|
| 45 | 45 |
'<option></option>' |
| 46 | 46 |
select_tag(field_name, blank_option + options_for_select(custom_field.possible_values, custom_value.value), :id => field_id) |
| 47 | ||
| 48 |
when "user_list" |
|
| 49 |
users = @issue == nil ? User.find(:all) : @issue.assignable_users |
|
| 50 |
users.delete_if { |user| user.anonymous? }
|
|
| 51 |
custom_field.possible_values.clear() |
|
| 52 |
users.each { |user| custom_field.possible_values << user unless user.anonymous? }
|
|
| 53 | ||
| 54 |
blank_option = custom_field.is_required? ? |
|
| 55 |
(custom_field.default_value.blank? ? "<option value=\"\">--- #{l(:actionview_instancetag_blank_option)} ---</option>" : '') :
|
|
| 56 |
'<option></option>' |
|
| 57 |
select_tag(field_name, blank_option + options_for_select(users.collect { |x| [x.name, x.login] }, custom_value.value), :id => field_id)
|
|
| 58 | ||
| 47 | 59 |
else |
| 48 | 60 |
text_field_tag(field_name, custom_value.value, :id => field_id) |
| 49 | 61 |
end |
| ... | ... | |
| 76 | 88 |
begin; format_date(value.to_date); rescue; value end |
| 77 | 89 |
when "bool" |
| 78 | 90 |
l_YesNo(value == "1") |
| 91 |
when "user_list" |
|
| 92 |
link_to_user(User.find(:first, :conditions => [ "login = ?", value])) |
|
| 79 | 93 |
else |
| 80 | 94 |
value |
| 81 | 95 |
end |
| ... | ... | |
| 85 | 99 |
def custom_field_formats_for_select |
| 86 | 100 |
CustomField::FIELD_FORMATS.sort {|a,b| a[1][:order]<=>b[1][:order]}.collect { |k| [ l(k[1][:name]), k[0] ] }
|
| 87 | 101 |
end |
| 102 | ||
| 103 |
# Return a string used to display a custom value on the issues view |
|
| 104 |
def format_value_for_view(value, field_format) |
|
| 105 |
return "-" unless value && !value.empty? |
|
| 106 |
case field_format |
|
| 107 |
when "user_list" |
|
| 108 |
link_to_user(User.find(:first, :conditions => [ "login = ?", value])) |
|
| 109 |
else |
|
| 110 |
format_value(value, field_format) |
|
| 111 |
end |
|
| 112 |
end |
|
| 113 | ||
| 114 |
def show_value_on_view(custom_value) |
|
| 115 |
return "" unless custom_value |
|
| 116 |
format_value_for_view(custom_value.value, custom_value.custom_field.field_format) |
|
| 117 |
end |
|
| 118 | ||
| 88 | 119 |
end |
| app/models/issue.rb (working copy) | ||
|---|---|---|
| 213 | 213 |
# Author and assignee are always notified unless they have been locked |
| 214 | 214 |
recipients << author.mail if author && author.active? |
| 215 | 215 |
recipients << assigned_to.mail if assigned_to && assigned_to.active? |
| 216 | ||
| 217 |
custom_users = Array.new() |
|
| 218 | ||
| 219 |
custom_values.each { |x| custom_users << User.find(:first, :conditions => [ "login = ?", x.value]) }
|
|
| 220 |
custom_users = custom_users.compact |
|
| 221 |
custom_users.each { |x| recipients << x.mail }
|
|
| 222 | ||
| 216 | 223 |
recipients.compact.uniq |
| 217 | 224 |
end |
| 218 | 225 |
|
| app/models/custom_field.rb (working copy) | ||
|---|---|---|
| 25 | 25 |
"int" => { :name => :label_integer, :order => 3 },
|
| 26 | 26 |
"float" => { :name => :label_float, :order => 4 },
|
| 27 | 27 |
"list" => { :name => :label_list, :order => 5 },
|
| 28 |
"date" => { :name => :label_date, :order => 6 },
|
|
| 29 |
"bool" => { :name => :label_boolean, :order => 7 }
|
|
| 28 |
"user_list" => { :name => :label_user_list, :order => 6 },
|
|
| 29 |
"date" => { :name => :label_date, :order => 7 },
|
|
| 30 |
"bool" => { :name => :label_boolean, :order => 8 }
|
|
| 30 | 31 |
}.freeze |
| 31 | 32 | |
| 32 | 33 |
validates_presence_of :name, :field_format |
| app/views/custom_fields/_form.rhtml (working copy) | ||
|---|---|---|
| 20 | 20 |
if (p_searchable) Element.show(p_searchable.parentNode); |
| 21 | 21 |
Element.show(p_values); |
| 22 | 22 |
break; |
| 23 |
case "user_list": |
|
| 24 |
p_default.setAttribute('type','combolist');
|
|
| 25 |
Element.hide(p_length.parentNode); |
|
| 26 |
Element.hide(p_regexp.parentNode); |
|
| 27 |
if (p_searchable) Element.show(p_searchable.parentNode); |
|
| 28 |
Element.hide(p_values); |
|
| 29 |
break; |
|
| 23 | 30 |
case "bool": |
| 24 | 31 |
p_default.setAttribute('type','checkbox');
|
| 25 | 32 |
Element.hide(p_length.parentNode); |
| app/views/projects/show.rhtml (working copy) | ||
|---|---|---|
| 12 | 12 |
<% end %> |
| 13 | 13 |
<% @project.custom_values.each do |custom_value| %> |
| 14 | 14 |
<% if !custom_value.value.empty? %> |
| 15 |
<li><%= custom_value.custom_field.name%>: <%=h show_value(custom_value) %></li>
|
|
| 15 |
<li><%= custom_value.custom_field.name%>: <%= custom_value.custom_field.field_format == "user_list" ? show_value_on_view(custom_value) : h(show_value(custom_value)) %></li>
|
|
| 16 | 16 |
<% end %> |
| 17 | 17 |
<% end %> |
| 18 | 18 |
</ul> |
| app/views/account/show.rhtml (working copy) | ||
|---|---|---|
| 11 | 11 |
<% end %> |
| 12 | 12 |
<% for custom_value in @custom_values %> |
| 13 | 13 |
<% if !custom_value.value.empty? %> |
| 14 |
<li><%= custom_value.custom_field.name%>: <%=h show_value(custom_value) %></li>
|
|
| 14 |
<li><%= custom_value.custom_field.name%>: <%= custom_value.custom_field.field_format == "user_list" ? show_value_on_view(custom_value) : h(show_value(custom_value)) %></li>
|
|
| 15 | 15 |
<% end %> |
| 16 | 16 |
<% end %> |
| 17 | 17 |
<li><%=l(:label_registered_on)%>: <%= format_date(@user.created_on) %></li> |
| app/views/issues/show.rhtml (working copy) | ||
|---|---|---|
| 46 | 46 |
<tr> |
| 47 | 47 |
<% n = 0 -%> |
| 48 | 48 |
<% @issue.custom_values.each do |value| -%> |
| 49 |
<td valign="top"><b><%=h value.custom_field.name %>:</b></td><td valign="top"><%= simple_format(h(show_value(value))) %></td> |
|
| 49 | ||
| 50 |
<td valign="top"><b><%= value.custom_field.name %> :</b></td><td valign="top"><%= value.custom_field.field_format == "user_list" ? show_value_on_view(value) : |
|
| 51 |
simple_format(h(show_value_on_issue(value))) %></td> |
|
| 52 | ||
| 50 | 53 |
<% n = n + 1 |
| 51 | 54 |
if (n > 1) |
| 52 | 55 |
n = 0 %> |
| lang/lt.yml (working copy) | ||
|---|---|---|
| 271 | 271 |
label_subproject_plural: Subprojektai |
| 272 | 272 |
label_min_max_length: Min - Maks ilgis |
| 273 | 273 |
label_list: Sąrašas |
| 274 | ||
| 275 |
# need to be translated |
|
| 276 |
label_user_list: User List |
|
| 277 | ||
| 274 | 278 |
label_date: Data |
| 275 | 279 |
label_integer: Sveikasis skaičius |
| 276 | 280 |
label_float: Float |
| lang/ro.yml (working copy) | ||
|---|---|---|
| 254 | 254 |
label_subproject_plural: Subproiecte |
| 255 | 255 |
label_min_max_length: Lungime min-max |
| 256 | 256 |
label_list: Lista |
| 257 | ||
| 258 |
# need to be translated |
|
| 259 |
label_user_list: User List |
|
| 260 | ||
| 257 | 261 |
label_date: Data |
| 258 | 262 |
label_integer: Numar intreg |
| 259 | 263 |
label_boolean: Variabila logica |
| lang/zh.yml (working copy) | ||
|---|---|---|
| 356 | 356 |
label_and_its_subprojects: %s 及其子项目 |
| 357 | 357 |
label_min_max_length: 最小 - 最大 长度 |
| 358 | 358 |
label_list: 列表 |
| 359 | ||
| 360 |
# need to be translated |
|
| 361 |
label_user_list: User List |
|
| 362 | ||
| 359 | 363 |
label_date: 日期 |
| 360 | 364 |
label_integer: 整数 |
| 361 | 365 |
label_float: 浮点数 |
| lang/vn.yml (working copy) | ||
|---|---|---|
| 304 | 304 |
label_and_its_subprojects: %s và dự án con |
| 305 | 305 |
label_min_max_length: Min - Max length |
| 306 | 306 |
label_list: List |
| 307 | ||
| 308 |
# need to be translated |
|
| 309 |
label_user_list: User List |
|
| 310 | ||
| 307 | 311 |
label_date: Ngày |
| 308 | 312 |
label_integer: Integer |
| 309 | 313 |
label_float: Float |
| lang/pt.yml (working copy) | ||
|---|---|---|
| 305 | 305 |
label_and_its_subprojects: %s e sub-projectos |
| 306 | 306 |
label_min_max_length: Tamanho mínimo-máximo |
| 307 | 307 |
label_list: Lista |
| 308 |
label_user_list: Lista de Usuário |
|
| 308 | 309 |
label_date: Data |
| 309 | 310 |
label_integer: Inteiro |
| 310 | 311 |
label_float: Decimal |
| lang/ca.yml (working copy) | ||
|---|---|---|
| 304 | 304 |
label_and_its_subprojects: %s i els seus subprojectes |
| 305 | 305 |
label_min_max_length: Longitud mín - max |
| 306 | 306 |
label_list: Llist |
| 307 | ||
| 308 |
# need to be translated |
|
| 309 |
label_user_list: User List |
|
| 310 | ||
| 307 | 311 |
label_date: Data |
| 308 | 312 |
label_integer: Enter |
| 309 | 313 |
label_float: Flotant |
| lang/pt-br.yml (working copy) | ||
|---|---|---|
| 303 | 303 |
label_and_its_subprojects: %s e seus sub-projetos |
| 304 | 304 |
label_min_max_length: Tamanho mín-máx |
| 305 | 305 |
label_list: Lista |
| 306 |
label_user_list: Lista de Usuário |
|
| 306 | 307 |
label_date: Data |
| 307 | 308 |
label_integer: Inteiro |
| 308 | 309 |
label_float: Decimal |
| lang/tr.yml (working copy) | ||
|---|---|---|
| 293 | 293 |
label_subproject_plural: Alt Projeler |
| 294 | 294 |
label_min_max_length: Min - Maks uzunluk |
| 295 | 295 |
label_list: Liste |
| 296 | ||
| 297 |
# need to be translated |
|
| 298 |
label_user_list: User List |
|
| 299 | ||
| 296 | 300 |
label_date: Tarih |
| 297 | 301 |
label_integer: Tam sayı |
| 298 | 302 |
label_float: Noktalı sayı |
| lang/ru.yml (working copy) | ||
|---|---|---|
| 383 | 383 |
label_ldap_authentication: Авторизация с помощью LDAP |
| 384 | 384 |
label_less_than_ago: менее, чем дней(я) назад |
| 385 | 385 |
label_list: Список |
| 386 | ||
| 387 |
# need to be translated |
|
| 388 |
label_user_list: User List |
|
| 389 | ||
| 386 | 390 |
label_loading: Загрузка... |
| 387 | 391 |
label_logged_as: Вошел как |
| 388 | 392 |
label_login: Войти |
| lang/en.yml (working copy) | ||
|---|---|---|
| 356 | 356 |
label_and_its_subprojects: %s and its subprojects |
| 357 | 357 |
label_min_max_length: Min - Max length |
| 358 | 358 |
label_list: List |
| 359 |
label_user_list: User List |
|
| 359 | 360 |
label_date: Date |
| 360 | 361 |
label_integer: Integer |
| 361 | 362 |
label_float: Float |
| lang/cs.yml (working copy) | ||
|---|---|---|
| 297 | 297 |
label_subproject_plural: Podprojekty |
| 298 | 298 |
label_min_max_length: Min - Max délka |
| 299 | 299 |
label_list: Seznam |
| 300 | ||
| 301 |
# need to be translated |
|
| 302 |
label_user_list: User List |
|
| 303 | ||
| 300 | 304 |
label_date: Datum |
| 301 | 305 |
label_integer: Celé číslo |
| 302 | 306 |
label_float: Desetiné číslo |
| lang/es.yml (working copy) | ||
|---|---|---|
| 349 | 349 |
label_ldap_authentication: Autenticación LDAP |
| 350 | 350 |
label_less_than_ago: hace menos de |
| 351 | 351 |
label_list: Lista |
| 352 | ||
| 353 |
# need to be translated |
|
| 354 |
label_user_list: User List |
|
| 355 | ||
| 352 | 356 |
label_loading: Cargando... |
| 353 | 357 |
label_logged_as: Conectado como |
| 354 | 358 |
label_login: Conexión |
| lang/zh-tw.yml (working copy) | ||
|---|---|---|
| 355 | 355 |
label_and_its_subprojects: %s 與其子專案 |
| 356 | 356 |
label_min_max_length: 最小 - 最大 長度 |
| 357 | 357 |
label_list: 清單 |
| 358 | ||
| 359 |
# need to be translated |
|
| 360 |
label_user_list: User List |
|
| 361 | ||
| 358 | 362 |
label_date: 日期 |
| 359 | 363 |
label_integer: 整數 |
| 360 | 364 |
label_float: 福點數 |
| lang/ko.yml (working copy) | ||
|---|---|---|
| 260 | 260 |
label_subproject_plural: 서브 프로젝트 |
| 261 | 261 |
label_min_max_length: 최소 - 최대 길이 |
| 262 | 262 |
label_list: 리스트 |
| 263 | ||
| 264 |
# need to be translated |
|
| 265 |
label_user_list: User List |
|
| 266 | ||
| 263 | 267 |
label_date: 날짜 |
| 264 | 268 |
label_integer: 정수 |
| 265 | 269 |
label_float: 부동상수 |
| lang/it.yml (working copy) | ||
|---|---|---|
| 254 | 254 |
label_subproject_plural: Sottoprogetti |
| 255 | 255 |
label_min_max_length: Lunghezza minima - massima |
| 256 | 256 |
label_list: Elenco |
| 257 | ||
| 258 |
# need to be translated |
|
| 259 |
label_user_list: User List |
|
| 260 | ||
| 257 | 261 |
label_date: Data |
| 258 | 262 |
label_integer: Intero |
| 259 | 263 |
label_boolean: Booleano |
| lang/sk.yml (working copy) | ||
|---|---|---|
| 297 | 297 |
label_subproject_plural: Podprojekty |
| 298 | 298 |
label_min_max_length: Min - Max dĺžka |
| 299 | 299 |
label_list: Zoznam |
| 300 | ||
| 301 |
# need to be translated |
|
| 302 |
label_user_list: User List |
|
| 303 | ||
| 300 | 304 |
label_date: Dátum |
| 301 | 305 |
label_integer: Celé číslo |
| 302 | 306 |
label_float: Desatinné číslo |
| lang/uk.yml (working copy) | ||
|---|---|---|
| 268 | 268 |
label_subproject_plural: Підпроекти |
| 269 | 269 |
label_min_max_length: Мінімальна - максимальна довжина |
| 270 | 270 |
label_list: Список |
| 271 | ||
| 272 |
# need to be translated |
|
| 273 |
label_user_list: User List |
|
| 274 | ||
| 271 | 275 |
label_date: Дата |
| 272 | 276 |
label_integer: Цілий |
| 273 | 277 |
label_float: З плаваючою крапкою |
| lang/da.yml (working copy) | ||
|---|---|---|
| 304 | 304 |
label_and_its_subprojects: Projektet %s og dets underprojekter |
| 305 | 305 |
label_min_max_length: Min.-maks.-længde |
| 306 | 306 |
label_list: Liste |
| 307 | ||
| 308 |
# need to be translated |
|
| 309 |
label_user_list: User List |
|
| 310 | ||
| 307 | 311 |
label_date: Dato |
| 308 | 312 |
label_integer: Heltal |
| 309 | 313 |
label_float: Kommatal |
| lang/sr.yml (working copy) | ||
|---|---|---|
| 263 | 263 |
label_subproject_plural: Potprojekti |
| 264 | 264 |
label_min_max_length: Min - Max veličina |
| 265 | 265 |
label_list: Liste |
| 266 | ||
| 267 |
# need to be translated |
|
| 268 |
label_user_list: User List |
|
| 269 | ||
| 266 | 270 |
label_date: Datum |
| 267 | 271 |
label_integer: Integer |
| 268 | 272 |
label_boolean: Boolean |
| lang/de.yml (working copy) | ||
|---|---|---|
| 355 | 355 |
label_and_its_subprojects: %s und dessen Unterprojekte |
| 356 | 356 |
label_min_max_length: Länge (Min. - Max.) |
| 357 | 357 |
label_list: Liste |
| 358 | ||
| 359 |
# need to be translated |
|
| 360 |
label_user_list: User List |
|
| 361 | ||
| 358 | 362 |
label_date: Datum |
| 359 | 363 |
label_integer: Zahl |
| 360 | 364 |
label_float: Fließkommazahl |
| lang/bg.yml (working copy) | ||
|---|---|---|
| 253 | 253 |
label_auth_source_plural: Начини на оторизация |
| 254 | 254 |
label_subproject_plural: Подпроекти |
| 255 | 255 |
label_min_max_length: Мин. - Макс. дължина |
| 256 | ||
| 257 |
# need to be translated |
|
| 258 |
label_user_list: User List |
|
| 259 | ||
| 256 | 260 |
label_list: Списък |
| 257 | 261 |
label_date: Дата |
| 258 | 262 |
label_integer: Целочислен |
| lang/sv.yml (working copy) | ||
|---|---|---|
| 254 | 254 |
label_subproject_plural: Delprojekt |
| 255 | 255 |
label_min_max_length: Min - Max längd |
| 256 | 256 |
label_list: Lista |
| 257 | ||
| 258 |
# need to be translated |
|
| 259 |
label_user_list: User List |
|
| 260 | ||
| 257 | 261 |
label_date: Datum |
| 258 | 262 |
label_integer: Heltal |
| 259 | 263 |
label_boolean: Boolean |
| lang/ja.yml (working copy) | ||
|---|---|---|
| 255 | 255 |
label_subproject_plural: サブプロジェクト |
| 256 | 256 |
label_min_max_length: 最小値 - 最大値の長さ |
| 257 | 257 |
label_list: リストから選択 |
| 258 | ||
| 259 |
# need to be translated |
|
| 260 |
label_user_list: User List |
|
| 261 | ||
| 258 | 262 |
label_date: 日付 |
| 259 | 263 |
label_integer: 整数 |
| 260 | 264 |
label_boolean: 真偽値 |
| lang/he.yml (working copy) | ||
|---|---|---|
| 259 | 259 |
label_subproject_plural: תת-פרויקטים |
| 260 | 260 |
label_min_max_length: אורך מינימאלי - מקסימאלי |
| 261 | 261 |
label_list: רשימה |
| 262 | ||
| 263 |
# need to be translated |
|
| 264 |
label_user_list: User List |
|
| 265 | ||
| 262 | 266 |
label_date: תאריך |
| 263 | 267 |
label_integer: מספר שלם |
| 264 | 268 |
label_boolean: ערך בוליאני |
| lang/fi.yml (working copy) | ||
|---|---|---|
| 274 | 274 |
label_subproject_plural: Aliprojektit |
| 275 | 275 |
label_min_max_length: Min - Max pituudet |
| 276 | 276 |
label_list: Lista |
| 277 | ||
| 278 |
# need to be translated |
|
| 279 |
label_user_list: User List |
|
| 280 | ||
| 277 | 281 |
label_date: Päivä |
| 278 | 282 |
label_integer: Kokonaisluku |
| 279 | 283 |
label_float: Liukuluku |
| lang/fr.yml (working copy) | ||
|---|---|---|
| 356 | 356 |
label_and_its_subprojects: %s et ses sous-projets |
| 357 | 357 |
label_min_max_length: Longueurs mini - maxi |
| 358 | 358 |
label_list: Liste |
| 359 | ||
| 360 |
# need to be translated |
|
| 361 |
label_user_list: User List |
|
| 362 | ||
| 359 | 363 |
label_date: Date |
| 360 | 364 |
label_integer: Entier |
| 361 | 365 |
label_float: Nombre décimal |
| lang/nl.yml (working copy) | ||
|---|---|---|
| 254 | 254 |
label_subproject_plural: Subprojecten |
| 255 | 255 |
label_min_max_length: Min-max lengte |
| 256 | 256 |
label_list: Lijst |
| 257 | ||
| 258 |
# need to be translated |
|
| 259 |
label_user_list: User List |
|
| 260 | ||
| 257 | 261 |
label_date: Datum |
| 258 | 262 |
label_integer: Integer |
| 259 | 263 |
label_boolean: Boolean |
| lang/pl.yml (working copy) | ||
|---|---|---|
| 376 | 376 |
label_ldap_authentication: Autoryzacja LDAP |
| 377 | 377 |
label_less_than_ago: dni mniej |
| 378 | 378 |
label_list: Lista |
| 379 | ||
| 380 |
# need to be translated |
|
| 381 |
label_user_list: User List |
|
| 382 | ||
| 379 | 383 |
label_loading: Ładowanie... |
| 380 | 384 |
label_logged_as: Zalogowany jako |
| 381 | 385 |
label_login: Login |
| lang/th.yml (working copy) | ||
|---|---|---|
| 296 | 296 |
label_subproject_plural: โครงการย่อย |
| 297 | 297 |
label_min_max_length: สั้น-ยาว สุดที่ |
| 298 | 298 |
label_list: รายการ |
| 299 | ||
| 300 |
# need to be translated |
|
| 301 |
label_user_list: User List |
|
| 302 | ||
| 299 | 303 |
label_date: วันที่ |
| 300 | 304 |
label_integer: จำนวนเต็ม |
| 301 | 305 |
label_float: จำนวนจริง |
| lang/hu.yml (working copy) | ||
|---|---|---|
| 295 | 295 |
label_and_its_subprojects: %s és alprojektjei |
| 296 | 296 |
label_min_max_length: Min - Max hossz |
| 297 | 297 |
label_list: Lista |
| 298 | ||
| 299 |
# need to be translated |
|
| 300 |
label_user_list: User List |
|
| 301 | ||
| 298 | 302 |
label_date: Dátum |
| 299 | 303 |
label_integer: Egész |
| 300 | 304 |
label_float: Lebegőpontos |
| lang/no.yml (working copy) | ||
|---|---|---|
| 298 | 298 |
label_and_its_subprojects: %s og dets underprosjekter |
| 299 | 299 |
label_min_max_length: Min.-maks. lengde |
| 300 | 300 |
label_list: Liste |
| 301 | ||
| 302 |
# need to be translated |
|
| 303 |
label_user_list: User List |
|
| 304 | ||
| 301 | 305 |
label_date: Dato |
| 302 | 306 |
label_integer: Heltall |
| 303 | 307 |
label_float: Kommatall |