<commit_before>/*!
 *
 * Общие скрипты админки
 *
 * @date 16.10.2014
 * @copyright skeeks.com
 * @author <NAME> <<EMAIL>>
 */

(function(sx, $, _)
{
    sx.createNamespace('classes.app', sx);

    /**
     * @type {*|Function|void}
     */
    sx.classes.app.MainNav = sx.classes.Component.extend({

        _init: function()
        {},

        _onDomReady: function()
        {
            if (window.opener)
            {
                $("body").addClass("empty");
            }

            $("ul.nav-sidebar").find("a").each(function() {
                /** @type {string} */
                var line = String(window.location);
                if (line.substr(line.length - 1) == "#") {
                  /** @type {string} */
                  line = line.slice(0, -1);
                }
                if ($($(this))[0].href == line) {
                  $(this).parent().addClass("active");
                  $(this).parents("ul").add(this).each(function() {
                    $(this).show().parent().addClass("opened");
                  });
                }
              });
              $(".nav-sidebar").on("click", "a", function(types) {
                if ($.ajaxLoad) {
                  types.preventDefault();
                }
                if (!$(this).parent().hasClass("hover"))
                {
                  if ($(this).parent().find("ul").size() != 0) {
                    if ($(this).parent().hasClass("opened")) {
                      $(this).parent().removeClass("opened");
                    } else {
                      $(this).parent().addClass("opened");
                    }
                    $(this).parent().find("ul").first().slideToggle("slow", function() {
                      //dropSidebarShadow();
                    });
                    $(this).parent().parent().find("ul").each(function() {
                      if (!$(this).parent().hasClass("opened")) {
                        $(this).slideUp();
                      }
                    });
                    if (!$(this).parent().parent().parent().hasClass("opened")) {
                      $(".nav a").not(this).parent().find("ul").slideUp("slow", function() {
                        $(this).parent().removeClass("opened").find(".opened").each(function() {
                          $(this).removeClass("opened");
                        });
                      });
                    }
                  } else {
                    if (!$(this).parent().parent().parent().hasClass("opened")) {
                      $(".nav a").not(this).parent().find("ul").slideUp("slow", function() {
                        $(this).parent().removeClass("opened").find(".opened").each(function() {
                          $(this).removeClass("opened");
                        });
                      });
                    }
                  }
                }
              });
              $(".nav-sidebar > li").hover(function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $(this).addClass("opened hover");
                }
              }, function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $(this).removeClass("opened hover");
                }
              });
              $("#main-menu-toggle").click(function() {
                if ($("body").hasClass("sidebar-hidden")) {
                  $("body").removeClass("sidebar-hidden");
                } else {
                  $("body").addClass("sidebar-hidden");
                }
              });
              $("#sidebar-menu").click(function() {
                $(".sidebar").trigger("open");
              });
              $("#sidebar-minify").click(function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $("body").removeClass("sidebar-minified");
                  $("#sidebar-minify i").removeClass("fa-list").addClass("fa-ellipsis-v");
                } else {
                  $("body").addClass("sidebar-minified");
                  $("#sidebar-minify i").removeClass("fa-ellipsis-v").addClass("fa-list");
                }
              });

              //dropSidebarShadow();
              //$(".sidebar").mmenu();

        }

    });


    sx.classes.Blocker  = sx.classes.BlockerJqueyUi.extend({

        _init: function()
        {
            this.applyParentMethod(sx.classes.BlockerJqueyUi, '_init', []);

            this.defaultOpts({
                message: "<div style='padding: 5px;'>Подождите...</div>",
                css: {
                    border: '1px solid #108acb',
                    padding: '10px;',
                }
            });
        },

    });

    /**
     * Основной класс для управления админкой
     * @type {extend|*|Function|extend|void|extend}
     */
    sx.classes.app.Admin = sx.classes.Component.extend({

        _init: function()
        {
            this._navigation            = new sx.classes.app.MainNav(this.get("navigation"));
            this.ajaxLoader             = new sx.classes.AjaxLoader();

            this.onWindowReadyBlocker   = sx.block('.sx-unblock-onWindowReady');
        },

        _onWindowReady: function()
        {
            var self = this;

            _.delay(function()
            {
                $(".sx-show-onWindowReady").slideDown();
                self.onWindowReadyBlocker.unblock();
            }, 100);
        },

        _onDomReady: function()
        {


            this._initBootstrap();

            //Отключение пустых ссылок
            if (this.get("disableCetainLink", true) === true)
            {
                $('a[href^=#]').click(function (e)
                {
                    e.preventDefault()
                })
            }<commit_msg>Доработка флов сущьности<commit_after>/*!
 *
 * Общие скрипты админки
 *
 * @date 16.10.2014
 * @copyright skeeks.com
 * @author <NAME> <<EMAIL>>
 */

(function(sx, $, _)
{
    sx.createNamespace('classes.app', sx);

    /**
     * @type {*|Function|void}
     */
    sx.classes.app.MainNav = sx.classes.Component.extend({

        _init: function()
        {},

        _onDomReady: function()
        {
            if (window.opener)
            {
                $("body").addClass("empty");
            }

            $("ul.nav-sidebar").find("a").each(function() {
                /** @type {string} */
                var line = String(window.location);
                if (line.substr(line.length - 1) == "#") {
                  /** @type {string} */
                  line = line.slice(0, -1);
                }
                if ($($(this))[0].href == line) {
                  $(this).parent().addClass("active");
                  $(this).parents("ul").add(this).each(function() {
                    $(this).show().parent().addClass("opened");
                  });
                }
              });
              $(".nav-sidebar").on("click", "a", function(types) {
                if ($.ajaxLoad) {
                  types.preventDefault();
                }
                if (!$(this).parent().hasClass("hover"))
                {
                  if ($(this).parent().find("ul").size() != 0) {
                    if ($(this).parent().hasClass("opened")) {
                      $(this).parent().removeClass("opened");
                    } else {
                      $(this).parent().addClass("opened");
                    }
                    $(this).parent().find("ul").first().slideToggle("slow", function() {
                      //dropSidebarShadow();
                    });
                    $(this).parent().parent().find("ul").each(function() {
                      if (!$(this).parent().hasClass("opened")) {
                        $(this).slideUp();
                      }
                    });
                    if (!$(this).parent().parent().parent().hasClass("opened")) {
                      $(".nav a").not(this).parent().find("ul").slideUp("slow", function() {
                        $(this).parent().removeClass("opened").find(".opened").each(function() {
                          $(this).removeClass("opened");
                        });
                      });
                    }
                  } else {
                    if (!$(this).parent().parent().parent().hasClass("opened")) {
                      $(".nav a").not(this).parent().find("ul").slideUp("slow", function() {
                        $(this).parent().removeClass("opened").find(".opened").each(function() {
                          $(this).removeClass("opened");
                        });
                      });
                    }
                  }
                }
              });
              $(".nav-sidebar > li").hover(function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $(this).addClass("opened hover");
                }
              }, function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $(this).removeClass("opened hover");
                }
              });
              $("#main-menu-toggle").click(function() {
                if ($("body").hasClass("sidebar-hidden")) {
                  $("body").removeClass("sidebar-hidden");
                } else {
                  $("body").addClass("sidebar-hidden");
                }
              });
              $("#sidebar-menu").click(function() {
                $(".sidebar").trigger("open");
              });
              $("#sidebar-minify").click(function() {
                if ($("body").hasClass("sidebar-minified")) {
                  $("body").removeClass("sidebar-minified");
                  $("#sidebar-minify i").removeClass("fa-list").addClass("fa-ellipsis-v");
                } else {
                  $("body").addClass("sidebar-minified");
                  $("#sidebar-minify i").removeClass("fa-ellipsis-v").addClass("fa-list");
                }
              });

              //dropSidebarShadow();
              //$(".sidebar").mmenu();

        }

    });


    sx.classes.Blocker  = sx.classes.BlockerJqueyUi.extend({

        _init: function()
        {
            this.applyParentMethod(sx.classes.BlockerJqueyUi, '_init', []);

            this.defaultOpts({
                message: "<div style='padding: 5px;'>Подождите...</div>",
                css: {
                    border: '1px solid #108acb',
                    padding: '10px;',
                }
            });
        },

    });

    /**
     * Основной класс для управления админкой
     * @type {extend|*|Function|extend|void|extend}
     */
    sx.classes.app.Admin = sx.classes.Component.extend({

        _init: function()
        {
            this._navigation            = new sx.classes.app.MainNav(this.get("navigation"));
            this.ajaxLoader             = new sx.classes.AjaxLoader();

            this.onWindowReadyBlocker   = null;
        },

        _onWindowReady: function()
        {
            var self = this;
            this.readyWindowTrigger = true;

            _.defer(function()
            {
                $(".sx-show-onWindowReady").slideDown(300, function()
                {
                    _.delay(function()
                    {
                        self.onWindowReadyBlocker.unblock();
                    }, 200);
                });
            });

        },

        _onDomReady: function()
        {
            var self = this;

            this.readyWindowTrigger = false;

            //Если window не будет готово через 200 мс, покажем загрузку.
            _.delay(function()
            {
                if (self.readyWindowTrigger === false)
                {
                    self.onWindowReadyBlocker   = sx.block('.sx-unblock-onWindowReady');
                }

            }, 200);


            this._initBootstrap();

            //Отключение пустых ссылок
            if (this.get("disableCetainLink", true) === true)
            {
                $('a[href^=#]').click(function (e)
                {
                    e.preventDefault()
                })
            }
{'fraction_non_alphanumeric': 0.1749547176025029, 'fraction_numerical': 0.004528239749711839, 'mean_word_length': 1.1851052347544522, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6621333', 'n_tokens_mistral': 3278, 'n_tokens_neox': 3039, 'n_words': 374}