| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- // Licensed to Cloudera, Inc. under one
- // or more contributor license agreements. See the NOTICE file
- // distributed with this work for additional information
- // regarding copyright ownership. Cloudera, Inc. licenses this file
- // to you under the Apache License, Version 2.0 (the
- // "License"); you may not use this file except in compliance
- // with the License. You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- $.fn.extend({
- treed: function (o) {
- var openedClass = 'fa-angle-down';
- var closedClass = 'fa-angle-right';
- var tree = $(this);
- tree.addClass("tree");
- tree.find('li').has("ul").each(function () {
- var branch = $(this);
- branch.prepend("<i class='indicator fa fa-fw " + openedClass + "'></i>");
- branch.addClass('branch');
- branch.on('click', function (e) {
- if (this == e.target) {
- var icon = $(this).children('i:first');
- icon.toggleClass(openedClass + " " + closedClass);
- $(this).children().children().toggle();
- $(this).children().children().each(function () {
- var child = $(this);
- child.find('i:first').height(child.find('a').height() - 6);
- });
- }
- });
- });
- tree.find('li').not(":has(ul)").each(function () {
- var branch = $(this);
- branch.prepend("<i class='indicator fa fa-fw fa-empty'></i>");
- });
- tree.find('.branch .indicator').each(function () {
- $(this).on('click', function () {
- $(this).closest('li').click();
- });
- });
- tree.find('.branch>a').each(function () {
- $(this).on('click', function (e) {
- $(this).closest('li').click();
- });
- });
- }
- });
|