Compare commits

..

No commits in common. "master" and "v1.8.6" have entirely different histories.

904 changed files with 2590602 additions and 5447 deletions

5
.gitignore vendored
View File

@ -45,11 +45,11 @@ Thumbs.db
.directory .directory
# Internal Data # Internal Data
/public/ public/
mongodb-data/
server/resource/ server/resource/
server/apib/dredd/data/tmp-resource server/apib/dredd/data/tmp-resource
backup/ backup/
!backup.sh
# System # System
.npm/ .npm/
@ -59,3 +59,4 @@ backup/
.cache/motd.legal-displayed .cache/motd.legal-displayed
.profile .profile
.ssh/ .ssh/

View File

@ -4,18 +4,18 @@
cd $(dirname $0) cd $(dirname $0)
# array of available collection names # array of available collection names
col=(app_user awarding campaign decoration logBudget logFlag logKill logPlayerCount logPoints logRespawn logRevive logServerFps logTransport logVehicle player promotion rank squad user war) col=(app_user awarding campaign decoration logBudget logFlag logKill logPoints logRespawn logRevive logTransport logVehicle player promotion rank squad user war )
if [ -z "$1" ] if [ -z "$1" ]
then then
DATE=$(date '+%Y-%m-%d') DATE=$(date '+%Y-%m-%d')
mkdir -p ${DATE}/resource mkdir -p ${DATE}/resource
cp -R ../server/resource/ ${DATE}/ cp -R ../api/resource/ ${DATE}/
else else
DATE=${1} DATE=${1}
tar -xzf ${DATE}.tar.gz tar -xzf ${DATE}.tar.gz
rm -rf ../server/resource rm -rf ../api/resource
cp -Rv ${DATE}/resource ../server/ cp -Rv ${DATE}/resource ../api/
fi fi
for i in "${col[@]}" for i in "${col[@]}"

View File

@ -1,9 +1,9 @@
<code_scheme name="OPT-CC" version="173"> <code_scheme name="OPT-CC" version="173">
<option name="FORMATTER_TAGS_ENABLED" value="true" /> <option name="FORMATTER_TAGS_ENABLED" value="true" />
<JSCodeStyleSettings version="0"> <JSCodeStyleSettings>
<option name="USE_CHAINED_CALLS_GROUP_INDENTS" value="true" /> <option name="USE_CHAINED_CALLS_GROUP_INDENTS" value="true" />
</JSCodeStyleSettings> </JSCodeStyleSettings>
<TypeScriptCodeStyleSettings version="0"> <TypeScriptCodeStyleSettings>
<option name="USE_DOUBLE_QUOTES" value="false" /> <option name="USE_DOUBLE_QUOTES" value="false" />
<option name="USE_CHAINED_CALLS_GROUP_INDENTS" value="true" /> <option name="USE_CHAINED_CALLS_GROUP_INDENTS" value="true" />
</TypeScriptCodeStyleSettings> </TypeScriptCodeStyleSettings>
@ -11,8 +11,6 @@
<option name="RIGHT_MARGIN" value="120" /> <option name="RIGHT_MARGIN" value="120" />
<option name="KEEP_FIRST_COLUMN_COMMENT" value="false" /> <option name="KEEP_FIRST_COLUMN_COMMENT" value="false" />
<option name="ALIGN_MULTILINE_CHAINED_METHODS" value="true" /> <option name="ALIGN_MULTILINE_CHAINED_METHODS" value="true" />
<option name="ALIGN_MULTILINE_PARAMETERS_IN_CALLS" value="true" />
<option name="ALIGN_MULTILINE_ARRAY_INITIALIZER_EXPRESSION" value="true" />
<option name="CALL_PARAMETERS_WRAP" value="1" /> <option name="CALL_PARAMETERS_WRAP" value="1" />
<option name="METHOD_PARAMETERS_WRAP" value="1" /> <option name="METHOD_PARAMETERS_WRAP" value="1" />
<option name="EXTENDS_KEYWORD_WRAP" value="1" /> <option name="EXTENDS_KEYWORD_WRAP" value="1" />

Binary file not shown.

