[Git][noosfero/noosfero][master] 3 commits: Fixes price composition edit form

Rodrigo Souto gitlab at mg.gitlab.com
Mon Jan 30 13:06:09 BRST 2017


Rodrigo Souto pushed to branch master at Noosfero / noosfero


Commits:
bee51b03 by Gabriel Silva at 2017-01-18T19:14:59+00:00
Fixes price composition edit form

Signed-off-by: Gabriel Silva <gabriel93.silva at gmail.com>

- - - - -
925ff048 by Gabriel Silva at 2017-01-18T19:45:00+00:00
Fixes products block style

Signed-off-by: Gabriel Silva <gabriel93.silva at gmail.com>

- - - - -
114e6e46 by Rodrigo Souto at 2017-01-30T15:05:58+00:00
Merge branch 'products_price_composition' into 'master'

Products Plugin: fixes price composition edit form

Closes #237

See merge request !1094
- - - - -


5 changed files:

- plugins/products/lib/products_plugin/products_helper.rb
- plugins/products/public/javascripts/manage-products.js
- plugins/products/public/stylesheets/blocks/products.scss
- plugins/products/views/products_plugin/page/_manage_product_details.html.erb
- plugins/products/views/products_plugin/page/_price_composition_bar.html.erb


Changes:

=====================================
plugins/products/lib/products_plugin/products_helper.rb
=====================================
--- a/plugins/products/lib/products_plugin/products_helper.rb
+++ b/plugins/products/lib/products_plugin/products_helper.rb
@@ -302,8 +302,8 @@ module ProductsPlugin::ProductsHelper
     prompt_msg = _('Insert the name of the new cost:')
     error_msg = _('Something went wrong. Please, try again')
     select_tag('price_details[][production_cost_id]',
-               '<option value="" disabled="disabled">' + _('Select...') + '</option>' +
-               options_for_select(product.available_production_costs.map {|item| [truncate(item.name, {length: 10, omission: '...'}), item.id]} + [[_('Other cost'), '']], selected),
+               ('<option value="" disabled="disabled">' + _('Select...') + '</option>' +
+               options_for_select(product.available_production_costs.map {|item| [truncate(item.name, {length: 10, omission: '...'}), item.id]} + [[_('Other cost'), '']], selected)).html_safe,
                {class: 'production-cost-selection',
                 onchange: "productionCostTypeChange(this, '#{url}', '#{prompt_msg}', '#{error_msg}')"})
   end
@@ -313,7 +313,7 @@ module ProductsPlugin::ProductsHelper
     production_cost = args[:production_cost_value] || product.formatted_value(:total_production_cost)
     product_price = args[:product_price] || product.formatted_value(:price)
 
-    _("%{currency} %{production_cost} of %{currency} %{product_price}") % {currency: currency, production_cost: content_tag('span', production_cost, class: 'production_cost'), product_price: content_tag('span', product_price, class: 'product_price')}
+    _("%{currency} %{production_cost} of %{currency} %{product_price}").html_safe % {currency: currency, production_cost: content_tag('span', production_cost, class: 'production_cost'), product_price: content_tag('span', product_price, class: 'product_price')}
   end
 
 end


