2017-07-02 3 views

Antwort

0

Die Strategie unterscheidet sich geringfügig, je nachdem, ob der traditionelle DSpace-Workflow im Vergleich zum konfigurierbaren Workflow verwendet wird.

Die folgenden Antworten beziehen sich auf DSpace 5; Die Änderungen müssen möglicherweise für andere DSpace-Versionen geringfügig abweichen.

Unique IDs für Aufgaben-Tabellen (traditionelle DSpace Workflow nur)

Das erste Problem zu beheben ist, dass die beiden Tabellen die gleiche ID haben. Ändern Sie dspace-xmlui/src/main/java/org/dspace/app/xmlui/aspect/xmlworkflow/Submissions.java, um unterschiedliche IDs für die zwei Tabellen zu erstellen.

 // Tasks you own 
-  Table table = workflow.addTable("workflow-tasks",ownedItems.size() + 2,5); 
+  Table table = workflow.addTable("workflow-tasks-owned",ownedItems.size() + 2,5);  
     table.setHead(T_w_head2); 

Und ebenso für Aufgaben im Pool weiter unten in der gleichen Datei.

Fix Tabellenstruktur

ein paar Vorlagen, dass hinzufügen sicherstellen, dass die Tabellen thead/tbody/tfoot Struktur.

<xsl:template match="dri:table[@n='workflow-tasks-pooled' or @n='workflow-tasks-owned']"> 
      <xsl:apply-templates select="dri:head"/> 
      <div class="table-responsive"> 
        <table> 
          <xsl:call-template name="standardAttributes"> 
            <xsl:with-param name="class">ds-table table table-striped table-hover</xsl:with-param> 
          </xsl:call-template> 
          <xsl:apply-templates select="dri:row[1]"/> 
          <tbody> 
            <xsl:apply-templates select="dri:row[position()!=1 and position()!=last()]"/> 
          </tbody> 
          <xsl:apply-templates select="dri:row[last()]"/> 
        </table> 
      </div> 
    </xsl:template> 

    <xsl:template match="dri:table[@n='workflow-tasks-pooled' or @n='workflow-tasks-owned']/dri:row[@role='header']"> 
      <thead> 
      <tr class="ds-table-header-row"> 
        <xsl:apply-templates select="dri:cell"/> 
      </tr> 
      </thead> 
    </xsl:template> 

    <xsl:template match="dri:table[@n='workflow-tasks-pooled' or @n='workflow-tasks-owned']/dri:row[last()]"> 
      <tfoot> 
        <tr> 
          <xsl:apply-templates select="dri:cell"/> 
        </tr> 
      </tfoot> 
    </xsl:template> 

Fix JavaScript/CSS Pfade

Die Einfuhren in dspace-xmlui-mirage2/src/main/webapp/styles/classic_mirage_color_scheme/_main.scss sind nicht ganz richtig. Fix sie etwa so:

index bc58570..95444c7 100644 
--- a/dspace-xmlui-mirage2/src/main/webapp/styles/classic_mirage_color_scheme/_main.scss 
+++ b/dspace-xmlui-mirage2/src/main/webapp/styles/classic_mirage_color_scheme/_main.scss 
@@ -31,8 +31,8 @@ 
@import "classic_mirage_color_scheme/vocabulary-support"; 

@import "classic_mirage_color_scheme/jquery_ui"; 
[email protected] "classic_mirage_color_scheme/dataTables.bootstrap"; 
+//@import "classic_mirage_color_scheme/dataTables.bootstrap"; 
@import "shared/dspace-bootstrap-tweaks"; 
@import "../vendor/jquery-ui/themes/base/jquery-ui.css"; 
[email protected] "../vendor/datatables/media/css/jquery.dataTables.min.css"; 
[email protected] "../vendor/datatables/media/css/dataTables.bootstrap.css"; 
@import "style"; 

aktivieren Datentabellen Funktionalität

Dann aktivieren Sie die datatables Funktionalität nach dem zu theme.js durch Zugabe. Swap-in-Konfiguration, die für Sie funktioniert - die folgenden Änderungen werden

  • ermöglichen Seitenumbruch und Filterung, wenn es mindestens 5 Elemente in der Tabelle gibt;
  • ermöglichen die Sortierung nach allen Spalten außer der ersten (die Kontrollkästchen enthält);
  • Sortierung standardmäßig deaktivieren; und
  • in einigen Sprachen zwickt.
  • Sie müssen die IDs anpassen, wenn Sie den herkömmlichen Workflow verwenden.

    $(function() { 
    var poolTable = $('#aspect_xmlworkflow_Submissions_table_workflow-tasks-pooled'); 
    poolTable.DataTable({ 
        "paging": poolTable.find("tbody tr").size() >= 5, 
        "autoWidth": true, 
        "info": false, 
        "searching": poolTable.find("tbody tr").size() >= 5, 
        "columnDefs": [ 
         { targets: 0, orderable: false, searchable: false } 
        ], 
        "order": [], 
        "oLanguage" : { 
         "sSearch": "Filter tasks:" 
        } 
    }); 
    poolTable.closest(".dataTables_wrapper").before("<p class='help'>Click on a column header to sort the table by that column.</p>"); 
    
    var ownedTable = $('#aspect_xmlworkflow_Submissions_table_workflow-tasks-owned'); 
    ownedTable.DataTable({ 
        "paging": ownedTable.find("tbody tr").size() >= 5, 
        "autoWidth": true, 
        "info": false, 
        "searching": ownedTable.find("tbody tr").size() >= 5, 
        "columnDefs": [ 
         { targets: 0, orderable: false, searchable: false } 
        ], 
        "order": [] 
    }); 
    ownedTable.closest(".dataTables_wrapper").before("<p class='help'>Click on a column header to sort the table by that column.</p>"); 
    });