colors.js 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. // set all the relative to parts colors
  2. if (debug) console.log('start colors');
  3. (function() {
  4. const colors = [
  5. '#5595a1',
  6. '#5f9796',
  7. '#65998d',
  8. '#6f9b80',
  9. '#799e75',
  10. '#83a16b',
  11. '#8ba460',
  12. '#95a358',
  13. '#9ca151',
  14. '#a59d4a',
  15. '#af9944',
  16. '#b8963d',
  17. '#c19238',
  18. '#cb8e31',
  19. '#cb6f31',
  20. '#d86145'
  21. ];
  22. const sprays = [
  23. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page001.png',
  24. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page002.png',
  25. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page003.png',
  26. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page004.png',
  27. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page005.png',
  28. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page006.png',
  29. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page007.png',
  30. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page008.png',
  31. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page009.png',
  32. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page010.png',
  33. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page011.png',
  34. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page012.png',
  35. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page013.png',
  36. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page014.png',
  37. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page015.png',
  38. '/user/themes/carnet-atterrissage/assets/sprays/spary_couleurs-page016.png'
  39. ];
  40. let allPages = document.querySelectorAll('.pagedjs_page');
  41. let atelierColor = '';
  42. let bgColor = 'rgb(245, 245, 245)';
  43. let atelierIndex = 0;
  44. for (let page of allPages) {
  45. if (page.firstElementChild.classList.contains('atelier_cover_page')) {
  46. atelierColor = colors[atelierIndex];
  47. if (atelierColor == undefined) atelierColor = colors[colors.length];
  48. atelierIndex++;
  49. }
  50. if (page.firstElementChild.classList.contains('partie_cover_page')) atelierIndex = 0;
  51. let pageCounter = page.querySelector('.pagedjs_margin-left-middle')
  52. if (pageCounter) pageCounter.style.color = atelierColor;
  53. let citations = page.querySelectorAll('.citation');
  54. for (let citation of citations) {
  55. // dessiner et colorer les guillemets
  56. if (citation.innerText.charAt(0) === '“') citation.innerText = citation.innerText.substring(1);
  57. if (citation.innerText.charAt(citation.innerText.length - 1) === '”') {
  58. citation.innerText = citation.innerText.substring(0, citation.innerText.length - 1);
  59. }
  60. let guillemetOuvrant = document.createElement('div');
  61. guillemetOuvrant.innerText = '“';
  62. guillemetOuvrant.style.color = atelierColor;
  63. guillemetOuvrant.classList.add('guillement_ouvrant');
  64. citation.prepend(guillemetOuvrant);
  65. let guillemetFermant = document.createElement('div');
  66. guillemetFermant.innerText = '”';
  67. guillemetFermant.style.color = atelierColor;
  68. guillemetFermant.classList.add('guillement_fermant');
  69. citation.append(guillemetFermant);
  70. }
  71. let atelierTitle = page.querySelector('h3');
  72. if (atelierTitle) atelierTitle.style.color = atelierColor;
  73. let bibliographie = page.querySelector('.bibliographie');
  74. if (bibliographie) {
  75. bibliographie.style.color = atelierColor;
  76. // set bg et sprays
  77. let bibliographiePage = bibliographie.closest('.pagedjs_page');
  78. bibliographiePage.style.backgroundColor = bgColor;
  79. if (bibliographiePage.classList.contains('pagedjs_left_page')) {
  80. let sprayImg = document.createElement('img');
  81. sprayImg.setAttribute('src', sprays[atelierIndex - 1]);
  82. sprayImg.style.height = "242mm";
  83. sprayImg.style.width = "60mm";
  84. sprayImg.style.position = "absolute";
  85. sprayImg.style.top = "-22mm";
  86. sprayImg.style.right = "-20mm";
  87. sprayImg.style.mixBlendMode = "multiply";
  88. sprayImg.style.opacity = "0.75";
  89. if (!bibliographiePage.nextElementSibling.querySelector('.bibliographie')) {
  90. bibliographiePage.nextElementSibling.style.backgroundColor = bgColor;
  91. }
  92. bibliographiePage.nextElementSibling.querySelector('.pagedjs_page_content').appendChild(sprayImg);
  93. }
  94. }
  95. let h4 = page.querySelector('h4');
  96. if (h4 && h4?.nextElementSibling?.classList.contains('bibliographie')) {
  97. h4.style.color = atelierColor;
  98. }
  99. let serpentins = document.querySelectorAll('img[alt="serpentin"]');
  100. for (let serpentin of serpentins) {
  101. let page = serpentin.closest('.pagedjs_page');
  102. let nextPage = page.nextElementSibling;
  103. page.style.backgroundColor = "rgb(245, 245, 245)";
  104. nextPage.style.backgroundColor = "rgb(245, 245, 245)";
  105. }
  106. let links = page.querySelectorAll('a');
  107. for (let link of links) {
  108. link.style.color = atelierColor;
  109. }
  110. let notesNumber = page.querySelectorAll('.note, .note_texte_number');
  111. for (let note of notesNumber) {
  112. note.style.color = atelierColor;
  113. }
  114. if (atelierColor) {
  115. let lightColor = `${atelierColor}1a`;
  116. let encarts = page.querySelectorAll('.lampe, .latour, .lampe_nohead, .latour_nohead, .encart-split');
  117. for (let encart of encarts) {
  118. encart.style.backgroundColor = lightColor;
  119. }
  120. }
  121. }
  122. })();
  123. if (debug) console.log('end colors');