demo.js 5.0 KB
Newer Older
1 2 3 4 5 6
/**
 * AdminLTE Demo Menu
 * ------------------
 * You should not use this file in production.
 * This file is for demo purposes only.
 */
A
Abdullah Almsaeed 已提交
7
(function ($) {
A
Abdullah Almsaeed 已提交
8
  'use strict'
A
Abdullah Almsaeed 已提交
9

A
Abdullah Almsaeed 已提交
10 11 12
  var $sidebar   = $('.control-sidebar')
  var $container = $('<div />', {
    class: 'p-3'
A
Abdullah Almsaeed 已提交
13
  })
14

A
Abdullah Almsaeed 已提交
15
  $sidebar.append($container)
A
almasaeed2010 已提交
16

A
Abdullah Almsaeed 已提交
17 18 19 20 21 22
  var navbar_dark_skins = [
    'bg-primary',
    'bg-info',
    'bg-success',
    'bg-danger'
  ]
23

A
Abdullah Almsaeed 已提交
24 25 26 27 28
  var navbar_light_skins = [
    'bg-warning',
    'bg-white',
    'bg-gray-light'
  ]
A
almasaeed2010 已提交
29

A
Abdullah Almsaeed 已提交
30 31 32 33
  $container.append(
    '<h5>Customize AdminLTE</h5><hr class="mb-2"/>'
    + '<h6>Navbar Variants</h6>'
  )
A
almasaeed2010 已提交
34

A
Abdullah Almsaeed 已提交
35 36 37 38 39 40 41 42 43 44 45 46
  var $navbar_variants        = $('<div />', {
    'class': 'd-flex'
  })
  var navbar_all_colors       = navbar_dark_skins.concat(navbar_light_skins)
  var $navbar_variants_colors = createSkinBlock(navbar_all_colors, function (e) {
    var color = $(this).data('color')
    console.log('Adding ' + color)
    var $main_header = $('.main-header')
    $main_header.removeClass('navbar-dark').removeClass('navbar-light')
    navbar_all_colors.map(function (color) {
      $main_header.removeClass(color)
    })
A
almasaeed2010 已提交
47

A
Abdullah Almsaeed 已提交
48 49 50 51 52 53
    if (navbar_dark_skins.indexOf(color) > -1) {
      $main_header.addClass('navbar-dark')
      console.log('AND navbar-dark')
    } else {
      console.log('AND navbar-light')
      $main_header.addClass('navbar-light')
54
    }
55

A
Abdullah Almsaeed 已提交
56 57
    $main_header.addClass(color)
  })
58

A
Abdullah Almsaeed 已提交
59
  $navbar_variants.append($navbar_variants_colors)
60

A
Abdullah Almsaeed 已提交
61
  $container.append($navbar_variants)
62

A
Abdullah Almsaeed 已提交
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
  var $checkbox_container = $('<div />', {
    'class': 'mb-4'
  })
  var $navbar_border = $('<input />', {
    type   : 'checkbox',
    value  : 1,
    checked: $('.main-header').hasClass('border-bottom'),
    'class': 'mr-1'
  }).on('click', function () {
    if ($(this).is(':checked')) {
      $('.main-header').addClass('border-bottom')
    } else {
      $('.main-header').removeClass('border-bottom')
    }
  })
  $checkbox_container.append($navbar_border)
  $checkbox_container.append('<span>Navbar border</span>')
  $container.append($checkbox_container)

A
almasaeed2010 已提交
82

A
Abdullah Almsaeed 已提交
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
  var sidebar_colors = [
    'bg-primary',
    'bg-warning',
    'bg-info',
    'bg-danger',
    'bg-success'
  ]

  var sidebar_skins = [
    'sidebar-dark-primary',
    'sidebar-dark-warning',
    'sidebar-dark-info',
    'sidebar-dark-danger',
    'sidebar-dark-success',
    'sidebar-light-primary',
    'sidebar-light-warning',
    'sidebar-light-info',
    'sidebar-light-danger',
    'sidebar-light-success'
  ]
103

A
Abdullah Almsaeed 已提交
104 105 106 107 108 109 110 111 112 113 114
  $container.append('<h6>Dark Sidebar Variants</h6>')
  var $sidebar_variants = $('<div />', {
    'class': 'd-flex'
  })
  $container.append($sidebar_variants)
  $container.append(createSkinBlock(sidebar_colors, function () {
    var color         = $(this).data('color')
    var sidebar_class = 'sidebar-dark-' + color.replace('bg-', '')
    var $sidebar      = $('.main-sidebar')
    sidebar_skins.map(function (skin) {
      $sidebar.removeClass(skin)
A
Abdullah Almsaeed 已提交
115
    })
A
Abdullah Almsaeed 已提交
116

A
Abdullah Almsaeed 已提交
117 118 119 120 121 122 123 124 125 126 127 128 129 130
    $sidebar.addClass(sidebar_class)
  }))

  $container.append('<h6>Light Sidebar Variants</h6>')
  var $sidebar_variants = $('<div />', {
    'class': 'd-flex'
  })
  $container.append($sidebar_variants)
  $container.append(createSkinBlock(sidebar_colors, function () {
    var color         = $(this).data('color')
    var sidebar_class = 'sidebar-light-' + color.replace('bg-', '')
    var $sidebar      = $('.main-sidebar')
    sidebar_skins.map(function (skin) {
      $sidebar.removeClass(skin)
A
Abdullah Almsaeed 已提交
131
    })
A
Abdullah Almsaeed 已提交
132

A
Abdullah Almsaeed 已提交
133 134 135 136 137 138 139 140 141 142 143
    $sidebar.addClass(sidebar_class)
  }))

  var logo_skins = navbar_all_colors
  $container.append('<h6>Brand Logo Variants</h6>')
  var $logo_variants = $('<div />', {
    'class': 'd-flex'
  })
  $container.append($logo_variants)
  var $clear_btn = $('<a />', {
    href: 'javascript:void(0)'
A
Abdullah Almsaeed 已提交
144
  }).text('clear').on('click', function () {
A
Abdullah Almsaeed 已提交
145 146 147 148 149 150 151 152 153 154
    var $logo = $('.brand-link')
    logo_skins.map(function (skin) {
      $logo.removeClass(skin)
    })
  })
  $container.append(createSkinBlock(logo_skins, function () {
    var color = $(this).data('color')
    var $logo = $('.brand-link')
    logo_skins.map(function (skin) {
      $logo.removeClass(skin)
A
Abdullah Almsaeed 已提交
155
    })
A
Abdullah Almsaeed 已提交
156 157
    $logo.addClass(color)
  }).append($clear_btn))
A
updated  
Abdullah Almsaeed 已提交
158

A
Abdullah Almsaeed 已提交
159 160 161
  function createSkinBlock(colors, callback) {
    var $block = $('<div />', {
      'class': 'd-flex flex-wrap mb-3'
A
Abdullah Almsaeed 已提交
162
    })
D
Dennis Neufeld 已提交
163

A
Abdullah Almsaeed 已提交
164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
    colors.map(function (color) {
      var $color = $('<div />', {
        'class': (typeof color === 'object' ? color.join(' ') : color) + ' elevation-2'
      })

      $block.append($color)

      $color.data('color', color)

      $color.css({
        width       : '40px',
        height      : '20px',
        borderRadius: '25px',
        marginRight : 10,
        marginBottom: 10,
        opacity     : 0.8,
        cursor      : 'pointer'
      })

      $color.hover(function () {
        $(this).css({ opacity: 1 }).removeClass('elevation-2').addClass('elevation-4')
      }, function () {
        $(this).css({ opacity: 0.8 }).removeClass('elevation-4').addClass('elevation-2')
      })

      if (callback) {
        $color.on('click', callback)
A
Abdullah Almsaeed 已提交
191 192
      }
    })
D
Dennis Neufeld 已提交
193

A
Abdullah Almsaeed 已提交
194
    return $block
195
  }
A
Abdullah Almsaeed 已提交
196
})(jQuery)