Moved SoundCloud api-key out to different config file and fixed some list-naming issues that was caused with filter.clean was performed after list-name was encoded. Closes #362

This commit is contained in:
Kasper Rynning-Tønnesen
2018-08-01 16:53:26 +02:00
parent f4dfdb32df
commit 7f22ff2b1d
20 changed files with 139 additions and 100 deletions

92
package-lock.json generated
View File

@@ -171,7 +171,7 @@
"arr-flatten": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
"integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE="
"integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="
},
"arr-union": {
"version": "3.1.0",
@@ -231,7 +231,7 @@
"async": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
"integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w=="
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo="
},
"async-limiter": {
"version": "1.0.0",
@@ -885,7 +885,7 @@
},
"content-type": {
"version": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
"integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js="
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
},
"convert-source-map": {
"version": "1.5.1",
@@ -894,7 +894,7 @@
},
"cookie": {
"version": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
"integrity": "sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw=="
},
"cookie-parser": {
"version": "1.4.3",
@@ -919,7 +919,7 @@
},
"cookie-signature": {
"version": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
"integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
},
"copy-descriptor": {
"version": "0.1.1",
@@ -929,7 +929,7 @@
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
},
"cors": {
"version": "2.8.4",
@@ -1026,7 +1026,7 @@
},
"debug": {
"version": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
@@ -1108,7 +1108,7 @@
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
},
"delegates": {
"version": "1.0.0",
@@ -1117,7 +1117,7 @@
},
"depd": {
"version": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
"integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
"integrity": "sha512-Jlk9xvkTDGXwZiIDyoM7+3AsuvJVoyOpRupvEVy9nX3YO3/ieZxhlgh8GpLNZ8AY7HjO6y2YwpMSh1ejhu3uIw=="
},
"deprecated": {
"version": "0.0.1",
@@ -1188,7 +1188,7 @@
},
"ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
"resolved": "",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"encodeurl": {
@@ -1587,7 +1587,7 @@
"express-session": {
"version": "1.15.6",
"resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz",
"integrity": "sha1-R7QWDIj0KrcP6KUI4xy/92dXqwo=",
"integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==",
"requires": {
"cookie": "0.3.1",
"cookie-signature": "1.0.6",
@@ -1662,7 +1662,7 @@
"lodash": {
"version": "4.17.5",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
"integrity": "sha1-maktZcAnLevoyWtgV7yPv6O+1RE="
"integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw=="
},
"mime": {
"version": "1.2.4",
@@ -1703,7 +1703,7 @@
"mongoose": {
"version": "4.13.11",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.13.11.tgz",
"integrity": "sha1-2m7fjjmQVOEoNgFjFpmVGaNY20M=",
"integrity": "sha512-OgXmFc3vzXwq4zWp41XfSBDnKZLqnBc4Kh7mwwGjBE5iWH5tfkixaPK0uFtpEuzDzUvAIg33bgniyTsmc00olA==",
"requires": {
"async": "2.1.4",
"bson": "~1.0.4",
@@ -1723,7 +1723,7 @@
"mquery": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/mquery/-/mquery-2.3.3.tgz",
"integrity": "sha1-IhQS5dTnKQylWC3RbqjxkKUGtRg=",
"integrity": "sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ==",
"requires": {
"bluebird": "3.5.0",
"debug": "2.6.9",
@@ -1784,7 +1784,7 @@
"string_decoder": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
"integrity": "sha1-D8Z9fBQYJd6UKC3VNr7GubzoYKs=",
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
"requires": {
"safe-buffer": "~5.1.0"
}
@@ -2071,7 +2071,7 @@
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0="
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
},
"gauge": {
"version": "2.7.4",
@@ -2662,7 +2662,7 @@
"hooks-fixed": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-2.0.2.tgz",
"integrity": "sha1-IAdtqgfnfYphBog84/FyLgURQLA="
"integrity": "sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ=="
},
"hpkp": {
"version": "2.0.0",
@@ -2676,7 +2676,7 @@
},
"http-errors": {
"version": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
"integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
"integrity": "sha512-STnYGcKMXL9CGdtpeTFnLmgMSHTTNQJSHxiC4DETHKf934Q160Ht5pljrNeH24S0O9xUN+9vsDJZdZtk5js6Ww==",
"requires": {
"depd": "1.1.1",
"inherits": "2.0.3",
@@ -2743,7 +2743,7 @@
"iconv-lite": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
"integrity": "sha1-90aPYBNfXl2tM5nAqBvpoWA6CCs="
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
},
"ienoopen": {
"version": "1.0.0",
@@ -2774,7 +2774,7 @@
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw=="
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
"ini": {
"version": "1.3.5",
@@ -2919,7 +2919,7 @@
"is-plain-object": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
"integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=",
"integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
"requires": {
"isobject": "^3.0.1"
}
@@ -3302,7 +3302,7 @@
},
"mime": {
"version": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
"integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY="
"integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
},
"mimic-response": {
"version": "1.0.0",
@@ -3351,14 +3351,14 @@
},
"mkdirp": {
"version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==",
"requires": {
"minimist": "0.0.8"
},
"dependencies": {
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"resolved": "",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
}
}
@@ -3575,7 +3575,7 @@
"mongoose-legacy-pluralize": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz",
"integrity": "sha1-O6n5H6UHtRhtOZ+0CFS/8Y+1Y+Q="
"integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ=="
},
"mpath": {
"version": "0.3.0",
@@ -3590,7 +3590,7 @@
"mquery": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/mquery/-/mquery-3.0.0.tgz",
"integrity": "sha1-5fOH26vAubaYWeVQ6BD6q+DOq7A=",
"integrity": "sha512-WL1Lk8v4l8VFSSwN3yCzY9TXw+fKVYKn6f+w86TRzOLSE8k1yTgGaLBPUByJQi8VcLbOdnUneFV/y3Kv874pnQ==",
"requires": {
"bluebird": "3.5.0",
"debug": "2.6.9",
@@ -3607,7 +3607,7 @@
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"resolved": "",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"multipipe": {
@@ -3621,7 +3621,7 @@
"muri": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/muri/-/muri-1.3.0.tgz",
"integrity": "sha1-rszz22TFaqfFs04A+Vt4eFJ6RyE="
"integrity": "sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg=="
},
"nan": {
"version": "2.10.0",
@@ -3661,7 +3661,7 @@
},
"negotiator": {
"version": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
"integrity": "sha512-qTxkr1RoLw5Pz+1+PTJ/66hWuyi2LEOeOuIDJDlx6JF8x75bmD5C7qXTg2UlX5W9rLfkqKP+r8q6Vy6NWdWrbw=="
},
"next-tick": {
"version": "1.0.0",
@@ -3844,7 +3844,7 @@
},
"on-finished": {
"version": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
"integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
"integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
"requires": {
"ee-first": "1.1.1"
}
@@ -3964,7 +3964,7 @@
},
"parseurl": {
"version": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
"integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
"integrity": "sha512-DjIMrEiCuzD/Xsr69WhcPCTeb6iZP5JgL/DZ3cYz0zMnyiXiscoqC6LLV2dYwQHfy9O+twCDVVPiFWb7xZhaOw=="
},
"pascalcase": {
"version": "0.1.1",
@@ -4101,7 +4101,7 @@
"promise": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
"integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=",
"integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
"requires": {
"asap": "~2.0.3"
}
@@ -4141,7 +4141,7 @@
},
"qs": {
"version": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
"integrity": "sha1-NJzfbu+J7EXBLX1es/wMhwNDptg="
"integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A=="
},
"random-bytes": {
"version": "1.0.0",
@@ -4259,7 +4259,7 @@
"redis": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz",
"integrity": "sha1-ICKI4/WMSfYHnZevehDhMDrhSwI=",
"integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==",
"requires": {
"double-ended-queue": "^2.1.0-0",
"redis-commands": "^1.2.0",
@@ -4423,7 +4423,7 @@
"require_optional": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz",
"integrity": "sha1-TPNaQkf2TKPfjC7yCMxJSxyo/C4=",
"integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==",
"requires": {
"resolve-from": "^2.0.0",
"semver": "^5.1.0"
@@ -4455,7 +4455,7 @@
},
"resolve-from": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz",
"resolved": "",
"integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c="
},
"resolve-url": {
@@ -4478,7 +4478,7 @@
},
"safe-buffer": {
"version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
"integrity": "sha1-iTMSr2myEj3vcfV4iQAWce6yyFM="
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
},
"safe-regex": {
"version": "1.1.0",
@@ -4579,7 +4579,7 @@
},
"setprototypeof": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
"resolved": "",
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
},
"sigmund": {
@@ -4797,7 +4797,7 @@
},
"socket.io-adapter": {
"version": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz",
"integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs="
"integrity": "sha512-a8zS9B5yaggPHh4odsSZJmMmHsVi4eOym5zIjTALl6GQCkOCghorCGQjBCke3WKbY14lgHh7L1E7ZBZy8/sYrQ=="
},
"socket.io-client": {
"version": "2.1.0",
@@ -5357,7 +5357,7 @@
"uid-safe": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
"integrity": "sha1-Kz1cckDo/C5Y+Komnl7knAhXvTo=",
"integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==",
"requires": {
"random-bytes": "~1.0.0"
}
@@ -5424,7 +5424,7 @@
},
"unpipe": {
"version": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
"integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="
},
"unset-value": {
"version": "1.0.0",
@@ -5503,11 +5503,11 @@
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
"utils-merge": {
"version": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
"integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA=="
},
"v8flags": {
"version": "2.1.1",
@@ -5519,7 +5519,7 @@
},
"vary": {
"version": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
"integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
"integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="
},
"verror": {
"version": "1.10.0",
@@ -5658,7 +5658,7 @@
"which": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
"integrity": "sha1-/wS9/AEO5UfXgL7DjhrBwnd9JTo=",
"integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
"requires": {
"isexe": "^2.0.0"
}
@@ -5743,7 +5743,7 @@
},
"xtend": {
"version": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
"integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68="
"integrity": "sha512-iTwvhNBRetXWe81+VcIw5YeadVSWyze7uA7nVnpP13ulrpnJ3UfQm5ApGnrkmxDJFdrblRdZs0EvaTCIfei5oQ=="
},
"yargs": {
"version": "3.10.0",

View File

@@ -86,11 +86,11 @@ app.use(function (req, res, next) {
} else {
if (cookie === undefined) {
try {
console.error((new Date), "originalUrl", req.originalUrl);
console.error((new Date), "couldn't fetch cookie for some reason, maybe no cookie exists?", req.get('origin'), "couldn't fetch cookie for some reason, maybe no cookie exists?");
//console.error((new Date), "originalUrl", req.originalUrl);
//console.error((new Date), "couldn't fetch cookie for some reason, maybe no cookie exists?", req.get('origin'), "couldn't fetch cookie for some reason, maybe no cookie exists?");
} catch(e) {
console.error((new Date), "couldn't fetch origin");
//console.error((new Date), "couldn't fetch origin");
}
var user_name = Functions.hash_pass(Functions.rndName(uniqid.time(), 15));
res.cookie('_uI', user_name, {

View File

@@ -1,4 +1,7 @@
var api_key = "xxxx";
var api_key = {
"youtube": "xxxx",
"soundcloud": "",
};
try {
module.exports = api_key;

View File

@@ -79,7 +79,7 @@ function chat(msg, guid, offline, socket) {
}
var coll = msg.channel.toLowerCase();//.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
Functions.getSessionAdminUser(Functions.getSession(socket), coll, function(userpass) {
if(userpass != "" || msg.pass == undefined) {
msg.pass = userpass;
@@ -132,7 +132,7 @@ function all_chat(msg, guid, offline, socket) {
var coll = msg.channel.toLowerCase();//.replace(/ /g,'');
var data = msg.data;
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
Functions.check_inlist(coll, guid, socket, offline);
if(data !== "" && data !== undefined && data !== null &&
data.length < 151 && data.replace(/\s/g, '').length){

View File

@@ -11,9 +11,12 @@ var connected_db = mongojs('mongodb://' + mongo_config.host + '/user_credentials
var crypto = require('crypto');
var db = require(pathThumbnails + '/handlers/db.js');
var uniqid = require('uniqid');
var Filter = require('bad-words');
var filter = new Filter({ placeHolder: 'x'});
function encodeChannelName(str) {
var _fn = encodeURIComponent;
str = filter.clean(str);
var toReturn = _fn(str);
toReturn = toReturn.replace(/_/g, "%5F");
toReturn = toReturn.replace(/%26amp%3B/g, "%26").replace(/%26amp%3b/g, "%26");
@@ -25,6 +28,7 @@ function decodeChannelName(str) {
var _fn = decodeURIComponent;
str = str.toUpperCase();
var toReturn = _fn(str.replace(/%5F/g, "_"));
toReturn = filter.clean(toReturn);
return toReturn.toLowerCase();
}

View File

@@ -99,9 +99,12 @@ module.exports = function() {
typeof(msg.channel) == "string" && typeof(msg.socket_id) == "string" && msg.channel != "") {
db.collection("connected_users").find({"_id": msg.channel}, function(err, connected_users_channel) {
if(connected_users_channel.length > 0 && connected_users_channel[0].users.indexOf(msg.guid) > -1) {
if(msg.hasOwnProperty("channel")) {
msg.channel = Functions.encodeChannelName(msg.channel);
}
coll = msg.channel.toLowerCase();//.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
if(coll.indexOf("?") > -1){
coll = coll.substring(0, coll.indexOf("?"));
}
@@ -111,9 +114,7 @@ module.exports = function() {
guid = msg.guid;
socketid = msg.socket_id;
socket.zoff_id = socketid;
if(msg.hasOwnProperty("channel")) {
msg.channel = Functions.encodeChannelName(msg.channel);
}
in_list = true;
chromecast_object = true;
socket.join(coll);
@@ -139,8 +140,8 @@ module.exports = function() {
}
coll = Functions.removeEmojis(_list).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
msg.channel = Functions.encodeChannelName(msg.channel);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -249,7 +250,7 @@ module.exports = function() {
if(channel != "") coll = channel;
if(coll !== undefined) {
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
db.collection("connected_users").findAndModify({
query: {"_id": coll},
update: {$pull: {users: guid}},
@@ -397,7 +398,7 @@ module.exports = function() {
coll = Functions.removeEmojis(_list).toLowerCase();
//coll = coll.replace(/_/g, "");
//
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -425,7 +426,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -460,7 +461,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -482,7 +483,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -506,7 +507,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -571,7 +572,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -601,7 +602,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -631,7 +632,7 @@ module.exports = function() {
if(msg.hasOwnProperty("channel") && msg.channel != "" && typeof(msg.channel) == "string") {
coll = msg.channel;//.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
List.left_channel(coll, guid, short_id, in_list, socket, false);
}
})
@@ -670,7 +671,7 @@ module.exports = function() {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}

View File

@@ -60,7 +60,7 @@ function list(msg, guid, coll, offline, socket) {
}
coll = msg.channel.toLowerCase(); //.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
var pass = crypto.createHash('sha256').update(Functions.decrypt_string(msg.pass)).digest("base64");
db.collection('frontpage_lists').find({"_id": coll}, function(err, frontpage_lists){
if(frontpage_lists.length == 1) {
@@ -129,7 +129,7 @@ function skip(list, guid, coll, offline, socket) {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}

View File

@@ -537,7 +537,7 @@ function add_function(arr, coll, guid, offline, socket) {
}
coll = msg.channel.toLowerCase();//.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
Functions.getSessionAdminUser(Functions.getSession(socket), coll, function(userpass, adminpass) {
if(adminpass != "" || msg.adminpass == undefined) {
msg.adminpass = adminpass;
@@ -601,7 +601,7 @@ function add_function(arr, coll, guid, offline, socket) {
}
coll = msg.channel.toLowerCase();//.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
Functions.getSessionAdminUser(Functions.getSession(socket), coll, function(userpass, adminpass) {
if(adminpass != "" || msg.adminpass == undefined) {
msg.adminpass = adminpass;
@@ -674,7 +674,7 @@ function add_function(arr, coll, guid, offline, socket) {
var coll = Functions.removeEmojis(params.channel).toLowerCase();
//coll = coll.replace(/_/g, "").replace(/ /g,'');
coll = filter.clean(coll);
//coll = filter.clean(coll);
db.collection(coll + "_settings").find(function(err, docs){
if(docs !== null && docs.length !== 0 && docs[0].adminpass == Functions.hash_pass(Functions.hash_pass(Functions.decrypt_string(params.adminpass),true)))
{
@@ -723,7 +723,7 @@ function add_function(arr, coll, guid, offline, socket) {
}
//coll = coll.replace(/ /g,'');
coll = Functions.removeEmojis(coll).toLowerCase();
coll = filter.clean(coll);
//coll = filter.clean(coll);
Functions.getSessionAdminUser(Functions.getSession(socket), coll, function(userpass, adminpass, gotten) {
if(adminpass != "" || msg.adminpass == undefined) {
msg.adminpass = adminpass;

View File

@@ -36,7 +36,7 @@ function password(inp, coll, guid, offline, socket) {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}
@@ -100,7 +100,7 @@ function conf_function(params, coll, guid, offline, socket) {
coll = Functions.removeEmojis(coll).toLowerCase();
//coll = coll.replace(/_/g, "");
coll = filter.clean(coll);
//coll = filter.clean(coll);
} catch(e) {
return;
}

View File

@@ -1,7 +1,8 @@
var path = require('path');
var time_regex = /P((([0-9]*\.?[0-9]*)Y)?(([0-9]*\.?[0-9]*)M)?(([0-9]*\.?[0-9]*)W)?(([0-9]*\.?[0-9]*)D)?)?(T(([0-9]*\.?[0-9]*)H)?(([0-9]*\.?[0-9]*)M)?(([0-9]*\.?[0-9]*)S)?)?/;
try {
var key = require(path.join(__dirname, '../config/api_key.js'));
var keys = require(path.join(__dirname, '../config/api_key.js'));
var key = keys.youtube;
} catch(e) {
console.log("Error - missing file");
console.log("Seems you forgot to create the file api_key.js in /server/config/. Have a look at api_key.example.js.");

View File

@@ -31,8 +31,12 @@ $(document).on("click", "#refresh_all", function(e){
function decodeChannelName(str) {
var _fn = decodeURIComponent;
str = str.toUpperCase();
try {
var toReturn = _fn(str.replace(/%5F/g, "_"));
return toReturn.toLowerCase();
} catch(e) {
return str.toLowerCase();
}
}
socket.on("spread_listeners", function(obj){

View File

@@ -3096,6 +3096,10 @@ nav ul li:hover, nav ul li.active {
width: 100vw;
}
#search-wrapper:hover, #song-title:hover {
background: inherit;
}
#toast-container{
left:0% !important;
width:100vw;

View File

@@ -16,10 +16,13 @@ var Channel = {
Helper.addClass(".pagination-results", "client-pagination-height");
Helper.addClass(".control-list", "client-control-list");
} else {
if(!api_key.hasOwnProperty("soundcloud")) soundcloud_enabled = false;
else {
SC.initialize({
client_id: 'ed53fc01f248f15becddf8eb52cc91ef'
client_id: api_key.soundcloud
}, function() {
});
}
if(cast_ready_connect || chromecastAvailable || chromecastReady) {
Helper.addClass(".volume-container", "volume-container-cast");
}

View File

@@ -6,6 +6,7 @@ var paused = false;
var client = false;
var startTime = 0;
var hostMode = false;
var soundcloud_enabled = true;
var socket_connected = false;
var dynamicListeners = {};
var player_ready = false;
@@ -54,7 +55,7 @@ var Crypt = {
};
SC.initialize({
client_id: 'ed53fc01f248f15becddf8eb52cc91ef'
client_id: api_key.soundcloud
}, function() {
});

View File

@@ -254,7 +254,7 @@ var List = {
Helper.ajax({
method: "get",
url: 'https://www.googleapis.com/youtube/v3/videos?id=' + full_playlist[i].id
+ "&key=" + api_key + "&part=snippet",
+ "&key=" + api_key.youtube + "&part=snippet",
success: function (data) {
data = JSON.parse(data);
//Helper.log("Empty-checker items " + data.items.length);
@@ -813,7 +813,7 @@ var List = {
exportToYoutube: function() {
ga('send', 'event', "export", "youtube");
var request_url = "https://www.googleapis.com/youtube/v3/playlists?part=snippet&key=" + api_key;
var request_url = "https://www.googleapis.com/youtube/v3/playlists?part=snippet&key=" + api_key.youtube;
Helper.removeClass(".exported-list-container", "hide");
Helper.removeClass("#playlist_loader_export", "hide");
Helper.ajax({
@@ -833,7 +833,7 @@ var List = {
response = JSON.parse(response);
var number_added = 0;
var playlist_id = response.id;
var request_url = "https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&key=" + api_key;
var request_url = "https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&key=" + api_key.youtube;
List.addToYoutubePlaylist(playlist_id, full_playlist, number_added, request_url)
},
error: function(response){
@@ -902,12 +902,12 @@ var List = {
if(full_playlist[num].hasOwnProperty("source") && full_playlist[num].source != "soundcloud") {
List.insertInYouTubePlaylist(playlist_id, full_playlist[num].id, num, request_url)
} else {
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key+"&videoEmbeddable=true&part=id,snippet&fields=items(id,snippet)&type=video&order=relevance&safeSearch=none&maxResults=10&videoCategoryId=10";
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key.youtube+"&videoEmbeddable=true&part=id,snippet&fields=items(id,snippet)&type=video&order=relevance&safeSearch=none&maxResults=10&videoCategoryId=10";
yt_url+="&q="+full_playlist[num].title;
var title = full_playlist[num].title;
var temptitle = title.split("-");
temptitle = temptitle.join(" ").split(" ");
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key+"&id=";
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key.youtube+"&id=";
Helper.ajax({
type: "GET",
url: yt_url,

View File

@@ -5,6 +5,7 @@ var client = false;
if(domain.length > 0 && domain[0] == "client") {
client = true;
}
var soundcloud_enabled = true;
var local_new_channel = false;
var hiddenPlaylist = false;
var videoSource;

View File

@@ -245,6 +245,10 @@ var Player = {
//Playercontrols.play_pause();
} else {
if(videoSource == "soundcloud") {
if(!soundcloud_enabled) {
console.error("SoundCloud isn't enabled, so can't search on SoundCloud..");
return;
}
Player.soundcloud_player.play();
//SC.Widget(document.querySelector("#soundcloud_player")).play();
} else {
@@ -264,6 +268,10 @@ var Player = {
} else {
paused = true;
if(videoSource == "soundcloud") {
if(!soundcloud_enabled) {
console.error("SoundCloud isn't enabled, so can't search on SoundCloud..");
return;
}
Player.soundcloud_player.pause();
//SC.Widget(document.querySelector("#soundcloud_player")).pause();
} else {
@@ -283,6 +291,10 @@ var Player = {
},
loadSoundCloud: function(id, this_duration, start, end, _autoplay) {
if(!soundcloud_enabled) {
console.error("SoundCloud isn't enabled, so can't search on SoundCloud..");
return;
}
try {
if(SC == null) return;
} catch(e) {

View File

@@ -44,14 +44,14 @@ var Search = {
if(search_input !== ""){
searching = true;
var keyword= encodeURIComponent(search_input);
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key+"&videoEmbeddable=true&part=id&type=video&order=relevance&safeSearch=none&maxResults=25";
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key.youtube+"&videoEmbeddable=true&part=id&type=video&order=relevance&safeSearch=none&maxResults=25";
yt_url+="&q="+keyword;
if(music)yt_url+="&videoCategoryId=10";
if(pagination) yt_url += "&pageToken=" + pagination;
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key+"&id=";
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key.youtube+"&id=";
if(related) {
var yt_url = "https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=25&relatedToVideoId="+keyword+"&type=video&key="+api_key;
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key+"&id=";
var yt_url = "https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=25&relatedToVideoId="+keyword+"&type=video&key="+api_key.youtube;
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key.youtube+"&id=";
}
Helper.addClass(document.querySelector("#search-btn .material-icons"), "hide");
@@ -196,6 +196,11 @@ var Search = {
},
soundcloudSearch: function(keyword) {
if(!soundcloud_enabled) {
document.querySelector("#results_soundcloud").innerHTML = '<div style="display:block;" id="inner-results" class="empty-inner-results"><div id="empty-results" class="valign-wrapper><span class="valign">No SoundCloud API-key, search disabled..</span></div></div>';
return;
}
if(keyword.length == 0) return;
SC.get('/tracks', {
q: keyword
@@ -308,9 +313,9 @@ var Search = {
backgroundSearch: function(title, artist, length, totalNumber, current){
var keyword= encodeURIComponent(title + " " + artist);
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key+"&videoEmbeddable=true&part=id,snippet&fields=items(id,snippet)&type=video&order=relevance&safeSearch=none&maxResults=10&videoCategoryId=10";
var yt_url = "https://www.googleapis.com/youtube/v3/search?key="+api_key.youtube+"&videoEmbeddable=true&part=id,snippet&fields=items(id,snippet)&type=video&order=relevance&safeSearch=none&maxResults=10&videoCategoryId=10";
yt_url+="&q="+keyword;
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key+"&id=";
var vid_url = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key.youtube+"&id=";
artist = artist.split(" ");
var temptitle = title.split("-");
temptitle = temptitle.join(" ").split(" ");
@@ -454,7 +459,7 @@ importPlaylist: function(pId,pageToken){
var datatype;
if(pageToken !== undefined)
token = "&pageToken="+pageToken;
playlist_url = "https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&maxResults=49&key="+api_key+"&playlistId="+pId+token;
playlist_url = "https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&maxResults=49&key="+api_key.youtube+"&playlistId="+pId+token;
if(youtube_authenticated) {
datatype = "html";
headers = {
@@ -597,7 +602,7 @@ importSpotifyPlaylist: function(url){
addVideos: function(ids){
var more = false;
var next_ids = [];
var request_url="https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key=" + api_key + "&id=";
var request_url="https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key=" + api_key.youtube + "&id=";
for(var i = 0; i < ids.length; i++) {
if(i > 48) {
more = true;

View File

@@ -53,8 +53,8 @@ var Suggestions = {
Helper.removeClass(document.querySelector(".suggest-title-info"), "hide");
Helper.removeClass("#suggest-song-html", "hide");
}
var get_url = "https://www.googleapis.com/youtube/v3/search?part=snippet&relatedToVideoId="+id+"&type=video&key="+api_key;
var video_urls = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key+"&id=";
var get_url = "https://www.googleapis.com/youtube/v3/search?part=snippet&relatedToVideoId="+id+"&type=video&key="+api_key.youtube;
var video_urls = "https://www.googleapis.com/youtube/v3/videos?part=contentDetails,snippet,id&key="+api_key.youtube+"&id=";
Helper.ajax({
type: "GET",

View File

@@ -48,5 +48,5 @@
<a href="#" class="btn waves-effect waves-light next-results-button orange">Next</a>
</div>
</div>
<div id="results_soundcloud" class="col s12">Test 2</div>
<div id="results_soundcloud" class="col s12"></div>
</div>