200
package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "opt-cc", "name": "opt-cc",
"version": "1.9.3", "version": "1.8.0",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
@ -10,10 +10,10 @@
"integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
"dev": true, "dev": true,
"requires": { "requires": {
"co": "^4.6.0", "co": "4.6.0",
"fast-deep-equal": "^1.0.0", "fast-deep-equal": "1.1.0",
"fast-json-stable-stringify": "^2.0.0", "fast-json-stable-stringify": "2.0.0",
"json-schema-traverse": "^0.3.0" "json-schema-traverse": "0.3.1"
} }
}, },
"ansi-styles": { "ansi-styles": {
@ -22,7 +22,7 @@
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true, "dev": true,
"requires": { "requires": {
"color-convert": "^1.9.0" "color-convert": "1.9.2"
} }
}, },
"asn1": { "asn1": {
@ -62,7 +62,7 @@
"dev": true, "dev": true,
"optional": true, "optional": true,
"requires": { "requires": {
"tweetnacl": "^0.14.3" "tweetnacl": "0.14.5"
} }
}, },
"builtin-modules": { "builtin-modules": {
@ -83,9 +83,9 @@
"integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"ansi-styles": "^3.2.1", "ansi-styles": "3.2.1",
"escape-string-regexp": "^1.0.5", "escape-string-regexp": "1.0.5",
"supports-color": "^5.3.0" "supports-color": "5.4.0"
}, },
"dependencies": { "dependencies": {
"supports-color": { "supports-color": {
@ -94,7 +94,7 @@
"integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
"dev": true, "dev": true,
"requires": { "requires": {
"has-flag": "^3.0.0" "has-flag": "3.0.0"
} }
} }
} }
@ -126,7 +126,7 @@
"integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"dev": true, "dev": true,
"requires": { "requires": {
"delayed-stream": "~1.0.0" "delayed-stream": "1.0.0"
} }
}, },
"commander": { "commander": {
@ -141,15 +141,15 @@
"integrity": "sha512-6XiIYtYzmGEccNZFkih5JOH92jLA4ulZArAYy5j1uDSdrPLB3KzdE8GW7t2fHPcg9ry2+5LP9IEYzXzxw9lFdA==", "integrity": "sha512-6XiIYtYzmGEccNZFkih5JOH92jLA4ulZArAYy5j1uDSdrPLB3KzdE8GW7t2fHPcg9ry2+5LP9IEYzXzxw9lFdA==",
"dev": true, "dev": true,
"requires": { "requires": {
"chalk": "^2.4.1", "chalk": "2.4.1",
"commander": "2.6.0", "commander": "2.6.0",
"date-fns": "^1.23.0", "date-fns": "1.29.0",
"lodash": "^4.5.1", "lodash": "4.17.10",
"read-pkg": "^3.0.0", "read-pkg": "3.0.0",
"rx": "2.3.24", "rx": "2.3.24",
"spawn-command": "^0.0.2-1", "spawn-command": "0.0.2-1",
"supports-color": "^3.2.3", "supports-color": "3.2.3",
"tree-kill": "^1.1.0" "tree-kill": "1.2.0"
} }
}, },
"core-js": { "core-js": {
@ -170,7 +170,7 @@
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"dev": true, "dev": true,
"requires": { "requires": {
"assert-plus": "^1.0.0" "assert-plus": "1.0.0"
} }
}, },
"date-fns": { "date-fns": {
@ -192,7 +192,7 @@
"dev": true, "dev": true,
"optional": true, "optional": true,
"requires": { "requires": {
"jsbn": "~0.1.0" "jsbn": "0.1.1"
} }
}, },
"error-ex": { "error-ex": {
@ -201,7 +201,7 @@
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true, "dev": true,
"requires": { "requires": {
"is-arrayish": "^0.2.1" "is-arrayish": "0.2.1"
} }
}, },
"escape-string-regexp": { "escape-string-regexp": {
@ -246,9 +246,9 @@
"integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
"dev": true, "dev": true,
"requires": { "requires": {
"asynckit": "^0.4.0", "asynckit": "0.4.0",
"combined-stream": "1.0.6", "combined-stream": "1.0.6",
"mime-types": "^2.1.12" "mime-types": "2.1.18"
} }
}, },
"getpass": { "getpass": {
@ -257,7 +257,7 @@
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"dev": true, "dev": true,
"requires": { "requires": {
"assert-plus": "^1.0.0" "assert-plus": "1.0.0"
} }
}, },
"graceful-fs": { "graceful-fs": {
@ -278,8 +278,8 @@
"integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
"dev": true, "dev": true,
"requires": { "requires": {
"ajv": "^5.1.0", "ajv": "5.5.2",
"har-schema": "^2.0.0" "har-schema": "2.0.0"
} }
}, },
"has-flag": { "has-flag": {
@ -306,9 +306,9 @@
"integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
"dev": true, "dev": true,
"requires": { "requires": {
"assert-plus": "^1.0.0", "assert-plus": "1.0.0",
"jsprim": "^1.2.2", "jsprim": "1.4.1",
"sshpk": "^1.7.0" "sshpk": "1.14.2"
} }
}, },
"is-arrayish": { "is-arrayish": {
@ -323,7 +323,7 @@
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
"dev": true, "dev": true,
"requires": { "requires": {
"builtin-modules": "^1.0.0" "builtin-modules": "1.1.1"
} }
}, },
"is-typedarray": { "is-typedarray": {
@ -356,11 +356,11 @@
"integrity": "sha1-M4WseQGSEwy+Iw6ALsAskhW7/to=", "integrity": "sha1-M4WseQGSEwy+Iw6ALsAskhW7/to=",
"dev": true, "dev": true,
"requires": { "requires": {
"hoek": "4.x.x", "hoek": "4.2.1",
"isemail": "2.x.x", "isemail": "2.2.1",
"items": "2.x.x", "items": "2.1.1",
"moment": "2.x.x", "moment": "2.22.2",
"topo": "2.x.x" "topo": "2.0.2"
} }
}, },
"jsbn": { "jsbn": {
@ -412,16 +412,16 @@
"integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
"dev": true, "dev": true,
"requires": { "requires": {
"graceful-fs": "^4.1.2", "graceful-fs": "4.1.11",
"parse-json": "^4.0.0", "parse-json": "4.0.0",
"pify": "^3.0.0", "pify": "3.0.0",
"strip-bom": "^3.0.0" "strip-bom": "3.0.0"
} }
}, },
"lodash": { "lodash": {
"version": "4.17.11", "version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true "dev": true
}, },
"mime-db": { "mime-db": {
@ -436,7 +436,7 @@
"integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"mime-db": "~1.33.0" "mime-db": "1.33.0"
} }
}, },
"minimist": { "minimist": {
@ -457,10 +457,10 @@
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
"dev": true, "dev": true,
"requires": { "requires": {
"hosted-git-info": "^2.1.4", "hosted-git-info": "2.6.1",
"is-builtin-module": "^1.0.0", "is-builtin-module": "1.0.0",
"semver": "2 || 3 || 4 || 5", "semver": "5.5.0",
"validate-npm-package-license": "^3.0.1" "validate-npm-package-license": "3.0.3"
} }
}, },
"oauth-sign": { "oauth-sign": {
@ -475,8 +475,8 @@
"integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
"dev": true, "dev": true,
"requires": { "requires": {
"error-ex": "^1.3.1", "error-ex": "1.3.2",
"json-parse-better-errors": "^1.0.1" "json-parse-better-errors": "1.0.2"
} }
}, },
"path-type": { "path-type": {
@ -485,7 +485,7 @@
"integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
"dev": true, "dev": true,
"requires": { "requires": {
"pify": "^3.0.0" "pify": "3.0.0"
} }
}, },
"performance-now": { "performance-now": {
@ -518,9 +518,9 @@
"integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
"dev": true, "dev": true,
"requires": { "requires": {
"load-json-file": "^4.0.0", "load-json-file": "4.0.0",
"normalize-package-data": "^2.3.2", "normalize-package-data": "2.4.0",
"path-type": "^3.0.0" "path-type": "3.0.0"
} }
}, },
"request": { "request": {
@ -529,26 +529,26 @@
"integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==",
"dev": true, "dev": true,
"requires": { "requires": {
"aws-sign2": "~0.7.0", "aws-sign2": "0.7.0",
"aws4": "^1.6.0", "aws4": "1.7.0",
"caseless": "~0.12.0", "caseless": "0.12.0",
"combined-stream": "~1.0.5", "combined-stream": "1.0.6",
"extend": "~3.0.1", "extend": "3.0.1",
"forever-agent": "~0.6.1", "forever-agent": "0.6.1",
"form-data": "~2.3.1", "form-data": "2.3.2",
"har-validator": "~5.0.3", "har-validator": "5.0.3",
"http-signature": "~1.2.0", "http-signature": "1.2.0",
"is-typedarray": "~1.0.0", "is-typedarray": "1.0.0",
"isstream": "~0.1.2", "isstream": "0.1.2",
"json-stringify-safe": "~5.0.1", "json-stringify-safe": "5.0.1",
"mime-types": "~2.1.17", "mime-types": "2.1.18",
"oauth-sign": "~0.8.2", "oauth-sign": "0.8.2",
"performance-now": "^2.1.0", "performance-now": "2.1.0",
"qs": "~6.5.1", "qs": "6.5.2",
"safe-buffer": "^5.1.1", "safe-buffer": "5.1.2",
"tough-cookie": "~2.3.3", "tough-cookie": "2.3.4",
"tunnel-agent": "^0.6.0", "tunnel-agent": "0.6.0",
"uuid": "^3.1.0" "uuid": "3.3.2"
} }
}, },
"rx": { "rx": {
@ -587,8 +587,8 @@
"integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
"dev": true, "dev": true,
"requires": { "requires": {
"spdx-expression-parse": "^3.0.0", "spdx-expression-parse": "3.0.0",
"spdx-license-ids": "^3.0.0" "spdx-license-ids": "3.0.0"
} }
}, },
"spdx-exceptions": { "spdx-exceptions": {
@ -603,8 +603,8 @@
"integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
"dev": true, "dev": true,
"requires": { "requires": {
"spdx-exceptions": "^2.1.0", "spdx-exceptions": "2.1.0",
"spdx-license-ids": "^3.0.0" "spdx-license-ids": "3.0.0"
} }
}, },
"spdx-license-ids": { "spdx-license-ids": {
@ -619,15 +619,15 @@
"integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=",
"dev": true, "dev": true,
"requires": { "requires": {
"asn1": "~0.2.3", "asn1": "0.2.3",
"assert-plus": "^1.0.0", "assert-plus": "1.0.0",
"bcrypt-pbkdf": "^1.0.0", "bcrypt-pbkdf": "1.0.2",
"dashdash": "^1.12.0", "dashdash": "1.14.1",
"ecc-jsbn": "~0.1.1", "ecc-jsbn": "0.1.1",
"getpass": "^0.1.1", "getpass": "0.1.7",
"jsbn": "~0.1.0", "jsbn": "0.1.1",
"safer-buffer": "^2.0.2", "safer-buffer": "2.1.2",
"tweetnacl": "~0.14.0" "tweetnacl": "0.14.5"
} }
}, },
"strip-bom": { "strip-bom": {
@ -642,7 +642,7 @@
"integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
"dev": true, "dev": true,
"requires": { "requires": {
"has-flag": "^1.0.0" "has-flag": "1.0.0"
}, },
"dependencies": { "dependencies": {
"has-flag": { "has-flag": {
@ -659,7 +659,7 @@
"integrity": "sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI=", "integrity": "sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI=",
"dev": true, "dev": true,
"requires": { "requires": {
"hoek": "4.x.x" "hoek": "4.2.1"
} }
}, },
"tough-cookie": { "tough-cookie": {
@ -668,7 +668,7 @@
"integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
"dev": true, "dev": true,
"requires": { "requires": {
"punycode": "^1.4.1" "punycode": "1.4.1"
} }
}, },
"tree-kill": { "tree-kill": {
@ -683,7 +683,7 @@
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
"dev": true, "dev": true,
"requires": { "requires": {
"safe-buffer": "^5.0.1" "safe-buffer": "5.1.2"
} }
}, },
"tweetnacl": { "tweetnacl": {
@ -705,8 +705,8 @@
"integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
"dev": true, "dev": true,
"requires": { "requires": {
"spdx-correct": "^3.0.0", "spdx-correct": "3.0.0",
"spdx-expression-parse": "^3.0.0" "spdx-expression-parse": "3.0.0"
} }
}, },
"verror": { "verror": {
@ -715,9 +715,9 @@
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"dev": true, "dev": true,
"requires": { "requires": {
"assert-plus": "^1.0.0", "assert-plus": "1.0.0",
"core-util-is": "1.0.2", "core-util-is": "1.0.2",
"extsprintf": "^1.2.0" "extsprintf": "1.3.0"
} }
}, },
"wait-on": { "wait-on": {
@ -726,11 +726,11 @@
"integrity": "sha512-hDwJ674+7dfiiK/cxtYCwPxlnjXDjto/pCz1PF02sXUhqCqCWsgvxZln0699PReWqXXgkxqkF6DDo5Rj9sjNvw==", "integrity": "sha512-hDwJ674+7dfiiK/cxtYCwPxlnjXDjto/pCz1PF02sXUhqCqCWsgvxZln0699PReWqXXgkxqkF6DDo5Rj9sjNvw==",
"dev": true, "dev": true,
"requires": { "requires": {
"core-js": "^2.4.1", "core-js": "2.5.7",
"joi": "^9.2.0", "joi": "9.2.0",
"minimist": "^1.2.0", "minimist": "1.2.0",
"request": "^2.78.0", "request": "2.87.0",
"rx": "^4.1.0" "rx": "4.1.0"
}, },
"dependencies": { "dependencies": {
"rx": { "rx": {

View File

@ -1,6 +1,6 @@
{ {
"name": "opt-cc", "name": "opt-cc",
"version": "1.9.7", "version": "1.8.6",
"author": "Florian Hartwich <hardi@noarch.de>", "author": "Florian Hartwich <hardi@noarch.de>",
"private": true, "private": true,
"scripts": { "scripts": {

View File

@ -2,7 +2,7 @@
"apps": [ "apps": [
{ {
"name": "opt-cc", "name": "opt-cc",
"script": "./server/server.js", "script": "./api/server.js",
"watch": false, "watch": false,
"env": { "env": {
"NODE_ENV": "production", "NODE_ENV": "production",

View File

@ -5,13 +5,10 @@ Update an army members signature image
**Permission: 4** **Permission: 4**
+ Parameters + Parameters
+ userId: `5ab68d42f547ed304064e5f7` (string, required) - army members unique user id + userId: `5ab68d42f547ed304064e5f7` (string, required) - army members unique user id
+ Request (application/json) + Request (application/json)
{}
+ Attributes (object)
+ Response 200 (application/json; charset=utf-8) + Response 200 (application/json; charset=utf-8)

View File

@ -1,9 +1,8 @@
### List Users [GET /users{?q,fractFilter,squadId,decorationId,limit,offset}] ### List Users [GET /users{?q,fractFilter,limit,offset}]
Get single army member information Get single army member information
+ Parameters + Parameters
+ q: `hardi` (string, optional) - filter string which filters for partial username + q: `hardi` (string, optional) - filter string which filters for partial username
+ fractFilter: `BLUFOR` (enum[string], optional) - Field to filter by fraction + fractFilter: `BLUFOR` (enum[string], optional) - Field to filter by fraction
@ -13,15 +12,17 @@ Get single army member information
+ `OPFOR` + `OPFOR`
+ `GLOBAL` + `GLOBAL`
+ squadId: `5aba54eaeadcce6332c6a774` (string, optional) - Field to filter by membership of certain squad + squadId: `591470249e9fae286e008e31` (string, optional) - Field to filter by membership of certain squad
+ decorationId: `5abd3dff6e6a0334d95b8ba0` (string, optional) - Field to filter by ownership of certain decoration + decorationId: `5abd3dff6e6a0334d95b8ba0` (string, optional) - Field to filter by ownership of certain decoration
+ limit: 20 (number, optional) - Maximum number of users to return + limit: 20 (number, optional)
Maximum number of users to return
+ Default: Infinity + Default: Infinity
+ offset: 0 (number, optional) - Offset into result-set (useful for pagination) + offset: 0 (number, optional)
Offset into result-set (useful for pagination)
+ Default: 0 + Default: 0
@ -39,7 +40,6 @@ Get single army member information
Get single army member information Get single army member information
+ Parameters + Parameters
+ id: `5ab68d42f547ed304064e5f7` (string, required) - unique id of army-member + id: `5ab68d42f547ed304064e5f7` (string, required) - unique id of army-member
+ Response 200 (application/json; charset=utf-8) + Response 200 (application/json; charset=utf-8)

View File

@ -1,5 +1,4 @@
# Campaign (object) # Campaign (object)
Campaign entity Campaign entity
## Properties ## Properties
@ -10,10 +9,8 @@ Campaign entity
+ __v: 0 (number, required) - version number + __v: 0 (number, required) - version number
#WarCampaign (object) #WarCampaign (object)
Cmpaign entity with attached War collection Cmpaign entity with attached War collection
## Properties ## Properties
+ _id: `5abd55ea9e30a76bfef747d6` (string, required) - unique id of the campaign + _id: `5abd55ea9e30a76bfef747d6` (string, required) - unique id of the campaign
+ title: `Ein Kessel Buntes` (string, required) - display title of the campaign + title: `Ein Kessel Buntes` (string, required) - display title of the campaign
+ wars: WarWithPlayers (array[WarWithPlayers], required) + wars (array[WarWithPlayers], requied)

View File

@ -3,6 +3,7 @@
+ _id: `` (string, required) - log entry id + _id: `` (string, required) - log entry id
+ war: `` (string, required) - warId + war: `` (string, required) - warId
+ time: `` (string, required) - logging timestamp + time: `` (string, required) - logging timestamp
+ __v: 0 (number, required) - object version number
# LogPoints (Log) # LogPoints (Log)
## Properties ## Properties
@ -73,19 +74,18 @@
#LogVehicle (Log) #LogVehicle (Log)
## Properties ## Properties
+ shooter: `HardiReady` (string, required) - name of player who shot the vehicle + shooter: `HardiReady` (string, required) - name of player who shot the vehicle
+ additionalShooter: `[GNC]Paolo`, `Dominik` (array[string], required) - additional crew members of shooter vehicle + additionalShooter: [`[GNC]Paolo`, `Dominik`] (array[string], required) - additional crew members of shooter vehicle
+ target: `T-100` (string, required) - name of the vehicle + target: `T-100` (string, required) - name of the vehicle
+ fraction: `BLUFOR` (enum, required) - fraction of the shooter + fraction: `BLUFOR` (enum, required) - fraction of the shooter
+ Members + Members
+ `BLUFOR` + `BLUFOR`
+ `OPFOR` + `OPFOR`
+ `NONE` + `NONE`
+ vehicleClass: `LIGHT` (enum[string], required) - class of shot vehicle + vehicleClass: `LIGHT` (enum, required) - class of shot vehicle
+ Members + Members
+ `LIGHT` + `LIGHT`
+ `HEAVY` + `HEAVY`
+ `AIR` + `AIR`
+ `BOAT`
+ `UNKNOWN` + `UNKNOWN`
+ shooterVehicle: `FV-720 Mora` (string, optional) - vehicle in whiock the shooting player sat + shooterVehicle: `FV-720 Mora` (string, optional) - vehicle in whiock the shooting player sat
+ magazine: `30 mm APFSDS` (string, optional) - magazine name used to execute the kill + magazine: `30 mm APFSDS` (string, optional) - magazine name used to execute the kill

View File

@ -14,8 +14,6 @@ Basic player statistic information object
+ respawn: 2 (number, required) - sum of respawns + respawn: 2 (number, required) - sum of respawns
+ flagTouch: 1 (number, required) - sum of flag captures + flagTouch: 1 (number, required) - sum of flag captures
+ revive: 0 (number, required) - sum of revives + revive: 0 (number, required) - sum of revives
+ travelDistance: 16535 (number, optional) - sum of transport meters as passenger
+ driverDistance: 1250 (number, optional) - sum of transport meters as pilot/driver
# WarPlayer (BasicPlayer) # WarPlayer (BasicPlayer)
@ -24,16 +22,15 @@ A player campaign statistics object
## Properties ## Properties
+ _id: `5ab68d42f547ed304064e5f7` (string, required) - unique id of the army member + _id: `5ab68d42f547ed304064e5f7` (string, required) - unique id of the army member
+ warId: `5abf65ae3fc5fa349ffd5ca3` (string, required) - war in which this player took part + warId: `5abf65ae3fc5fa349ffd5ca3` (string, required) - war in which this player took part
+ steamUUID: 76561192214911200 (number, optional) - unique ID for STEAM platform account + steamUUID: `76561192214911200` (string, required) - unique ID for STEAM platform account
+ performance: `5abf65ae3fc5fa349ffd5cs2` (string, optional) - id of corresponding performance log entry + sort: 1 (number, required) - sorting number calculated by (kill + revive + flagTouch - friendlyFire - death - respawn)
+ timestamp: `2018-02-24T01:01:25.825Z` - the entity creation timestamp + timestamp: `2018-02-24T01:01:25.825Z` - the entity creation timestamp
+ updatedAt: `2018-02-24T01:01:25.825Z` - the version timestamp + updatedAt: `2018-02-24T01:01:25.825Z` - the version timestamp
+ __v: 0 (number, required) - the version number of the object + __v: 0 (number, required) - the version number of the object
# HighscorePlayer (BasicPlayer) # HighscorePlayer (BasicPlayer)
A player object as returned for the highscore arrays A player object as resturned for the highscore arrays
## Properties ## Properties
+ warId: War (War, required) - war in which this player took part
+ num: 1 + num: 1

View File

@ -6,8 +6,6 @@ A war as used in statistics
+ title: `Battle No.1` (string, required) - the display neme of the war + title: `Battle No.1` (string, required) - the display neme of the war
+ date: `2018-02-24T20:01:25.825Z` (string, required) - war start timestamp + date: `2018-02-24T20:01:25.825Z` (string, required) - war start timestamp
+ endDate: `2018-02-24T22:31:26.855Z` (string, required) - war end timestamp + endDate: `2018-02-24T22:31:26.855Z` (string, required) - war end timestamp
+ fractionMappingBlufor: `BLUFOR` (enum[string], required) - display name mapping for Blufor fraction
+ fractionMappingOpfor: `OPFOR` (enum[string], required) - display name mapping for Opfor fraction
+ ptBlufor: 11 (number, required) - final points fraction Blufor + ptBlufor: 11 (number, required) - final points fraction Blufor
+ ptOpfor: 12 (number, required) - final points fraction Opfor + ptOpfor: 12 (number, required) - final points fraction Opfor
+ playersBlufor: 36 (number, required) - player count of fraction Blufor + playersBlufor: 36 (number, required) - player count of fraction Blufor
@ -25,4 +23,4 @@ A war as used in statistics
A war response object on creation A war response object on creation
## Properties ## Properties
+ players (array[WarPlayer], required, fixed-type) - collection of all participating players with their statistics + players (array[WarPlayer], required) - collection of all participating players with their statistics

View File

@ -16,66 +16,56 @@ FORMAT: 1A
# Group Access # Group Access
## Endpoints [/auth]
:[Gists](auth/signup.apib) :[Gists](auth/signup.apib)
:[Gists](auth/login.apib) :[Gists](auth/login.apib)
# Group Admin # Group Admin
## Account [/account]
:[Gists](admin/account.apib) :[Gists](admin/account.apib)
## Commands [/cmd]
:[Gists](admin/signature.apib) :[Gists](admin/signature.apib)
# Group Army Management # Group Army Overview
## Army [/overview]
:[Gists](army-management/army.apib) :[Gists](army-management/army.apib)
## Awardings [/awarding] # Group Awardings
:[Gists](army-management/awardings.apib) :[Gists](army-management/awardings.apib)
## Decorations [/decorations] # Group Campaigns
:[Gists](army-management/decorations.apib)
## Promotion [/promotions]
:[Gists](army-management/promotions.apib)
## Ranks [/ranks]
:[Gists](army-management/ranks.apib)
## Squads [/squads]
:[Gists](army-management/squads.apib)
## Users [/user]
:[Gists](army-management/users.apib)
# Group Statistics
## Campaigns [/campaigns]
:[Gists](statistics/campaigns.apib) :[Gists](statistics/campaigns.apib)
## Logs [/logs] # Group Decorations
:[Gists](army-management/decorations.apib)
# Group Logs
:[Gists](statistics/logs.apib) :[Gists](statistics/logs.apib)
## Players [/players] # Group Players
:[Gists](statistics/players.apib) :[Gists](statistics/players.apib)
## Wars [/wars] # Group Promotion
:[Gists](army-management/promotions.apib)
# Group Ranks
:[Gists](army-management/ranks.apib)
# Group Squads
:[Gists](army-management/squads.apib)
# Group Users
:[Gists](army-management/users.apib)
# Group Wars
:[Gists](statistics/wars.apib) :[Gists](statistics/wars.apib)

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,16 @@
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca4"},"name":"Pumarang","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119805032149e+16,"respawn":1,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":1,"revive":0,"flagTouch":0,"sort":-2,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca4"},"name":"Pumarang","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119805032149e+16,"respawn":1,"kill":0,"vehicle":0,"friendlyFire":0,"death":1,"revive":0,"flagTouch":0,"sort":-2,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca5"},"name":"Mercurat","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611982788425e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca5"},"name":"Mercurat","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611982788425e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca6"},"name":"KalleK","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119797767603e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca6"},"name":"KalleK","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119797767603e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca7"},"name":"MAPster","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119800988213e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca7"},"name":"MAPster","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119800988213e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca8"},"name":"LyrikEmu","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611982189104e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca8"},"name":"LyrikEmu","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611982189104e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca9"},"name":"Philipp","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119804179206e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5ca9"},"name":"Philipp","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119804179206e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5caa"},"name":"Wiesl","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611980596481e+16,"respawn":0,"kill":1,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":1,"death":0,"revive":1,"flagTouch":1,"sort":2,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5caa"},"name":"Wiesl","fraction":"BLUFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.65611980596481e+16,"respawn":0,"kill":1,"vehicle":0,"friendlyFire":1,"death":0,"revive":1,"flagTouch":1,"sort":2,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65ae3fc5fa349ffd5cab"},"name":"Murda]X[","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119797112163e+16,"respawn":0,"kill":0,"vehicleLight":1,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0} {"_id":{"$oid":"5abf65ae3fc5fa349ffd5cab"},"name":"Murda]X[","fraction":"OPFOR","warId":{"$oid":"5abf65ae3fc5fa349ffd5ca3"},"steamUUID":7.656119797112163e+16,"respawn":0,"kill":0,"vehicle":1,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:40:46.712Z"},"updatedAt":{"$date":"2018-03-31T10:40:46.712Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cbc"},"name":"Pumarang","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119805032149e+16,"respawn":1,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":1,"revive":0,"flagTouch":0,"sort":-2,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cbc"},"name":"Pumarang","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119805032149e+16,"respawn":1,"kill":0,"vehicle":0,"friendlyFire":0,"death":1,"revive":0,"flagTouch":0,"sort":-2,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cbd"},"name":"Mercurat","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611982788425e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cbd"},"name":"Mercurat","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611982788425e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cbe"},"name":"KalleK","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119797767603e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cbe"},"name":"KalleK","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119797767603e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cc1"},"name":"Philipp","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119804179206e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cc1"},"name":"Philipp","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119804179206e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cc0"},"name":"LyrikEmu","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611982189104e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cc0"},"name":"LyrikEmu","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611982189104e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cc2"},"name":"Wiesl","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611980596481e+16,"respawn":0,"kill":1,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":1,"death":0,"revive":1,"flagTouch":1,"sort":2,"timestamp":{"$date":"2018-03-31T10:41:28.460Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.460Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cc2"},"name":"Wiesl","fraction":"BLUFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.65611980596481e+16,"respawn":0,"kill":1,"vehicle":0,"friendlyFire":1,"death":0,"revive":1,"flagTouch":1,"sort":2,"timestamp":{"$date":"2018-03-31T10:41:28.460Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.460Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cc3"},"name":"Murda]X[","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119797112163e+16,"respawn":0,"kill":0,"vehicleLight":1,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.460Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.460Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cc3"},"name":"Murda]X[","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119797112163e+16,"respawn":0,"kill":0,"vehicle":1,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.460Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.460Z"},"__v":0}
{"_id":{"$oid":"5abf65d83fc5fa349ffd5cbf"},"name":"MAPster","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119800988213e+16,"respawn":0,"kill":0,"vehicleLight":0,"vehicleHeavy":0,"vehicleAir":0,"steamUUID":76561192214911200,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0} {"_id":{"$oid":"5abf65d83fc5fa349ffd5cbf"},"name":"MAPster","fraction":"OPFOR","warId":{"$oid":"5abf65d83fc5fa349ffd5cbb"},"steamUUID":7.656119800988213e+16,"respawn":0,"kill":0,"vehicle":0,"friendlyFire":0,"death":0,"revive":0,"flagTouch":0,"sort":0,"timestamp":{"$date":"2018-03-31T10:41:28.459Z"},"updatedAt":{"$date":"2018-03-31T10:41:28.459Z"},"__v":0}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@ -33,4 +33,4 @@ Get statistics for a single player for all wars of a campaign he took part at
+ Attributes + Attributes
+ name: `Pumarang` (string, required) - latest used playername + name: `Pumarang` (string, required) - latest used playername
+ campaign (Campaign,required) - campaign reflected from request is + campaign (Campaign,required) - campaign reflected from request is
+ players (array[HighscorePlayer],required, fixed-type) - collection of player instances in the campaign + players (array[WarPlayer],required) - collection of player instances in the campaign

View File

@ -5,11 +5,6 @@ module.exports = {
database: { database: {
uri: 'mongodb://localhost:27017/', uri: 'mongodb://localhost:27017/',
db: 'cc', db: 'cc',
mongooseConfig: {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
},
}, },
prod: { prod: {

View File

@ -10,7 +10,7 @@ const DecorationSchema = new Schema({
}, },
fraction: { fraction: {
type: String, type: String,
enum: ['BLUFOR', 'OPFOR', 'ARF', 'SWORD', 'GLOBAL'], enum: ['BLUFOR', 'OPFOR', 'GLOBAL'],
required: true, required: true,
}, },
description: { description: {

View File

@ -3,49 +3,36 @@
const mongoose = require('mongoose'); const mongoose = require('mongoose');
const Schema = mongoose.Schema; const Schema = mongoose.Schema;
const LogBudgetSchema = new Schema( const LogBudgetSchema = new Schema({
{ war: {
war: { type: mongoose.Schema.Types.ObjectId,
type: mongoose.Schema.Types.ObjectId, ref: 'War',
ref: 'War', required: true,
required: true,
},
time: {
type: Date,
required: true,
},
fraction: {
type: String,
enum: ['BLUFOR', 'OPFOR'],
required: true,
},
oldBudget: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
newBudget: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
buy: {
type: Boolean,
required: true,
},
player: {
type: String,
},
item: {
type: String,
},
}, },
{ time: {
collection: 'logBudget', type: Date,
versionKey: false, required: true,
}); },
fraction: {
type: String,
enum: ['BLUFOR', 'OPFOR'],
required: true,
},
oldBudget: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
newBudget: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
}, {
collection: 'logBudget',
});
// optional more indices // optional more indices
LogBudgetSchema.index({war: 1}); LogBudgetSchema.index({war: 1});

View File

@ -28,7 +28,6 @@ const LogFlagSchema = new Schema({
}, },
}, { }, {
collection: 'logFlag', collection: 'logFlag',
versionKey: false,
}); });
// optional more indices // optional more indices
LogFlagSchema.index({war: 1, player: 1}); LogFlagSchema.index({war: 1, player: 1});

View File

@ -40,7 +40,6 @@ const LogKillSchema = new Schema({
}, },
}, { }, {
collection: 'logKill', collection: 'logKill',
versionKey: false,
}); });
// optional more indices // optional more indices
LogKillSchema.index({war: 1, shooter: 1, target: 1}); LogKillSchema.index({war: 1, shooter: 1, target: 1});

