typus 3.0.11.rc3 → 3.0.11.rc4
Sign up to get free protection for your applications and to get access to all the features.
- data/app/assets/vendor/typus/javascripts/jquery.application.js +6 -0
- data/app/helpers/admin/display_helper.rb +2 -0
- data/app/helpers/admin/relationships_helper.rb +3 -0
- data/app/helpers/admin/sidebar_helper.rb +1 -1
- data/app/helpers/admin/table_helper.rb +6 -6
- data/app/views/admin/templates/_belongs_to_with_autocomplete.html.erb +1 -1
- data/app/views/admin/templates/_has_n.html.erb +2 -2
- data/app/views/admin/templates/_has_one.html.erb +2 -2
- data/config/locales/typus.pt-PT.models.yml +17 -0
- data/config/locales/typus.pt-PT.yml +83 -0
- data/lib/typus.rb +3 -2
- data/lib/typus/controller/associations.rb +1 -1
- data/lib/typus/controller/format.rb +1 -1
- data/lib/typus/version.rb +1 -1
- metadata +63 -64
@@ -18,6 +18,12 @@ $(document).ready(function() {
|
|
18
18
|
'type': 'iframe'
|
19
19
|
});
|
20
20
|
|
21
|
+
// This method is used by `text_with_ckeditor` template.
|
22
|
+
if ($('textarea.ckeditor').length > 0) {
|
23
|
+
var data = $('textarea');
|
24
|
+
$.each(data, function(i) { CKEDITOR.replace(data[i].id); });
|
25
|
+
}
|
26
|
+
|
21
27
|
});
|
22
28
|
|
23
29
|
function setConfirmUnload(on) {
|
@@ -46,6 +46,8 @@ module Admin
|
|
46
46
|
alias_method :display_position, :display_string
|
47
47
|
alias_method :display_integer, :display_string
|
48
48
|
alias_method :display_decimal, :display_string
|
49
|
+
alias_method :display_float, :display_string
|
50
|
+
alias_method :display_date, :display_datetime
|
49
51
|
|
50
52
|
end
|
51
53
|
end
|
@@ -38,6 +38,7 @@ module Admin
|
|
38
38
|
|
39
39
|
render "admin/templates/has_n",
|
40
40
|
:association_name => @association_name,
|
41
|
+
:association_title => @model_to_relate.model_name.human.pluralize,
|
41
42
|
:add_new => build_add_new(options),
|
42
43
|
:form => form,
|
43
44
|
:table => build_relationship_table
|
@@ -65,6 +66,7 @@ module Admin
|
|
65
66
|
|
66
67
|
render "admin/templates/has_n",
|
67
68
|
:association_name => @association_name,
|
69
|
+
:association_title => @model_to_relate.model_name.human.pluralize,
|
68
70
|
:add_new => build_add_new,
|
69
71
|
:form => form,
|
70
72
|
:table => build_relationship_table
|
@@ -134,6 +136,7 @@ module Admin
|
|
134
136
|
|
135
137
|
render "admin/templates/has_one",
|
136
138
|
:association_name => @association_name,
|
139
|
+
:association_title => @model_to_relate.model_name.human,
|
137
140
|
:add_new => @items.empty? ? build_add_new(options) : nil,
|
138
141
|
:table => build_relationship_table
|
139
142
|
end
|
@@ -5,7 +5,7 @@ module Admin
|
|
5
5
|
resources = ActiveSupport::OrderedHash.new
|
6
6
|
app_name = @resource.typus_application
|
7
7
|
|
8
|
-
admin_user.application(app_name)
|
8
|
+
admin_user.application(app_name) {|a,b| a.typus_constantize.model_name.human <=> b.typus_constantize.model_name.human}.each do |resource|
|
9
9
|
klass = resource.typus_constantize
|
10
10
|
|
11
11
|
resources[resource] = default_actions(klass)
|
@@ -85,15 +85,15 @@ module Admin
|
|
85
85
|
(raw_content = item.send(attribute)).present? ? truncate(raw_content) : "—".html_safe
|
86
86
|
end
|
87
87
|
|
88
|
-
def
|
88
|
+
def table_string_field(attribute, item)
|
89
89
|
(raw_content = item.send(attribute)).present? ? raw_content : "—".html_safe
|
90
90
|
end
|
91
91
|
|
92
|
-
alias :table_float_field :
|
93
|
-
alias :table_integer_field :
|
94
|
-
alias :table_decimal_field :
|
95
|
-
alias :table_virtual_field :
|
96
|
-
alias :
|
92
|
+
alias :table_float_field :table_string_field
|
93
|
+
alias :table_integer_field :table_string_field
|
94
|
+
alias :table_decimal_field :table_string_field
|
95
|
+
alias :table_virtual_field :table_string_field
|
96
|
+
alias :table_password_field :table_string_field
|
97
97
|
|
98
98
|
def table_selector_field(attribute, item)
|
99
99
|
item.mapping(attribute)
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<% label = "#{@item.class.model_name.underscore.gsub("/","_")}_#{related_fk}" %>
|
3
3
|
<script type="text/javascript">
|
4
4
|
$(document).ready(function () {
|
5
|
-
$("#tokenInput_for_<%= related_fk %>").tokenInput("/admin/<%= association.
|
5
|
+
$("#tokenInput_for_<%= related_fk %>").tokenInput("/admin/<%= association.class_name.tableize %>/autocomplete", {
|
6
6
|
hintText: "",
|
7
7
|
queryParam: 'term',
|
8
8
|
tokenLimit: 1,
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="box_relationships" id="<%= association_name %>">
|
2
2
|
|
3
3
|
<h2>
|
4
|
-
<%=
|
4
|
+
<%= association_title %>
|
5
5
|
<small><%= add_new %></small>
|
6
6
|
</h2>
|
7
7
|
|
@@ -11,7 +11,7 @@
|
|
11
11
|
<%= table %>
|
12
12
|
<%= will_paginate(@items, Typus.pagination.merge(:anchor => association_name)) %>
|
13
13
|
<% else %>
|
14
|
-
<p><%= Typus::I18n.t("No %{resources} found.", :resources =>
|
14
|
+
<p><%= Typus::I18n.t("No %{resources} found.", :resources => association_title.downcase) %></p>
|
15
15
|
<% end %>
|
16
16
|
|
17
17
|
</div>
|
@@ -1,14 +1,14 @@
|
|
1
1
|
<div class="box_relationships" id="<%= association_name %>">
|
2
2
|
|
3
3
|
<h2>
|
4
|
-
<%=
|
4
|
+
<%= association_title %>
|
5
5
|
<small><%= add_new %></small>
|
6
6
|
</h2>
|
7
7
|
|
8
8
|
<% if @items.any? -%>
|
9
9
|
<%= table %>
|
10
10
|
<% else %>
|
11
|
-
<p><%= Typus::I18n.t("No %{resources} found.", :resources =>
|
11
|
+
<p><%= Typus::I18n.t("No %{resources} found.", :resources => association_title.downcase) %></p>
|
12
12
|
<% end %>
|
13
13
|
|
14
14
|
</div>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# Portuguese (pt-PT) translations for Typus by:
|
2
|
+
# - Nuno Baldaia <http://nunobaldaia.com/>
|
3
|
+
|
4
|
+
"pt-PT":
|
5
|
+
activerecord:
|
6
|
+
models:
|
7
|
+
admin_user: "Utilizador"
|
8
|
+
attributes:
|
9
|
+
admin_user:
|
10
|
+
email:
|
11
|
+
first_name: "Primeiro nome"
|
12
|
+
last_name: "Último nome"
|
13
|
+
locale: "Linguagem"
|
14
|
+
password: "Senha"
|
15
|
+
password_confirmation: "Confirmação de senha"
|
16
|
+
role: "Função no sistema"
|
17
|
+
status: "Estado"
|
@@ -0,0 +1,83 @@
|
|
1
|
+
# Portuguese (pt-PT) translations for Typus by:
|
2
|
+
# - Nuno Baldaia <http://nunobaldaia.com/>
|
3
|
+
|
4
|
+
"pt-PT":
|
5
|
+
|
6
|
+
"Actions": "Acções"
|
7
|
+
"Active": "Activo"
|
8
|
+
"Add": "Adicionar"
|
9
|
+
"Add new": "Adicionar novo"
|
10
|
+
"Are you sure?": "Tem a certeza?"
|
11
|
+
"Are you sure you want to sign out and end your session?": "Tem certeza que quer sair e encerrar sua sessão?"
|
12
|
+
|
13
|
+
"Change %{attribute}?": "Mudar %{attribute}?"
|
14
|
+
"Create %{resource}": "Criar %{resource}"
|
15
|
+
|
16
|
+
"Dashboard": "Painel"
|
17
|
+
"Down": "Descer"
|
18
|
+
|
19
|
+
"Edit": "Editar"
|
20
|
+
"Edit %{resource}": "Editar %{resource}"
|
21
|
+
"Enter your email below to create the first user": "Introduza o seu email para criar o primeiro utilizador"
|
22
|
+
|
23
|
+
"False": "Falso"
|
24
|
+
"Filter": "Filtrar"
|
25
|
+
|
26
|
+
"I remember my password": "Lembro-me da minha senha"
|
27
|
+
"If you didn't request a password update, you can ignore this message": "Se não pediu uma renovação de senha, por favor ignore esta mensagem."
|
28
|
+
"If you have made any changes to the fields without clicking the Save/Update entry button, your changes will be lost": "Se fez alterações nos campos e não clicou no botão de Salvar/Atualizar, as suas alterações serão perdidas"
|
29
|
+
"Inactive": "Inactivo"
|
30
|
+
|
31
|
+
"Last few days": "Últimos dias"
|
32
|
+
"Last 30 days": "Últimos 30 dias"
|
33
|
+
"Last 7 days": "Últimos 7 dias"
|
34
|
+
"List": "Lista"
|
35
|
+
"Logged as": "Logado como"
|
36
|
+
"Login": "Login"
|
37
|
+
|
38
|
+
"New": "Novo"
|
39
|
+
"New %{resource}": "Novo %{resource}"
|
40
|
+
"Next": "Próximo"
|
41
|
+
"No %{resources} found": "Nenhum resultado encontrado em %{resources}"
|
42
|
+
|
43
|
+
"Password recovery link sent to your email": "Foi enviado para o seu email um link para recuperação da senha."
|
44
|
+
"Previous": "Anterior"
|
45
|
+
|
46
|
+
"Record moved %{to}": "Registro movido %{to}."
|
47
|
+
"Recover password": "Recuperar senha"
|
48
|
+
"Remove": "Remover"
|
49
|
+
"Remove %{resource}?": "Remover %{resource}?"
|
50
|
+
"Reset password": "Trocar senha"
|
51
|
+
"Resources": "Recursos"
|
52
|
+
|
53
|
+
"Save %{resource}": "Salvar %{resource}"
|
54
|
+
"Search": "Procurar"
|
55
|
+
"Show": "Mostrar"
|
56
|
+
"Show all dates": "Mostrar todas as datas"
|
57
|
+
"Show by %{attribute}": "Mostrar por %{attribute}"
|
58
|
+
"Show %{resource}": "Mostrar %{resource}"
|
59
|
+
"Sign in": "Entrar"
|
60
|
+
"Sign out": "Sair"
|
61
|
+
"Sign up": "Criar conta"
|
62
|
+
"System Users Administration": "Administração de utilizadores de sistema"
|
63
|
+
|
64
|
+
"Today": "Hoje"
|
65
|
+
"True": "Verdadeiro"
|
66
|
+
|
67
|
+
"Unrelate": "Desvincular"
|
68
|
+
"Up": "Subir"
|
69
|
+
|
70
|
+
"View all %{attribute}": "Ver todos %{attribute}"
|
71
|
+
"View site": "Ver site"
|
72
|
+
|
73
|
+
"You can't toggle your status": "Não pode trocar o seu estado."
|
74
|
+
"You can update your password at": "Pode atualizar a sua senha em"
|
75
|
+
"You can't change your role": "Não pode mudar sua própria função no sistema."
|
76
|
+
|
77
|
+
"%{errors} prohibited this page from being saved:":
|
78
|
+
"%{model} successfully created": "%{model} criado com sucesso."
|
79
|
+
"%{model} successfully removed": "%{model} removido com sucesso."
|
80
|
+
"%{model} successfully updated": "%{model} atualizado com sucesso."
|
81
|
+
|
82
|
+
"Top": "Topo"
|
83
|
+
"Bottom": "Fundo"
|
data/lib/typus.rb
CHANGED
@@ -137,7 +137,7 @@ module Typus
|
|
137
137
|
|
138
138
|
# Lists modules of an application.
|
139
139
|
def application(name)
|
140
|
-
Typus::Configuration.config.map { |i| i.first if i.last["application"] == name }.compact.uniq
|
140
|
+
Typus::Configuration.config.map { |i| i.first if i.last["application"] == name }.compact.uniq
|
141
141
|
end
|
142
142
|
|
143
143
|
# Lists models from the configuration file.
|
@@ -175,7 +175,8 @@ module Typus
|
|
175
175
|
"Français" => "fr",
|
176
176
|
"Magyar" => "hu",
|
177
177
|
"Italiano" => "It",
|
178
|
-
"Portuguese" => "pt-
|
178
|
+
"Portuguese" => "pt-PT",
|
179
|
+
"Brazilian Portuguese" => "pt-BR",
|
179
180
|
"Russian" => "ru",
|
180
181
|
"中文" => "zh-CN" }
|
181
182
|
end
|
@@ -62,7 +62,7 @@ module Typus
|
|
62
62
|
if worked
|
63
63
|
notice = Typus::I18n.t("%{model} successfully updated.", :model => item_class.model_name.human)
|
64
64
|
else
|
65
|
-
alert = item.
|
65
|
+
alert = item.errors.full_messages
|
66
66
|
end
|
67
67
|
|
68
68
|
redirect_to :back, :notice => notice, :alert => alert
|
@@ -28,7 +28,7 @@ module Typus
|
|
28
28
|
|
29
29
|
options = { :conditions => @conditions, :batch_size => 1000 }
|
30
30
|
|
31
|
-
::FasterCSV.open(filename, 'w'
|
31
|
+
::FasterCSV.open(filename, 'w') do |csv|
|
32
32
|
csv << fields.keys
|
33
33
|
@resource.find_in_batches(options) do |records|
|
34
34
|
records.each do |record|
|
data/lib/typus/version.rb
CHANGED
metadata
CHANGED
@@ -1,82 +1,80 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: typus
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 3.0.11.rc4
|
4
5
|
prerelease: 7
|
5
|
-
version: 3.0.11.rc3
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Francesc Esplugas
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
dependencies:
|
15
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2011-06-27 00:00:00.000000000 +02:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
16
|
name: bcrypt-ruby
|
17
|
-
|
18
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
17
|
+
requirement: &2154164760 !ruby/object:Gem::Requirement
|
19
18
|
none: false
|
20
|
-
requirements:
|
21
|
-
- -
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version:
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '0'
|
24
23
|
type: :runtime
|
25
|
-
version_requirements: *id001
|
26
|
-
- !ruby/object:Gem::Dependency
|
27
|
-
name: fastercsv
|
28
24
|
prerelease: false
|
29
|
-
|
25
|
+
version_requirements: *2154164760
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: fastercsv
|
28
|
+
requirement: &2154163540 !ruby/object:Gem::Requirement
|
30
29
|
none: false
|
31
|
-
requirements:
|
30
|
+
requirements:
|
32
31
|
- - ~>
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version:
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.5'
|
35
34
|
type: :runtime
|
36
|
-
version_requirements: *id002
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
name: rails
|
39
35
|
prerelease: false
|
40
|
-
|
36
|
+
version_requirements: *2154163540
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: rails
|
39
|
+
requirement: &2154162160 !ruby/object:Gem::Requirement
|
41
40
|
none: false
|
42
|
-
requirements:
|
41
|
+
requirements:
|
43
42
|
- - ~>
|
44
|
-
- !ruby/object:Gem::Version
|
43
|
+
- !ruby/object:Gem::Version
|
45
44
|
version: 3.0.8
|
46
45
|
type: :runtime
|
47
|
-
version_requirements: *id003
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: render_inheritable
|
50
46
|
prerelease: false
|
51
|
-
|
47
|
+
version_requirements: *2154162160
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: render_inheritable
|
50
|
+
requirement: &2154161560 !ruby/object:Gem::Requirement
|
52
51
|
none: false
|
53
|
-
requirements:
|
54
|
-
- -
|
55
|
-
- !ruby/object:Gem::Version
|
56
|
-
version:
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
57
56
|
type: :runtime
|
58
|
-
version_requirements: *id004
|
59
|
-
- !ruby/object:Gem::Dependency
|
60
|
-
name: will_paginate
|
61
57
|
prerelease: false
|
62
|
-
|
58
|
+
version_requirements: *2154161560
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: will_paginate
|
61
|
+
requirement: &2154160520 !ruby/object:Gem::Requirement
|
63
62
|
none: false
|
64
|
-
requirements:
|
63
|
+
requirements:
|
65
64
|
- - ~>
|
66
|
-
- !ruby/object:Gem::Version
|
65
|
+
- !ruby/object:Gem::Version
|
67
66
|
version: 3.0.pre2
|
68
67
|
type: :runtime
|
69
|
-
|
70
|
-
|
71
|
-
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: *2154160520
|
70
|
+
description: Ruby on Rails Admin Panel (Engine) to allow trusted users edit structured
|
71
|
+
content.
|
72
|
+
email:
|
72
73
|
- core@typuscms.com
|
73
74
|
executables: []
|
74
|
-
|
75
75
|
extensions: []
|
76
|
-
|
77
76
|
extra_rdoc_files: []
|
78
|
-
|
79
|
-
files:
|
77
|
+
files:
|
80
78
|
- .gitignore
|
81
79
|
- Gemfile
|
82
80
|
- MIT-LICENSE
|
@@ -225,6 +223,8 @@ files:
|
|
225
223
|
- config/locales/typus.locale.yml.template
|
226
224
|
- config/locales/typus.pt-BR.models.yml
|
227
225
|
- config/locales/typus.pt-BR.yml
|
226
|
+
- config/locales/typus.pt-PT.models.yml
|
227
|
+
- config/locales/typus.pt-PT.yml
|
228
228
|
- config/locales/typus.ru.models.yml
|
229
229
|
- config/locales/typus.ru.yml
|
230
230
|
- config/locales/typus.zh-CN.models.yml
|
@@ -481,34 +481,33 @@ files:
|
|
481
481
|
- test/lib/typus_test.rb
|
482
482
|
- test/test_helper.rb
|
483
483
|
- typus.gemspec
|
484
|
+
has_rdoc: true
|
484
485
|
homepage: http://core.typuscms.com/
|
485
486
|
licenses: []
|
486
|
-
|
487
487
|
post_install_message:
|
488
488
|
rdoc_options: []
|
489
|
-
|
490
|
-
require_paths:
|
489
|
+
require_paths:
|
491
490
|
- lib
|
492
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
491
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
493
492
|
none: false
|
494
|
-
requirements:
|
495
|
-
- -
|
496
|
-
- !ruby/object:Gem::Version
|
497
|
-
version:
|
498
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
493
|
+
requirements:
|
494
|
+
- - ! '>='
|
495
|
+
- !ruby/object:Gem::Version
|
496
|
+
version: '0'
|
497
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
499
498
|
none: false
|
500
|
-
requirements:
|
501
|
-
- -
|
502
|
-
- !ruby/object:Gem::Version
|
499
|
+
requirements:
|
500
|
+
- - ! '>'
|
501
|
+
- !ruby/object:Gem::Version
|
503
502
|
version: 1.3.1
|
504
503
|
requirements: []
|
505
|
-
|
506
504
|
rubyforge_project: typus
|
507
|
-
rubygems_version: 1.
|
505
|
+
rubygems_version: 1.6.2
|
508
506
|
signing_key:
|
509
507
|
specification_version: 3
|
510
|
-
summary: Effortless backend interface for Ruby on Rails applications. (Admin scaffold
|
511
|
-
|
508
|
+
summary: Effortless backend interface for Ruby on Rails applications. (Admin scaffold
|
509
|
+
generator)
|
510
|
+
test_files:
|
512
511
|
- test/app/controllers/admin/account_controller_test.rb
|
513
512
|
- test/app/controllers/admin/assets_controller_test.rb
|
514
513
|
- test/app/controllers/admin/base_controller_test.rb
|