Commit 250d3d380cd5c5c8a0e2f9744e19116d23ea5574
Committed by
David Silva
1 parent
1a947629
Exists in
master
and in
5 other branches
Remove operating system from software tab and reuse DynamicTable on it
Signed-off-by: Fabio Teixeira <fabio1079@gmail.com> Signed-off-by: Parley Martins <parley@outlook.com>
Showing
4 changed files
with
34 additions
and
30 deletions
Show diff stats
lib/database_helper.rb
| ... | ... | @@ -3,8 +3,7 @@ module DatabaseHelper |
| 3 | 3 | FIELD_NAME = "database_description_id" |
| 4 | 4 | COLLUMN_NAME = { |
| 5 | 5 | name: "name", |
| 6 | - version: "version", | |
| 7 | - operating_system: "operating_system" | |
| 6 | + version: "version" | |
| 8 | 7 | } |
| 9 | 8 | |
| 10 | 9 | def self.valid_database? database |
| ... | ... | @@ -30,7 +29,6 @@ module DatabaseHelper |
| 30 | 29 | new_database[:database_description_id] |
| 31 | 30 | |
| 32 | 31 | database.version = new_database[:version] |
| 33 | - database.operating_system = new_database[:operating_system] | |
| 34 | 32 | list_databases << database |
| 35 | 33 | end |
| 36 | 34 | end |
| ... | ... | @@ -48,21 +46,21 @@ module DatabaseHelper |
| 48 | 46 | true |
| 49 | 47 | end |
| 50 | 48 | |
| 51 | - def self.database_as_tables(list_databases) | |
| 49 | + def self.database_as_tables(list_databases, disabled=false) | |
| 52 | 50 | return database_html_structure( |
| 53 | - {:database_description_id => "", :version => "", :operating_system => ""} | |
| 51 | + {:database_description_id => "", :version => ""}, disabled | |
| 54 | 52 | ) if list_databases.nil? |
| 55 | 53 | |
| 56 | 54 | lambdas_list = [] |
| 57 | 55 | |
| 58 | 56 | list_databases.each do |database| |
| 59 | - lambdas_list << database_html_structure(database) | |
| 57 | + lambdas_list << database_html_structure(database, disabled) | |
| 60 | 58 | end |
| 61 | 59 | |
| 62 | 60 | lambdas_list |
| 63 | 61 | end |
| 64 | 62 | |
| 65 | - def self.database_html_structure(database_data) | |
| 63 | + def self.database_html_structure(database_data, disabled) | |
| 66 | 64 | database_id = database_data[:database_description_id] |
| 67 | 65 | database_name = if database_data[:database_description_id].blank? |
| 68 | 66 | "" |
| ... | ... | @@ -93,7 +91,7 @@ module DatabaseHelper |
| 93 | 91 | } |
| 94 | 92 | } |
| 95 | 93 | |
| 96 | - DynamicTableHelper.table_html_structure(data) | |
| 94 | + DynamicTableHelper.table_html_structure(data, disabled) | |
| 97 | 95 | end |
| 98 | 96 | |
| 99 | 97 | def self.add_dynamic_table | ... | ... |
lib/dynamic_table_helper.rb
| ... | ... | @@ -9,11 +9,12 @@ module DynamicTableHelper |
| 9 | 9 | LABEL_TEXT = { |
| 10 | 10 | :name => _("Name"), |
| 11 | 11 | :version => _("Version"), |
| 12 | - :operating_system => _("Operating system"), | |
| 13 | 12 | :license => _("License") |
| 14 | 13 | } |
| 14 | + @disabled = false | |
| 15 | 15 | |
| 16 | - def self.table_html_structure data={} | |
| 16 | + def self.table_html_structure data={}, disabled=false | |
| 17 | + @disabled = disabled | |
| 17 | 18 | Proc::new do |
| 18 | 19 | content_tag :table , DynamicTableHelper.generate_table_lines(data), :class => "dynamic-table" |
| 19 | 20 | end |
| ... | ... | @@ -46,7 +47,7 @@ module DynamicTableHelper |
| 46 | 47 | content_tag :td, label_tag(label) |
| 47 | 48 | end |
| 48 | 49 | |
| 49 | - def self.value_collumn value="", name="", autocomplete=false | |
| 50 | + def self.value_collumn value="", name="", autocomplete=false, disabled=false | |
| 50 | 51 | html_options = |
| 51 | 52 | if autocomplete |
| 52 | 53 | { |
| ... | ... | @@ -57,6 +58,7 @@ module DynamicTableHelper |
| 57 | 58 | {} |
| 58 | 59 | end |
| 59 | 60 | |
| 61 | + html_options[:disabled] = @disabled | |
| 60 | 62 | if autocomplete |
| 61 | 63 | content_tag :td, text_field_tag("#{@model}_autocomplete", value, html_options) |
| 62 | 64 | else |
| ... | ... | @@ -66,7 +68,9 @@ module DynamicTableHelper |
| 66 | 68 | |
| 67 | 69 | def self.hidden_collumn delete=false, hidden_data=false |
| 68 | 70 | value = |
| 69 | - if delete | |
| 71 | + if @disabled | |
| 72 | + nil | |
| 73 | + elsif delete | |
| 70 | 74 | button_without_text( |
| 71 | 75 | :delete, _('Delete'), "#" , :class=>"delete-dynamic-table" |
| 72 | 76 | ) | ... | ... |
lib/software_language_helper.rb
| ... | ... | @@ -3,8 +3,7 @@ module SoftwareLanguageHelper |
| 3 | 3 | FIELD_NAME = "programming_language_id" |
| 4 | 4 | COLLUMN_NAME = { |
| 5 | 5 | name: "name", |
| 6 | - version: "version", | |
| 7 | - operating_system: "operating_system" | |
| 6 | + version: "version" | |
| 8 | 7 | } |
| 9 | 8 | |
| 10 | 9 | def self.valid_language? language |
| ... | ... | @@ -29,7 +28,6 @@ module SoftwareLanguageHelper |
| 29 | 28 | language.programming_language = |
| 30 | 29 | ProgrammingLanguage.find(new_language[:programming_language_id]) |
| 31 | 30 | language.version = new_language[:version] |
| 32 | - language.operating_system = new_language[:operating_system] | |
| 33 | 31 | list_languages << language |
| 34 | 32 | end |
| 35 | 33 | end |
| ... | ... | @@ -47,21 +45,21 @@ module SoftwareLanguageHelper |
| 47 | 45 | true |
| 48 | 46 | end |
| 49 | 47 | |
| 50 | - def self.language_as_tables(list_languages) | |
| 48 | + def self.language_as_tables(list_languages, disabled=false) | |
| 51 | 49 | return language_html_structure( |
| 52 | - {:programming_language_id => "", :version => "", :operating_system => ""} | |
| 50 | + {:programming_language_id => "", :version => ""}, disabled | |
| 53 | 51 | ) if list_languages.nil? |
| 54 | 52 | |
| 55 | 53 | lambdas_list = [] |
| 56 | 54 | |
| 57 | 55 | list_languages.each do |language| |
| 58 | - lambdas_list << language_html_structure(language) | |
| 56 | + lambdas_list << language_html_structure(language, disabled) | |
| 59 | 57 | end |
| 60 | 58 | |
| 61 | 59 | lambdas_list |
| 62 | 60 | end |
| 63 | 61 | |
| 64 | - def self.language_html_structure(language_data) | |
| 62 | + def self.language_html_structure(language_data, disabled) | |
| 65 | 63 | language_id = language_data[:programming_language_id] |
| 66 | 64 | language_name = if language_data[:programming_language_id].blank? |
| 67 | 65 | "" |
| ... | ... | @@ -92,7 +90,7 @@ module SoftwareLanguageHelper |
| 92 | 90 | } |
| 93 | 91 | } |
| 94 | 92 | |
| 95 | - DynamicTableHelper.table_html_structure(data) | |
| 93 | + DynamicTableHelper.table_html_structure(data, disabled) | |
| 96 | 94 | end |
| 97 | 95 | |
| 98 | 96 | def self.add_dynamic_table | ... | ... |
views/profile/_software_tab.html.erb
| ... | ... | @@ -50,11 +50,13 @@ |
| 50 | 50 | <tr> |
| 51 | 51 | <td> |
| 52 | 52 | <table class = "database-info dynamic-table"> |
| 53 | - <%= content_tag('tr', content_tag('td', _("Program Database")) + content_tag('td', '')) %> | |
| 54 | - <% profile.software_info.software_databases.each do |database| %> | |
| 55 | - <%= display_mpog_field(_('Name:'), DatabaseDescription.find(database.database_description_id), :name, true) %> | |
| 56 | - <%= display_mpog_field(_('Version:'), database, :version, true) %> | |
| 57 | - <% end %> | |
| 53 | + <%= content_tag('tr', content_tag('td', _("Software Databases")) + content_tag('td', '')) %> | |
| 54 | + <tr> <td> | |
| 55 | + <% databases = profile.software_info.software_databases %> | |
| 56 | + <% DatabaseHelper.database_as_tables(databases, true).each do |tab| %> | |
| 57 | + <%= tab.call %> | |
| 58 | + <%end%> | |
| 59 | + </td> </tr> | |
| 58 | 60 | </table> |
| 59 | 61 | </td> |
| 60 | 62 | </tr> |
| ... | ... | @@ -68,11 +70,13 @@ |
| 68 | 70 | <tr> |
| 69 | 71 | <td> |
| 70 | 72 | <table class = "language-info dynamic-table"> |
| 71 | - <%= content_tag('tr', content_tag('td', _("Programming Language")) + content_tag('td', '')) %> | |
| 72 | - <% profile.software_info.software_languages.each do |language| %> | |
| 73 | - <%= display_mpog_field(_('Name:'), language.programming_language , :name, true) %> | |
| 74 | - <%= display_mpog_field(_('Version:'), language, :version, true) %> | |
| 75 | - <% end %> | |
| 73 | + <%= content_tag('tr', content_tag('td', _("Software Languages")) + content_tag('td', '')) %> | |
| 74 | + <tr> <td> | |
| 75 | + <% languages = profile.software_info.software_languages %> | |
| 76 | + <% SoftwareLanguageHelper.language_as_tables(languages, true).each do |tab| %> | |
| 77 | + <%= tab.call %> | |
| 78 | + <%end%> | |
| 79 | + </td> </tr> | |
| 76 | 80 | </table> |
| 77 | 81 | </td> |
| 78 | 82 | </tr> | ... | ... |