100 lines
4.4 KiB
Ruby
100 lines
4.4 KiB
Ruby
module ApplicationHelper
|
|
|
|
# define left menu
|
|
def menu
|
|
ret = ""
|
|
ret += create_menu_li("glyphicon glyphicon-home","Dashboard","/","welcome")
|
|
ret += create_menu_li("glyphicon glyphicon-list-alt","Faktury","/invoices","invoices")
|
|
ret += create_menu_li("glyphicon glyphicon-book","Klienci","/customers","customers")
|
|
ret += create_menu_li("glyphicon glyphicon-shopping-cart","Produkty","/products","products")
|
|
ret += create_menu_li("glyphicon glyphicon-book","Obsługa","/clients","clients")
|
|
ret += create_menu_li("glyphicon glyphicon-cog","Ustawienia","/settings/index","settings")
|
|
return raw(ret)
|
|
end
|
|
|
|
# create left menu <li> element
|
|
def create_menu_li(icon, name, link, controller_nmn)
|
|
if controller_name == controller_nmn
|
|
active = " class=\"current\""
|
|
else
|
|
active = ""
|
|
end
|
|
icn = icon.blank? ? "" : "<i class=\"" + icon + "\"></i> "
|
|
"<li#{active}><a href=\"#{link}\">#{icn}#{name}</a></li>"
|
|
end
|
|
|
|
# generate errors html
|
|
def errors_to_html(errors )
|
|
ret = '<div class="row"><div class="col-lg-12 col-md-12 panel-danger"><div class="content-box-header panel-heading"><div class="panel-title">'
|
|
ret += I18n.t("activerecord.errors.messages.record_invalid", errors: errors.count)
|
|
ret += '</div></div><div class="content-box-large box-with-header" style="background:#f9dddd"><ul>'
|
|
errors.full_messages.each do |msg|
|
|
ret += "<li>#{msg}</li>"
|
|
end
|
|
ret += "</ul></div></div></div>"
|
|
ret
|
|
end
|
|
|
|
# Change decimals to words in PLN
|
|
def decimal_to_word(dec)
|
|
singles = ["", " #{I18n.t('numbers.one')}", " #{I18n.t('numbers.two')}", " #{I18n.t('numbers.three')}", " #{I18n.t('numbers.four')}",
|
|
" #{I18n.t('numbers.five')}", " #{I18n.t('numbers.six')}", " #{I18n.t('numbers.seven')}", " #{I18n.t('numbers.eight')}", " #{I18n.t('numbers.nine')}"]
|
|
teens = ["", " #{I18n.t('numbers.eleven')}", " #{I18n.t('numbers.twelve')}", " #{I18n.t('numbers.thirteen')}", " #{I18n.t('numbers.fourteen')}",
|
|
" #{I18n.t('numbers.fifteen')}", " #{I18n.t('numbers.sixteen')}", " #{I18n.t('numbers.seventeen')}", " #{I18n.t('numbers.eighteen')}", " #{I18n.t('numbers.nineteen')}"]
|
|
tens = ["", " #{I18n.t('numbers.ten')}", " #{I18n.t('numbers.twenty')}", " #{I18n.t('numbers.thirty')}", " #{I18n.t('numbers.fourty')}",
|
|
" #{I18n.t('numbers.fifty')}", " #{I18n.t('numbers.sixty')}", " #{I18n.t('numbers.seventy')}", " #{I18n.t('numbers.eighty')}", " #{I18n.t('numbers.ninety')}"]
|
|
hundreds = ["", " #{I18n.t('numbers.hundred')}", " #{I18n.t('numbers.two_hundred')}", " #{I18n.t('numbers.three_hundred')}", " #{I18n.t('numbers.four_hundred')}",
|
|
" #{I18n.t('numbers.five_hundred')}", " #{I18n.t('numbers.six_hundred')}", " #{I18n.t('numbers.seven_hudred')}", " #{I18n.t('numbers.eight_hundred')}", " #{I18n.t('numbers.nine_hundred')}"]
|
|
groups = Array.new
|
|
groups << ["" ,"" ,""]
|
|
groups << [" #{I18n.t('numbers.thousand')}" ," #{I18n.t('numbers.thousand1')}" ," #{I18n.t('numbers.thousand2')}"]
|
|
groups << [" #{I18n.t('numbers.milion')}" ," #{I18n.t('numbers.milion1')}" ," #{I18n.t('numbers.milion2')}"]
|
|
groups << [" #{I18n.t('numbers.miliard')}"," #{I18n.t('numbers.miliard1')}"," #{I18n.t('numbers.miliard2')}"]
|
|
groups << [" #{I18n.t('numbers.bilion')}" ," #{I18n.t('numbers.bilion1')}" ," #{I18n.t('numbers.bilion2')}"]
|
|
groups << [" #{I18n.t('numbers.biliard')}"," #{I18n.t('numbers.biliard1')}"," #{I18n.t('numbers.biliard2')}"]
|
|
groups << [" #{I18n.t('numbers.trylion')}"," #{I18n.t('numbers.trylion1')}"," #{I18n.t('numbers.trylion2')}"]
|
|
|
|
ret = ""
|
|
number = dec.to_i
|
|
rest = (dec * 100) % 100
|
|
if number == 0
|
|
ret = "#{I18n.t('numbers.zero')}"
|
|
else
|
|
if number < 0
|
|
sign = "#{I18n.t('numbers.minus')}"
|
|
number = -number
|
|
else
|
|
sign = ""
|
|
end
|
|
g = 0
|
|
while number != 0
|
|
s = (number % 1000) / 100
|
|
d = (number % 100) / 10
|
|
j = (number % 10)
|
|
if d == 1 && j > 0
|
|
n = j
|
|
d = 0
|
|
j = 0
|
|
else
|
|
n = 0
|
|
end
|
|
if j == 1 && s+d+n == 0
|
|
k = 0
|
|
elsif j == 2 || j == 3 || j == 4
|
|
k = 1
|
|
else
|
|
k = 2
|
|
end
|
|
ret = hundreds[s] + tens[d] + teens[n] + singles[j] + groups[g][k] + ret
|
|
g = g + 1
|
|
number = number / 1000
|
|
end
|
|
end
|
|
ret = sign + ret
|
|
ret += " PLN #{rest.to_i}/100"
|
|
return ret
|
|
end
|
|
|
|
|
|
end
|