parsley/app/controllers/calculator_controller.rb

35 lines
732 B
Ruby
Raw Normal View History

2016-01-31 00:00:32 -06:00
class CalculatorController < ApplicationController
def index
end
def calculate
input = params[:input]
output_unit = params[:output_unit]
density = params[:density]
density = nil unless density.present?
2016-01-31 00:00:32 -06:00
data = {errors: [], output: ''}
2016-01-31 00:00:32 -06:00
begin
unit = UnitConversion.parse(input)
if output_unit.present?
unit = unit.convert(output_unit, density)
data[:output] = unit.to_s
else
data[:output] = unit.auto_unit.to_s
2016-01-31 00:00:32 -06:00
end
rescue UnitConversion::UnparseableUnitError => e
data[:errors] << e.message
2016-01-31 00:00:32 -06:00
end
render json: data
end
def ingredient_search
@ingredients = Ingredient.has_density.search(params[:query]).order(:name)
end
2016-01-31 00:00:32 -06:00
end