/**
 * AdminLTE Demo Menu
 * ------------------
 * You should not use this file in production.
 * This file is for demo purposes only.
 */
 (function ($) {
    'use strict'
  
    var $sidebar   = $('.control-sidebar')
    var $container = $('<div />', {
      class: 'p-3'
    })
  
    $sidebar.append($container)
  
    var navbar_dark_skins = [
      'bg-primary',
      'bg-info',
      'bg-success',
      'bg-danger'
    ]
  
    var navbar_light_skins = [
      'bg-warning',
      'bg-white',
      'bg-gray-light'
    ]
  
    $container.append(
      '<h5>تنظیمات قالب</h5><hr class="mb-2"/>'
      + '<h6>رنگ‌های نوار ناوبری</h6>'
    )
  
    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)
      })
  
      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')
      }
  
      $main_header.addClass(color);
      setCookie('main_header_color', color + ' ' + nav_type,100);
    })
  
    $navbar_variants.append($navbar_variants_colors)
  
    $container.append($navbar_variants)
  
    var $checkbox_container = $('<div />', {
      'class': 'mb-4'
    })
    var main_header_border = '';
    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');
        main_header_border = 'border-bottom';
      } else {
        $('.main-header').removeClass('border-bottom');
        main_header_border = '';
      }
      setCookie('main_header_border', main_header_border,100);
    })
    $checkbox_container.append($navbar_border)
    $checkbox_container.append('<span>مرز نوار ناوبری</span>')
    $container.append($checkbox_container)
  
  
    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'
    ]
  
    $container.append('<h6>نوار تیره</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)
      })
  
      $sidebar.addClass(sidebar_class);
      setCookie('main_sidebar_color', sidebar_class,100);
    }))
  
    $container.append('<h6>نوار روشن</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)
      })
  
      $sidebar.addClass(sidebar_class);
      setCookie('main_sidebar_color', sidebar_class,100);
    }))
  
    var logo_skins = navbar_all_colors
    $container.append('<h6>رنگ برند لوگو</h6>')
    var $logo_variants = $('<div />', {
      'class': 'd-flex'
    })
    $container.append($logo_variants)
    var $clear_btn = $('<a />', {
      href: 'javascript:void(0)'
    }).text('پاک کردن').on('click', function () {
      var $logo = $('.brand-link')
      logo_skins.map(function (skin) {
        $logo.removeClass(skin)
      })
      setCookie('logo_color', color,100);
    })
    $container.append(createSkinBlock(logo_skins, function () {
      var color = $(this).data('color')
      var $logo = $('.brand-link')
      logo_skins.map(function (skin) {
        $logo.removeClass(skin)
      })
      $logo.addClass(color);
      setCookie('logo_color', color,100);
    }).append($clear_btn))
  
    function createSkinBlock(colors, callback) {
      var $block = $('<div />', {
        'class': 'd-flex flex-wrap mb-3'
      })
  
      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)
        }
  
      })
  
      return $block
    }
  
    $('[data-widget="chat-pane-toggle"]').click(function() {
        $(this).closest('.card').toggleClass('direct-chat-contacts-open')
    });
    $('[data-toggle="tooltip"]').tooltip();
  
  
    function ConvertNumberToPersion() {
          let persian = { 0: '۰', 1: '۱', 2: '۲', 3: '۳', 4: '۴', 5: '۵', 6: '۶', 7: '۷', 8: '۸', 9: '۹' };
          function traverse(el) {
//            console.log(el.tagName)
            if (el.tagName=="PRE" || el.tagName=="STYLE" || el.tagName=="SCRIPT")return
              if (el.nodeType == 3) {
                  var list = el.data.match(/[0-9]/g);
                  if (list != null && list.length != 0) {
                      for (var i = 0; i < list.length; i++)
                          el.data = el.data.replace(list[i], persian[list[i]]);
                  }
              }
              for (var i = 0; i < el.childNodes.length; i++) {
                  
                  traverse(el.childNodes[i]);
              }
          }
          traverse(document.body);
      }
  
    ConvertNumberToPersion();
  
  
  })(jQuery)