View File

@ -1,35 +0,0 @@
'use strict';
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const LogPlayerCountSchema = new Schema({
war: {
type: mongoose.Schema.Types.ObjectId,
ref: 'War',
required: true,
},
time: {
type: Date,
required: true,
},
countBlufor: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
countOpfor: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
}, {
collection: 'logPlayerCount',
versionKey: false,
});
// optional more indices
LogPlayerCountSchema.index({war: 1});
module.exports = mongoose.model('LogPlayerCount', LogPlayerCountSchema);

View File

@ -32,7 +32,6 @@ const LogKillSchema = new Schema({
}, },
}, { }, {
collection: 'logPoints', collection: 'logPoints',
versionKey: false,
}); });
// optional more indices // optional more indices
LogKillSchema.index({war: 1, shooter: 1, target: 1}); LogKillSchema.index({war: 1, shooter: 1, target: 1});

View File

@ -19,7 +19,6 @@ const LogRespawnSchema = new Schema({
}, },
}, { }, {
collection: 'logRespawn', collection: 'logRespawn',
versionKey: false,
}); });
// optional more indices // optional more indices
LogRespawnSchema.index({war: 1, player: 1}); LogRespawnSchema.index({war: 1, player: 1});

View File

@ -32,7 +32,6 @@ const LogReviveSchema = new Schema({
}, },
}, { }, {
collection: 'logRevive', collection: 'logRevive',
versionKey: false,
}); });
// optional more indices // optional more indices
LogReviveSchema.index({war: 1, medic: 1}); LogReviveSchema.index({war: 1, medic: 1});

