Pocketbase: Update schema (fix incorrect DNF points calculation with multiple DNFs)
This commit is contained in:
516
pb_schema.json
516
pb_schema.json
@ -1,176 +1,4 @@
|
||||
[
|
||||
{
|
||||
"id": "pbc_3142635823",
|
||||
"listRule": null,
|
||||
"viewRule": null,
|
||||
"createRule": null,
|
||||
"updateRule": null,
|
||||
"deleteRule": null,
|
||||
"name": "_superusers",
|
||||
"type": "auth",
|
||||
"fields": [
|
||||
{
|
||||
"autogeneratePattern": "[a-z0-9]{15}",
|
||||
"hidden": false,
|
||||
"id": "text3208210256",
|
||||
"max": 15,
|
||||
"min": 15,
|
||||
"name": "id",
|
||||
"pattern": "^[a-z0-9]+$",
|
||||
"presentable": false,
|
||||
"primaryKey": true,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"cost": 0,
|
||||
"hidden": true,
|
||||
"id": "password901924565",
|
||||
"max": 0,
|
||||
"min": 8,
|
||||
"name": "password",
|
||||
"pattern": "",
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "password"
|
||||
},
|
||||
{
|
||||
"autogeneratePattern": "[a-zA-Z0-9]{50}",
|
||||
"hidden": true,
|
||||
"id": "text2504183744",
|
||||
"max": 60,
|
||||
"min": 30,
|
||||
"name": "tokenKey",
|
||||
"pattern": "",
|
||||
"presentable": false,
|
||||
"primaryKey": false,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"exceptDomains": null,
|
||||
"hidden": false,
|
||||
"id": "email3885137012",
|
||||
"name": "email",
|
||||
"onlyDomains": null,
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "email"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "bool1547992806",
|
||||
"name": "emailVisibility",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": true,
|
||||
"type": "bool"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "bool256245529",
|
||||
"name": "verified",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": true,
|
||||
"type": "bool"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "autodate2990389176",
|
||||
"name": "created",
|
||||
"onCreate": true,
|
||||
"onUpdate": false,
|
||||
"presentable": false,
|
||||
"system": true,
|
||||
"type": "autodate"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "autodate3332085495",
|
||||
"name": "updated",
|
||||
"onCreate": true,
|
||||
"onUpdate": true,
|
||||
"presentable": false,
|
||||
"system": true,
|
||||
"type": "autodate"
|
||||
}
|
||||
],
|
||||
"indexes": [
|
||||
"CREATE UNIQUE INDEX `idx_tokenKey_pbc_3142635823` ON `_superusers` (`tokenKey`)",
|
||||
"CREATE UNIQUE INDEX `idx_email_pbc_3142635823` ON `_superusers` (`email`) WHERE `email` != ''"
|
||||
],
|
||||
"system": true,
|
||||
"authRule": "",
|
||||
"manageRule": null,
|
||||
"authAlert": {
|
||||
"enabled": true,
|
||||
"emailTemplate": {
|
||||
"subject": "Login from a new location",
|
||||
"body": "<p>Hello,</p>\n<p>We noticed a login to your {APP_NAME} account from a new location.</p>\n<p>If this was you, you may disregard this email.</p>\n<p><strong>If this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.</strong></p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
}
|
||||
},
|
||||
"oauth2": {
|
||||
"mappedFields": {
|
||||
"id": "",
|
||||
"name": "",
|
||||
"username": "",
|
||||
"avatarURL": ""
|
||||
},
|
||||
"enabled": false
|
||||
},
|
||||
"passwordAuth": {
|
||||
"enabled": true,
|
||||
"identityFields": [
|
||||
"email"
|
||||
]
|
||||
},
|
||||
"mfa": {
|
||||
"enabled": false,
|
||||
"duration": 1800,
|
||||
"rule": ""
|
||||
},
|
||||
"otp": {
|
||||
"enabled": false,
|
||||
"duration": 180,
|
||||
"length": 8,
|
||||
"emailTemplate": {
|
||||
"subject": "OTP for {APP_NAME}",
|
||||
"body": "<p>Hello,</p>\n<p>Your one-time password is: <strong>{OTP}</strong></p>\n<p><i>If you didn't ask for the one-time password, you can ignore this email.</i></p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
}
|
||||
},
|
||||
"authToken": {
|
||||
"duration": 86400
|
||||
},
|
||||
"passwordResetToken": {
|
||||
"duration": 1800
|
||||
},
|
||||
"emailChangeToken": {
|
||||
"duration": 1800
|
||||
},
|
||||
"verificationToken": {
|
||||
"duration": 259200
|
||||
},
|
||||
"fileToken": {
|
||||
"duration": 180
|
||||
},
|
||||
"verificationTemplate": {
|
||||
"subject": "Verify your {APP_NAME} email",
|
||||
"body": "<p>Hello,</p>\n<p>Thank you for joining us at {APP_NAME}.</p>\n<p>Click on the button below to verify your email address.</p>\n<p>\n <a class=\"btn\" href=\"{APP_URL}/_/#/auth/confirm-verification/{TOKEN}\" target=\"_blank\" rel=\"noopener\">Verify</a>\n</p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
},
|
||||
"resetPasswordTemplate": {
|
||||
"subject": "Reset your {APP_NAME} password",
|
||||
"body": "<p>Hello,</p>\n<p>Click on the button below to reset your password.</p>\n<p>\n <a class=\"btn\" href=\"{APP_URL}/_/#/auth/confirm-password-reset/{TOKEN}\" target=\"_blank\" rel=\"noopener\">Reset password</a>\n</p>\n<p><i>If you didn't ask to reset your password, you can ignore this email.</i></p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
},
|
||||
"confirmEmailChangeTemplate": {
|
||||
"subject": "Confirm your {APP_NAME} new email address",
|
||||
"body": "<p>Hello,</p>\n<p>Click on the button below to confirm your new email address.</p>\n<p>\n <a class=\"btn\" href=\"{APP_URL}/_/#/auth/confirm-email-change/{TOKEN}\" target=\"_blank\" rel=\"noopener\">Confirm new email</a>\n</p>\n<p><i>If you didn't ask to change your email address, you can ignore this email.</i></p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "pbc_1736455494",
|
||||
"listRule": "",
|
||||
@ -337,7 +165,7 @@
|
||||
"enabled": false,
|
||||
"emailTemplate": {
|
||||
"subject": "Login from a new location",
|
||||
"body": "<p>Hello,</p>\n<p>We noticed a login to your {APP_NAME} account from a new location.</p>\n<p>If this was you, you may disregard this email.</p>\n<p><strong>If this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.</strong></p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
"body": "<p>Hello,</p>\n<p>We noticed a login to your {APP_NAME} account from a new location:</p>\n<p><em>{ALERT_INFO}</em></p>\n<p><strong>If this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.</strong></p>\n<p>If this was you, you may disregard this email.</p>\n<p>\n Thanks,<br/>\n {APP_NAME} team\n</p>"
|
||||
}
|
||||
},
|
||||
"oauth2": {
|
||||
@ -1553,6 +1381,109 @@
|
||||
],
|
||||
"system": false
|
||||
},
|
||||
{
|
||||
"id": "pbc_2435909571",
|
||||
"listRule": "",
|
||||
"viewRule": "",
|
||||
"createRule": "",
|
||||
"updateRule": "",
|
||||
"deleteRule": "",
|
||||
"name": "scraped_startinggrids",
|
||||
"type": "base",
|
||||
"fields": [
|
||||
{
|
||||
"autogeneratePattern": "[a-z0-9]{15}",
|
||||
"hidden": false,
|
||||
"id": "text3208210256",
|
||||
"max": 15,
|
||||
"min": 15,
|
||||
"name": "id",
|
||||
"pattern": "^[a-z0-9]+$",
|
||||
"presentable": false,
|
||||
"primaryKey": true,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "number516222579",
|
||||
"max": 24,
|
||||
"min": 1,
|
||||
"name": "race_step",
|
||||
"onlyInt": true,
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "number"
|
||||
},
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "text2428491277",
|
||||
"max": 3,
|
||||
"min": 3,
|
||||
"name": "driver_code",
|
||||
"pattern": "",
|
||||
"presentable": false,
|
||||
"primaryKey": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "number1177347317",
|
||||
"max": 20,
|
||||
"min": 1,
|
||||
"name": "position",
|
||||
"onlyInt": true,
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "number"
|
||||
},
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "text1872009285",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "time",
|
||||
"pattern": "",
|
||||
"presentable": false,
|
||||
"primaryKey": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"hidden": true,
|
||||
"id": "autodate2990389176",
|
||||
"name": "created",
|
||||
"onCreate": true,
|
||||
"onUpdate": false,
|
||||
"presentable": false,
|
||||
"system": false,
|
||||
"type": "autodate"
|
||||
},
|
||||
{
|
||||
"hidden": true,
|
||||
"id": "autodate3332085495",
|
||||
"name": "updated",
|
||||
"onCreate": true,
|
||||
"onUpdate": true,
|
||||
"presentable": false,
|
||||
"system": false,
|
||||
"type": "autodate"
|
||||
}
|
||||
],
|
||||
"indexes": [
|
||||
"CREATE UNIQUE INDEX `idx_QPaZOui4P1` ON `scraped_startinggrids` (\n `race_step`,\n `driver_code`\n)",
|
||||
"CREATE UNIQUE INDEX `idx_1bfQwZkKBX` ON `scraped_startinggrids` (\n `race_step`,\n `position`\n)"
|
||||
],
|
||||
"system": false
|
||||
},
|
||||
{
|
||||
"id": "pbc_286850423",
|
||||
"listRule": "",
|
||||
@ -2033,7 +1964,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_fPMW",
|
||||
"id": "_clone_8Abk",
|
||||
"max": 10,
|
||||
"min": 3,
|
||||
"name": "username",
|
||||
@ -2047,7 +1978,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_Wusg",
|
||||
"id": "_clone_s6Vb",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "firstname",
|
||||
@ -2060,7 +1991,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_NeO9",
|
||||
"id": "_clone_3shc",
|
||||
"maxSelect": 1,
|
||||
"maxSize": 0,
|
||||
"mimeTypes": [
|
||||
@ -2076,7 +2007,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_hY91",
|
||||
"id": "_clone_Phc6",
|
||||
"name": "admin",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
@ -2125,7 +2056,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_DK1r",
|
||||
"id": "_clone_Lqek",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "name",
|
||||
@ -2138,7 +2069,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_vhUL",
|
||||
"id": "_clone_74gl",
|
||||
"max": null,
|
||||
"min": null,
|
||||
"name": "step",
|
||||
@ -2150,7 +2081,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_3jG4",
|
||||
"id": "_clone_XSiN",
|
||||
"maxSelect": 1,
|
||||
"maxSize": 0,
|
||||
"mimeTypes": [
|
||||
@ -2166,7 +2097,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_kazm",
|
||||
"id": "_clone_Dt5c",
|
||||
"max": null,
|
||||
"min": null,
|
||||
"name": "pxx",
|
||||
@ -2178,7 +2109,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_KPr7",
|
||||
"id": "_clone_DjBN",
|
||||
"max": "",
|
||||
"min": "",
|
||||
"name": "sprintqualidate",
|
||||
@ -2189,7 +2120,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_a1zU",
|
||||
"id": "_clone_9JoH",
|
||||
"max": "",
|
||||
"min": "",
|
||||
"name": "sprintdate",
|
||||
@ -2200,7 +2131,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_TUqn",
|
||||
"id": "_clone_3g96",
|
||||
"max": "",
|
||||
"min": "",
|
||||
"name": "qualidate",
|
||||
@ -2211,7 +2142,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_YboV",
|
||||
"id": "_clone_ikdE",
|
||||
"max": "",
|
||||
"min": "",
|
||||
"name": "racedate",
|
||||
@ -2253,7 +2184,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_pIDk",
|
||||
"id": "_clone_m714",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
@ -2265,7 +2196,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_ysK2",
|
||||
"id": "_clone_kDMs",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "hottake",
|
||||
@ -2309,7 +2240,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_4RjP",
|
||||
"id": "_clone_jTU8",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
@ -2320,7 +2251,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_OwkZ",
|
||||
"id": "_clone_VwLb",
|
||||
"max": null,
|
||||
"min": null,
|
||||
"name": "step",
|
||||
@ -2353,10 +2284,10 @@
|
||||
],
|
||||
"indexes": [],
|
||||
"system": false,
|
||||
"viewQuery": "SELECT\n rp.id,\n rp.user,\n -- rp.race,\n r.step,\n \n -- rp.pxx,\n -- rr.pxxs,\n (CASE\n -- Correct pxx pick\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[3]') THEN 10\n \n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[2]') THEN 6\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[4]') THEN 6\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[1]') THEN 3\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[5]') THEN 3\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[0]') THEN 1\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[6]') THEN 1\n \n ELSE 0 \n END) AS pxx_points,\n \n -- rp.dnf,\n -- rr.dnfs,\n (CASE\n -- Correct dnf pick with a single DNF\n WHEN rr.dnfs LIKE '[\"' || rp.dnf || '\"]' THEN 10\n \n -- Correct dnf pick with multiple DNFs\n WHEN rr.dnfs LIKE '[%,\"' || rp.dnf || '\",%]' THEN 10\n \n ELSE 0 \n END) AS dnf_points\nFROM racepicks rp\nJOIN races r ON rp.race = r.id\nJOIN raceresults rr ON rp.race = rr.race\nWHERE pxx_points > 0 OR dnf_points > 0\nORDER BY r.step ASC;"
|
||||
"viewQuery": "SELECT\n rp.id,\n rp.user,\n -- rp.race,\n r.step,\n \n -- rp.pxx,\n -- rr.pxxs,\n (CASE\n -- Correct pxx pick\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[3]') THEN 10\n \n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[2]') THEN 6\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[4]') THEN 6\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[1]') THEN 3\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[5]') THEN 3\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[0]') THEN 1\n WHEN rp.pxx = JSON_EXTRACT(rr.pxxs, '$[6]') THEN 1\n \n ELSE 0 \n END) AS pxx_points,\n \n -- rp.dnf,\n -- rr.dnfs,\n (CASE\n -- Correct dnf pick with a single DNF\n -- WHEN rr.dnfs LIKE '[\"' || rp.dnf || '\"]' THEN 10\n \n -- Correct dnf pick with single or multiple DNFs\n WHEN rr.dnfs LIKE '[%\"' || rp.dnf || '\"%]' THEN 10\n \n ELSE 0 \n END) AS dnf_points\nFROM racepicks rp\nJOIN races r ON rp.race = r.id\nJOIN raceresults rr ON rp.race = rr.race\n-- WHERE pxx_points > 0 OR dnf_points > 0\nORDER BY r.step ASC;"
|
||||
},
|
||||
{
|
||||
"id": "pbc_3585110310",
|
||||
"id": "pbc_4223880558",
|
||||
"listRule": "",
|
||||
"viewRule": "",
|
||||
"createRule": null,
|
||||
@ -2383,7 +2314,91 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_oTTu",
|
||||
"id": "_clone_fDe7",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "relation"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_dFLq",
|
||||
"max": null,
|
||||
"min": null,
|
||||
"name": "step",
|
||||
"onlyInt": true,
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "number"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "json1186524854",
|
||||
"maxSize": 1,
|
||||
"name": "acc_pxx_points",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "json3726038982",
|
||||
"maxSize": 1,
|
||||
"name": "acc_dnf_points",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "json2780867541",
|
||||
"maxSize": 1,
|
||||
"name": "acc_points",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
}
|
||||
],
|
||||
"indexes": [],
|
||||
"system": false,
|
||||
"viewQuery": "SELECT\n p.id,\n p.user,\n p.step,\n (SUM(p.pxx_points) OVER(PARTITION BY p.user ORDER BY p.step ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)) AS acc_pxx_points,\n (SUM(p.dnf_points) OVER(PARTITION BY p.user ORDER BY p.step ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)) AS acc_dnf_points,\n (SUM(p.pxx_points + p.dnf_points) OVER(PARTITION BY p.user ORDER BY p.step ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)) AS acc_points\nFROM racepickpoints p\nORDER BY step ASC;"
|
||||
},
|
||||
{
|
||||
"id": "pbc_3585110310",
|
||||
"listRule": "",
|
||||
"viewRule": "",
|
||||
"createRule": null,
|
||||
"updateRule": null,
|
||||
"deleteRule": null,
|
||||
"name": "racepickpointstotal",
|
||||
"type": "view",
|
||||
"fields": [
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "text3208210256",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "id",
|
||||
"pattern": "^[a-z0-9]+$",
|
||||
"presentable": false,
|
||||
"primaryKey": true,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_M37B",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
@ -2421,11 +2436,21 @@
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "json1247457462",
|
||||
"maxSize": 1,
|
||||
"name": "total_points_per_pick",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
}
|
||||
],
|
||||
"indexes": [],
|
||||
"system": false,
|
||||
"viewQuery": "SELECT\n p.id,\n p.user,\n SUM(p.pxx_points) AS total_pxx_points,\n SUM(p.dnf_points) AS total_dnf_points,\n SUM(p.pxx_points + p.dnf_points) AS total_points\nFROM racepickpoints p\nGROUP BY user\nORDER BY total_points DESC;"
|
||||
"viewQuery": "SELECT\n p.id,\n p.user,\n SUM(p.pxx_points) AS total_pxx_points,\n SUM(p.dnf_points) AS total_dnf_points,\n SUM(p.pxx_points + p.dnf_points) AS total_points,\n (CAST(SUM(p.pxx_points + p.dnf_points) AS REAL) / COUNT(*)) AS total_points_per_pick\nFROM racepickpoints p\nGROUP BY user\nORDER BY total_points DESC;"
|
||||
},
|
||||
{
|
||||
"id": "pbc_2823555101",
|
||||
@ -2455,7 +2480,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_2533072930",
|
||||
"hidden": false,
|
||||
"id": "_clone_XoxW",
|
||||
"id": "_clone_Lw6s",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "race",
|
||||
@ -2468,7 +2493,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_lN2E",
|
||||
"id": "_clone_dlrx",
|
||||
"maxSelect": 7,
|
||||
"minSelect": 0,
|
||||
"name": "pxxs",
|
||||
@ -2481,7 +2506,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_aCgW",
|
||||
"id": "_clone_YWtq",
|
||||
"maxSelect": 20,
|
||||
"minSelect": 0,
|
||||
"name": "dnfs",
|
||||
@ -2495,6 +2520,71 @@
|
||||
"system": false,
|
||||
"viewQuery": "-- This query simply returns the raceresults sorted by their race steps (descending).\nSELECT result.id, result.race, result.pxxs, result.dnfs\nFROM raceresults result\nJOIN races race ON result.race = race.id\nORDER BY race.step DESC;"
|
||||
},
|
||||
{
|
||||
"id": "pbc_3189024959",
|
||||
"listRule": "",
|
||||
"viewRule": "",
|
||||
"createRule": null,
|
||||
"updateRule": null,
|
||||
"deleteRule": null,
|
||||
"name": "scraped_raceresultsacc",
|
||||
"type": "view",
|
||||
"fields": [
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "text3208210256",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "id",
|
||||
"pattern": "^[a-z0-9]+$",
|
||||
"presentable": false,
|
||||
"primaryKey": true,
|
||||
"required": true,
|
||||
"system": true,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_YEQY",
|
||||
"max": 24,
|
||||
"min": 1,
|
||||
"name": "race_step",
|
||||
"onlyInt": true,
|
||||
"presentable": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "number"
|
||||
},
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_lePz",
|
||||
"max": 3,
|
||||
"min": 3,
|
||||
"name": "driver_code",
|
||||
"pattern": "",
|
||||
"presentable": false,
|
||||
"primaryKey": false,
|
||||
"required": true,
|
||||
"system": false,
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "json2780867541",
|
||||
"maxSize": 1,
|
||||
"name": "acc_points",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
"system": false,
|
||||
"type": "json"
|
||||
}
|
||||
],
|
||||
"indexes": [],
|
||||
"system": false,
|
||||
"viewQuery": "SELECT\n r.id,\n r.race_step,\n r.driver_code,\n (SUM(r.points) OVER(PARTITION BY r.driver_code ORDER BY r.race_step ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)) AS acc_points\nFROM scraped_raceresults r\nORDER BY race_step ASC;"
|
||||
},
|
||||
{
|
||||
"id": "pbc_1743016826",
|
||||
"listRule": "",
|
||||
@ -2522,7 +2612,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_ASwf",
|
||||
"id": "_clone_u2Xp",
|
||||
"max": 10,
|
||||
"min": 3,
|
||||
"name": "username",
|
||||
@ -2536,7 +2626,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_feSn",
|
||||
"id": "_clone_IGYL",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "firstname",
|
||||
@ -2549,7 +2639,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_AuI7",
|
||||
"id": "_clone_sEZH",
|
||||
"maxSelect": 1,
|
||||
"maxSize": 0,
|
||||
"mimeTypes": [
|
||||
@ -2565,7 +2655,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_kxwg",
|
||||
"id": "_clone_Aev1",
|
||||
"name": "admin",
|
||||
"presentable": false,
|
||||
"required": false,
|
||||
@ -2615,7 +2705,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_gNum",
|
||||
"id": "_clone_a4Gn",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
@ -2628,7 +2718,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_2533072930",
|
||||
"hidden": false,
|
||||
"id": "_clone_JngA",
|
||||
"id": "_clone_scFa",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "race",
|
||||
@ -2641,7 +2731,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_lSLH",
|
||||
"id": "_clone_Z5l5",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "pxx",
|
||||
@ -2654,7 +2744,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_fr0S",
|
||||
"id": "_clone_0ry6",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "dnf",
|
||||
@ -2696,7 +2786,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1736455494",
|
||||
"hidden": false,
|
||||
"id": "_clone_G7K2",
|
||||
"id": "_clone_Z44W",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "user",
|
||||
@ -2708,7 +2798,7 @@
|
||||
{
|
||||
"autogeneratePattern": "",
|
||||
"hidden": false,
|
||||
"id": "_clone_oLff",
|
||||
"id": "_clone_ivB8",
|
||||
"max": 0,
|
||||
"min": 0,
|
||||
"name": "hottake",
|
||||
@ -2723,7 +2813,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_1le8",
|
||||
"id": "_clone_RgzD",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "wdcwinner",
|
||||
@ -2736,7 +2826,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1568971955",
|
||||
"hidden": false,
|
||||
"id": "_clone_HQds",
|
||||
"id": "_clone_nnZX",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "wccwinner",
|
||||
@ -2749,7 +2839,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_k21B",
|
||||
"id": "_clone_wNY4",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "mostovertakes",
|
||||
@ -2762,7 +2852,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_pgZL",
|
||||
"id": "_clone_okPh",
|
||||
"maxSelect": 1,
|
||||
"minSelect": 0,
|
||||
"name": "mostdnfs",
|
||||
@ -2773,7 +2863,7 @@
|
||||
},
|
||||
{
|
||||
"hidden": false,
|
||||
"id": "_clone_u3OO",
|
||||
"id": "_clone_9rOH",
|
||||
"max": null,
|
||||
"min": null,
|
||||
"name": "doohanstarts",
|
||||
@ -2787,7 +2877,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_8Z5h",
|
||||
"id": "_clone_WZjB",
|
||||
"maxSelect": 10,
|
||||
"minSelect": 10,
|
||||
"name": "teamwinners",
|
||||
@ -2800,7 +2890,7 @@
|
||||
"cascadeDelete": false,
|
||||
"collectionId": "pbc_1967373549",
|
||||
"hidden": false,
|
||||
"id": "_clone_ahZg",
|
||||
"id": "_clone_870o",
|
||||
"maxSelect": 20,
|
||||
"minSelect": 3,
|
||||
"name": "podiums",
|
||||
|
||||
Reference in New Issue
Block a user