$(document).ready () -> # append i18n tooltip $("body") .append('
...
') .click () -> $("#i18n_viz_tooltip").hide() # enrich elements with i18n attributes, classes, tooltip events $.fn.initGUI = (keys) -> $(this) # tooltip events .mouseenter () -> $tooltip = $("#i18n_viz_tooltip") top = $(this).offset().top - $tooltip.outerHeight() left = $(this).offset().left if (top < 0) top = $(this).offset().top + $(this).height() + 10 $tooltip.html(''); keys.forEach (value) -> if (window.I18nViz.external_tool_url.length > 0) $tooltip.append('' + value + '') else $tooltip.append(""+value+"") $tooltip .css({top: top, left: left}) .show() $(this) # process elements with i18n strings in their text $(":i18n-textnode").each () -> $i18n_textnode = $(this) i18n_keys = window.I18nViz.extractI18nKeysFromText($i18n_textnode.text()) $i18n_textnode .enrichWithI18nData(i18n_keys) .initGUI(i18n_keys) .clearI18nText() # process elements with i18n strings in the value or placeholder attributes $("input:i18n-value-placeholder").each () -> $i18n_input_element = $(this) input_value = $i18n_input_element.val() placeholder_value = $i18n_input_element.attr('placeholder') i18n_keys = extractI18nKeysFromText(input_value + placeholder_value) $i18n_input_element.enrichWithI18nData(i18n_keys) # clear i18n data from value and placeholder attributes cleared_input_value = input_value.replace(window.I18nViz.global_regex, "") $(this).val( cleared_input_value ) if (placeholder_value) cleared_placeholder_value = placeholder_value.replace(window.I18nViz.global_regex, "") $(this).attr('placeholder', cleared_placeholder_value)