| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // 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.
- function getStatusClass(status, prefix) {
- if (prefix == null) {
- prefix = "label-";
- }
- var klass = "";
- if (['SUCCEEDED', 'OK', 'DONE'].indexOf(status) > -1) {
- klass = prefix + "success";
- }
- else if (['RUNNING', 'READY', 'PREP', 'WAITING', 'SUSPENDED', 'PREPSUSPENDED', 'PREPPAUSED', 'PAUSED',
- 'SUBMITTED',
- 'SUSPENDEDWITHERROR',
- 'PAUSEDWITHERROR'].indexOf(status) > -1) {
- klass = prefix + "warning";
- }
- else {
- klass = prefix + "important";
- if (prefix == "bar-") {
- klass = prefix + "danger";
- }
- }
- return klass;
- }
- function emptyStringIfNull(obj) {
- if (obj != null && obj != undefined) {
- return obj;
- }
- return "";
- }
- var PersistedButtonsFilters = function (oSettings, aData, iDataIndex) {
- var urlHashes = "";
- var statusBtn = $("a.btn-status.active");
- var statusFilter = true;
- if (statusBtn.length > 0) {
- var statuses = [];
- $.each(statusBtn, function () {
- statuses.push($(this).attr("data-value"));
- });
- var _statusColumn = aData[2];
- if (typeof $(_statusColumn).attr("data-type") == "undefined") {
- _statusColumn = aData[1];
- }
- statusFilter = _statusColumn.match(RegExp(statuses.join('|'), "i")) != null;
- }
- var dateBtn = $("a.btn-date.active");
- var dateFilter = true;
- if (dateBtn.length > 0) {
- var minAge = new Date() - parseInt(dateBtn.attr("data-value")) * 1000 * 60 * 60 * 24;
- var _dateColumn = aData[1];
- if (typeof $(_dateColumn).attr("data-type") == "undefined" || $(_dateColumn).attr("data-type") == "status") {
- _dateColumn = aData[0];
- }
- if (typeof _dateColumn == "string") {
- _dateColumn = $(_dateColumn).attr("data-sort-value");
- }
- dateFilter = _dateColumn * 1000 >= minAge;
- }
- var submittedBtn = $("a.btn-submitted.active");
- var submittedByFilter = true;
- if (submittedBtn.length > 0) {
- var statuses = [];
- $.each(submittedBtn, function () {
- statuses.push($(this).attr("data-value"));
- });
- var _statusColumn = aData[aData.length - 1];
- if (statuses.length == 1) {
- if (statuses[0] == 'MANUALLY') {
- submittedByFilter = _statusColumn == null;
- } else {
- submittedByFilter = _statusColumn != null;
- }
- }
- }
- return statusFilter && dateFilter && submittedByFilter;
- }
|