Remove header in activities component

Add Button in child (card)
Add my schedules
Add scheduler module
Plus clean up architecture and code
This commit is contained in:
Mathieu Sanchez 2019-06-04 16:19:55 +09:00
parent b172d1b37c
commit 7e7bc572d8
18 changed files with 347 additions and 61 deletions

266
package-lock.json generated
View File

@ -945,6 +945,192 @@
"semver-intersect": "1.4.0"
}
},
"@syncfusion/ej2-angular-base": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-angular-base/-/ej2-angular-base-17.1.49.tgz",
"integrity": "sha512-XmDkXZ2lhGeTtI82+gRIUkCp8LaI9WGAWUUCaeedfXyfrmiU9JP7COEJP3X9bzQOpq9Jmq5hoWuCWl2sW0WDyw==",
"requires": {
"@syncfusion/ej2-base": "~17.1.49",
"core-js": "^2.4.1",
"reflect-metadata": "^0.1.9",
"rxjs": "^5.0.0",
"zone.js": "^0.7.2"
},
"dependencies": {
"rxjs": {
"version": "5.5.12",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz",
"integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==",
"requires": {
"symbol-observable": "1.0.1"
}
},
"symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ="
},
"zone.js": {
"version": "0.7.8",
"resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.7.8.tgz",
"integrity": "sha1-Tz/og01EWX8mOQU6D6Q43zT//e0="
}
}
},
"@syncfusion/ej2-angular-schedule": {
"version": "17.1.48",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-angular-schedule/-/ej2-angular-schedule-17.1.48.tgz",
"integrity": "sha512-4wQ59uy1Stw25wr2wKaWuffh2Vp4ZaXEAkDrdPvKo414CEj8d3Elo+BaBZOXUE5wb8XM3rmZrUeg+yk75fkMNg==",
"requires": {
"@syncfusion/ej2-angular-base": "~17.1.47",
"@syncfusion/ej2-base": "~17.1.48",
"@syncfusion/ej2-schedule": "17.1.48"
}
},
"@syncfusion/ej2-base": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-base/-/ej2-base-17.1.49.tgz",
"integrity": "sha512-KssPWOZfJC3ekBXP5j9l+1lpIac3RfxfwZHyUqnyv53wFBBvW0cAQuZLBjmJbPDPZwvFi0INs5BKoEmuduM15Q==",
"requires": {
"@syncfusion/ej2-icons": "~17.1.47"
}
},
"@syncfusion/ej2-buttons": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-buttons/-/ej2-buttons-17.1.47.tgz",
"integrity": "sha512-gRtX0djbQSFtdguO83hj5ADiS7e1P2tf2kTEjH82ZArPSvJ6Pamt8O1EerUdgFPcc/YyPiphBJ369gny7tG0cg==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47"
}
},
"@syncfusion/ej2-calendars": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-calendars/-/ej2-calendars-17.1.49.tgz",
"integrity": "sha512-RfqGnLwk2Wqy7zeblWXPo52NK7G6WXuqF6UGOU1UZp9RTH6Z8nkEqRNK4QtQrrW+Uy+Tl07/ydqvh/K+R68Tgg==",
"requires": {
"@syncfusion/ej2-base": "~17.1.49",
"@syncfusion/ej2-buttons": "~17.1.47",
"@syncfusion/ej2-inputs": "~17.1.49",
"@syncfusion/ej2-lists": "~17.1.47",
"@syncfusion/ej2-popups": "~17.1.47"
}
},
"@syncfusion/ej2-compression": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-compression/-/ej2-compression-17.1.47.tgz",
"integrity": "sha512-EQbTzq6ib4lwrFu3MpKlxf8IEqy5RJW5fhMAyw4mHMSq0o5etbI5IUoJDXtey9R9ZoZ2xT5CDPMlSB1UWjlVng==",
"requires": {
"@syncfusion/ej2-file-utils": "~17.1.47"
}
},
"@syncfusion/ej2-data": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-data/-/ej2-data-17.1.47.tgz",
"integrity": "sha512-Sx5S4Xq3FZl9OH8ZManijRoFZlkO6v9tquyezrE6cg0c21joLABzrNWZNiHRVO4yIdRljsSf+tNTP0nxoaWruQ==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47"
}
},
"@syncfusion/ej2-dropdowns": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-dropdowns/-/ej2-dropdowns-17.1.49.tgz",
"integrity": "sha512-N8rFBzHnMnitFdJDO8rb1lIB7ZWnQ56EAOrL9H52phavDA/IQEQCs40cm69smQe5C29VRe9wvwDkP/WmKn3i2Q==",
"requires": {
"@syncfusion/ej2-base": "~17.1.49",
"@syncfusion/ej2-data": "~17.1.47",
"@syncfusion/ej2-inputs": "~17.1.49",
"@syncfusion/ej2-lists": "~17.1.47",
"@syncfusion/ej2-popups": "~17.1.47"
}
},
"@syncfusion/ej2-excel-export": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-excel-export/-/ej2-excel-export-17.1.47.tgz",
"integrity": "sha512-jprXNCzPl62A1rahiLN9l9d2L3Yx/q929wpvDTmQf4R5l9Q+dALMn+G7Gw6htJAntdg2htOdbYxnfgNUque5aA==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47",
"@syncfusion/ej2-compression": "~17.1.47"
}
},
"@syncfusion/ej2-file-utils": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-file-utils/-/ej2-file-utils-17.1.47.tgz",
"integrity": "sha512-656yi7HJBRGpGmWngZFBB7di5iTzjzE+Gk8aOYMOaZSmTbGFEU7SNR28G41UkqSr+HXnHrrWFc32SneIu3uXiQ=="
},
"@syncfusion/ej2-icons": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-icons/-/ej2-icons-17.1.47.tgz",
"integrity": "sha512-g822Rce4GxOkIoqrZ+2C+1oDjDhL3MZ4nbE0dAGaydYSsiOqkuBEwNgV2eupR41QCg6ic93IbhiPmHCKG4HoBA=="
},
"@syncfusion/ej2-inputs": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-inputs/-/ej2-inputs-17.1.49.tgz",
"integrity": "sha512-pvqAb4MuzziXY0oXZ5+8/hAEVRaOcnJorc1xp3EAm1mfnOgjmWBgt1qR2XI+lZmfq7ZeJdIZ8omExWOdZz7YJg==",
"requires": {
"@syncfusion/ej2-base": "~17.1.49",
"@syncfusion/ej2-buttons": "~17.1.47",
"@syncfusion/ej2-popups": "~17.1.47",
"@syncfusion/ej2-splitbuttons": "~17.1.47"
}
},
"@syncfusion/ej2-lists": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-lists/-/ej2-lists-17.1.47.tgz",
"integrity": "sha512-KYrT5t7/XkqYIG2RiWdLUgBcm8LRIbPP+htzGaYqSDQ/CxxMZS4sJUYLOrqJm5SwpxMqAIcE4wdnpg2Dxetn5g==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47",
"@syncfusion/ej2-buttons": "~17.1.47",
"@syncfusion/ej2-data": "~17.1.47"
}
},
"@syncfusion/ej2-navigations": {
"version": "17.1.49",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-navigations/-/ej2-navigations-17.1.49.tgz",
"integrity": "sha512-zBw48P+r2LFUvqbF4YdsBBiEGpTxgzxgbWNHYCKFwElaTEhE6yiJtE0HOyOlC12p4bc2unTFcy8fn2uBI2ldOw==",
"requires": {
"@syncfusion/ej2-base": "~17.1.49",
"@syncfusion/ej2-buttons": "~17.1.47",
"@syncfusion/ej2-data": "~17.1.47",
"@syncfusion/ej2-inputs": "~17.1.49",
"@syncfusion/ej2-lists": "~17.1.47",
"@syncfusion/ej2-popups": "~17.1.47"
}
},
"@syncfusion/ej2-popups": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-popups/-/ej2-popups-17.1.47.tgz",
"integrity": "sha512-wGnSyk5HpMcfIWSjh0vP7skM83TvzGarcYn56Dcr8L4Asgf94FaFx0dgWbEsnrzWI+P1I+Lv0kVWJWoFQmxofw==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47",
"@syncfusion/ej2-buttons": "~17.1.47"
}
},
"@syncfusion/ej2-schedule": {
"version": "17.1.48",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-schedule/-/ej2-schedule-17.1.48.tgz",
"integrity": "sha512-4DGUJLVmAAE1/eBslGVe52lA0BaARONK4Q7iGVVk4kDhR3ttOGvh2753wjqV13IwSVyXXkNPT6gYbqg7B8zfeQ==",
"requires": {
"@syncfusion/ej2-base": "~17.1.48",
"@syncfusion/ej2-buttons": "~17.1.47",
"@syncfusion/ej2-calendars": "~17.1.48",
"@syncfusion/ej2-data": "~17.1.47",
"@syncfusion/ej2-dropdowns": "~17.1.48",
"@syncfusion/ej2-excel-export": "~17.1.47",
"@syncfusion/ej2-inputs": "~17.1.47",
"@syncfusion/ej2-lists": "~17.1.47",
"@syncfusion/ej2-navigations": "~17.1.48",
"@syncfusion/ej2-popups": "~17.1.47"
}
},
"@syncfusion/ej2-splitbuttons": {
"version": "17.1.47",
"resolved": "https://registry.npmjs.org/@syncfusion/ej2-splitbuttons/-/ej2-splitbuttons-17.1.47.tgz",
"integrity": "sha512-T5SyHwrYpqS6LyMDJeiPDOaqi+Kl0HryDesrs0V4XFXZUrTX/iPY/nMu+hsZdAu2H6edp457dpi5uEY11QCcgg==",
"requires": {
"@syncfusion/ej2-base": "~17.1.47",
"@syncfusion/ej2-popups": "~17.1.47"
}
},
"@types/jasmine": {
"version": "2.8.16",
"resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.16.tgz",
@ -1365,6 +1551,7 @@
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
"integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
"dev": true,
"optional": true,
"requires": {
"delegates": "^1.0.0",
"readable-stream": "^2.0.6"
@ -2583,7 +2770,8 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
"dev": true
"dev": true,
"optional": true
},
"constants-browserify": {
"version": "1.0.0",
@ -2978,7 +3166,8 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
"dev": true
"dev": true,
"optional": true
},
"depd": {
"version": "1.1.2",
@ -3952,7 +4141,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"aproba": {
"version": "1.2.0",
@ -3973,12 +4163,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@ -3993,17 +4185,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"core-util-is": {
"version": "1.0.2",
@ -4120,7 +4315,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"ini": {
"version": "1.3.5",
@ -4132,6 +4328,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@ -4146,6 +4343,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@ -4153,12 +4351,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@ -4177,6 +4377,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
@ -4257,7 +4458,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"object-assign": {
"version": "4.1.1",
@ -4269,6 +4471,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"wrappy": "1"
}
@ -4354,7 +4557,8 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"safer-buffer": {
"version": "2.1.2",
@ -4390,6 +4594,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@ -4409,6 +4614,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@ -4452,12 +4658,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
"dev": true
"dev": true,
"optional": true
}
}
},
@ -4466,6 +4674,7 @@
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz",
"integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==",
"dev": true,
"optional": true,
"requires": {
"graceful-fs": "^4.1.2",
"inherits": "~2.0.0",
@ -4478,6 +4687,7 @@
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"dev": true,
"optional": true,
"requires": {
"aproba": "^1.0.3",
"console-control-strings": "^1.0.0",
@ -4515,7 +4725,8 @@
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
"dev": true
"dev": true,
"optional": true
},
"get-stream": {
"version": "3.0.0",
@ -5150,7 +5361,8 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
"dev": true
"dev": true,
"optional": true
},
"has-value": {
"version": "1.0.0",
@ -5868,7 +6080,8 @@
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
"dev": true
"dev": true,
"optional": true
},
"is-windows": {
"version": "1.0.2",
@ -6504,6 +6717,7 @@
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"dev": true,
"optional": true,
"requires": {
"graceful-fs": "^4.1.2",
"parse-json": "^2.2.0",
@ -6516,7 +6730,8 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"dev": true
"dev": true,
"optional": true
}
}
},
@ -6792,7 +7007,8 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
"integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
"dev": true
"dev": true,
"optional": true
},
"map-visit": {
"version": "1.0.0",
@ -7422,6 +7638,7 @@
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"dev": true,
"optional": true,
"requires": {
"are-we-there-yet": "~1.1.2",
"console-control-strings": "~1.1.0",
@ -8465,6 +8682,7 @@
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
"integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
"dev": true,
"optional": true,
"requires": {
"load-json-file": "^1.0.0",
"normalize-package-data": "^2.3.2",
@ -8476,6 +8694,7 @@
"resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
"integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
"dev": true,
"optional": true,
"requires": {
"graceful-fs": "^4.1.2",
"pify": "^2.0.0",
@ -8486,7 +8705,8 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"dev": true
"dev": true,
"optional": true
}
}
},
@ -8495,6 +8715,7 @@
"resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
"integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
"dev": true,
"optional": true,
"requires": {
"find-up": "^1.0.0",
"read-pkg": "^1.0.0"
@ -8505,6 +8726,7 @@
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
"integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
"dev": true,
"optional": true,
"requires": {
"path-exists": "^2.0.0",
"pinkie-promise": "^2.0.0"
@ -8515,6 +8737,7 @@
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
"dev": true,
"optional": true,
"requires": {
"pinkie-promise": "^2.0.0"
}
@ -8570,8 +8793,7 @@
"reflect-metadata": {
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
"integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==",
"dev": true
"integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
},
"regenerate": {
"version": "1.4.0",
@ -9843,6 +10065,7 @@
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"dev": true,
"optional": true,
"requires": {
"is-utf8": "^0.2.0"
}
@ -11182,6 +11405,7 @@
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
"integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
"dev": true,
"optional": true,
"requires": {
"string-width": "^1.0.2 || 2"
}

View File

@ -24,6 +24,7 @@
"@angular/platform-browser": "~7.2.0",
"@angular/platform-browser-dynamic": "~7.2.0",
"@angular/router": "~7.2.0",
"@syncfusion/ej2-angular-schedule": "^17.1.48",
"core-js": "^2.5.4",
"firebase": "^6.1.0",
"hammerjs": "^2.0.8",

View File

@ -1,5 +1,3 @@
<app-header></app-header>
<h1> List of Activities</h1>
<div *ngFor="let activity of activities">
<h3>{{activity.data.name}}</h3>

View File

@ -1,15 +1,11 @@
import { Component, OnInit } from '@angular/core';
import {ActivitiesService} from '@app/Services/activities.service';
import {ScheduleService} from '@app/Services/schedule.service';
import {ScheduleComponent} from '@app/schedule/schedule.component';
import {MatDialog} from '@angular/material';
import {NewScheduleComponent} from '@app/new-schedule/new-schedule.component';
import { ActivitiesService } from '@app/core/services';
@Component({
@Component( {
selector: 'app-activities',
templateUrl: './activities.component.html',
styleUrls: ['./activities.component.css']
})
styleUrls: [ './activities.component.css' ]
} )
export class ActivitiesComponent implements OnInit {
activities: any[];
@ -17,25 +13,20 @@ export class ActivitiesComponent implements OnInit {
activitiesId: '',
};
animal: string;
name: string;
constructor(private activitiesService: ActivitiesService,
private scheduleService: ScheduleService,
public dialog: MatDialog) {
constructor( private activitiesService: ActivitiesService ) {
}
ngOnInit() {
this.activitiesService.getActivities().subscribe(data => {
this.activities = data.map(e => {
this.activitiesService.getActivities().subscribe( data => {
this.activities = data.map( e => {
return {
id: e.payload.doc.id,
data: e.payload.doc.data()
} as any;
});
});
} );
} );
}
addActivitiesIntoSchedule(id) {
addActivitiesIntoSchedule( id ) {
}
}

View File

@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { HomeComponent } from './home/home.component';
import { RegisterComponent } from './register/register.component';
import {ActivitiesComponent} from '@app/activities/activities.component';
import {ScheduleComponent} from '@app/schedule/schedule.component';
import { ActivitiesComponent } from '@app/activities/activities.component';
import { MyScheduleComponent } from '@app/my-schedule/my-schedule.component';
const routes: Routes = [
// No logged pages
{ path: '', component: HomeComponent, },
{ path: 'register', component: RegisterComponent },
{ path: 'activities', component: ActivitiesComponent },
{ path: 'schedule', component: ScheduleComponent },
{ path: 'my-schedule', component: MyScheduleComponent },
// {
// path: 'login',
// component: LoginComponent,

View File

@ -32,7 +32,7 @@
id="header-container-desktop">
<div class="title" fxFlex="200px">
<a [routerLink]="">DiscoTrip</a>
<a routerLink="/">DiscoTrip</a>
</div>
<div fxFlex="calc(100% - 200px)" fxLayout="row" fxLayoutAlign="end">

View File

@ -13,16 +13,28 @@ import { AngularFireAuthModule } from '@angular/fire/auth';
import { AppMaterialModule } from '@app/app-material.module';
import { LogService, SEOService } from '@app/core/services';
import {
AgendaService,
DayService,
DragAndDropService,
MonthAgendaService,
MonthService,
ResizeService,
ScheduleModule,
TimelineMonthService,
TimelineViewsService,
WeekService,
WorkWeekService
} from '@syncfusion/ej2-angular-schedule';
import { GlobalErrorHandler } from '@app/core/global-error-handler/global-error-handler.service';
import { environment } from '@env/environment';
import { CardComponent } from './card/card.component';
import { SearchCardComponent } from './search-card/search-card.component';
import { MyScheduleComponent } from './my-schedule/my-schedule.component';
import { ActivitiesComponent } from './activities/activities.component';
import {AngularFirestore} from '@angular/fire/firestore';
import { ScheduleComponent } from './schedule/schedule.component';
import {MatDialogModule} from '@angular/material';
import { NewScheduleComponent } from './new-schedule/new-schedule.component';
import { AngularFirestore } from '@angular/fire/firestore';
import { MatDialogModule } from '@angular/material';
@NgModule( {
declarations: [
@ -32,8 +44,7 @@ import { NewScheduleComponent } from './new-schedule/new-schedule.component';
CardComponent,
SearchCardComponent,
ActivitiesComponent,
ScheduleComponent,
NewScheduleComponent,
MyScheduleComponent,
],
imports: [
BrowserModule,
@ -44,18 +55,28 @@ import { NewScheduleComponent } from './new-schedule/new-schedule.component';
AngularFireDatabaseModule,
AppMaterialModule,
MatDialogModule,
ScheduleModule,
],
providers: [
AngularFirestore,
LogService,
SEOService,
AgendaService,
DayService,
WeekService,
WorkWeekService,
MonthService,
DragAndDropService,
MonthAgendaService,
ResizeService,
TimelineViewsService,
TimelineMonthService,
{
provide: ErrorHandler,
useClass: GlobalErrorHandler,
},
],
bootstrap: [ AppComponent ],
entryComponents: [NewScheduleComponent],
bootstrap: [ AppComponent ]
} )
export class AppModule {
}

View File

@ -15,10 +15,12 @@
</p>
</mat-card-content>
<mat-card-actions>
<button mat-button>LIKE</button>
<button mat-button>SHARE</button>
</mat-card-actions>
<ng-content select="mt-card-actions"></ng-content>
<!-- <mat-card-actions>-->
<!-- <button mat-button>LIKE</button>-->
<!-- <button mat-button>SHARE</button>-->
<!-- </mat-card-actions>-->
</mat-card>

View File

@ -1,6 +1,6 @@
import { Injectable } from '@angular/core';
import {AngularFirestore} from '@angular/fire/firestore';
import {AngularFireDatabase} from '@angular/fire/database';
import { AngularFirestore } from '@angular/fire/firestore';
import { AngularFireDatabase } from '@angular/fire/database';
@Injectable({
providedIn: 'root'

View File

@ -2,3 +2,5 @@ export * from './auth/auth.service';
export * from './log/log.service';
export * from './seo/seo.service';
export * from './storage/storage.service';
export * from './activities/activities.service';
export * from './schedule/schedule.service';

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import {AngularFirestore} from '@angular/fire/firestore';
import { AngularFirestore } from '@angular/fire/firestore';
@Injectable({
providedIn: 'root'

View File

@ -0,0 +1,5 @@
<div class="main-container" style="margin-top: 30px">
<ejs-schedule></ejs-schedule>
</div>

View File

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { MyScheduleComponent } from './my-schedule.component';
describe( 'MyScheduleComponent', () => {
let component: MyScheduleComponent;
let fixture: ComponentFixture<MyScheduleComponent>;
beforeEach( async( () => {
TestBed.configureTestingModule( {
declarations: [ MyScheduleComponent ]
} )
.compileComponents();
} ) );
beforeEach( () => {
fixture = TestBed.createComponent( MyScheduleComponent );
component = fixture.componentInstance;
fixture.detectChanges();
} );
it( 'should create', () => {
expect( component ).toBeTruthy();
} );
} );

View File

@ -0,0 +1,16 @@
import { Component, OnInit } from '@angular/core';
@Component( {
selector: 'app-my-schedule',
templateUrl: './my-schedule.component.html',
styleUrls: [ './my-schedule.component.css' ]
} )
export class MyScheduleComponent implements OnInit {
constructor() {
}
ngOnInit() {
}
}

View File

@ -11,6 +11,7 @@
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Lobster&display=swap" rel="stylesheet">
<link href="https://cdn.syncfusion.com/ej2/material.css" rel="stylesheet"/>
</head>