test jstree

by Lorenzo Brutti

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jstree/3.3.5/jstree.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jstree/3.2.1/themes/default/style.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
<div id="jstree_demo_div_ajax"></div>
<div id="currentDocument">
</div>

JavaScript

var parseEkrHierarchy = function(data) {
  if (_.isEmpty(data)) {
    return;
  }
  var parsedNode = {
    id: data.codice,
    text: data.nome,
    children: _.map(data.nodo, parseEkrHierarchy),
    customData: data.codice_ekb,
    nodeType: data.informazioni
  };
  return parsedNode;
};

var loadPalletHtml = function(oParams) {
  $.getJSON({
    url: 'http://piqtt.ddns.net:9080//wp_clean/wp-json/ekr/v1/pallet_html/' + oParams.palletCode + '/' + oParams.pageSlug,
    contentType: "application/json",
    success: function(html) {
      $('#currentDocument').html(html);
    }
  });
};

$('#jstree_demo_div_ajax').ready(function() {
  $.post({
    url: 'http://piqtt.ddns.net:9080/wp_clean/wp-json/ekr/v1/hierarchy/PRODOTTI_RICERCABILI_ROOT',
    contentType: "application/json",
    success: function(data) {
      $('#jstree_demo_div_ajax').jstree({
        'core': {
          'data': [
            parseEkrHierarchy(data[0])
          ]
        },
        'plugins': ['search', 'ui']
      }).bind('select_node.jstree', function(oEvent, data) {
        var oParams = {
          'palletCode': data.node.original.customData[0],
          'pageSlug': 'test_per_rest_ws'
        }
        loadPalletHtml(oParams);
      });
    }
  });
});