diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml new file mode 100644 index 0000000..d7662e3 --- /dev/null +++ b/config/locales/pt-BR.yml @@ -0,0 +1,7 @@ +# Portuguese Brazilian strings go here for Rails i18n +pt-BR: + trackcontrol_create_tracker: "Criar tipo %{value}" + trackcontrol_show_tracker: "Exibir tipo %{value}" + notice_no_valid_trackers_available: "Nenhum tipo válido está disponível. Por favor procure o Administrador do Redmine para assistência." + trackcontrol_tracker_not_allowed: "não permitido" + error_no_tracker_in_project: "Não há um tipo de tarefa associado a este projeto. Favor verificar as configurações do projeto." diff --git a/lib/redmine_track_control/tracker_helper.rb b/lib/redmine_track_control/tracker_helper.rb index 2007f3b..589343c 100644 --- a/lib/redmine_track_control/tracker_helper.rb +++ b/lib/redmine_track_control/tracker_helper.rb @@ -17,11 +17,19 @@ def self.permission(tracker, permtype='create') # Gets the list of valid trackers for the project for the current user def self.valid_trackers_list(project, permtype='create') if project + ltrackers = project.trackers + if permtype == 'show' and Setting.display_subprojects_issues? + if ltrackers.empty? + ltrackers = project.rolled_up_trackers + end + end if project.enabled_modules.where(:name => "tracker_permissions").count == 1 - project.trackers.select{|t| User.current.allowed_to?(permission(t,permtype), project, :global => true)}.collect {|t| [t.name, t.id]} + ltrackers.select{|t| User.current.allowed_to?(permission(t,permtype), project, :global => true)}.collect {|t| [t.name, t.id]} else - project.trackers.collect {|t| [t.name, t.id]} + ltrackers.collect {|t| [t.name, t.id]} end + else + Tracker.all.collect {|t| t.id} end end @@ -37,11 +45,19 @@ def self.trackers_ids_by_role(role, permtype='create') # Gets the list of valid trackers for the project for the current user def self.valid_trackers_ids(project, permtype='create', usr=nil) if project + ltrackers = project.trackers + if permtype == 'show' and Setting.display_subprojects_issues? + if ltrackers.empty? + ltrackers = project.rolled_up_trackers + end + end if project.enabled_modules.where(:name => "tracker_permissions").count == 1 - project.trackers.select{|t| (usr || User.current).allowed_to?(permission(t,permtype), project, :global => true)}.map {|t| t.id} + ltrackers.select{|t| (usr || User.current).allowed_to?(permission(t,permtype), project, :global => true)}.map {|t| t.id} else - project.trackers.collect {|t| t.id} + ltrackers.collect {|t| t.id} end + else + Tracker.all.collect {|t| t.id} end end