Skip to content
Commits on Source (13)
......@@ -39,7 +39,7 @@ stages:
- !reference [.rules-map, on-dev]
- !reference [.rules-map, not-on-semantic-release-commit]
- !reference [.rules-map, on-branch]
image: hub.eole.education/proxyhub/geoffreybooth/meteor-base:2.12
image: hub.eole.education/proxyhub/geoffreybooth/meteor-base:2.13
before_script:
- cd app
cache:
......
# The tag here should match the Meteor version of your app, per .meteor/release
FROM hub.eole.education/proxyhub/geoffreybooth/meteor-base:2.12
FROM hub.eole.education/proxyhub/geoffreybooth/meteor-base:2.13
# Copy app package.json and package-lock.json into container
COPY ./app/package*.json $APP_SOURCE_FOLDER/
......@@ -13,7 +13,7 @@ RUN bash $SCRIPTS_FOLDER/build-meteor-bundle.sh
# Rather than Node 8 latest (Alpine), you can also use the specific version of Node expected by your Meteor release, per https://docs.meteor.com/changelog.html
FROM hub.eole.education/proxyhub/library/node:14.21.3-alpine
FROM hub.eole.education/proxyhub/meteor/node:14.21.4-alpine3.17
ENV APP_BUNDLE_FOLDER /opt/bundle
ENV SCRIPTS_FOLDER /docker
......@@ -36,7 +36,7 @@ RUN bash $SCRIPTS_FOLDER/build-meteor-npm-dependencies.sh --build-from-source
# Start another Docker stage, so that the final image doesn’t contain the layer with the build dependencies
# See previous FROM line; this must match
FROM hub.eole.education/proxyhub/library/node:14.21.3-alpine
FROM hub.eole.education/proxyhub/meteor/node:14.21.4-alpine3.17
ENV APP_BUNDLE_FOLDER /opt/bundle
ENV SCRIPTS_FOLDER /docker
......
......@@ -6,7 +6,7 @@
meteor-base@1.5.1 # Packages every Meteor app needs to have
mobile-experience@1.1.0 # Packages for a great mobile UX
mongo@1.16.6 # The database Meteor supports right now
mongo@1.16.7 # The database Meteor supports right now
reactive-var@1.0.12 # Reactive variable for tracker
standard-minifier-css@1.9.2 # CSS minifier run for production mode
......
......@@ -21,7 +21,7 @@ ddp@1.4.1
ddp-client@2.6.1
ddp-common@1.4.0
ddp-rate-limiter@1.2.0
ddp-server@2.6.1
ddp-server@2.6.2
diff-sequence@1.1.2
dynamic-import@0.7.3
ecmascript@0.16.7
......@@ -49,7 +49,7 @@ localstorage@1.2.0
logging@1.3.2
matb33:collection-hooks@1.2.2
mdg:validated-method@1.3.0
meteor@1.11.2
meteor@1.11.3
meteor-base@1.5.1
meteortesting:browser-tests@1.5.1
meteortesting:mocha@2.1.0
......@@ -64,7 +64,7 @@ modern-browsers@0.1.9
modules@0.19.0
modules-runtime@0.13.1
modules-runtime-hot@0.14.2
mongo@1.16.6
mongo@1.16.7
mongo-decimal@0.1.3
mongo-dev-server@1.1.0
mongo-id@1.0.8
......
import React, { Suspense, lazy, useState, useEffect } from 'react';
import { Accounts } from 'meteor/accounts-base';
import { BrowserRouter, Switch, Route } from 'react-router-dom';
import { MatomoProvider, useMatomo } from '@datapunt/matomo-tracker-react';
import { MuiThemeProvider } from '@material-ui/core/styles';
import CssBaseline from '@material-ui/core/CssBaseline';
import Spinner from '../components/system/Spinner';
import MsgHandler from '../components/system/MsgHandler';
import DynamicStore from '../contexts/context';
import lightTheme from '../themes/light';
import instance from '../utils/matomo';
// dynamic imports
const MainLayout = lazy(() => import('./MainLayout'));
......@@ -18,8 +20,11 @@ function App() {
setUserFailed(true);
}
});
const { trackPageView, enableLinkTracking } = useMatomo();
enableLinkTracking();
useEffect(() => {
trackPageView();
return () => {
if (typeof stopCallback.stop === 'function') {
stopCallback.stop();
......@@ -43,11 +48,13 @@ function App() {
}
export default () => (
<MuiThemeProvider theme={lightTheme}>
<BrowserRouter>
<DynamicStore>
<App />
</DynamicStore>
</BrowserRouter>
</MuiThemeProvider>
<MatomoProvider value={instance}>
<MuiThemeProvider theme={lightTheme}>
<BrowserRouter>
<DynamicStore>
<App />
</DynamicStore>
</BrowserRouter>
</MuiThemeProvider>
</MatomoProvider>
);
import { createInstance } from '@datapunt/matomo-tracker-react';
const { matomo } = Meteor.settings.public;
const instance =
matomo?.urlBase && matomo?.siteIdAgenda
? createInstance({
urlBase: matomo.urlBase,
siteId: matomo.siteIdAgenda,
// userId: 'UID76903202', // optional, default value: `undefined`.
// trackerUrl: `${urlBase}/matomo.php`, // optional, default value: `${urlBase}matomo.php`
// srcUrl: `${urlBase}/matomo.js`, // optional, default value: `${urlBase}matomo.js`
disabled: false, // optional, false by default. Makes all tracking calls no-ops if set to true.
heartBeat: {
// optional, enabled by default
active: true, // optional, default value: true
seconds: 10, // optional, default value: `15
},
linkTracking: false, // optional, default value: true
configurations: {
// optional, default value: {}
// any valid matomo configuration, all below are optional
disableCookies: true,
// setSecureCookie: true,
// setRequestMethod: 'POST',
},
})
: null;
export default instance;
This diff is collapsed.
{
"name": "agenda3",
"version": "3.10.0",
"version": "3.11.0",
"license": "EUPL-1.2",
"description": "Online diary",
"author": "EOLE/PCLL <team@eole.education> - DINUM",
......@@ -15,26 +15,27 @@
"visualize": "meteor --production --extra-packages bundle-visualizer --settings ../config/settings.development.json"
},
"dependencies": {
"@babel/runtime": "^7.21.5",
"@fullcalendar/core": "^5.11.4",
"@fullcalendar/daygrid": "^5.11.4",
"@fullcalendar/interaction": "^5.11.4",
"@fullcalendar/list": "^5.11.4",
"@fullcalendar/moment-timezone": "^5.11.4",
"@fullcalendar/react": "^5.11.4",
"@fullcalendar/timegrid": "^5.11.4",
"@babel/runtime": "^7.22.15",
"@datapunt/matomo-tracker-react": "^0.5.1",
"@fullcalendar/core": "^5.11.5",
"@fullcalendar/daygrid": "^5.11.5",
"@fullcalendar/interaction": "^5.11.5",
"@fullcalendar/list": "^5.11.5",
"@fullcalendar/moment-timezone": "^5.11.5",
"@fullcalendar/react": "^5.11.5",
"@fullcalendar/timegrid": "^5.11.5",
"@material-ui/core": "^4.12.4",
"@material-ui/icons": "^4.11.3",
"@material-ui/lab": "^4.0.0-alpha.61",
"axios": "^0.21.4",
"babel-eslint": "^10.1.0",
"bcrypt": "^5.1.0",
"bcrypt": "^5.1.1",
"buffer": "^6.0.3",
"chai": "^4.3.7",
"chai": "^4.3.8",
"faker": "^5.5.3",
"fullcalendar": "^5.11.4",
"fullcalendar": "^5.11.5",
"ical-generator": "^2.2.0",
"material-icons": "^1.13.6",
"material-icons": "^1.13.11",
"meteor-node-stubs": "^1.2.5",
"moment": "^2.29.4",
"node-ical": "^0.13.0",
......@@ -60,14 +61,14 @@
"eslint-config-standard": "^14.1.1",
"eslint-import-resolver-meteor": "^0.4.0",
"eslint-plugin-i18n": "^2.1.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-jsx": "^0.1.0",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-meteor": "^7.3.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.4.1",
"eslint-plugin-promise": "^4.3.1",
"eslint-plugin-react": "^7.32.2",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-standard": "^4.1.0",
"prettier": "^2.8.8"
......
......@@ -4,6 +4,10 @@
"keycloakRealm": "",
"laboiteUrl": "",
"caldavUrl": "",
"matomo": {
"siteIdAgenda": 1,
"urlBase": ""
},
"packages": {
"dynamic-import": {
"link": "https://github.com/meteor/meteor/pull/11105",
......
# Changelog
## [3.11.0](https://gitlab.mim-libre.fr/alphabet/agenda/compare/release/3.10.0...release/3.11.0) (2023-11-07)
### Features
* **libs:** update node docker image ([a0201c3](https://gitlab.mim-libre.fr/alphabet/agenda/commit/a0201c34a74937d8c19e711241bb01a016094442))
* **libs:** update npm libs to wanted version ([066a664](https://gitlab.mim-libre.fr/alphabet/agenda/commit/066a664b5801e8c679b37cc88a4e5625a4949081))
* **libs:** update version number of meteor base ([71f0a6f](https://gitlab.mim-libre.fr/alphabet/agenda/commit/71f0a6f6fb8c4c82cdbb665bc031bcde9bb4925d))
* **matomo:** integrate matomo client ([27fa585](https://gitlab.mim-libre.fr/alphabet/agenda/commit/27fa585874eedb9bb7eb7c6ae9fbafd26cca321e))
* **node:** change node version to previous version ([4cebb92](https://gitlab.mim-libre.fr/alphabet/agenda/commit/4cebb92b8837beadf3be758402ec0a6a776397d5))
## [3.10.0](https://gitlab.mim-libre.fr/alphabet/agenda/compare/release/3.9.0...release/3.10.0) (2023-08-24)
......