Code Duplication    Length = 43-43 lines in 2 locations

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

@@ 1683-1725 (lines=43) @@
1680
        }
1681
        this._selectors = parseChunks(selector, []);
1682
      },
1683
      match: function (control, selectors) {
1684
        var i, l, si, sl, selector, fi, fl, filters, index, length, siblings, count, item;
1685
        selectors = selectors || this._selectors;
1686
        for (i = 0, l = selectors.length; i < l; i++) {
1687
          selector = selectors[i];
1688
          sl = selector.length;
1689
          item = control;
1690
          count = 0;
1691
          for (si = sl - 1; si >= 0; si--) {
1692
            filters = selector[si];
1693
            while (item) {
1694
              if (filters.pseudo) {
1695
                siblings = item.parent().items();
1696
                index = length = siblings.length;
1697
                while (index--) {
1698
                  if (siblings[index] === item) {
1699
                    break;
1700
                  }
1701
                }
1702
              }
1703
              for (fi = 0, fl = filters.length; fi < fl; fi++) {
1704
                if (!filters[fi](item, index, length)) {
1705
                  fi = fl + 1;
1706
                  break;
1707
                }
1708
              }
1709
              if (fi === fl) {
1710
                count++;
1711
                break;
1712
              } else {
1713
                if (si === sl - 1) {
1714
                  break;
1715
                }
1716
              }
1717
              item = item.parent();
1718
            }
1719
          }
1720
          if (count === sl) {
1721
            return true;
1722
          }
1723
        }
1724
        return false;
1725
      },
1726
      find: function (container) {
1727
        var matches = [], i, l;
1728
        var selectors = this._selectors;

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

@@ 1143-1185 (lines=43) @@
1140
        }
1141
        this._selectors = parseChunks(selector, []);
1142
      },
1143
      match: function (control, selectors) {
1144
        var i, l, si, sl, selector, fi, fl, filters, index, length, siblings, count, item;
1145
        selectors = selectors || this._selectors;
1146
        for (i = 0, l = selectors.length; i < l; i++) {
1147
          selector = selectors[i];
1148
          sl = selector.length;
1149
          item = control;
1150
          count = 0;
1151
          for (si = sl - 1; si >= 0; si--) {
1152
            filters = selector[si];
1153
            while (item) {
1154
              if (filters.pseudo) {
1155
                siblings = item.parent().items();
1156
                index = length = siblings.length;
1157
                while (index--) {
1158
                  if (siblings[index] === item) {
1159
                    break;
1160
                  }
1161
                }
1162
              }
1163
              for (fi = 0, fl = filters.length; fi < fl; fi++) {
1164
                if (!filters[fi](item, index, length)) {
1165
                  fi = fl + 1;
1166
                  break;
1167
                }
1168
              }
1169
              if (fi === fl) {
1170
                count++;
1171
                break;
1172
              } else {
1173
                if (si === sl - 1) {
1174
                  break;
1175
                }
1176
              }
1177
              item = item.parent();
1178
            }
1179
          }
1180
          if (count === sl) {
1181
            return true;
1182
          }
1183
        }
1184
        return false;
1185
      },
1186
      find: function (container) {
1187
        var matches = [], i, l;
1188
        var selectors = this._selectors;