Module: Samanage

Defined in:
lib/samanage/utils.rb,
lib/samanage.rb,
lib/samanage/api.rb,
lib/samanage/error.rb,
lib/samanage/version.rb,
lib/samanage/language.rb,
lib/samanage/api/sites.rb,
lib/samanage/api/tasks.rb,
lib/samanage/api/users.rb,
lib/samanage/api/utils.rb,
lib/samanage/api/groups.rb,
lib/samanage/api/changes.rb,
lib/samanage/api/mobiles.rb,
lib/samanage/api/vendors.rb,
lib/samanage/url_builder.rb,
lib/samanage/api/category.rb,
lib/samanage/api/comments.rb,
lib/samanage/api/problems.rb,
lib/samanage/api/releases.rb,
lib/samanage/api/contracts.rb,
lib/samanage/api/hardwares.rb,
lib/samanage/api/incidents.rb,
lib/samanage/api/requester.rb,
lib/samanage/api/solutions.rb,
lib/samanage/api/attachments.rb,
lib/samanage/api/departments.rb,
lib/samanage/api/time_tracks.rb,
lib/samanage/api/custom_forms.rb,
lib/samanage/api/other_assets.rb,
lib/samanage/api/custom_fields.rb,
lib/samanage/api/purchase_orders.rb,
lib/samanage/api/configuration_items.rb

Overview

API Utils

Defined Under Namespace

Classes: Api, AuthorizationError, Error, InvalidRequest, NotFound, SamanageError, UrlBuilder

Constant Summary collapse

VERSION =
"2.1.23"
LANGUAGE =
{
  "arabic" => "ar",
  "belarusian" => "be",
  "bulgarian" => "bg",
  "catalan" => "ca",
  "chinese simplified" => "zh-cn",
  "chinese traditional" => "zh-tw",
  "croatian" => "hr",
  "czech" => "cs",
  "danish" => "da",
  "dutch" => "nl",
  "english" => "en",
  "estonian" => "et",
  "finnish" => "fi",
  "french" => "fr",
  "german" => "de",
  "greek" => "el",
  "hebrew" => "he",
  "hindi" => "hi-in",
  "hungarian" => "hu",
  "bahasa indonesia (indonesian)" => "id",
  "italian" => "it",
  "japanese" => "ja",
  "korean" => "ko",
  "latvian" => "lv",
  "lithuanian" => "lt",
  "malay" => "ms",
  "macedonian" => "mk",
  "norwegian" => "nb",
  "persian" => "fa",
  "polish" => "pl",
  "portuguese (brazil)" => "pt-br",
  "portuguese (portugal)" => "pt-pt",
  "romanian" => "ro",
  "russian" => "ru",
  "serbian" => "sr",
  "slovak" => "sk",
  "slovenian" => "sl",
  "spanish" => "es",
  "spanish  (latin america)" => "es-419",
  "swedish" => "sv",
  "thai" => "th",
  "turkish" => "tr",
  "ukrainian" => "uk",
  "vietnamese" => "vi",
}

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.lookup_language(language) ⇒ Object



50
51
52
# File 'lib/samanage/language.rb', line 50

def self.lookup_language(language)
  LANGUAGE[language.to_s.downcase] ||= (language.to_s.downcase if LANGUAGE.values.include?(language.to_s.downcase))
end

Instance Method Details

#find_custom_field(custom_fields_values:, field_name:, user_type: false, user_resolve: "email") ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/samanage/utils.rb', line 5

def find_custom_field(custom_fields_values:, field_name:, user_type: false, user_resolve: "email")
  result = custom_fields_values.select { |field| field["name"] == field_name }.first.to_h
  if user_type
    if user_resolve == "email"
      result_value = result.dig("user", "email")
    else
      result_value = result.dig("user", "name")
    end
  else
    result_value = result.dig("value")
  end
  return if [-1, "-1", nil, "", {}].include?(result_value)
  result_value
end