=====================================
plugins/products/public/javascripts/manage-products.js
=====================================
--- a/plugins/products/public/javascripts/manage-products.js
+++ b/plugins/products/public/javascripts/manage-products.js
@@ -105,8 +105,8 @@ function enablePriceDetailSubmit() {
 
 function calculateValuesForBar() {
   jQuery('.cancel-price-details').addClass('form-changed');
-  var product_price = parseFloat(jQuery('form #product_price').val());
-  var total_cost = parseFloat(jQuery('form #product_inputs_cost').val());
+  var product_price = parseFloat(jQuery('form #product_price').val()) || 0.0;
+  var total_cost = parseFloat(jQuery('form #product_inputs_cost').val()) || 0.0;
 
   jQuery('form .price-details-price').each(function() {
     var this_val = parseFloat(jQuery(this).val().replace(currency_format.separator, '.')) || 0;


=====================================
plugins/products/public/stylesheets/blocks/products.scss
=====================================
--- a/plugins/products/public/stylesheets/blocks/products.scss
+++ b/plugins/products/public/stylesheets/blocks/products.scss
@@ -1,32 +1,38 @@
-
-.products-block ul {
+#content .products-plugin_products-block ul {
   margin: 0px;
   padding: 0px 5px 0px 0px;
   display: table;
   border-spacing: 5px;
+
+  li {
+    margin: 0px;
+    padding: 0px;
+    list-style: none;
+    list-style-image: none;
+    font-size: 12px;
+    height: 64px;
+    display: table-row;
+
+    a {
+      background-repeat: no-repeat;
+      background-position: 5px 50%;
+      display: table-cell;
+      vertical-align: middle;
+      padding: 5px 2px 5px 65px;
+      height: 50px;
+      overflow: hidden;
+      text-decoration: none;
+
+      &:hover {
+        border-radius: 3px;
+        background-color: #ccc;
+        color: #fff;
+        box-shadow: 2px 3px 4px #aaa;
+      }
+    }
+  }
 }
-#content .products-block li {
-  margin: 0px;
-  padding: 0px;
-  list-style: none;
-  list-style-image: none;
-  font-size: 12px;
-  height: 64px;
-  display: table-row;
-}
-#content .products-block li a {
-  background-repeat: no-repeat;
-  background-position: 5px 50%;
-  display: table-cell;
-  vertical-align: middle;
-  padding: 5px 2px 5px 60px;
-  height: 50px;
-  overflow: hidden;
-  text-decoration: none;
-}
-.msie #content .products-block li a {
+
+.msie #content .products-plugin_products-block li a {
   display: block;
 }
-#content .products-block li a:hover {
-  color: #fff;
-}


=====================================
plugins/products/views/products_plugin/page/_manage_product_details.html.erb
=====================================
--- a/plugins/products/views/products_plugin/page/_manage_product_details.html.erb
+++ b/plugins/products/views/products_plugin/page/_manage_product_details.html.erb
@@ -1,5 +1,5 @@
 <div id='price-composition-bar'>
-  <%= render :partial => 'manage_products/price_composition_bar' %>
+  <%= render :partial => 'price_composition_bar' %>
 </div>
 
 <%= form_tag({:action => 'manage_product_details'}, :method => 'post', :id => 'manage-product-details-form') do %>
@@ -14,7 +14,7 @@
           <small><%= _('This value is composed by the total value of registered inputs') %></small>
         </td>
       </tr>
-      <%= render :partial => 'manage_products/edit_price_details', :locals => {:price_details => @product.price_details} %>
+      <%= render :partial => 'edit_price_details', :locals => {:price_details => @product.price_details} %>
     </table>
   </div>
 


=====================================
plugins/products/views/products_plugin/page/_price_composition_bar.html.erb
=====================================
--- a/plugins/products/views/products_plugin/page/_price_composition_bar.html.erb
+++ b/plugins/products/views/products_plugin/page/_price_composition_bar.html.erb
@@ -1,7 +1,7 @@
 <%= javascript_tag do %>
   var value = <%= @product.price_description_percentage %>;
   var total_cost = <%= @product.total_production_cost %>;
-  var price = '<%= @product.formatted_value(:price) %>';
+  var price = <%= @product.formatted_value(:price) || 0 %>;
   var described = false;
   var currency_format = { separator : '<%= environment.currency_separator %>', delimiter : '<%= environment.currency_delimiter %>', unit : '<%= environment.currency_unit %>' };
   if (<%= @product.price_described? %>) {



View it on GitLab: https://gitlab.com/noosfero/noosfero/compare/3ab16a93976a06c7d299b2ff96e6f003c141c934...114e6e462475d63b7da5dd5ff3243387186c0919
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.softwarelivre.org/pipermail/noosfero-dev/attachments/20170130/862cc8ca/attachment-0001.html>


More information about the Noosfero-dev mailing list