View File

@ -1,47 +0,0 @@
'use strict';
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const LogServerFpsSchema = new Schema({
war: {
type: mongoose.Schema.Types.ObjectId,
ref: 'War',
required: true,
},
entityName: {
type: String,
required: true,
},
singleAvgFps: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
singleMinFps: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
avgFps: [{
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
}],
minFps: [{
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
}],
}, {
collection: 'logServerFps',
versionKey: false,
});
// optional more indices
LogServerFpsSchema.index({war: 1});
module.exports = mongoose.model('LogServerFps', LogServerFpsSchema);

View File

@ -34,7 +34,6 @@ const LogTransportSchema = new Schema({
}, },
}, { }, {
collection: 'logTransport', collection: 'logTransport',
versionKey: false,
}); });
// optional more indices // optional more indices
LogTransportSchema.index({war: 1, driver: 1}); LogTransportSchema.index({war: 1, driver: 1});

View File

@ -30,7 +30,7 @@ const LogVehicleKillSchema = new Schema({
}, },
vehicleClass: { vehicleClass: {
type: String, type: String,
enum: ['LIGHT', 'HEAVY', 'AIR', 'BOAT', 'UNKNOWN'], enum: ['LIGHT', 'HEAVY', 'AIR', 'UNKNOWN'],
required: true, required: true,
}, },
magazine: { magazine: {
@ -41,7 +41,6 @@ const LogVehicleKillSchema = new Schema({
}, },
}, { }, {
collection: 'logVehicle', collection: 'logVehicle',
versionKey: false,
}); });
// optional more indices // optional more indices
LogVehicleKillSchema.index({war: 1, shooter: 1, target: 1}); LogVehicleKillSchema.index({war: 1, shooter: 1, target: 1});

