@@ -66,6 +66,19 @@
|
|||||||
>{{ t("Register") }}</router-link
|
>{{ t("Register") }}</router-link
|
||||||
>
|
>
|
||||||
</li>
|
</li>
|
||||||
|
<li
|
||||||
|
class="m-auto"
|
||||||
|
v-for="(link, index) in externalURLSConfig"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<a
|
||||||
|
:href="link.url"
|
||||||
|
rel="noopener noreferrer ugc"
|
||||||
|
target="_blank"
|
||||||
|
class="block py-2 pr-4 pl-3 text-zinc-700 border-b border-gray-100 hover:bg-zinc-50 md:hover:bg-transparent md:border-0 md:hover:text-mbz-purple-700 md:p-0 dark:text-zinc-400 md:dark:hover:text-white dark:hover:bg-zinc-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
|
||||||
|
>{{ link.label }}</a
|
||||||
|
>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
@@ -268,7 +281,10 @@ import {
|
|||||||
import { useLazyQuery, useMutation } from "@vue/apollo-composable";
|
import { useLazyQuery, useMutation } from "@vue/apollo-composable";
|
||||||
import { UPDATE_DEFAULT_ACTOR } from "@/graphql/actor";
|
import { UPDATE_DEFAULT_ACTOR } from "@/graphql/actor";
|
||||||
import { changeIdentity } from "@/utils/identity";
|
import { changeIdentity } from "@/utils/identity";
|
||||||
import { useRegistrationConfig } from "@/composition/apollo/config";
|
import {
|
||||||
|
useExternalURLSConfig,
|
||||||
|
useRegistrationConfig,
|
||||||
|
} from "@/composition/apollo/config";
|
||||||
import { useOruga } from "@oruga-ui/oruga-next";
|
import { useOruga } from "@oruga-ui/oruga-next";
|
||||||
import {
|
import {
|
||||||
UNREAD_ACTOR_CONVERSATIONS,
|
UNREAD_ACTOR_CONVERSATIONS,
|
||||||
@@ -283,6 +299,7 @@ const { identities } = useCurrentUserIdentities();
|
|||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
|
||||||
|
const { externalURLSConfig } = useExternalURLSConfig();
|
||||||
const { registrationsOpen, registrationsAllowlist, databaseLogin } =
|
const { registrationsOpen, registrationsAllowlist, databaseLogin } =
|
||||||
useRegistrationConfig();
|
useRegistrationConfig();
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,22 @@ export function useAnonymousParticipationConfig() {
|
|||||||
return { anonymousParticipationConfig, error, loading };
|
return { anonymousParticipationConfig, error, loading };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function useExternalURLSConfig() {
|
||||||
|
const {
|
||||||
|
result: configResult,
|
||||||
|
error,
|
||||||
|
loading,
|
||||||
|
} = useQuery<{
|
||||||
|
config: Pick<IConfig, "externalUrls">;
|
||||||
|
}>(CONFIG);
|
||||||
|
|
||||||
|
const externalURLSConfig = computed(
|
||||||
|
() => configResult.value?.config?.externalUrls
|
||||||
|
);
|
||||||
|
|
||||||
|
return { externalURLSConfig, error, loading };
|
||||||
|
}
|
||||||
|
|
||||||
export function useAnonymousReportsConfig() {
|
export function useAnonymousReportsConfig() {
|
||||||
const {
|
const {
|
||||||
result: configResult,
|
result: configResult,
|
||||||
|
|||||||
@@ -20,6 +20,11 @@ export const CONFIG = gql`
|
|||||||
languages
|
languages
|
||||||
primaryColor
|
primaryColor
|
||||||
secondaryColor
|
secondaryColor
|
||||||
|
externalUrls {
|
||||||
|
label
|
||||||
|
url
|
||||||
|
enabled
|
||||||
|
}
|
||||||
instanceLogo {
|
instanceLogo {
|
||||||
url
|
url
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ export interface IConfig {
|
|||||||
longDescription: string;
|
longDescription: string;
|
||||||
contact: string;
|
contact: string;
|
||||||
slogan: string;
|
slogan: string;
|
||||||
|
externalUrls: { url: string; label: string; enabled: boolean }[];
|
||||||
instanceLogo: { url: string };
|
instanceLogo: { url: string };
|
||||||
defaultPicture: { url: string };
|
defaultPicture: { url: string };
|
||||||
primaryColor: string;
|
primaryColor: string;
|
||||||
|
|||||||
Reference in New Issue
Block a user