Blame view

frontend/web/css/node_modules/bootstrap/js/alert.js 2.3 KB
3da83322   Administrator   21.03.16 Versrka
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
  /* ========================================================================

   * Bootstrap: alert.js v3.3.5

   * http://getbootstrap.com/javascript/#alerts

   * ========================================================================

   * Copyright 2011-2015 Twitter, Inc.

   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)

   * ======================================================================== */

  

  

  +function ($) {

    'use strict';

  

    // ALERT CLASS DEFINITION

    // ======================

  

    var dismiss = '[data-dismiss="alert"]'

    var Alert   = function (el) {

      $(el).on('click', dismiss, this.close)

    }

  

    Alert.VERSION = '3.3.5'

  

    Alert.TRANSITION_DURATION = 150

  

    Alert.prototype.close = function (e) {

      var $this    = $(this)

      var selector = $this.attr('data-target')

  

      if (!selector) {

        selector = $this.attr('href')

        selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7

      }

  

      var $parent = $(selector)

  

      if (e) e.preventDefault()

  

      if (!$parent.length) {

        $parent = $this.closest('.alert')

      }

  

      $parent.trigger(e = $.Event('close.bs.alert'))

  

      if (e.isDefaultPrevented()) return

  

      $parent.removeClass('in')

  

      function removeElement() {

        // detach from parent, fire event then clean up data

        $parent.detach().trigger('closed.bs.alert').remove()

      }

  

      $.support.transition && $parent.hasClass('fade') ?

        $parent

          .one('bsTransitionEnd', removeElement)

          .emulateTransitionEnd(Alert.TRANSITION_DURATION) :

        removeElement()

    }

  

  

    // ALERT PLUGIN DEFINITION

    // =======================

  

    function Plugin(option) {

      return this.each(function () {

        var $this = $(this)

        var data  = $this.data('bs.alert')

  

        if (!data) $this.data('bs.alert', (data = new Alert(this)))

        if (typeof option == 'string') data[option].call($this)

      })

    }

  

    var old = $.fn.alert

  

    $.fn.alert             = Plugin

    $.fn.alert.Constructor = Alert

  

  

    // ALERT NO CONFLICT

    // =================

  

    $.fn.alert.noConflict = function () {

      $.fn.alert = old

      return this

    }

  

  

    // ALERT DATA-API

    // ==============

  

    $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)

  

  }(jQuery);