View File

@ -42,12 +42,6 @@ const PlayerSchema = new Schema({
set: (v) => Math.round(v), set: (v) => Math.round(v),
required: true, required: true,
}, },
vehicleBoat: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: true,
},
death: { death: {
type: Number, type: Number,
get: (v) => Math.round(v), get: (v) => Math.round(v),
@ -78,30 +72,17 @@ const PlayerSchema = new Schema({
set: (v) => Math.round(v), set: (v) => Math.round(v),
required: true, required: true,
}, },
sort: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
},
steamUUID: { steamUUID: {
type: Number, type: Number,
get: (v) => Math.round(v), get: (v) => Math.round(v),
set: (v) => Math.round(v), set: (v) => Math.round(v),
}, },
performance: { }, {
type: mongoose.Schema.Types.ObjectId,
ref: 'LogServerFps',
required: false,
},
travelDistance: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: false,
},
driverDistance: {
type: Number,
get: (v) => Math.round(v),
set: (v) => Math.round(v),
required: false,
},
},
{
collection: 'player', collection: 'player',
timestamps: {createdAt: 'timestamp'}, timestamps: {createdAt: 'timestamp'},
}); });

View File

@ -14,16 +14,6 @@ const WarSchema = new Schema({
endDate: { endDate: {
type: Date, type: Date,
}, },
fractionMappingBlufor: {
type: String,
enum: ['BLUFOR', 'OPFOR', 'ARF', 'SWORD'],
default: 'BLUFOR',
},
fractionMappingOpfor: {
type: String,
enum: ['BLUFOR', 'OPFOR', 'ARF', 'SWORD'],
default: 'OPFOR',
},
ptBlufor: { ptBlufor: {
type: Number, type: Number,
get: (v) => Math.round(v), get: (v) => Math.round(v),

186
server/package-lock.json generated
View File

@ -1111,9 +1111,9 @@
"dev": true "dev": true
}, },
"bluebird": { "bluebird": {
"version": "3.5.1", "version": "3.5.0",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz",
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw="
}, },
"bmp-js": { "bmp-js": {
"version": "0.1.0", "version": "0.1.0",
@ -1267,9 +1267,9 @@
"dev": true "dev": true
}, },
"bson": { "bson": {
"version": "1.1.0", "version": "1.0.9",
"resolved": "https://registry.npmjs.org/bson/-/bson-1.1.0.tgz", "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz",
"integrity": "sha512-9Aeai9TacfNtWXOYarkFJRW2CWo+dRon+fuLZYJmvLV3+MiUp0bEI6IAZfXEIg7/Pl/7IWlLaDnhzTsD81etQA==" "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg=="
}, },
"buffer": { "buffer": {
"version": "3.6.0", "version": "3.6.0",
@ -3984,12 +3984,14 @@
"balanced-match": { "balanced-match": {
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"brace-expansion": { "brace-expansion": {
"version": "1.1.11", "version": "1.1.11",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"balanced-match": "^1.0.0", "balanced-match": "^1.0.0",
"concat-map": "0.0.1" "concat-map": "0.0.1"
@ -4004,17 +4006,20 @@
"code-point-at": { "code-point-at": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"concat-map": { "concat-map": {
"version": "0.0.1", "version": "0.0.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
@ -4131,7 +4136,8 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
@ -4143,6 +4149,7 @@
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
@ -4157,6 +4164,7 @@
"version": "3.0.4", "version": "3.0.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
} }
@ -4164,12 +4172,14 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"minipass": { "minipass": {
"version": "2.2.4", "version": "2.2.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.1", "safe-buffer": "^5.1.1",
"yallist": "^3.0.0" "yallist": "^3.0.0"
@ -4188,6 +4198,7 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
@ -4268,7 +4279,8 @@
"number-is-nan": { "number-is-nan": {
"version": "1.0.1", "version": "1.0.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
@ -4280,6 +4292,7 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@ -4401,6 +4414,7 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
@ -6298,9 +6312,9 @@
} }
}, },
"kareem": { "kareem": {
"version": "2.3.0", "version": "2.2.1",
"resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.0.tgz", "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.2.1.tgz",
"integrity": "sha512-6hHxsp9e6zQU8nXsP+02HGWXwTkOEw6IROhF2ZA28cYbUk4eJ6QbtZvdqZOdD9YPKghG3apk5eOCvs+tLl3lRg==" "integrity": "sha512-xpDFy8OxkFM+vK6pXy6JmH92ibeEFUuDWzas5M9L7MzVmHW3jzwAHxodCPV/BYkf4A31bVDLyonrMfp9RXb/oA=="
}, },
"keypress": { "keypress": {
"version": "0.1.0", "version": "0.1.0",
@ -6591,9 +6605,9 @@
} }
}, },
"lodash": { "lodash": {
"version": "4.17.11", "version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
}, },
"lodash._basecopy": { "lodash._basecopy": {
"version": "3.0.1", "version": "3.0.1",
@ -6657,8 +6671,7 @@
"lodash.get": { "lodash.get": {
"version": "4.4.2", "version": "4.4.2",
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
"integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk="
"dev": true
}, },
"lodash.isarguments": { "lodash.isarguments": {
"version": "3.1.0", "version": "3.1.0",
@ -6899,12 +6912,6 @@
"timers-ext": "^0.1.5" "timers-ext": "^0.1.5"
} }
}, },
"memory-pager": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
"integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
"optional": true
},
"meow": { "meow": {
"version": "3.7.0", "version": "3.7.0",
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
@ -7133,37 +7140,21 @@
} }
}, },
"mongodb": { "mongodb": {
"version": "3.1.13", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.1.13.tgz", "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.1.0.tgz",
"integrity": "sha512-sz2dhvBZQWf3LRNDhbd30KHVzdjZx9IKC0L+kSZ/gzYquCF5zPOgGqRz6sSCqYZtKP2ekB4nfLxhGtzGHnIKxA==", "integrity": "sha512-fSDZRq9FomRqeDSM7MpMTLa8sz+STs3nZ7Ib0+xvmaKZ6nquNDN4zGDsVhjto6UozFvHMDYJMAfJwhqUygXs9g==",
"requires": { "requires": {
"mongodb-core": "3.1.11", "mongodb-core": "3.1.0"
"safe-buffer": "^5.1.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
} }
}, },
"mongodb-core": { "mongodb-core": {
"version": "3.1.11", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-3.1.11.tgz", "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-3.1.0.tgz",
"integrity": "sha512-rD2US2s5qk/ckbiiGFHeu+yKYDXdJ1G87F6CG3YdaZpzdOm5zpoAZd/EKbPmFO6cQZ+XVXBXBJ660sSI0gc6qg==", "integrity": "sha512-qRjG62Fu//CZhkgn0jA/k8jh5MhACIq8cOJUryH6sck87pgt+C222MSD02tsCq5zNo/B6ZFHtNodZ2qpf8E86g==",
"requires": { "requires": {
"bson": "^1.1.0", "bson": "~1.0.4",
"require_optional": "^1.0.1", "require_optional": "^1.0.1",
"safe-buffer": "^5.1.2",
"saslprep": "^1.0.0" "saslprep": "^1.0.0"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
} }
}, },
"mongodb-memory-server": { "mongodb-memory-server": {
@ -7186,33 +7177,28 @@
} }
}, },
"mongoose": { "mongoose": {
"version": "5.4.13", "version": "5.2.0",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.4.13.tgz", "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.2.0.tgz",
"integrity": "sha512-4dgmFbtNECbW3ZMS6ha2pebinUzZo789scdccdyyajbmaunBPqZJqp6eO6pThIqDsgSOkRi4IrzkZm8kmhtZMA==", "integrity": "sha512-PCChMFJHO8C+M2JYqLhOzpiDD54VoW7XbS0V9V/R6PRJOZ4GNmT4KQzyFDaXZTNRpeQpSPlz5x5Szk/kpdYY9g==",
"requires": { "requires": {
"async": "2.6.1", "async": "2.6.1",
"bson": "~1.1.0", "bson": "~1.0.5",
"kareem": "2.3.0", "kareem": "2.2.1",
"mongodb": "3.1.13", "lodash.get": "4.4.2",
"mongodb-core": "3.1.11", "mongodb": "3.1.0",
"mongodb-core": "3.1.0",
"mongoose-legacy-pluralize": "1.0.2", "mongoose-legacy-pluralize": "1.0.2",
"mpath": "0.5.1", "mpath": "0.4.1",
"mquery": "3.2.0", "mquery": "3.0.0",
"ms": "2.1.1", "ms": "2.0.0",
"regexp-clone": "0.0.1", "regexp-clone": "0.0.1",
"safe-buffer": "5.1.2",
"sliced": "1.0.1" "sliced": "1.0.1"
}, },
"dependencies": { "dependencies": {
"ms": { "ms": {
"version": "2.1.1", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
} }
} }
}, },
@ -7249,26 +7235,38 @@
} }
}, },
"mpath": { "mpath": {
"version": "0.5.1", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/mpath/-/mpath-0.5.1.tgz", "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.4.1.tgz",
"integrity": "sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==" "integrity": "sha512-NNY/MpBkALb9jJmjpBlIi6GRoLveLUM0pJzgbp9vY9F7IQEb/HREC/nxrixechcQwd1NevOhJnWWV8QQQRE+OA=="
}, },
"mquery": { "mquery": {
"version": "3.2.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.0.tgz", "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.0.0.tgz",
"integrity": "sha512-qPJcdK/yqcbQiKoemAt62Y0BAc0fTEKo1IThodBD+O5meQRJT/2HSe5QpBNwaa4CjskoGrYWsEyjkqgiE0qjhg==", "integrity": "sha512-WL1Lk8v4l8VFSSwN3yCzY9TXw+fKVYKn6f+w86TRzOLSE8k1yTgGaLBPUByJQi8VcLbOdnUneFV/y3Kv874pnQ==",
"requires": { "requires": {
"bluebird": "3.5.1", "bluebird": "3.5.0",
"debug": "3.1.0", "debug": "2.6.9",
"regexp-clone": "0.0.1", "regexp-clone": "0.0.1",
"safe-buffer": "5.1.2", "sliced": "0.0.5"
"sliced": "1.0.1"
}, },
"dependencies": { "dependencies": {
"safe-buffer": { "debug": {
"version": "5.1.2", "version": "2.6.9",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"sliced": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz",
"integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8="
} }
} }
}, },
@ -9020,13 +9018,10 @@
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
}, },
"saslprep": { "saslprep": {
"version": "1.0.2", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.2.tgz", "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.0.tgz",
"integrity": "sha512-4cDsYuAjXssUSjxHKRe4DTZC0agDwsCqcMqtJAQPzC74nJ7LfAJflAtC1Zed5hMzEQKj82d3tuzqdGNRsLJ4Gw==", "integrity": "sha512-5lvKUEQ7lAN5/vPl5d3k8FQeDbEamu9kizfATfLLWV5h6Mkh1xcieR1FSsJkcSRUk49lF2tAW8gzXWVwtwZVhw==",
"optional": true, "optional": true
"requires": {
"sparse-bitfield": "^3.0.3"
}
}, },
"sax": { "sax": {
"version": "1.2.4", "version": "1.2.4",
@ -9525,15 +9520,6 @@
"resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz",
"integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==" "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw=="
}, },
"sparse-bitfield": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
"integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
"optional": true,
"requires": {
"memory-pager": "^1.0.2"
}
},
"spawn-args": { "spawn-args": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/spawn-args/-/spawn-args-0.2.0.tgz", "resolved": "https://registry.npmjs.org/spawn-args/-/spawn-args-0.2.0.tgz",

View File

@ -31,9 +31,9 @@
"imagemin-pngquant": "^5.0.0", "imagemin-pngquant": "^5.0.0",
"jimp": "^0.6.0", "jimp": "^0.6.0",
"jsonwebtoken": "^7.4.3", "jsonwebtoken": "^7.4.3",
"lodash": "^4.17.11", "lodash": "^4.17.4",
"mkdirp": "^0.5.1", "mkdirp": "^0.5.1",
"mongoose": "^5.4.13", "mongoose": "^5.0.3",
"morgan": "^1.9.1", "morgan": "^1.9.1",
"multer": "^1.3.0", "multer": "^1.3.0",
"node-html-parser": "^1.1.10", "node-html-parser": "^1.1.10",

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Some files were not shown because too many files have changed in this diff Show More