OCA reporting engine fork for dev and update.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
3.0 KiB

  1. <odoo>
  2. <template id="minimal_layout" inherit_id="web.minimal_layout">
  3. <xpath expr="//t[@t-if='subst_needed']" position="replace">
  4. <t t-if="subst is True">
  5. <script>
  6. function subst() {
  7. var vars = {};
  8. var x = document.location.search.substring(1).split('&amp;');
  9. for (var i in x) {
  10. var z = x[i].split('=', 2);
  11. vars[z[0]] = unescape(z[1]);
  12. }
  13. var fromPage = document.getElementsByClassName('page');
  14. for(var j = 0; j&lt;fromPage.length; j++)
  15. fromPage[j].textContent = vars['sitepage'];
  16. var toPage = document.getElementsByClassName('topage');
  17. for(var j = 0; j&lt;toPage.length; j++)
  18. toPage[j].textContent = vars['sitepages'];
  19. var index = vars['webpage'].split('.', 4)[3]
  20. var header = document.getElementById('minimal_layout_report_headers');
  21. if(header !== null){
  22. var companyHeader = header.children[index];
  23. header.textContent = '';
  24. header.appendChild(companyHeader);
  25. }
  26. var footer = document.getElementById('minimal_layout_report_footers');
  27. if(footer !== null){
  28. var companyFooter = footer.children[index];
  29. footer.textContent = '';
  30. footer.appendChild(companyFooter);
  31. }
  32. var operations = {
  33. 'not-first-page': function (elt) {
  34. elt.style.visibility = (vars.sitepage === vars.frompage) ? "hidden" : "visible";
  35. },
  36. 'not-last-page': function (elt) {
  37. elt.style.visibility = (vars.sitepage === vars.sitepages) ? "hidden" : "visible";
  38. },
  39. 'first-page': function (elt) {
  40. elt.style.visibility = (vars.sitepage === vars.frompage) ? "visible" : "hidden";
  41. },
  42. 'last-page': function (elt) {
  43. elt.style.visibility = (vars.sitepage === vars.sitepages) ? "visible" : "hidden";
  44. },
  45. };
  46. for (var klass in operations) {
  47. var y = document.getElementsByClassName(klass);
  48. for (var j=0; j&lt;y.length; ++j)
  49. operations[klass](y[j]);
  50. }
  51. }
  52. </script>
  53. </t>
  54. </xpath>
  55. </template>
  56. </odoo>