{"version":3,"sources":["Produit/Static/Documents.js"],"names":["window","require","$","renders","fn","dataTable","ext","errMode","i18n","length","cols","name","orderable","title","sType","visible","createdCell","createdCellReturn","className","type","sPays","sLangue","dtPublication","render","renderDate","renderImgPDF","forEach","x","treeSpecs","$dom","filterCol","i","tree","attr","quantatree2","allSelectedText","displayCheckboxAll","displayFilter","on","e","$treeDom","currentTarget","applyFilter","initialize_trees","data","JSON","parse","val","tableApi","DataTable","columns","autoWidth","lengthMenu","pagingType","pageLength","processing","serverSide","dom","language","sProcessing","sSearch","sLengthMenu","sInfo","sInfoEmpty","sInfoFiltered","sInfoPostFix","sLoadingRecords","sZeroRecords","sEmptyTable","oPaginate","sFirst","sPrevious","sNext","sLast","oAria","sSortAscending","sSortDescending","_getLanguageOptionsDataTable","order","search","regex","sfilterName","keys","regExp","sInput","replace","escapeSpecialCaracters","join","column","draw"],"mappings":"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","file":"Documents.js","sourcesContent":["window[\"define\"](function (require) {\r\n //#region Dépendances du module\r\n var $ = require(\"jquery\");\r\n var DataTable = require(\"datatables.net\");\r\n require(\"datatables.bootstrap\");\r\n var renders = require(\"datatables.render.methods\");\r\n require('dataTables.fixedHeader.min');\r\n //Pour que DataTables.net throw les erreurs dans la console au lieu d'un alert()\r\n $.fn.dataTable.ext.errMode = 'throw';\r\n var quantatree2 = require(\"quantatree2\");\r\n var i18n = require(\"i18n\");\r\n //#endregion\r\n $(function onDomReady() {\r\n var bIsSectionVisible = $('#documents').length && $('.treeTypes').length;\r\n if (!bIsSectionVisible) {\r\n return;\r\n }\r\n var cols = [\r\n { name: \"sDocType\", orderable: true, title: i18n.sType, visible: true, createdCell: renders.createdCellReturn, className: \"text-left\", type: \"string\" },\r\n { name: \"sDocType_Code\", visible: false, type: \"string\" },\r\n { name: \"sPays\", orderable: false, title: i18n.sPays, visible: true, createdCell: renders.createdCellReturn, className: \"text-left\", type: \"string\" },\r\n { name: \"sPays_Code\", visible: false, type: \"string\" },\r\n { name: \"sLangue\", orderable: true, title: i18n.sLangue, visible: true, createdCell: renders.createdCellReturn, className: \"text-left\", type: \"string\" },\r\n { name: \"sLangue_Code\", visible: false, type: \"string\" },\r\n { name: \"dtPublication\", orderable: true, title: i18n.dtPublication, visible: true, render: renders.renderDate, type: \"string\" },\r\n { name: \"sURL\", visible: true, orderable: false, render: renders.renderImgPDF },\r\n ];\r\n //applique un attribut col.data = col.name sur toute les colonnes\r\n cols.forEach(function (x) { return x['data'] = x['data'] || x.name; });\r\n initialize_trees();\r\n var data = JSON.parse($(\"#DataDocuments\").val());\r\n var tableApi = $('.qt-search-table').DataTable({\r\n columns: cols,\r\n data: data,\r\n autoWidth: true,\r\n lengthMenu: [[10, 25, 50, 100], [10, 25, 50, 100]],\r\n pagingType: \"numbers\",\r\n pageLength: 25,\r\n processing: true,\r\n serverSide: false,\r\n dom: \"<'dataTableFooter'pil><'clearfix'>\",\r\n language: _getLanguageOptionsDataTable(i18n),\r\n order: [[2, \"asc\"]],\r\n search: {\r\n 'regex': false,\r\n }\r\n });\r\n // Initialise les arbres des filtres\r\n function initialize_trees() {\r\n var treeSpecs = [\r\n {\r\n $dom: $(\".treePays\"),\r\n title: i18n.sPays,\r\n filterCol: \"sPays_Code\"\r\n },\r\n {\r\n $dom: $(\".treeTypes\"),\r\n title: i18n.sType,\r\n filterCol: \"sDocType_Code\"\r\n },\r\n {\r\n $dom: $(\".treeLangues\"),\r\n title: i18n.sLangue,\r\n filterCol: \"sLangue_Code\"\r\n },\r\n ];\r\n for (var i = 0; i < treeSpecs.length; i++) {\r\n var tree = treeSpecs[i];\r\n tree.$dom.attr('data-filter', tree.filterCol);\r\n tree.$dom.quantatree2({\r\n allSelectedText: tree.title,\r\n displayCheckboxAll: false,\r\n displayFilter: false,\r\n });\r\n tree.$dom.on('click', function (e) {\r\n var $treeDom = $(e.currentTarget);\r\n applyFilter($treeDom);\r\n });\r\n }\r\n }\r\n /**\r\n * Applique un filtre recherche sous la forme de RegExp pour trouver plusieurs valeurs\r\n * @param $treeDom balise div de l'arbre concerné\r\n */\r\n function applyFilter($treeDom) {\r\n var sfilterName = $treeDom.attr('data-filter');\r\n var keys = $treeDom.quantatree2(\"getSelectedKeys\");\r\n if (keys.length > 0) {\r\n var regExp = '(' + escapeSpecialCaracters(keys.join('|')) + ')';\r\n tableApi.column(sfilterName + \":name\").search(regExp, true, false).draw();\r\n }\r\n else {\r\n tableApi.column(sfilterName + \":name\").search('').draw();\r\n }\r\n }\r\n function _getLanguageOptionsDataTable(i18n) {\r\n return {\r\n \"sProcessing\": i18n.sProcessing,\r\n \"sSearch\": i18n.sSearch,\r\n \"sLengthMenu\": i18n.sLengthMenu,\r\n \"sInfo\": i18n.sInfo,\r\n \"sInfoEmpty\": i18n.sInfoEmpty,\r\n \"sInfoFiltered\": i18n.sInfoFiltered,\r\n \"sInfoPostFix\": i18n.sInfoPostFix,\r\n \"sLoadingRecords\": i18n.sLoadingRecords,\r\n \"sZeroRecords\": i18n.sZeroRecords,\r\n \"sEmptyTable\": i18n.sEmptyTable,\r\n \"oPaginate\": {\r\n \"sFirst\": i18n[\"oPaginate.sFirst\"],\r\n \"sPrevious\": i18n[\"oPaginate.sPrevious\"],\r\n \"sNext\": i18n[\"oPaginate.sNext\"],\r\n \"sLast\": i18n[\"oPaginate.sLast\"]\r\n },\r\n \"oAria\": {\r\n \"sSortAscending\": i18n[\"oAria.sSortAscending\"],\r\n \"sSortDescending\": i18n[\"oAria.sSortDescending\"]\r\n }\r\n };\r\n }\r\n /**\r\n * échape les caractères spécieux pour les regexp\r\n * @param sInput String d'entrée\r\n */\r\n function escapeSpecialCaracters(sInput) {\r\n return sInput.replace(/[()]/g, '\\\\$&');\r\n }\r\n });\r\n});\r\n//# sourceMappingURL=Documents.js.map"]}