demo.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. /**
  2. * AdminLTE Demo Menu
  3. * ------------------
  4. * You should not use this file in production.
  5. * This file is for demo purposes only.
  6. */
  7. (function ($) {
  8. 'use strict'
  9. var $sidebar = $('.control-sidebar')
  10. var $container = $('<div />', {
  11. class: 'p-3'
  12. })
  13. $sidebar.append($container)
  14. var navbar_dark_skins = [
  15. 'bg-primary',
  16. 'bg-info',
  17. 'bg-success',
  18. 'bg-danger'
  19. ]
  20. var navbar_light_skins = [
  21. 'bg-warning',
  22. 'bg-white',
  23. 'bg-gray-light'
  24. ]
  25. $container.append(
  26. '<h5>Customize AdminLTE</h5><hr class="mb-2"/>'
  27. + '<h6>Navbar Variants</h6>'
  28. )
  29. var $navbar_variants = $('<div />', {
  30. 'class': 'd-flex'
  31. })
  32. var navbar_all_colors = navbar_dark_skins.concat(navbar_light_skins)
  33. var $navbar_variants_colors = createSkinBlock(navbar_all_colors, function (e) {
  34. var color = $(this).data('color')
  35. console.log('Adding ' + color)
  36. var $main_header = $('.main-header')
  37. $main_header.removeClass('navbar-dark').removeClass('navbar-light')
  38. navbar_all_colors.map(function (color) {
  39. $main_header.removeClass(color)
  40. })
  41. if (navbar_dark_skins.indexOf(color) > -1) {
  42. $main_header.addClass('navbar-dark')
  43. console.log('AND navbar-dark')
  44. } else {
  45. console.log('AND navbar-light')
  46. $main_header.addClass('navbar-light')
  47. }
  48. $main_header.addClass(color)
  49. })
  50. $navbar_variants.append($navbar_variants_colors)
  51. $container.append($navbar_variants)
  52. var $checkbox_container = $('<div />', {
  53. 'class': 'mb-4'
  54. })
  55. var $navbar_border = $('<input />', {
  56. type : 'checkbox',
  57. value : 1,
  58. checked: $('.main-header').hasClass('border-bottom'),
  59. 'class': 'mr-1'
  60. }).on('click', function () {
  61. if ($(this).is(':checked')) {
  62. $('.main-header').addClass('border-bottom')
  63. } else {
  64. $('.main-header').removeClass('border-bottom')
  65. }
  66. console.log($(this).is(':checked'), 'hi')
  67. })
  68. $checkbox_container.append($navbar_border)
  69. $checkbox_container.append('<span>Navbar border</span>')
  70. $container.append($checkbox_container)
  71. var sidebar_colors = [
  72. 'bg-primary',
  73. 'bg-warning',
  74. 'bg-info',
  75. 'bg-danger',
  76. 'bg-success'
  77. ]
  78. var sidebar_skins = [
  79. 'sidebar-dark-primary',
  80. 'sidebar-dark-warning',
  81. 'sidebar-dark-info',
  82. 'sidebar-dark-danger',
  83. 'sidebar-dark-success',
  84. 'sidebar-light-primary',
  85. 'sidebar-light-warning',
  86. 'sidebar-light-info',
  87. 'sidebar-light-danger',
  88. 'sidebar-light-success'
  89. ]
  90. $container.append('<h6>Dark Sidebar Variants</h6>')
  91. var $sidebar_variants = $('<div />', {
  92. 'class': 'd-flex'
  93. })
  94. $container.append($sidebar_variants)
  95. $container.append(createSkinBlock(sidebar_colors, function () {
  96. var color = $(this).data('color')
  97. var sidebar_class = 'sidebar-dark-' + color.replace('bg-', '')
  98. var $sidebar = $('.main-sidebar')
  99. sidebar_skins.map(function (skin) {
  100. $sidebar.removeClass(skin)
  101. })
  102. $sidebar.addClass(sidebar_class)
  103. console.log('added ' + sidebar_class)
  104. }))
  105. $container.append('<h6>Light Sidebar Variants</h6>')
  106. var $sidebar_variants = $('<div />', {
  107. 'class': 'd-flex'
  108. })
  109. $container.append($sidebar_variants)
  110. $container.append(createSkinBlock(sidebar_colors, function () {
  111. var color = $(this).data('color')
  112. var sidebar_class = 'sidebar-light-' + color.replace('bg-', '')
  113. var $sidebar = $('.main-sidebar')
  114. sidebar_skins.map(function (skin) {
  115. $sidebar.removeClass(skin)
  116. })
  117. $sidebar.addClass(sidebar_class)
  118. console.log('added ' + sidebar_class)
  119. }))
  120. var logo_skins = navbar_all_colors
  121. $container.append('<h6>Brand Logo Variants</h6>')
  122. var $logo_variants = $('<div />', {
  123. 'class': 'd-flex'
  124. })
  125. $container.append($logo_variants)
  126. var $clear_btn = $('<a />', {
  127. href: 'javascript:void(0)'
  128. }).text('clear').on('click', function () {
  129. var $logo = $('.brand-link')
  130. logo_skins.map(function (skin) {
  131. $logo.removeClass(skin)
  132. })
  133. })
  134. $container.append(createSkinBlock(logo_skins, function () {
  135. var color = $(this).data('color')
  136. var $logo = $('.brand-link')
  137. logo_skins.map(function (skin) {
  138. $logo.removeClass(skin)
  139. })
  140. $logo.addClass(color)
  141. }).append($clear_btn))
  142. function createSkinBlock(colors, callback) {
  143. var $block = $('<div />', {
  144. 'class': 'd-flex flex-wrap mb-3'
  145. })
  146. colors.map(function (color) {
  147. var $color = $('<div />', {
  148. 'class': (typeof color === 'object' ? color.join(' ') : color) + ' elevation-2'
  149. })
  150. $block.append($color)
  151. $color.data('color', color)
  152. $color.css({
  153. width : '40px',
  154. height : '20px',
  155. borderRadius: '25px',
  156. marginRight : 10,
  157. marginBottom: 10,
  158. opacity : 0.8,
  159. cursor : 'pointer'
  160. })
  161. $color.hover(function () {
  162. $(this).css({ opacity: 1 }).removeClass('elevation-2').addClass('elevation-4')
  163. }, function () {
  164. $(this).css({ opacity: 0.8 }).removeClass('elevation-4').addClass('elevation-2')
  165. })
  166. if (callback) {
  167. $color.on('click', callback)
  168. }
  169. })
  170. return $block
  171. }
  172. })(jQuery)