def parse_value(v, locale)
      new_value = nil
      case v
        when Symbol then
          lk = @localization_key_object_cache[v.to_s] || \
            Lit::LocalizationKey.where(localization_key: v.to_s).first
          if lk
            loca = Lit::Localization.active.where(locale_id: locale.id).
                        where(localization_key_id: lk.id).first
            new_value = loca.translation if loca && loca.translation.present?
          end
        when String then
          new_value = v
        when Hash then
          new_value = nil
        when Proc then
          new_value = nil # was v.call - requires more love
        else
          new_value = v.to_s
      end
      new_value
    end
def parse_value(v, locale)
      new_value = nil
      case v
        when Symbol then
          lk = @localization_key_object_cache[v.to_s] || \
            Lit::LocalizationKey.where(localization_key: v.to_s).first
          if lk
            loca = Lit::Localization.active.where(locale_id: locale.id).
                        where(localization_key_id: lk.id).first
            new_value = loca.translation if loca && loca.translation.present?
          end
        when String then
          new_value = v
        when Hash then
          new_value = nil
        when Proc then
          new_value = nil # was v.call - requires more love
        else
          new_value = v.to_s
      end
      new_value
    end
checks parameter type and returns value basing on it
 symbols are beeing looked up in db
 string are returned directly
 procs are beeing called (once)
 hashes are converted do string (for now)