Просмотр исходного кода

added two new classes for color, fixed so link has value color

Patrick O'Carroll 7 лет назад
Родитель
Сommit
ff0ca6b7e2
2 измененных файлов с 26 добавлено и 14 удалено
  1. 12 8
      public/app/plugins/panel/table/renderer.ts
  2. 14 6
      public/sass/components/_panel_table.scss

+ 12 - 8
public/app/plugins/panel/table/renderer.ts

@@ -216,8 +216,8 @@ export class TableRenderer {
     var cellClass = '';
 
     if (this.colorState.cell) {
-      style = ' style="background-color:' + this.colorState.cell + ';color: white"';
-      cellClasses.push('white');
+      style = ' style="background-color:' + this.colorState.cell + '"';
+      cellClasses.push('table-panel-color-cell');
       this.colorState.cell = null;
     } else if (this.colorState.value) {
       style = ' style="color:' + this.colorState.value + '"';
@@ -253,11 +253,8 @@ export class TableRenderer {
 
       cellClasses.push('table-panel-cell-link');
 
-      if (this.colorState.row) {
-        cellClasses.push('white');
-      }
       columnHtml += `
-        <a href="${cellLink}" target="${cellTarget}" data-link-tooltip data-original-title="${cellLinkTooltip}" data-placement="right">
+        <a href="${cellLink}" target="${cellTarget}" data-link-tooltip data-original-title="${cellLinkTooltip}" data-placement="right"${style}>
           ${value}
         </a>
       `;
@@ -291,6 +288,8 @@ export class TableRenderer {
     let startPos = page * pageSize;
     let endPos = Math.min(startPos + pageSize, this.table.rows.length);
     var html = '';
+    let rowClasses = [];
+    let rowClass = '';
 
     for (var y = startPos; y < endPos; y++) {
       let row = this.table.rows[y];
@@ -301,11 +300,16 @@ export class TableRenderer {
       }
 
       if (this.colorState.row) {
-        rowStyle = ' style="background-color:' + this.colorState.row + ';color: white"';
+        rowStyle = ' style="background-color:' + this.colorState.row + '"';
+        rowClasses.push('table-panel-color-row');
         this.colorState.row = null;
       }
 
-      html += '<tr ' + rowStyle + '>' + cellHtml + '</tr>';
+      if (rowClasses.length) {
+        rowClass = ' class="' + rowClasses.join(' ') + '"';
+      }
+
+      html += '<tr ' + rowClass + rowStyle + '>' + cellHtml + '</tr>';
     }
 
     return html;

+ 14 - 6
public/sass/components/_panel_table.scss

@@ -87,12 +87,6 @@
         height: 100%;
         display: inline-block;
       }
-
-      &.white {
-        a {
-          color: white;
-        }
-      }
     }
 
     &.cell-highlighted:hover {
@@ -139,3 +133,17 @@
   height: 0px;
   line-height: 0px;
 }
+
+.table-panel-color-cell {
+  color: white;
+  a {
+    color: white;
+  }
+}
+
+.table-panel-color-row {
+  color: white;
+  a {
+    color: white;
+  }
+}