Commit 59b3a5a9 authored by Jerome Chauveau's avatar Jerome Chauveau
Browse files

debug side toc -> le js était importé 2 fois (template html + auto import...

debug side toc -> le js était importé 2 fois (template html + auto import plugin) + suppression config circe du template de config de base ead
parent a64bfe59
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -103,6 +103,16 @@ Voici un exemple de configuration du plugin de recherche :
 * **backToTextId**: xpath à suivre pour les liens de retour au texte sur les éléments de résultat
 
 
 
### EAD basket

CSS et JS importés de base dans une édition TEI (depuis le template HTML). Ne doit donc pas être ajouté à la liste des
plugins déclarés dans la configuration de l'édition.

### Side toc 

Doit être déclaré dans une édition EAD.
 
## Plugins et dépendances Javascript
 
Certains plugins ont des dépendances vers des librairies js (ex : *img_viewer* requiert *OpenSeadragon*).
+22 −1
Original line number Diff line number Diff line
function highlightTreeNode(id) {
import {Plugin} from '../../core/ui/js/Plugin.js';




class SideTocPlugin extends Plugin{
  constructor(name) {
    super(name);
  }

  run(){
    console.log("plugin side toc running");
    if(document.getElementById('text') && document.getElementById(fragmentId)){
        this.highlightTreeNode('details_'+fragmentId)
    }
   }

   highlightTreeNode(id) {
       let selected_details = document.getElementById(id);
       if (selected_details) {
           selected_details.setAttribute("open", "open");
@@ -18,3 +35,7 @@ function highlightTreeNode(id) {
           selected_details.scrollIntoView({block: "center"});
       }
   }
}

MAX.addPlugin(new SideTocPlugin('SideToc'));
+5 −5
Original line number Diff line number Diff line
@@ -133,18 +133,18 @@ as element(script)*
    let $pluginsFolder := file:parent(file:parent(static-base-uri())) || $max.cons:PLUGIN_FOLDER_NAME
    let $pluginsJS :=
        for $plugin in max.config:getPluginNameList($projectId)
        for $file in file:list($pluginsFolder || "/" || $plugin, true(), "*.js")
        for $file in file:list($pluginsFolder || "/" || $plugin, true(), $plugin||".js")
        let $publicjs := max.config:getBaseURI() || "plugins/" || $plugin || '/' ||
        substring-before($file, ".") || ".js"
        return
            <script  type="module"
            src="{$publicjs}"></script>

    let $envJS := if (max.config:getXMLFormat($projectId) = $max.cons:EAD)
    then ()  (: TODO include Sortable.js and ead.js :)
    else ()
(:    let $envJS := if (max.config:getXMLFormat($projectId) = $max.cons:EAD):)
(:    then ()  :)(: TODO include Sortable.js and ead.js :)
(:    else ():)

    return ($envJS, $projectJS, $pluginsJS)
    return ($projectJS, $pluginsJS)

};

+0 −7
Original line number Diff line number Diff line
@@ -8,13 +8,6 @@

    <plugins>
       <plugin name="side_toc"/>
       <plugin name="ead_basket">
          <parameters>
             <parameter key="CIRCE_ENDPOINT" value="https://..."/>
             <parameter key="CIRCE_SECRET" value="..."/>
             <parameter key="CIRCE_APP_UUID" value="..."/>
          </parameters>
       </plugin>
    </plugins>
   
 </edition>
+0 −1
Original line number Diff line number Diff line
@@ -99,7 +99,6 @@ function initBasketCheckbox(project_id, doc_name, cid) {
async function initEADPage() {
    let textElement = document.getElementById('text')
    if(textElement){
        highlightTreeNode("details_" + fragmentId);//side_toc plugin's function
        initBasketCheckbox(projectId, route, fragmentId);
    }
    if(projectId) {  // should be declared globally in page
Loading