Merge branch 'master' of framagit.org:/les/gancio into feat/nominatim-docker_docs
This commit is contained in:
commit
f3391222e2
22 changed files with 174 additions and 359 deletions
24
CHANGELOG
24
CHANGELOG
|
@ -1,27 +1,31 @@
|
|||
All notable changes to this project will be documented in this file.
|
||||
|
||||
### UNRELEASED
|
||||
### 1.6.0 - 30 nov '22
|
||||
- new plugin system - fix #177
|
||||
- new "publish on telegram" plugin: (thanks @fadelkon)
|
||||
- i18n refactoring
|
||||
- people can now choose the language displayed - fix #171
|
||||
- fix place "[Object]" issue - #194
|
||||
- live search
|
||||
- admin could choose a custom fallback image - fix #195
|
||||
- it is now possible NOT to enter the end time of an event - fix #188
|
||||
- Wordpress plugin now supports MU installation
|
||||
- add nominatim / openstreetmap feature (thanks @sedum)
|
||||
- live search
|
||||
- improve event import
|
||||
- new chinese translation
|
||||
- new portuguese translation
|
||||
- add Apple touch icon - fix #200
|
||||
- improve navbar layout
|
||||
- improve event layout
|
||||
- add nominatim / openstreetmap search feature (thanks @sedum)
|
||||
- new hide calendar option
|
||||
- new hide thumbs from homepage option
|
||||
- linkable admin tab
|
||||
- friendly instances label is now customizable (thanks @sedum)
|
||||
- i18n refactoring
|
||||
- Wordpress plugin now supports MU installation
|
||||
- new chinese translation
|
||||
- new portuguese translation
|
||||
- improve navbar layout
|
||||
- improve event layout
|
||||
- complete oauth2 refactoring
|
||||
- fix ics unique uuid
|
||||
- fix place "[Object]" issue - #194
|
||||
- fix random restart while downloading random media
|
||||
- fix mobile dialog layout
|
||||
- urlencode place and tag urls
|
||||
|
||||
|
||||
### 1.5.6 - 22 set '22
|
||||
|
|
|
@ -32,13 +32,13 @@ export default {
|
|||
</script>
|
||||
<style>
|
||||
nav {
|
||||
background-image: linear-gradient(rgba(59, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url(/headerimage.png);
|
||||
background-image: linear-gradient(rgba(0, 0, 0, 0.8), rgba(20, 20, 20, 0.7)), url(/headerimage.png);
|
||||
background-position: center center;
|
||||
background-size: cover;
|
||||
}
|
||||
|
||||
.theme--light nav {
|
||||
background-image: linear-gradient(to bottom, rgba(255,230,230,.95), rgba(250,250,250,.95)), url(/headerimage.png);
|
||||
background-image: linear-gradient(to bottom, rgba(230,230,230,.95), rgba(250,250,250,.95)), url(/headerimage.png);
|
||||
}
|
||||
|
||||
#title {
|
||||
|
|
|
@ -3,12 +3,11 @@ v-col(cols=12)
|
|||
.text-center
|
||||
v-btn-toggle.v-col-6.flex-column.flex-sm-row(v-model='type' color='primary' @change='type => change("type", type)')
|
||||
v-btn(value='normal' label="normal") {{ $t('event.normal') }}
|
||||
v-btn(value='multidate' label='multidate') {{ $t('event.multidate') }}
|
||||
v-btn(v-if='settings.allow_multidate_event' value='multidate' label='multidate') {{ $t('event.multidate') }}
|
||||
v-btn(v-if='settings.allow_recurrent_event' value='recurrent' label="recurrent") {{ $t('event.recurrent') }}
|
||||
|
||||
p {{ $t(`event.${type}_description`) }}
|
||||
|
||||
|
||||
v-btn-toggle.v-col-6.flex-column.flex-sm-row(v-if='type === "recurrent"' color='primary' :value='value.recurrent.frequency' @change='fq => change("frequency", fq)')
|
||||
v-btn(v-for='f in frequencies' :key='f.value' :value='f.value') {{ f.text }}
|
||||
|
||||
|
@ -60,7 +59,7 @@ v-col(cols=12)
|
|||
:allowedMinutes='allowedMinutes'
|
||||
format='24hr'
|
||||
@click:minute='menuFromHour = false'
|
||||
@change='hr => change("fromHour", hr)')
|
||||
@input='hr => change("fromHour", hr)')
|
||||
|
||||
|
||||
v-col.col-12.col-sm-6
|
||||
|
@ -88,7 +87,7 @@ v-col(cols=12)
|
|||
:allowedMinutes='allowedMinutes'
|
||||
format='24hr'
|
||||
@click:minute='menuDueHour = false'
|
||||
@change='hr => change("dueHour", hr)')
|
||||
@input='hr => change("dueHour", hr)')
|
||||
|
||||
List(v-if='type === "normal" && todayEvents.length' :events='todayEvents' :title='$t("event.same_day")')
|
||||
|
||||
|
@ -235,6 +234,15 @@ export default {
|
|||
} else if (what === 'dueHour') {
|
||||
if (value) {
|
||||
this.value.due = this.value.due ? this.value.due : this.value.from
|
||||
const [hour, minute] = value.split(':')
|
||||
const [fromHour, fromMinute] = this.value.fromHour.split(':')
|
||||
if (!this.value.multidate) {
|
||||
if (hour < fromHour) {
|
||||
this.value.due = dayjs(this.value.from).add(1, 'day').toDate()
|
||||
} else {
|
||||
this.value.due = dayjs(this.value.from).toDate()
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.value.due = null
|
||||
}
|
||||
|
|
|
@ -39,6 +39,10 @@ v-container
|
|||
inset
|
||||
:label="$t('admin.allow_anon_event')")
|
||||
|
||||
v-switch.mt-1(v-model='allow_multidate_event'
|
||||
inset
|
||||
:label="$t('admin.allow_multidate_event')")
|
||||
|
||||
v-switch.mt-1(v-model='allow_recurrent_event'
|
||||
inset
|
||||
:label="$t('admin.allow_recurrent_event')")
|
||||
|
@ -107,6 +111,10 @@ export default {
|
|||
get () { return this.settings.allow_recurrent_event },
|
||||
set (value) { this.setSetting({ key: 'allow_recurrent_event', value }) }
|
||||
},
|
||||
allow_multidate_event: {
|
||||
get () { return this.settings.allow_multidate_event },
|
||||
set (value) { this.setSetting({ key: 'allow_multidate_event', value }) }
|
||||
},
|
||||
recurrent_event_visible: {
|
||||
get () { return this.settings.recurrent_event_visible },
|
||||
set (value) { this.setSetting({ key: 'recurrent_event_visible', value }) }
|
||||
|
|
|
@ -16,6 +16,7 @@ v-container
|
|||
:label="$t('admin.hide_calendar')")
|
||||
|
||||
v-card-title {{$t('admin.default_images')}}
|
||||
v-card-subtitle(v-html="$t('admin.default_images_help')")
|
||||
v-card-text
|
||||
v-row
|
||||
v-col(cols='4')
|
||||
|
@ -109,12 +110,13 @@ import { mdiDeleteForever, mdiRestore, mdiPlus, mdiChevronUp } from '@mdi/js'
|
|||
export default {
|
||||
name: 'Theme',
|
||||
data () {
|
||||
const t = new Date().getMilliseconds()
|
||||
return {
|
||||
mdiDeleteForever, mdiRestore, mdiPlus, mdiChevronUp,
|
||||
valid: false,
|
||||
logoKey: 0,
|
||||
fallbackImageKey: 0,
|
||||
headerImageKey: 0,
|
||||
logoKey: t,
|
||||
fallbackImageKey: t,
|
||||
headerImageKey: t,
|
||||
link: { href: '', label: '' },
|
||||
linkModal: false
|
||||
// menu: [false, false, false, false]
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 12640461481cc39cdee8efa05e7fd02a6a60e99c
|
||||
Subproject commit 0486d0852db569b7064535f0d52709e06e9ecd1f
|
|
@ -1 +0,0 @@
|
|||
{}
|
|
@ -192,6 +192,7 @@
|
|||
"event_remove_ok": "Event removed",
|
||||
"allow_registration_description": "Allow open registrations?",
|
||||
"allow_anon_event": "Allow anonymous events (has to be confirmed)?",
|
||||
"allow_multidate_event": "Allow multi-day events",
|
||||
"allow_recurrent_event": "Allow recurring events",
|
||||
"allow_geolocation": "Allow events geolocation",
|
||||
"recurrent_event_visible": "Show recurring events by default",
|
||||
|
@ -265,6 +266,7 @@
|
|||
"hide_thumbs": "Hide thumbs",
|
||||
"hide_calendar": "Hide calendar",
|
||||
"default_images": "Default images",
|
||||
"default_images_help": "You have to <a href='/admin?tab=theme'>refresh</a> the page to see the changes.",
|
||||
"blocked": "Blocked",
|
||||
"domain": "Domain",
|
||||
"known_users": "Known users",
|
||||
|
|
|
@ -98,7 +98,10 @@
|
|||
"about": "Sobre el sitio",
|
||||
"close": "Cerrar",
|
||||
"help_translate": "Ayuda a traducir",
|
||||
"calendar": "Calendario"
|
||||
"calendar": "Calendario",
|
||||
"content": "Contenido",
|
||||
"admin_actions": "Acciones de administrador",
|
||||
"recurring_event_actions": "Acciones de eventos recurrentes"
|
||||
},
|
||||
"login": {
|
||||
"description": "Entrando podrás publicar nuevos eventos.",
|
||||
|
@ -268,7 +271,12 @@
|
|||
"smtp_use_sendmail": "Usar sendmail",
|
||||
"wrong_domain_warning": "El parámetro baseurl configurado en config.json <b>({baseurl})</b> difiere del que estás visitando <b>({url})</b>",
|
||||
"new_collection": "Nueva colección",
|
||||
"collections_description": "Las colecciones son agrupaciones de eventos por etiquetas y ubicaciones. Serán desplegadas en la página de inicio"
|
||||
"collections_description": "Las colecciones son agrupaciones de eventos por etiquetas y ubicaciones. Serán desplegadas en la página de inicio",
|
||||
"domain": "Dominio",
|
||||
"created_at": "Creado a las",
|
||||
"blocked": "Bloqueado",
|
||||
"known_users": "Usuarios conocidos",
|
||||
"default_images_help": "Tienes que <a href='/admin?tab=theme'>actualizas</a> la página para ver los cambios."
|
||||
},
|
||||
"auth": {
|
||||
"not_confirmed": "Todavía no hemos confirmado este email…",
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
"events": "Ekitaldiak",
|
||||
"places": "Lekuak",
|
||||
"settings": "Aukerak",
|
||||
"actions": "Ekintzak",
|
||||
"actions": "Eragiketak",
|
||||
"deactivate": "Desaktibatu",
|
||||
"remove_admin": "Kendu administratzaile baimena",
|
||||
"activate": "Aktibatu",
|
||||
|
@ -95,7 +95,10 @@
|
|||
"show_map": "Erakutsi mapa",
|
||||
"calendar": "Egutegia",
|
||||
"home": "Etxea",
|
||||
"about": "Honi buruz"
|
||||
"about": "Honi buruz",
|
||||
"recurring_event_actions": "Ekitaldi errepikarien eragiketak",
|
||||
"content": "Edukia",
|
||||
"admin_actions": "Administratzaile eragiketak"
|
||||
},
|
||||
"login": {
|
||||
"description": "Saioa hasten baduzu ekitaldi berriak sortu ahal izango dituzu.",
|
||||
|
@ -265,7 +268,12 @@
|
|||
"config_plugin": "Pluginaren konfigurazioa",
|
||||
"fallback_image": "Lehenetsitako irudia",
|
||||
"header_image": "Goiburuko irudia",
|
||||
"default_images": "Lehenetsitako irudiak"
|
||||
"default_images": "Lehenetsitako irudiak",
|
||||
"blocked": "Blokeatuta",
|
||||
"domain": "Domeinua",
|
||||
"default_images_help": "Orrialdea <a href='/admin?tab=theme'>freskatu</a> behar duzu aldaketak ikusteko.",
|
||||
"known_users": "Erabiltzaile ezagunak",
|
||||
"created_at": "Noiz sortua:"
|
||||
},
|
||||
"auth": {
|
||||
"not_confirmed": "Oraindik baieztatu gabe dago…",
|
||||
|
|
|
@ -93,7 +93,15 @@
|
|||
"show_map": "Mostrar mapa",
|
||||
"latitude": "Latitude",
|
||||
"longitude": "Longitude",
|
||||
"getting_there": "Chegar lá"
|
||||
"getting_there": "Chegar lá",
|
||||
"plugins": "Complementos",
|
||||
"help_translate": "Axuda coa tradución",
|
||||
"calendar": "Calendario",
|
||||
"home": "Inicio",
|
||||
"about": "Acerca de",
|
||||
"content": "Contido",
|
||||
"admin_actions": "Accións de Admin",
|
||||
"recurring_event_actions": "Accións de eventos recurrentes"
|
||||
},
|
||||
"recover": {
|
||||
"not_valid_code": "Algo fallou."
|
||||
|
@ -163,7 +171,9 @@
|
|||
"alt_text_description": "Descrición para persoas con problemas de visión",
|
||||
"choose_focal_point": "Elixe onde centrar a atención",
|
||||
"remove_media_confirmation": "Confirmas a eliminación da imaxe?",
|
||||
"download_flyer": "Descargar folleto"
|
||||
"download_flyer": "Descargar folleto",
|
||||
"address_description": "Cal é o enderezo?",
|
||||
"address_description_osm": "Cal é o enderezo? (Contribuíntes a <a href='http://osm.org/copyright'>OpenStreetMap</a>)"
|
||||
},
|
||||
"admin": {
|
||||
"place_description": "Se escribiches mal o lugar ou enderezo, podes cambialo.<br/>Cambiará o enderezo de tódolos eventos actuais e pasados asociados a este lugar.",
|
||||
|
@ -247,8 +257,19 @@
|
|||
"disable_admin_user_confirm": "Tes certeza de querer retirar os permisos de administración a {user}?",
|
||||
"sender_email": "Remitente",
|
||||
"collections_description": "As coleccións son agrupamentos de eventos por etiqueta ou lugar. Pode ser mostrado na páxina de inicio",
|
||||
"enable_admin_user_confirm": "Tes a certeza de querer darlle permisos de administración a {user}?",
|
||||
"smtp_use_sendmail": "Usar sendmail"
|
||||
"enable_admin_user_confirm": "Tes a certeza de engadir permiso de admin a {user}?",
|
||||
"smtp_use_sendmail": "Usar sendmail",
|
||||
"config_plugin": "Configuración do complemento",
|
||||
"known_users": "Usuarias coñecidas",
|
||||
"created_at": "Creado o",
|
||||
"fallback_image": "Imaxe por omisión",
|
||||
"header_image": "Imaxe da cabeceira",
|
||||
"hide_thumbs": "Agochar miniaturas",
|
||||
"hide_calendar": "Agochar calendario",
|
||||
"default_images": "Imaxes por defecto",
|
||||
"blocked": "Bloqueado",
|
||||
"domain": "Dominio",
|
||||
"default_images_help": "Tes que <a href='/admin?tab=theme'>actualizar</a> a páxina para ver os cambios."
|
||||
},
|
||||
"auth": {
|
||||
"not_confirmed": "Aínda non foi confirmado…",
|
||||
|
|
|
@ -257,7 +257,12 @@
|
|||
"header_image": "Immagine di intestazione",
|
||||
"hide_thumbs": "Nascondi immaginine",
|
||||
"hide_calendar": "Nascondi calendario",
|
||||
"default_images": "Immagini preimpostate"
|
||||
"default_images": "Immagini preimpostate",
|
||||
"default_images_help": "Devi <a href='/admin?tab=theme'>aggiornare</a> la pagina per vedere le modifiche.",
|
||||
"blocked": "Bloccato",
|
||||
"domain": "Domini",
|
||||
"known_users": "Utenti conosciuti",
|
||||
"created_at": "Creato il"
|
||||
},
|
||||
"auth": {
|
||||
"not_confirmed": "Non ancora confermato…",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"common": {
|
||||
"add_event": "Adicionar Evento",
|
||||
"add_event": "Adicionar evento",
|
||||
"description": "Descrição",
|
||||
"send": "Enviar",
|
||||
"address": "Endereço",
|
||||
|
@ -13,7 +13,7 @@
|
|||
"what": "O que",
|
||||
"media": "Media",
|
||||
"password": "Senha",
|
||||
"register": "Registro",
|
||||
"register": "Registrar",
|
||||
"remove": "Remover",
|
||||
"confirm": "Confirmar",
|
||||
"events": "Eventos",
|
||||
|
@ -22,8 +22,8 @@
|
|||
"edit": "Editar",
|
||||
"admin": "Admin",
|
||||
"places": "Lugares",
|
||||
"hide": "Esconder",
|
||||
"search": "Procurar",
|
||||
"hide": "Ocultar",
|
||||
"search": "Buscar",
|
||||
"info": "Info",
|
||||
"users": "Usuários",
|
||||
"share": "Compartilhar",
|
||||
|
@ -76,11 +76,11 @@
|
|||
"logout_ok": "Deslogado",
|
||||
"n_resources": "nenhum recurso|um recurso|{n} recursos",
|
||||
"embed": "Incorporar",
|
||||
"embed_title": "Incorpore este evento na sua página",
|
||||
"embed_help": "Copie o código seguinte em sua página e o evento será apresentado desta maneira",
|
||||
"embed_title": "Incorpore este evento em sua página",
|
||||
"embed_help": "Copie o seguinte código em sua página e o evento será exibido desta maneira",
|
||||
"displayname": "Nome de exibição",
|
||||
"feed_url_copied": "Abra a URL do feed no seu leitor RSS",
|
||||
"follow_me_title": "Seguir atualizações a partir do Fediverso",
|
||||
"feed_url_copied": "Abra a URL copiada do feed em seu leitor de RSS",
|
||||
"follow_me_title": "Siga as atualizações pelo Fediverso",
|
||||
"tags": "Marcadores",
|
||||
"theme": "Tema",
|
||||
"reset": "Reiniciar",
|
||||
|
@ -88,18 +88,27 @@
|
|||
"collections": "Coleções",
|
||||
"max_events": "N. máximo de eventos",
|
||||
"label": "Etiqueta",
|
||||
"close": "Fechar"
|
||||
"close": "Fechar",
|
||||
"plugins": "Plugins",
|
||||
"help_translate": "Ajude a traduzir",
|
||||
"show_map": "Mostrar mapa",
|
||||
"calendar": "Calendário",
|
||||
"home": "Início",
|
||||
"about": "Sobre",
|
||||
"content": "Conteúdo",
|
||||
"admin_actions": "Ações de admin",
|
||||
"recurring_event_actions": "Ações de eventos recorrentes"
|
||||
},
|
||||
"admin": {
|
||||
"user_block_confirm": "Você está certo que quer bloquer o usuário {user}?",
|
||||
"user_block_confirm": "Você está certo que quer bloquear o usuário {user}?",
|
||||
"filter_instances": "Filtrar instâncias",
|
||||
"user_add_help": "Um e-mail con instruções para confirmar a inscrição e escolher uma senha será enviada ao novo usuário",
|
||||
"user_add_help": "Um e-mail com instruções para confirmar a inscrição e escolher uma senha será enviada ao novo usuário",
|
||||
"show_resource": "Mostrar recurso",
|
||||
"block_user": "Bloquear usuário",
|
||||
"filter_users": "Filtrar usuários",
|
||||
"hide_resource": "Ocultar recurso",
|
||||
"delete_resource": "Remover recurso",
|
||||
"delete_resource_confirm": "Você está certo que quer remover esse recurso?",
|
||||
"delete_resource_confirm": "Você está certo que quer remover este recurso?",
|
||||
"show_smtp_setup": "Configurações de e-mail",
|
||||
"resources": "Recursos",
|
||||
"delete_announcement_confirm": "Você está certo que quer remover o anúncio?",
|
||||
|
@ -107,7 +116,7 @@
|
|||
"collections_description": "Coleções são agrupamentos de eventos por marcadores e locais. Eles serão exibidos na página principal",
|
||||
"new_collection": "Nova coleção",
|
||||
"disable_admin_user_confirm": "Você está certo que quer remover permissões de administração de {user}?",
|
||||
"enable_admin_user_confirm": "Você está certo que quer adicionar permissões de administrador para {user}",
|
||||
"enable_admin_user_confirm": "Você está certo que quer adicionar permissões de administrador para {user}?",
|
||||
"event_remove_ok": "Evento removido",
|
||||
"smtp_description": "<ul><li>Administrador deve receber um e-mail quando um evento anônimo for adicionado (se habilitado).</li><li>Administrador deve receber um e-mail de requisição de registro (se habilitado).</li><li>Usuário deve receber um e-mail de solicitação de registro.</li><li>Usuário deve receber um e-mail de confirmação de registro.</li><li>Usuário deve recever um e-mail de confirmação quando registrado diretamente por um administrador.</li><li>Usuários devem receber um e-mail para recuperar a senha quando eles esquecerem ela</li></ul>",
|
||||
"allow_registration_description": "Permitir registro aberto de usuários?",
|
||||
|
@ -138,7 +147,7 @@
|
|||
"smtp_secure": "SMTP Seguro (TLS ou STARTTLS)",
|
||||
"smtp_use_sendmail": "Utilizar sendmail",
|
||||
"instance_place_help": "A etiqueta para exibir em outras instâncias",
|
||||
"delete_trusted_instance_confirm": "Você quer realmente remover esse item do menu de instâncias amigas?",
|
||||
"delete_trusted_instance_confirm": "Você quer realmente remover este item do menu de instâncias amigas?",
|
||||
"sender_email": "E-mail do remetente",
|
||||
"widget": "Widget",
|
||||
"wrong_domain_warning": "A baseurl configurado em config.json <b>({baseurl})</b> é diferente da que você está visitando <b>({url})</b>",
|
||||
|
@ -160,7 +169,7 @@
|
|||
"allow_recurrent_event": "Permitir eventos recorrentes",
|
||||
"recurrent_event_visible": "Exibir eventos recorrentes por padrão",
|
||||
"user_blocked": "Usuário {user} bloqueado",
|
||||
"announcement_description": "Nesta seção você pode inserir um anúncio para ser exibido na página principal",
|
||||
"announcement_description": "Nesta seção você pode inserir anúncios que serão exibidos na página principal",
|
||||
"description_description": "Exibido no cabeçalho próximo ao título",
|
||||
"instance_place": "Local indicativo desta instância",
|
||||
"is_dark": "Tema escuro",
|
||||
|
@ -168,14 +177,26 @@
|
|||
"new_announcement": "Novo anúncio",
|
||||
"federation": "Federação / ActivityPub",
|
||||
"smtp_test_success": "Um e-mail de teste foi enviado para {admin_email}, por favor verifique sua caixa de entrada",
|
||||
"smtp_test_button": "Enviar e-mail de teste"
|
||||
"smtp_test_button": "Enviar e-mail de teste",
|
||||
"allow_geolocation": "Permitir geolocalização de eventos",
|
||||
"config_plugin": "Configuração de plugin",
|
||||
"fallback_image": "Imagem alternativa",
|
||||
"header_image": "Imagem de cabeçalho",
|
||||
"hide_thumbs": "Ocultar miniaturas",
|
||||
"default_images_help": "Você precisa <a href='/admin?tab=theme'>recarregar</a> a página para ver as mudanças.",
|
||||
"domain": "Domínio",
|
||||
"default_images": "Imagens padrão",
|
||||
"known_users": "Usuários conhecidos",
|
||||
"created_at": "Criado em",
|
||||
"hide_calendar": "Ocultar calendário",
|
||||
"blocked": "Bloqueado"
|
||||
},
|
||||
"event": {
|
||||
"follow_me_description": "Uma das maneiras de se manter atualizado com os eventos publicados aqui em {title},\né seguir a conta <u>{account}</u> no Fediverso, por exemplo via Mastodon, e possivelmente adicionar recursos para um evento a partir de lá.<br/><br/>\nSe você nunca ouviu falar sobre Mastodon ou do Fediverso nós recomendamos ler <a href='https://www.savjee.be/videos/simply-explained/mastodon-and-fediverse-explained/'>este artigo</a>.<br/><br/>Entre com sua instância abaixo (e.g. mastodon.social)",
|
||||
"saved": "Evento salvo",
|
||||
"recurrent": "Recorrente",
|
||||
"ics": "ICS",
|
||||
"recurrent_1m_days": "|O {days} de cada mês|{days} de cada mês",
|
||||
"recurrent_1m_days": "Dia {days} de cada mês",
|
||||
"interact_with_me": "Siga-me",
|
||||
"media_description": "Você pode adicionar um flyer (opcional)",
|
||||
"same_day": "no mesmo dia",
|
||||
|
@ -202,12 +223,12 @@
|
|||
"normal_description": "Escolha o dia.",
|
||||
"recurrent_1w_days": "A cada {days}",
|
||||
"each_week": "Toda semana",
|
||||
"each_2w": "Todas outras semanas",
|
||||
"each_month": "Cada mês",
|
||||
"each_2w": "A cada duas semanas",
|
||||
"each_month": "Todo mês",
|
||||
"recurrent_2w_days": "{days} a cada dois",
|
||||
"recurrent_2m_days": "|Dia {days} a cada dois meses|Os dias {days} a cada dois meses",
|
||||
"recurrent_1m_ordinal": "O {n} {days} de cada mês",
|
||||
"recurrent_2m_ordinal": "|O {n} {days} a cada dois meses|O {n} {days} a cada dois meses",
|
||||
"recurrent_2m_days": "Dia {days} a cada dois meses",
|
||||
"recurrent_1m_ordinal": "{n} {days} de cada mês",
|
||||
"recurrent_2m_ordinal": "{n} {days} a cada dois meses",
|
||||
"due": "até",
|
||||
"from": "De",
|
||||
"image_too_big": "A imagem não pode ser maior que 4MB",
|
||||
|
@ -219,7 +240,9 @@
|
|||
"alt_text_description": "Descrição para pessoas com deficiências visuais",
|
||||
"choose_focal_point": "Escolha o ponto focal",
|
||||
"remove_media_confirmation": "Você confirma a remoção da imagem?",
|
||||
"download_flyer": "Baixar flyer"
|
||||
"download_flyer": "Baixar flyer",
|
||||
"address_description": "Qual é o endereço?",
|
||||
"address_description_osm": "Qual é o endereço? (contribuidores do <a href='http://osm.org/copyright'>OpenStreetMap</a>)"
|
||||
},
|
||||
"confirm": {
|
||||
"not_valid": "Algo deu errado.",
|
||||
|
@ -231,7 +254,7 @@
|
|||
"insert_your_address": "Informe seu endereço de e-mail",
|
||||
"feed_description": "Para seguir as atualizações de um computador ou smartphone sem que você precise acessar essa página periodicamente, utilize um feeds RSS. </p>\n\n<p> Com feeds RSS você pode utilizar um app especial para receber atualizações de páginas que te interessam. É uma boa maneira de seguir muitas páginas rapidamente, sem a necessidade de criar contas de usuários ou outras complicações. </p>\n\n<li> Se você possui um Android, recomendamos <a href=\"https://f-droid.org/en/packages/net.frju.flym/\">Flym</a> ou Feeder </li>\n<li> Para iPhone / iPad você pode utilizar <a href=\"https://itunes.apple.com/ua/app/feeds4u/id1038456442?mt=8\"> Feed4U </a> </li>\n<li> Para desktop / laptop nós recomendamos Feedbro, que pode ser instalado no <a href=\"https://addons.mozilla.org/en-GB/firefox/addon/feedbroreader/\"> Firefox </a> ou <a href=\"https://chrome.google.com/webstore/detail/feedbro/mefgmmbdailogpfhfblcnnjfmnpnmdfa\"> Chrome </a>. </li>\n<br/>\nAdicionado este link ao seu leitor de RSS irá mantê-lo atualizado.",
|
||||
"ical_description": "Computadores e smartphones normalmente possuem aplicações de calendário capazes de importar um calendário remoto.",
|
||||
"list_description": "Se você tem uma página e quer exibir uma lista de eventos, use o código seguinte",
|
||||
"list_description": "Se você tem uma página e quer exibir uma lista de eventos, use o seguinte código",
|
||||
"email_description": "Você pode obter os eventos que te interessam através de e-mail."
|
||||
},
|
||||
"oauth": {
|
||||
|
@ -263,7 +286,7 @@
|
|||
},
|
||||
"setup": {
|
||||
"https_warning": "Você está acessando por HTTP, lembre-se de alterar o valor de baseurl em config.json se você mudar para HTTPS!",
|
||||
"completed": "Configuração completada",
|
||||
"completed": "Configuração completa",
|
||||
"start": "Iniciar",
|
||||
"completed_description": "<p>Você pode agora autenticar-se com o seguinte usuário:<br/><br/>Usuário: <b>{email}</b><br/>Senha: <b>{password}<b/></p>",
|
||||
"copy_password_dialog": "Sim, você precisa copiar a senha!"
|
||||
|
|
|
@ -1,293 +0,0 @@
|
|||
{
|
||||
"common": {
|
||||
"embed_help": "将以下代码复制并粘贴到你的网站,此事件将像这样显示",
|
||||
"follow": "关注",
|
||||
"add_event": "添加事件",
|
||||
"send": "发送",
|
||||
"where": "地点",
|
||||
"address": "地址",
|
||||
"when": "时间",
|
||||
"what": "事件",
|
||||
"media": "媒体",
|
||||
"login": "登录",
|
||||
"email": "电子邮箱",
|
||||
"register": "注册",
|
||||
"description": "描述",
|
||||
"hide": "隐藏",
|
||||
"search": "搜索",
|
||||
"confirm": "确认",
|
||||
"admin": "管理员",
|
||||
"users": "用户",
|
||||
"events": "事件",
|
||||
"actions": "操作",
|
||||
"deactivate": "取消",
|
||||
"remove_admin": "移除管理员",
|
||||
"activate": "激活",
|
||||
"save": "该村",
|
||||
"logout": "登出",
|
||||
"name": "名称",
|
||||
"associate": "合作者",
|
||||
"add": "添加",
|
||||
"recover_password": "重置密码",
|
||||
"enable": "启用",
|
||||
"me": "你",
|
||||
"ok": "完成",
|
||||
"resources": "资源",
|
||||
"n_resources": "无资源|1 个资源|{n} 个资源",
|
||||
"displayname": "显示名称",
|
||||
"copy_link": "复制链接",
|
||||
"send_via_mail": "发送电子邮件",
|
||||
"embed": "嵌入式页面",
|
||||
"feed_url_copied": "在你的 RSS 阅读器中打开复制的链接",
|
||||
"follow_me_title": "在 Fediverse 网络中关注更新",
|
||||
"feed": "RSS 源",
|
||||
"moderation": "中等",
|
||||
"authorize": "认证",
|
||||
"title": "标题",
|
||||
"filter": "筛选",
|
||||
"pause": "暂停",
|
||||
"start": "开始",
|
||||
"announcements": "公告",
|
||||
"url": "URL",
|
||||
"place": "地点",
|
||||
"theme": "主题",
|
||||
"label": "标签",
|
||||
"collections": "收藏",
|
||||
"max_events": "最大事件数",
|
||||
"next": "下一个",
|
||||
"export": "导出",
|
||||
"remove": "移除",
|
||||
"settings": "选项",
|
||||
"logout_ok": "已登出",
|
||||
"new_password": "新密码",
|
||||
"new_user": "新用户",
|
||||
"places": "地点",
|
||||
"edit": "编辑",
|
||||
"cancel": "取消",
|
||||
"password": "密码",
|
||||
"info": "信息",
|
||||
"preview": "预览",
|
||||
"share": "分享",
|
||||
"edit_event": "编辑事件",
|
||||
"copy": "复制",
|
||||
"related": "相关",
|
||||
"set_password": "设置密码",
|
||||
"instances": "实例",
|
||||
"activate_user": "已确认",
|
||||
"federation": "联盟",
|
||||
"add_to_calendar": "添加到日历",
|
||||
"copied": "已复制",
|
||||
"embed_title": "在你的网页上嵌入此事件",
|
||||
"user": "用户",
|
||||
"event": "事件",
|
||||
"fediverse": "Fediverse 网络",
|
||||
"skip": "跳过",
|
||||
"delete": "移除",
|
||||
"import": "导入",
|
||||
"tags": "标签",
|
||||
"close": "关闭",
|
||||
"disable": "禁用",
|
||||
"password_updated": "密码已修改。",
|
||||
"reset": "重置"
|
||||
},
|
||||
"export": {
|
||||
"list_description": "如果你有一个网站并希望展示一个事件列表,使用以下代码",
|
||||
"email_description": "你可以通过发给你的电子邮件了解你感兴趣的事件。",
|
||||
"insert_your_address": "输入你的电子邮箱地址",
|
||||
"ical_description": "电脑和智能手机通常预装了能够导入远程日历的日历应用。",
|
||||
"intro": "与那些竭尽全力保留用户和数据的非社交平台不同,我们认为信息和人一样,都必须是自由的。因此,即使不通过此网站,你仍可随时了解你想了解的事件之最新情况。",
|
||||
"feed_description": "要想从电脑或智能手机上关注更新,而无需定期打开本网站,请使用RSS订阅。</p>\n\n<p>通过RSS订阅,您可以使用一个特殊的应用程序来接收你感兴趣的网站的更新。这是一个快速关注许多网站的好方法,不需要创建账户或做其他事。</p>\n\n<li> 如果您使用 Android,我们推荐 <a href=\"https://f-droid.org/en/packages/net.frju.flym/\">Flym</a> 或 Feeder。</li>\n<li> 对于iPhone/iPad,您可以使用 <a href=\"https://itunes.apple.com/ua/app/feeds4u/id1038456442?mt=8\">Feed4U</a> </li>\n<li> 对于台式机/笔记本电脑,我们推荐可在 <a href=\"https://addons.mozilla.org/en-GB/firefox/addon/feedbroreader/\">Firefox</a> 或 <a href=\"https://chrome.google.com/webstore/detail/feedbro/mefgmmbdailogpfhfblcnnjfmnpnmdfa\">Chrome</a> 上安装的 Feedbro。</li>\n<br/>\n将此链接添加到你的RSS阅读器中,以获得最新信息。"
|
||||
},
|
||||
"register": {
|
||||
"description": "社会运动应该组织起来,并自筹资金<br/>\n<br/>在你能发布内容之前,<strong>你的账户必须审核通过</strong>,考虑到<strong>你可以通过此网站发现现实中的人</strong>,请写一些东西告诉我们你希望发布什么。",
|
||||
"error": "错误: ",
|
||||
"complete": "注册必须经过确认。",
|
||||
"first_user": "管理员已创建"
|
||||
},
|
||||
"event": {
|
||||
"anon_description": "即使不登录或注册,你也可以创建事件,但必须等待一些人看到它,\n并确认这是一个合适的事件。此外你也不能够修改它。<br/><br/>\n你也可以 <a href='/login'>登录</a> 或 <a href='/register'>注册</a>。或者继续浏览以得到答案。 ",
|
||||
"anon": "匿名",
|
||||
"same_day": "在同一天",
|
||||
"what_description": "标题",
|
||||
"description_description": "描述",
|
||||
"added": "事件已添加",
|
||||
"saved": "事件已保存",
|
||||
"added_anon": "事件已添加,等待确认。",
|
||||
"updated": "事件已更新",
|
||||
"where_description": "事件的地点在哪里?如果不存在,你可以创建一个。",
|
||||
"confirmed": "事件已确认",
|
||||
"not_found": "找不到事件",
|
||||
"recurrent": "日常事件",
|
||||
"edit_recurrent": "编辑日常事件:",
|
||||
"show_recurrent": "日常事件",
|
||||
"show_past": "以及过往的事件",
|
||||
"multidate_description": "这是一个节日吗?选择它开始和结束的时间",
|
||||
"multidate": "更多日期",
|
||||
"normal_description": "选择日期。",
|
||||
"recurrent_2w_days": "每 {days} 天一次",
|
||||
"each_week": "每周",
|
||||
"each_2w": "隔周一次",
|
||||
"due": "直到",
|
||||
"from": "来自",
|
||||
"image_too_big": "图片不能大于 4MB",
|
||||
"interact_with_me_at": "在 Fediverse 网络上与我互动",
|
||||
"interact_with_me": "关注我",
|
||||
"remove_recurrent_confirmation": "你确定要移除这个日常事件吗?\n过去的事件仍将被维护,但不会再添加新事件。",
|
||||
"import_URL": "从 URL 导入",
|
||||
"import_ICS": "从 ICS 导入",
|
||||
"ics": "ICS",
|
||||
"alt_text_description": "为视觉障碍者提供的说明",
|
||||
"choose_focal_point": "选择联络点",
|
||||
"download_flyer": "下载传单",
|
||||
"tag_description": "标签",
|
||||
"media_description": "你可以添加一份传单(可选)",
|
||||
"recurrent_description": "选择频率和日期",
|
||||
"only_future": "仅限即将到来的事件",
|
||||
"normal": "普通",
|
||||
"recurrent_1w_days": "每 {days} 天",
|
||||
"recurrent_1m_days": "|每月的第 {days} 天|每月的第 {days} 天",
|
||||
"recurrent_1m_ordinal": "每月的第 {n} 个 {days}",
|
||||
"each_month": "每月",
|
||||
"follow_me_description": "一种对这里发布的 {title} 事件保持关注的方法,\n是在 Fediverse 网络,比如 Mastodon,上关注 <u>{account}</u>,亦有可能通过此方式给此事件添加资源。<br/><br/>\n如果你没听说过 Mastodon 和 Fediverse,我们建议你阅读 <a href='https://www.savjee.be/videos/simply-explained/mastodon-and-fediverse-explained/'>这篇文章</a>。<br/><br/>在下方输入你的实例名称(例如:mastodon.social)",
|
||||
"import_description": "你可以从其他平台和实例通过标准格式(ICS 和 hCalendar)导入事件",
|
||||
"remove_media_confirmation": "你确认要删除图片吗?",
|
||||
"remove_confirmation": "你确定要移除此事件吗?"
|
||||
},
|
||||
"login": {
|
||||
"check_email": "检查你的电子邮箱收件箱和垃圾邮件箱。",
|
||||
"not_registered": "还未注册?",
|
||||
"forgot_password": "忘记密码了?",
|
||||
"insert_email": "输入你的电子邮箱地址",
|
||||
"error": "无法登录,检查你的登录信息。",
|
||||
"ok": "已登录",
|
||||
"description": "登录以发布新事件。"
|
||||
},
|
||||
"recover": {
|
||||
"not_valid_code": "发生了一些错误。"
|
||||
},
|
||||
"admin": {
|
||||
"delete_user": "移除",
|
||||
"remove_admin": "移除管理员",
|
||||
"disable_user_confirm": "你确定禁用 {user} 吗?",
|
||||
"disable_admin_user_confirm": "你确定移除 {user} 的管理员权限吗?",
|
||||
"user_remove_ok": "用户已移除",
|
||||
"user_create_ok": "用户已创建",
|
||||
"event_remove_ok": "事件已移除",
|
||||
"allow_registration_description": "允许公众注册?",
|
||||
"allow_anon_event": "允许发布匿名事件(需要确认)?",
|
||||
"allow_recurrent_event": "允许日常事件",
|
||||
"federation": "联邦社交网络 / ActivityPub",
|
||||
"enable_federation": "启用联邦社交网络",
|
||||
"add_instance": "添加实例",
|
||||
"select_instance_timezone": "时区",
|
||||
"enable_resources": "启用资源",
|
||||
"hide_boost_bookmark": "隐藏助力/书签",
|
||||
"block": "屏蔽",
|
||||
"unblock": "解除屏蔽",
|
||||
"instance_name": "实例名称",
|
||||
"hide_resource": "隐藏资源",
|
||||
"delete_resource_confirm": "你确定要删除此资源吗?",
|
||||
"filter_instances": "筛选实例",
|
||||
"resources": "资源",
|
||||
"favicon": "图标",
|
||||
"user_block_confirm": "你确定要屏蔽用户 {user} 吗?",
|
||||
"delete_announcement_confirm": "你确定要移除这个公告吗?",
|
||||
"announcement_remove_ok": "公告已移除",
|
||||
"instance_locale": "默认语言",
|
||||
"title_description": "这将被用作页面的标题和电子邮件的主题,以导出 RSS 和 ICS 源。",
|
||||
"description_description": "在标题旁的页眉中显示",
|
||||
"instance_place_help": "在其他的实例中显示的标签",
|
||||
"delete_trusted_instance_confirm": "你确定要从友好实例菜单中删除此项目吗?",
|
||||
"edit_place": "编辑地点",
|
||||
"new_announcement": "新公告",
|
||||
"show_smtp_setup": "电子邮件设置",
|
||||
"smtp_port": "SMTP 端口",
|
||||
"smtp_secure": "SMTP 安全协议(TLS 或 STARTTLS)",
|
||||
"smtp_test_success": "一封测试邮件已发送至 {admin_mail},请检查你的收件箱",
|
||||
"sender_email": "发件人",
|
||||
"widget": "小组件",
|
||||
"wrong_domain_warning": "在 config.json 中设置的 baseurl <b>{baseurl}</b> 与你正在访问的 <b>{url}</b> 不同",
|
||||
"edit_collection": "编辑收藏",
|
||||
"event_confirm_description": "你可以在此确认匿名用户提交的事件",
|
||||
"recurrent_event_visible": "默认显示日常事件",
|
||||
"place_description": "如果你弄错了地点或地址,你可以修改。<br/>与这个地点相关的当前和过去的所有事件都会改变地址。",
|
||||
"delete_user_confirm": "你确定移除 {user} 吗?",
|
||||
"enable_admin_user_confirm": "你确定授予 {user} 管理员权限吗",
|
||||
"enable_federation_help": "这将允许从 Fediverse 上关注此实例",
|
||||
"enable_resources_help": "允许从 Fediverse 为此事件添加资源",
|
||||
"hide_boost_bookmark_help": "隐藏来自 Fediverse 上的助力和书签数量图标",
|
||||
"block_user": "屏蔽用户",
|
||||
"filter_users": "筛选用户",
|
||||
"user_add_help": "一封带有确认订阅和设置密码指引的邮件将被发送给新用户",
|
||||
"show_resource": "显示资源",
|
||||
"delete_resource": "删除资源",
|
||||
"user_blocked": "用户 {user} 已屏蔽",
|
||||
"instance_block_confirm": "你确定要屏蔽实例 {instance} 吗?",
|
||||
"announcement_description": "你可以在此段落插入显示于首页的公告",
|
||||
"instance_timezone_description": "Gancio 被设计用来收集特定区域,比如一座城市所发生的事件。这里的所有事件将以所选择的时区显示。",
|
||||
"instance_locale_description": "特定页面偏好的用户语言。有时信息必须以相同的语言对所有人显示(比如通过 ActivityPub 发布内容或发送一些电子邮件时)。在这种情况下将使用上面选择的语言。",
|
||||
"instance_place": "该实例的指示性位置",
|
||||
"trusted_instances_help": "友好实例的列表将被显示于页眉",
|
||||
"footer_links": "页脚链接",
|
||||
"smtp_description": "<ul><li>当匿名事件被添加时(如果启用),管理员应当收到邮件</li>管理员应当会受到注册请求邮件(如果启用)。<li></li><li>用户应当会受到注册请求邮件。</li><li>用户应当收到注册确认邮件。</li><li>当管理员直接订阅时,用户应当受到邮件。</li><li>用户忘记密码时应当收到密码重置邮件。</li></ul>",
|
||||
"smtp_use_sendmail": "使用 sendmail",
|
||||
"smtp_test_button": "发送测试邮件",
|
||||
"new_collection": "新建收藏",
|
||||
"collections_description": "收藏是按标签和地点分组的事件。它们将于主页上显示",
|
||||
"enable_trusted_instances": "启用友好实例",
|
||||
"add_trusted_instance": "添加一个友好实例",
|
||||
"add_link": "添加链接",
|
||||
"delete_footer_link_confirm": "确定移除此链接吗?",
|
||||
"instance_name_help": "要关注的 ActivityPub 账号",
|
||||
"is_dark": "暗色主题",
|
||||
"smtp_hostname": "SMTP 主机名"
|
||||
},
|
||||
"auth": {
|
||||
"fail": "无法登录。你确定密码正确吗?",
|
||||
"not_confirmed": "尚未确认……"
|
||||
},
|
||||
"settings": {
|
||||
"change_password": "修改密码",
|
||||
"password_updated": "密码已修改。",
|
||||
"remove_account_confirm": "你即将永久删除你的账号",
|
||||
"update_confirm": "你希望保存你的修改吗?",
|
||||
"remove_account": "按下下方的按钮后你的账号将被删除。你发布的事件不会删除。",
|
||||
"danger_section": "危险段落"
|
||||
},
|
||||
"error": {
|
||||
"email_taken": "此电子邮箱地址已被使用。",
|
||||
"nick_taken": "此昵称已被使用。"
|
||||
},
|
||||
"confirm": {
|
||||
"title": "用户确认",
|
||||
"not_valid": "出现了一些错误。",
|
||||
"valid": "你的账户已被确认,你现在可以 <a href=\"/login\">登录</a>"
|
||||
},
|
||||
"ordinal": {
|
||||
"4": "第四",
|
||||
"5": "第五",
|
||||
"2": "第二",
|
||||
"-1": "最后",
|
||||
"1": "第一",
|
||||
"3": "第三"
|
||||
},
|
||||
"validators": {
|
||||
"required": "{fieldName} 是必填项",
|
||||
"email": "输入有效的电子邮箱地址"
|
||||
},
|
||||
"oauth": {
|
||||
"authorization_request": "应用 <code>{app}</code> 申请在 <code>{instance_name}</code> 上获得以下权限:",
|
||||
"redirected_to": "在确认后你将被重定向到 <code>{url}</code>",
|
||||
"scopes": {
|
||||
"event:write": "添加与编辑你的事件"
|
||||
}
|
||||
},
|
||||
"setup": {
|
||||
"completed_description": "<p>你现在可以以以下用户登录<br/><br/>用户名:<b>{email}</b><br/>密码:<b>{password}<b/></p>",
|
||||
"copy_password_dialog": "没错,你必须复制密码!",
|
||||
"start": "开始",
|
||||
"https_warning": "你正在使用 HTTP 访问,如果你切换到 HTTPS,记得在 config.json 中修改 baseurl!",
|
||||
"completed": "安装完成"
|
||||
},
|
||||
"about": "\n <p><a href='https://gancio.org'>Gancio</a> 是为本地社区设计的的共享日程表。</p>\n "
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "gancio",
|
||||
"version": "1.6.0-rc2",
|
||||
"version": "1.6.0-rc3",
|
||||
"description": "A shared agenda for local communities",
|
||||
"author": "lesion",
|
||||
"scripts": {
|
||||
|
|
|
@ -91,17 +91,33 @@ export default {
|
|||
WhereInput,
|
||||
DateInput
|
||||
},
|
||||
validate({ store }) {
|
||||
return (store.state.auth.loggedIn || store.state.settings.allow_anon_event)
|
||||
validate({ store, params, error }) {
|
||||
// should we allow anon event?
|
||||
if(!store.state.settings.allow_anon_event && !store.state.auth.loggedIn) {
|
||||
return error({ statusCode: 401, message: 'Not allowed'})
|
||||
}
|
||||
|
||||
// do not allow edit to anon users
|
||||
if (params.edit && !store.state.auth.loggedIn) {
|
||||
return error({ statusCode: 401, message: 'Not allowed'})
|
||||
}
|
||||
|
||||
return true
|
||||
|
||||
},
|
||||
async asyncData({ params, $axios, error }) {
|
||||
async asyncData({ params, $axios, error, $auth, store }) {
|
||||
if (params.edit) {
|
||||
|
||||
const data = { event: { place: {}, media: [] } }
|
||||
data.id = params.edit
|
||||
data.edit = true
|
||||
let event
|
||||
try {
|
||||
event = await $axios.$get('/event/' + data.id)
|
||||
if (!$auth.user.is_admin && $auth.user.id !== event.userId) {
|
||||
error({ statusCode: 401, message: 'Not allowed' })
|
||||
return {}
|
||||
}
|
||||
} catch (e) {
|
||||
error({ statusCode: 404, message: 'Event not found!' })
|
||||
return {}
|
||||
|
|
|
@ -28,13 +28,13 @@ v-container#event.pa-0.pa-sm-2
|
|||
|
||||
.text-h6.p-location.h-adr(itemprop="location" itemscope itemtype="https://schema.org/Place")
|
||||
v-icon(v-text='mdiMapMarker' small)
|
||||
nuxt-link.vcard.ml-2.p-name.text-decoration-none.text-button(itemprop="name" :to='`/place/${event.place.name}`') {{event.place && event.place.name}}
|
||||
nuxt-link.vcard.ml-2.p-name.text-decoration-none.text-button(itemprop="name" :to='`/place/${encodeURIComponent(event.place.name)}`') {{event.place && event.place.name}}
|
||||
.text-caption.p-street-address(itemprop='address') {{event.place && event.place.address}}
|
||||
|
||||
//- tags, hashtags
|
||||
v-card-text.pt-0(v-if='event.tags && event.tags.length')
|
||||
v-chip.p-category.ml-1.mt-1(v-for='tag in event.tags' small label color='primary'
|
||||
outlined :key='tag' :to='`/tag/${tag}`') {{tag}}
|
||||
outlined :key='tag' :to='`/tag/${encodeURIComponent(tag)}`') {{tag}}
|
||||
|
||||
v-divider
|
||||
//- info & actions
|
||||
|
|
|
@ -32,7 +32,7 @@ export default {
|
|||
async asyncData ({ $axios, params, error }) {
|
||||
try {
|
||||
const tag = params.tag
|
||||
const events = await $axios.$get(`/tag/${tag}`)
|
||||
const events = await $axios.$get(`/tag/${encodeURIComponent(tag)}`)
|
||||
return { events, tag }
|
||||
} catch (e) {
|
||||
error({ statusCode: 400, message: 'Error!' })
|
||||
|
|
|
@ -88,6 +88,7 @@ const exportController = {
|
|||
const start = tmpStart.utc(true).format('YYYY-M-D-H-m').split('-').map(Number)
|
||||
const end = tmpEnd.utc(true).format('YYYY-M-D-H-m').split('-').map(Number)
|
||||
return {
|
||||
uid: `${e.id}@${settings.hostname}`,
|
||||
start,
|
||||
end,
|
||||
title: `[${settings.title}] ${e.title}`,
|
||||
|
|
|
@ -27,6 +27,7 @@ const defaultSettings = {
|
|||
instance_place: '',
|
||||
allow_registration: true,
|
||||
allow_anon_event: true,
|
||||
allow_multidate_event: true,
|
||||
allow_recurrent_event: false,
|
||||
recurrent_event_visible: false,
|
||||
allow_geolocation: true,
|
||||
|
|
|
@ -80,6 +80,7 @@ module.exports = {
|
|||
allow_registration: settings.allow_registration,
|
||||
allow_anon_event: settings.allow_anon_event,
|
||||
allow_recurrent_event: settings.allow_recurrent_event,
|
||||
allow_multidate_event: settings.allow_multidate_event,
|
||||
recurrent_event_visible: settings.recurrent_event_visible,
|
||||
enable_federation: settings.enable_federation,
|
||||
enable_resources: settings.enable_resources,
|
||||
|
@ -120,7 +121,7 @@ module.exports = {
|
|||
|
||||
router.use('/fallbackimage.png', (req, res, next) => {
|
||||
const fallbackImagePath = settingsController.settings.fallback_image || './static/noimg.svg'
|
||||
return express.static(fallbackImagePath, { maxAge: '1d' })(req, res, next)
|
||||
return express.static(fallbackImagePath)(req, res, next)
|
||||
})
|
||||
|
||||
router.use('/headerimage.png', (req, res, next) => {
|
||||
|
@ -130,12 +131,12 @@ module.exports = {
|
|||
|
||||
router.use('/logo.png', (req, res, next) => {
|
||||
const logoPath = settingsController.settings.logo || './static/gancio'
|
||||
return express.static(logoPath + '.png', {maxAge: '1d'})(req, res, next)
|
||||
return express.static(logoPath + '.png')(req, res, next)
|
||||
})
|
||||
|
||||
router.use('/favicon.ico', (req, res, next) => {
|
||||
const faviconPath = res.locals.settings.logo ? res.locals.settings.logo + '.png' : './assets/favicon.ico'
|
||||
return express.static(faviconPath, {maxAge: '1d'})(req, res, next)
|
||||
return express.static(faviconPath)(req, res, next)
|
||||
})
|
||||
|
||||
return router
|
||||
|
|
|
@ -6,6 +6,7 @@ export const state = () => ({
|
|||
instance_name: '',
|
||||
allow_registration: true,
|
||||
allow_anon_event: true,
|
||||
allow_multidate_event: true,
|
||||
allow_recurrent_event: true,
|
||||
recurrent_event_visible: false,
|
||||
allow_geolocation: false,
|
||||
|
|
Loading…
Reference in a new issue