Sha256: 5232d48e88a0dde46bc6cd5af1409dafe50d5c5ba4c7af37040e03f1832d255e

Contents?: true

Size: 1.9 KB

Versions: 27

Compression:

Stored size: 1.9 KB

Contents

$(document).ready ->
  $('body').on 'click', 'button._link-apply', () ->
    link.applyLink($(this).data("tinymce-id"), $(this).data("tm-snippet-start"), $(this).data("tm-snippet-size"))

window.link ||= {}

$(document).ready ->
  $('body').on 'click', '._link-field-toggle', () ->
    if $(this).is(':checked')
      link.addPlus()
    else
      link.removePlus()

  $('body').on 'input', 'input._link-target', (event) ->
    link.targetChanged()

  $('body').on 'input', 'input._link-title', (event) ->
    link.titleChanged()

$.extend link,
  # called by TinyMCE
  openLinkEditor: (tm) ->
    params = nest.editParams(tm, "[[", "]]") unless params?
    nest.openEditorForTm(tm, params, "link_editor", "modal_link_editor")

  applyLink: (tinymce_id, link_start, link_size) ->
    nest.applySnippet("link", tinymce_id, link_start, link_size)

  target: () ->
    link.evalFieldOption $('input._link-target').val()

  title: () ->
    $('input._link-title').val()

  titleChanged: () ->
    new_val = $("._link-preview").val().replace(/^\[\[[^\]]*/, "[[" + link.target() + "|" + link.title())
    link.updatePreview new_val

  targetChanged: () ->
    new_val = $("._link-preview").val().replace(/^\[\[[^\]|]*/, "[[" + link.target())
    link.updatePreview new_val

  evalFieldOption: (name) ->
    if link.isField() then "+#{name}" else name

  isField: ->
    $('._link-field-toggle').is(":checked")

  addPlus: () ->
    new_val = $("._link-preview").val().replace(/^\[\[\+?/, "[[+")
    link.updatePreview new_val
    $(".input-group.hide-prefix").removeClass("hide-prefix").addClass("show-prefix")

  removePlus: () ->
    new_val = $("._link-preview").val().replace(/^\[\[\+?/, "[[")
    link.updatePreview new_val
    $(".input-group.show-prefix").removeClass("show-prefix").addClass("hide-prefix")

  updatePreview: (new_val) ->
    new_val = "[[#{link.target()}|#{link.title()}]]" unless new_val?
    $("._link-preview").val new_val

Version data entries

27 entries across 27 versions & 2 rubygems

Version Path
card-mod-tinymce_editor-0.18.1 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.18.0 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.17.0 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.16.0 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.6 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.5 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.4 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.3 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.2.pre1 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.1.1 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.1 assets/script/link_editor.js.coffee
card-mod-tinymce_editor-0.15.0 assets/script/link_editor.js.coffee
card-mod-script-0.14.2 assets/script/decko/link_editor.js.coffee
card-mod-script-0.14.1 assets/script/decko/link_editor.js.coffee
card-mod-script-0.14.0 assets/script/decko/link_editor.js.coffee
card-mod-script-0.13.4 assets/script/decko/link_editor.js.coffee
card-mod-script-0.13.3 assets/script/decko/link_editor.js.coffee
card-mod-script-0.13.2 assets/script/decko/link_editor.js.coffee
card-mod-script-0.11.7 lib/javascript/decko/link_editor.js.coffee
card-mod-script-0.12.0 lib/javascript/decko/link_editor.js.coffee