Code Duplication    Length = 41-41 lines in 2 locations

public/js/tinymce/themes/inlite/theme.js 1 location

@@ 8871-8911 (lines=41) @@
8868
        }
8869
        return this;
8870
      },
8871
      bindStates: function () {
8872
        var self = this;
8873
        function activateMenuItemsByValue(menu, value) {
8874
          if (menu instanceof Menu) {
8875
            menu.items().each(function (ctrl) {
8876
              if (!ctrl.hasMenus()) {
8877
                ctrl.active(ctrl.value() === value);
8878
              }
8879
            });
8880
          }
8881
        }
8882
        function getSelectedItem(menuValues, value) {
8883
          var selectedItem;
8884
          if (!menuValues) {
8885
            return;
8886
          }
8887
          for (var i = 0; i < menuValues.length; i++) {
8888
            if (menuValues[i].value === value) {
8889
              return menuValues[i];
8890
            }
8891
            if (menuValues[i].menu) {
8892
              selectedItem = getSelectedItem(menuValues[i].menu, value);
8893
              if (selectedItem) {
8894
                return selectedItem;
8895
              }
8896
            }
8897
          }
8898
        }
8899
        self.on('show', function (e) {
8900
          activateMenuItemsByValue(e.control, self.value());
8901
        });
8902
        self.state.on('change:value', function (e) {
8903
          var selectedItem = getSelectedItem(self.state.get('menu'), e.value);
8904
          if (selectedItem) {
8905
            self.text(selectedItem.text);
8906
          } else {
8907
            self.text(self.settings.text);
8908
          }
8909
        });
8910
        return self._super();
8911
      }
8912
    });
8913
8914
    var toggleTextStyle = function (ctrl, state) {

public/js/tinymce/themes/modern/theme.js 1 location

@@ 8679-8719 (lines=41) @@
8676
        }
8677
        return this;
8678
      },
8679
      bindStates: function () {
8680
        var self = this;
8681
        function activateMenuItemsByValue(menu, value) {
8682
          if (menu instanceof Menu) {
8683
            menu.items().each(function (ctrl) {
8684
              if (!ctrl.hasMenus()) {
8685
                ctrl.active(ctrl.value() === value);
8686
              }
8687
            });
8688
          }
8689
        }
8690
        function getSelectedItem(menuValues, value) {
8691
          var selectedItem;
8692
          if (!menuValues) {
8693
            return;
8694
          }
8695
          for (var i = 0; i < menuValues.length; i++) {
8696
            if (menuValues[i].value === value) {
8697
              return menuValues[i];
8698
            }
8699
            if (menuValues[i].menu) {
8700
              selectedItem = getSelectedItem(menuValues[i].menu, value);
8701
              if (selectedItem) {
8702
                return selectedItem;
8703
              }
8704
            }
8705
          }
8706
        }
8707
        self.on('show', function (e) {
8708
          activateMenuItemsByValue(e.control, self.value());
8709
        });
8710
        self.state.on('change:value', function (e) {
8711
          var selectedItem = getSelectedItem(self.state.get('menu'), e.value);
8712
          if (selectedItem) {
8713
            self.text(selectedItem.text);
8714
          } else {
8715
            self.text(self.settings.text);
8716
          }
8717
        });
8718
        return self._super();
8719
      }
8720
    });
8721
8722
    var toggleTextStyle = function (ctrl, state) {