main.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. /**
  2. * @Author: Bachir Soussi Chiadmi <bach>
  3. * @Date: 16-04-2017
  4. * @Email: bachir@figureslibres.io
  5. * @Last modified by: bach
  6. * @Last modified time: 18-04-2017
  7. * @License: GPL-V3
  8. */
  9. require('normalize.css/normalize.css');
  10. require('./fonts/amiri/amiri.css');
  11. require('./fonts/dejavu/dejavu.css');
  12. require('./fonts/opensans/opensans.css');
  13. const m = require('mithril');
  14. // var marked = require('marked');
  15. // var _helpers = require('modules/helpers');
  16. const _dbs = require('./modules/dbs');
  17. const _i18n = require('./modules/i18n');
  18. const _Header = require('./modules/header');
  19. const _Footer = require('./modules/footer');
  20. const _ModeText = require('./modules/ModeText');
  21. const _ModeConnections = require('./modules/ModeConnections');
  22. var Layout = {
  23. view(vn){
  24. // console.log('Layout view : lang', vn.attrs.lang);
  25. _i18n.setLang(vn.attrs.lang);
  26. console.log('Layout view : path', m.route.get());
  27. return [
  28. m(_Header, vn.attrs),
  29. vn.children,
  30. m(_Footer, vn.attrs)
  31. ]
  32. }
  33. }
  34. function init(){
  35. _dbs.load(function(){
  36. console.log('init dbs callback');
  37. console.log("Init _dbs.data", _dbs.data);
  38. console.log("Init _dbs.data_byid", _dbs.data_byid);
  39. console.log("Init _dbs.data_strct", _dbs.data_strct);
  40. console.log("Init _dbs.types", _dbs.types);
  41. console.log("Init _dbs.data_bytype", _dbs.data_bytype);
  42. m.route.prefix("");
  43. m.route(document.body, "/fr/connections", {
  44. "/:lang/text": {
  45. onmatch(args, requestedPath){
  46. // matomo
  47. if(typeof _paq !== 'undefined'){
  48. // console.log('new path ',requestedPath);
  49. _paq.push(['setCustomUrl', requestedPath]);
  50. // _paq.push(['setDocumentTitle', e.title]);
  51. _paq.push(['setGenerationTimeMs', 0]);
  52. _paq.push(['trackPageView']);
  53. }
  54. },
  55. render(vn){
  56. // console.log('Routing render : vn', vn);
  57. return m(Layout, vn.attrs, m(_ModeText, vn.attrs));
  58. }
  59. },
  60. "/:lang/connections": {
  61. onmatch(args, requestedPath){
  62. // matomo
  63. if(typeof _paq !== 'undefined'){
  64. // console.log('new path ',requestedPath);
  65. _paq.push(['setCustomUrl', requestedPath]);
  66. // _paq.push(['setDocumentTitle', e.title]);
  67. _paq.push(['setGenerationTimeMs', 0]);
  68. _paq.push(['trackPageView']);
  69. }
  70. },
  71. render(vn){
  72. return m(Layout, vn.attrs, m(_ModeConnections, vn.attrs));
  73. }
  74. }
  75. });
  76. });
  77. };
  78. // ___
  79. // / | ____ ____
  80. // / /| | / __ \/ __ \
  81. // / ___ |/ /_/ / /_/ /
  82. // /_/ |_/ .___/ .___/
  83. // /_/ /_/
  84. // var _App = {
  85. // view(){
  86. // console.log('_App view', _lang);
  87. // return [
  88. // m('header', [
  89. // m('h1', 'Ethica'),
  90. // m('aside', {'id':"menus"}, m(_LangMenu) )
  91. // ]),
  92. // m(_Tree),
  93. // m('footer', [
  94. // m('p', m.trust('© 2017 <a href="./">Ethica Spinoza</a>'))
  95. // ])
  96. // ]
  97. // }
  98. // }
  99. // _ _ __
  100. // (_)___ (_) /_
  101. // / / __ \/ / __/
  102. // / / / / / / /_
  103. // /_/_/ /_/_/\__/
  104. init()