Commit 250d3d380cd5c5c8a0e2f9744e19116d23ea5574

Authored by Fabio Teixeira
Committed by David Silva
1 parent 1a947629

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>
lib/database_helper.rb
@@ -3,8 +3,7 @@ module DatabaseHelper @@ -3,8 +3,7 @@ module DatabaseHelper
3 FIELD_NAME = "database_description_id" 3 FIELD_NAME = "database_description_id"
4 COLLUMN_NAME = { 4 COLLUMN_NAME = {
5 name: "name", 5 name: "name",
6 - version: "version",  
7 - operating_system: "operating_system" 6 + version: "version"
8 } 7 }
9 8
10 def self.valid_database? database 9 def self.valid_database? database
@@ -30,7 +29,6 @@ module DatabaseHelper @@ -30,7 +29,6 @@ module DatabaseHelper
30 new_database[:database_description_id] 29 new_database[:database_description_id]
31 30
32 database.version = new_database[:version] 31 database.version = new_database[:version]
33 - database.operating_system = new_database[:operating_system]  
34 list_databases << database 32 list_databases << database
35 end 33 end
36 end 34 end
@@ -48,21 +46,21 @@ module DatabaseHelper @@ -48,21 +46,21 @@ module DatabaseHelper
48 true 46 true
49 end 47 end
50 48
51 - def self.database_as_tables(list_databases) 49 + def self.database_as_tables(list_databases, disabled=false)
52 return database_html_structure( 50 return database_html_structure(
53 - {:database_description_id => "", :version => "", :operating_system => ""} 51 + {:database_description_id => "", :version => ""}, disabled
54 ) if list_databases.nil? 52 ) if list_databases.nil?
55 53
56 lambdas_list = [] 54 lambdas_list = []
57 55
58 list_databases.each do |database| 56 list_databases.each do |database|
59 - lambdas_list << database_html_structure(database) 57 + lambdas_list << database_html_structure(database, disabled)
60 end 58 end
61 59
62 lambdas_list 60 lambdas_list
63 end 61 end
64 62
65 - def self.database_html_structure(database_data) 63 + def self.database_html_structure(database_data, disabled)
66 database_id = database_data[:database_description_id] 64 database_id = database_data[:database_description_id]
67 database_name = if database_data[:database_description_id].blank? 65 database_name = if database_data[:database_description_id].blank?
68 "" 66 ""
@@ -93,7 +91,7 @@ module DatabaseHelper @@ -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 end 95 end
98 96
99 def self.add_dynamic_table 97 def self.add_dynamic_table
lib/dynamic_table_helper.rb
@@ -9,11 +9,12 @@ module DynamicTableHelper @@ -9,11 +9,12 @@ module DynamicTableHelper
9 LABEL_TEXT = { 9 LABEL_TEXT = {
10 :name => _("Name"), 10 :name => _("Name"),
11 :version => _("Version"), 11 :version => _("Version"),
12 - :operating_system => _("Operating system"),  
13 :license => _("License") 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 Proc::new do 18 Proc::new do
18 content_tag :table , DynamicTableHelper.generate_table_lines(data), :class => "dynamic-table" 19 content_tag :table , DynamicTableHelper.generate_table_lines(data), :class => "dynamic-table"
19 end 20 end
@@ -46,7 +47,7 @@ module DynamicTableHelper @@ -46,7 +47,7 @@ module DynamicTableHelper
46 content_tag :td, label_tag(label) 47 content_tag :td, label_tag(label)
47 end 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 html_options = 51 html_options =
51 if autocomplete 52 if autocomplete
52 { 53 {
@@ -57,6 +58,7 @@ module DynamicTableHelper @@ -57,6 +58,7 @@ module DynamicTableHelper
57 {} 58 {}
58 end 59 end
59 60
  61 + html_options[:disabled] = @disabled
60 if autocomplete 62 if autocomplete
61 content_tag :td, text_field_tag("#{@model}_autocomplete", value, html_options) 63 content_tag :td, text_field_tag("#{@model}_autocomplete", value, html_options)
62 else 64 else
@@ -66,7 +68,9 @@ module DynamicTableHelper @@ -66,7 +68,9 @@ module DynamicTableHelper
66 68
67 def self.hidden_collumn delete=false, hidden_data=false 69 def self.hidden_collumn delete=false, hidden_data=false
68 value = 70 value =
69 - if delete 71 + if @disabled
  72 + nil
  73 + elsif delete
70 button_without_text( 74 button_without_text(
71 :delete, _('Delete'), "#" , :class=>"delete-dynamic-table" 75 :delete, _('Delete'), "#" , :class=>"delete-dynamic-table"
72 ) 76 )
lib/software_language_helper.rb
@@ -3,8 +3,7 @@ module SoftwareLanguageHelper @@ -3,8 +3,7 @@ module SoftwareLanguageHelper
3 FIELD_NAME = "programming_language_id" 3 FIELD_NAME = "programming_language_id"
4 COLLUMN_NAME = { 4 COLLUMN_NAME = {
5 name: "name", 5 name: "name",
6 - version: "version",  
7 - operating_system: "operating_system" 6 + version: "version"
8 } 7 }
9 8
10 def self.valid_language? language 9 def self.valid_language? language
@@ -29,7 +28,6 @@ module SoftwareLanguageHelper @@ -29,7 +28,6 @@ module SoftwareLanguageHelper
29 language.programming_language = 28 language.programming_language =
30 ProgrammingLanguage.find(new_language[:programming_language_id]) 29 ProgrammingLanguage.find(new_language[:programming_language_id])
31 language.version = new_language[:version] 30 language.version = new_language[:version]
32 - language.operating_system = new_language[:operating_system]  
33 list_languages << language 31 list_languages << language
34 end 32 end
35 end 33 end
@@ -47,21 +45,21 @@ module SoftwareLanguageHelper @@ -47,21 +45,21 @@ module SoftwareLanguageHelper
47 true 45 true
48 end 46 end
49 47
50 - def self.language_as_tables(list_languages) 48 + def self.language_as_tables(list_languages, disabled=false)
51 return language_html_structure( 49 return language_html_structure(
52 - {:programming_language_id => "", :version => "", :operating_system => ""} 50 + {:programming_language_id => "", :version => ""}, disabled
53 ) if list_languages.nil? 51 ) if list_languages.nil?
54 52
55 lambdas_list = [] 53 lambdas_list = []
56 54
57 list_languages.each do |language| 55 list_languages.each do |language|
58 - lambdas_list << language_html_structure(language) 56 + lambdas_list << language_html_structure(language, disabled)
59 end 57 end
60 58
61 lambdas_list 59 lambdas_list
62 end 60 end
63 61
64 - def self.language_html_structure(language_data) 62 + def self.language_html_structure(language_data, disabled)
65 language_id = language_data[:programming_language_id] 63 language_id = language_data[:programming_language_id]
66 language_name = if language_data[:programming_language_id].blank? 64 language_name = if language_data[:programming_language_id].blank?
67 "" 65 ""
@@ -92,7 +90,7 @@ module SoftwareLanguageHelper @@ -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 end 94 end
97 95
98 def self.add_dynamic_table 96 def self.add_dynamic_table
views/profile/_software_tab.html.erb
@@ -50,11 +50,13 @@ @@ -50,11 +50,13 @@
50 <tr> 50 <tr>
51 <td> 51 <td>
52 <table class = "database-info dynamic-table"> 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 </table> 60 </table>
59 </td> 61 </td>
60 </tr> 62 </tr>
@@ -68,11 +70,13 @@ @@ -68,11 +70,13 @@
68 <tr> 70 <tr>
69 <td> 71 <td>
70 <table class = "language-info dynamic-table"> 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 </table> 80 </table>
77 </td> 81 </td>
78 </tr> 82 </tr>