           style      : "modal-cancel"
           callback   : -> modal.destroy()
 
-  @appendScriptElement = (type, {identifier, url, callback})->
+  @appendScriptElement = (type, {identifier, url, callback}, force)->
 
     identifier = identifier.replace /\./g, '_'
     domId      = "internal-#{type}-#{identifier}"

          type     : "text/javascript"
          src      : url
        bind       = "load"
        load       = -> callback null


      document.head.appendChild (new KDCustomHTMLView {
        domId, tagName, attributes, bind, load
      }).getElement()

  # #
  # MAKE NEW APP

  # Please make sure about your changes on it.
  @putAppScript = (app, callback = noop)->

    if app.style
      @appendScriptElement 'style',  \
        { url:app.style, identifier:app.identifier, callback }, yes

    if app.script
      @appendScriptElement 'script', \
        { url:app.script, identifier:app.identifier, callback }, yes

  @unloadAppScript = (app, callback = noop)->

    identifier = app.identifier.replace /\./g, '_'

    @destroyScriptElement "style", identifier
    @destroyScriptElement "script", identifier

    KD.utils.defer -> callback()

