function getAttributesOmniDBTooltip(p_target, p_title, p_message, p_position = false) {
  let v_html = '<div class="omnidb__tooltip__inner tooltip-inner"><div class="arrow"></div>';
  if (p_message) {
    v_html += (p_title != undefined) ? '<div>' + p_title + '</div>' : '';
    v_html += (p_message != undefined) ? '<div>' + p_message + '</div>' : '';
  }
  else {
    v_html += (p_title != undefined) ? '<h4 class=\"mb-0\">' + p_title + '</h4>' : '';
  }
  v_html += '</div>';
  let v_position = (p_position) ? p_position : 'bottom';
  p_target.setAttribute('data-html',true);
  p_target.setAttribute('data-placement',v_position);
  p_target.setAttribute('data-omnidb-toggle','tooltip');
  p_target.setAttribute('data-title',v_html);
  let v_tooltip_element;
  $(p_target).mouseenter(function(e){
    v_tooltip_element = document.createElement('div');
    v_tooltip_element.innerHTML = v_html;
    v_tooltip_element.style.position = 'fixed';
    v_tooltip_element.classList = 'omnidb__tooltip tooltip bs-tooltip-right fade show';
    let v_pos_diff = window.innerHeight - e.target.getBoundingClientRect().y;
    if (v_pos_diff > 150) {
      v_tooltip_element.style.top = e.target.getBoundingClientRect().y + 'px';
    }
    else {
      v_tooltip_element.style.bottom = v_pos_diff - 27 + 'px';
      v_tooltip_element.classList.add('omnidb__tooltip--bottom')
    }
    v_tooltip_element.style.left = e.target.offsetWidth + 5 + 'px';
    document.body.appendChild(v_tooltip_element);
  });
  $(p_target).mouseleave(function(e){
    if (v_tooltip_element) {
      document.body.removeChild(v_tooltip_element);
    }
  });
}
## getAttributesOmniDBTooltip
@desc Creates and applies tooltip attributes to the target.

@param  {string} title   Title string.
@param  {string} message Message string, accepts html.
@return {string}         HTML string.