Fix plugin URLs, display, redirects (#619)

* Fix plugin URLs, display, redirects

* Fix user profile + some redirects not working
This commit is contained in:
Geometrically
2022-08-20 11:08:21 -07:00
committed by GitHub
parent 7c166d85e1
commit 20c4f0dc10
7 changed files with 102 additions and 31 deletions

View File

@@ -621,13 +621,10 @@ export default {
KoFiIcon,
},
async asyncData(data) {
const projectTypes = ['mod', 'modpack', 'resourcepack']
const projectTypes = ['mod', 'modpack', 'resourcepack', 'plugin', 'project']
try {
if (
!data.params.id ||
!projectTypes.includes(data.params.type.toLowerCase())
) {
if (!data.params.id || !projectTypes.includes(data.params.type)) {
data.error({
statusCode: 404,
message: 'The page could not be found',
@@ -658,11 +655,30 @@ export default {
])
).map((it) => it.data)
if (project.project_type !== data.params.type) {
data.error({
statusCode: 404,
message: 'Project not found',
})
const projectLoaders = {}
for (const version of versions) {
for (const loader of version.loaders) {
projectLoaders[loader] = true
}
}
project.project_type = data.$getProjectTypeForUrl(
project.project_type,
Object.keys(projectLoaders)
)
if (
project.project_type !== data.params.type ||
data.params.id !== project.slug
) {
const route = data.route.fullPath.split('/')
route.splice(0, 3)
data.redirect(
301,
`/${project.project_type}/${project.slug}/${route.join('/')}`
)
return
}
@@ -1122,7 +1138,9 @@ export default {
}
&.lowercase {
text-transform: none;
&::first-letter {
text-transform: none;
}
}
}