mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-22 17:28:25 +01:00
* src/web/ejabberd_web_admin.erl: Better i18n support (thanks to
Sergei Golovan) * src/msgs/ru.msg: Updated (thanks to Sergei Golovan) * src/msgs/fr.msg: Added missed entries (thanks to Sergei Golovan) * src/msgs/nl.msg: Likewise * src/msgs/es.msg: New spanish translation (thanks to Badlop) SVN Revision: 245
This commit is contained in:
parent
a846fe815c
commit
a4b86c5855
12
ChangeLog
12
ChangeLog
@ -1,3 +1,15 @@
|
|||||||
|
2004-07-13 Alexey Shchepin <alexey@sevcom.net>
|
||||||
|
|
||||||
|
* src/web/ejabberd_web_admin.erl: Better i18n support (thanks to
|
||||||
|
Sergei Golovan)
|
||||||
|
|
||||||
|
* src/msgs/ru.msg: Updated (thanks to Sergei Golovan)
|
||||||
|
|
||||||
|
* src/msgs/fr.msg: Added missed entries (thanks to Sergei Golovan)
|
||||||
|
* src/msgs/nl.msg: Likewise
|
||||||
|
|
||||||
|
* src/msgs/es.msg: New spanish translation (thanks to Badlop)
|
||||||
|
|
||||||
2004-07-11 Alexey Shchepin <alexey@sevcom.net>
|
2004-07-11 Alexey Shchepin <alexey@sevcom.net>
|
||||||
|
|
||||||
* src/mod_last.erl: Supprot for storing status from latest
|
* src/mod_last.erl: Supprot for storing status from latest
|
||||||
|
222
src/msgs/es.msg
Normal file
222
src/msgs/es.msg
Normal file
@ -0,0 +1,222 @@
|
|||||||
|
% $Id$
|
||||||
|
|
||||||
|
% Ejabberd - Spanish - badlop AT jabberes.org
|
||||||
|
|
||||||
|
% mod_configure.erl
|
||||||
|
{"DB Tables Configuration at ", "Configuración de tablas de la BD en "}.
|
||||||
|
{"Choose storage type of tables", "Selecciona tipo de almacenamiento de las tablas"}.
|
||||||
|
{"RAM copy", "Copia en RAM"}.
|
||||||
|
{"RAM and disc copy", "Copia en RAM y disco"}.
|
||||||
|
{"Disc only copy", "Copia en disco solamente"}.
|
||||||
|
{"Remote copy", "Copia remota"}.
|
||||||
|
{"Stop Modules at ", "Detener módulos en "}.
|
||||||
|
{"Choose modules to stop", "Selecciona módulos a detener"}.
|
||||||
|
{"Start Modules at ", "Iniciar módulos en "}.
|
||||||
|
{"Enter list of {Module, [Options]}", "Introduce lista de {módulo, [opciones]}"}.
|
||||||
|
{"List of modules to start", "Lista de módulos a iniciar"}.
|
||||||
|
{"Backup to File at ", "Guardar copia de seguridad en fichero en "}.
|
||||||
|
{"Enter path to backup file", "Introduce ruta al fichero de copia de seguridad"}.
|
||||||
|
{"Path to File", "Ruta al fichero"}.
|
||||||
|
{"Restore Backup from File at ", "Restaura copia de seguridad desde el fichero en "}.
|
||||||
|
{"Dump Backup to Text File at ", "Exporta copia de seguridad a fichero de texto en "}.
|
||||||
|
{"Enter path to text file", "Introduce ruta al fichero de texto"}.
|
||||||
|
{"Import User from File at ", "Importa usuario desde fichero en "}.
|
||||||
|
{"Enter path to jabberd1.4 spool file", "Introduce ruta al fichero jabberd1.4 spool"}.
|
||||||
|
{"Import Users from Dir at ", "Importar usuarios desde el directorio en "}.
|
||||||
|
{"Enter path to jabberd1.4 spool dir", "Introduce la ruta al directorio de jabberd1.4 spools"}.
|
||||||
|
{"Path to Dir", "Ruta al directorio"}.
|
||||||
|
{"Hostname Configuration", "Configuración del nombre de máquina"}.
|
||||||
|
{"Choose host name", "Indica el nombre de la máquina"}.
|
||||||
|
{"Host name", "Nombre de la máquina"}.
|
||||||
|
{"Access Control List Configuration", "Configuración de la Lista de Control de Acceso"}.
|
||||||
|
{"Access control lists", "Listas de Control de Acceso"}.
|
||||||
|
{"Access Configuration", "Configuración de accesos"}.
|
||||||
|
{"Access rules", "Reglas de acceso"}.
|
||||||
|
{"Remove Users", "Eliminar usuarios"}.
|
||||||
|
{"Choose users to remove", "Selecciona usuarios a eliminar"}.
|
||||||
|
{"Administration of ", "Administración de "}.
|
||||||
|
{"Action on user", "Acción en el usuario"}.
|
||||||
|
{"Edit Properties", "Editar propiedades"}.
|
||||||
|
{"Remove User", "Eliminar usuario"}.
|
||||||
|
|
||||||
|
% mod_disco.erl
|
||||||
|
{"Configuration", "Configuración"}.
|
||||||
|
{"Online Users", "Usuarios conectados"}.
|
||||||
|
{"All Users", "Todos los usuarios"}.
|
||||||
|
{"Outgoing S2S connections", "Conexiones S2S salientes"}.
|
||||||
|
{"To ~s", "A ~s"}.
|
||||||
|
{"From ~s", "De ~s"}.
|
||||||
|
{"Running Nodes", "Nodos funcionando"}.
|
||||||
|
{"Stopped Nodes", "Nodos detenidos"}.
|
||||||
|
{"Host Name", "Nombre de la máquina"}.
|
||||||
|
{"Access Control Lists", "Listas de Control de Acceso"}.
|
||||||
|
{"Access Rules", "Reglas de Acceso"}.
|
||||||
|
{"Remove Users", "Eliminar usuarios"}.
|
||||||
|
{"DB", "BD"}.
|
||||||
|
{"Modules", "Módulos"}.
|
||||||
|
{"Start Modules", "Iniciar módulos"}.
|
||||||
|
{"Stop Modules", "Detener módulos"}.
|
||||||
|
{"Backup Management", "Gestión de copia de seguridad"}.
|
||||||
|
{"Import users from jabberd1.4 spool files", "Importar usuarios desde ficheros jabberd1.4 spool"}.
|
||||||
|
{"Backup", "Guardar copia de seguridad"}.
|
||||||
|
{"Restore", "Restaurar"}.
|
||||||
|
{"Dump to Text File", "Exportar a fichero de texto"}.
|
||||||
|
{"Import File", "Importar fichero"}.
|
||||||
|
{"Import Directory", "Importar directorio"}.
|
||||||
|
|
||||||
|
% mod_register.erl
|
||||||
|
{"Choose a username and password to register with this server", "Escoge un nombre de usuario y contraseña para registrarte en este servidor"}.
|
||||||
|
|
||||||
|
% mod_vcard.erl
|
||||||
|
{"Erlang Jabber Server\nCopyright (c) 2002-2004 Alexey Shchepin", "Servidor Jabber en Erlang\nCopyright (c) 2002-2004 Alexey Shchepin"}.
|
||||||
|
{"ejabberd vCard module\nCopyright (c) 2003-2004 Alexey Shchepin", "Módulo vCard de Ejabberd\nCopyright (c) 2003-2004 Alexey Shchepin"}.
|
||||||
|
{"You need an x:data capable client to search", "Necesitas un cliente con soporte de x:data para poder buscar"}.
|
||||||
|
{"Search users in ", "Buscar usuarios en "}.
|
||||||
|
{"Fill in fields to search for any matching Jabber User", "Rellena los campos para buscar usuarios Jabber coincidentes"}.
|
||||||
|
{"Results of search in ", "Resultados de la búsqueda en "}.
|
||||||
|
|
||||||
|
{"User", "Usuario"}.
|
||||||
|
{"Full Name", "Nombre completo"}.
|
||||||
|
{"Name", "Nombre"}.
|
||||||
|
{"Middle Name", "Segundo nombre"}.
|
||||||
|
{"Family Name", "Apellido"}.
|
||||||
|
{"Nickname", "Apodo"}.
|
||||||
|
{"Birthday", "Cumpleaños"}.
|
||||||
|
{"Country", "País"}.
|
||||||
|
{"City", "Ciudad"}.
|
||||||
|
{"email", "correo-e"}.
|
||||||
|
{"Organization Name", "Nombre de la organización"}.
|
||||||
|
{"Organization Unit", "Unidad de la organización"}.
|
||||||
|
|
||||||
|
% mod_pubsub/mod_pubsub.erl
|
||||||
|
{"ejabberd pub/sub module\nCopyright (c) 2003-2004 Alexey Shchepin", "Módulo pub/sub de Ejabberd\nCopyright (c) 2003-2004 Alexey Shchepin"}.
|
||||||
|
|
||||||
|
% mod_muc/mod_muc.erl
|
||||||
|
{"You need an x:data capable client to register nickname", "Necesitas un cliente con soporte de x:data para poder registrar el apodo"}.
|
||||||
|
{"Nickname Registration at ", "Registro del apodo en "}.
|
||||||
|
{"Enter nickname you want to register", "Introduce el apodo que quieras registrar"}.
|
||||||
|
{"ejabberd MUC module\nCopyright (c) 2003-2004 Alexey Shchepin", "Módulo MUC de Ejabberd\nCopyright (c) 2003-2004 Alexey Shchepin"}.
|
||||||
|
{"Only service administrators are allowed to send service messages", "Solo los administradores del servicio tienen permiso para enviar mensajes de servicio"}.
|
||||||
|
{"Room creation is not allowed by service policy", "La política del servicio prohibe la creación de salas"}.
|
||||||
|
{"Conference room does not exist", "La sala de conferencias no existe"}.
|
||||||
|
{"Access denied by service policy", "Acceso denegado por la política del servicio"}.
|
||||||
|
{"You must fill in field \"nick\" in the form", "Debes rellenar el campo \"apodo\" en el formulario"}.
|
||||||
|
{"Specified nickname is already registered", "El apodo especificado ya está registrado, tendrás que buscar otro"}.
|
||||||
|
|
||||||
|
% mod_muc/mod_muc_room.erl
|
||||||
|
{" has set the subject to: ", " ha puesto el asunto: "}.
|
||||||
|
{"You need an x:data capable client to configure room", "Necesitas un cliente con soporte de x:data para configurar la sala"}.
|
||||||
|
{"Configuration for ", "Configuración para "}.
|
||||||
|
{"Room title", "Título de la sala"}.
|
||||||
|
{"Allow users to change subject?", "Permitir a los usuarios cambiar el asunto"}.
|
||||||
|
{"Allow users to query other users?", "Permitir a los usuarios consultar a otros usuarios"}.
|
||||||
|
{"Allow users to send private messages?", "Permitir a los usuarios enviar mensajes privados"}.
|
||||||
|
{"Make room public searchable?", "Hacer la sala públicamente visible"}.
|
||||||
|
{"Make participants list public?", "Hacer pública la lista de participantes"}.
|
||||||
|
{"Make room persistent?", "Hacer la sala permanente"}.
|
||||||
|
{"Make room moderated?", "Hacer la sala moderada"}.
|
||||||
|
{"Default users as members?", "Los usuarios son miembros por defecto"}.
|
||||||
|
{"Make room members only?", "Hacer la sala sólo para miembros"}.
|
||||||
|
{"Allow users to send invites?", "Permitir a los usuarios enviar invitaciones"}.
|
||||||
|
{"Make room password protected?", "Proteger la sala con contraseña"}.
|
||||||
|
{"Password", "Contraseña"}.
|
||||||
|
{"Make room anonymous?", "Hacer anónima la sala"}.
|
||||||
|
{"Enable logging?", "Guardar históricos"}.
|
||||||
|
{"Only moderators and participants are allowed to change subject in this room", "Solo los moderadores y participantes pueden cambiar el asunto de esta sala"}.
|
||||||
|
{"Only moderators are allowed to change subject in this room", "Solo los moderadores pueden cambiar el asunto de esta sala"}.
|
||||||
|
{"Visitors are not allowed to send messages to all occupants", "Los visitantes no pueden enviar mensajes a todos los ocupantes"}.
|
||||||
|
{"Only occupants are allowed to send messages to the conference", "Solo los ocupantes pueden enviar mensajes a la sala"}.
|
||||||
|
{"It is not allowed to send normal messages to the conference", "Impedir el envio de mensajes normales a la sala"}.
|
||||||
|
{"It is not allowed to send private messages to the conference", "Impedir el envio de mensajes privados a la sala"}.
|
||||||
|
{"Improper message type", "Tipo de mensaje incorrecto"}.
|
||||||
|
{"Nickname is already in use by another occupant", "El apodo ya está siendo usado por otro ocupante"}.
|
||||||
|
{"Nickname is registered by another person", "El apodo ya está registrado por otra persona"}.
|
||||||
|
{"It is not allowed to send private messages of type \"groupchat\"", "No está permitido enviar mensajes privados del tipo \"groupchat\""}.
|
||||||
|
{"Recipient is not in the conference room", "El receptor no está en la sala de conferencia"}.
|
||||||
|
{"Only occupants are allowed to send queries to the conference", "Solo los ocupantes pueden enviar solicitudes a la sala"}.
|
||||||
|
{"Queries to the conference members are not allowed in this room", "En esta sala no se permiten solicitudes a los miembros de la sala"}.
|
||||||
|
{"You have been banned from this room", "Has sido bloqueado en esta sala"}.
|
||||||
|
{"Membership required to enter this room", "Necesitas ser miembro de esta sala para poder entrar"}.
|
||||||
|
{"Password required to enter this room", "Se necesita contraseña para entrar en esta sala"}.
|
||||||
|
{"Incorrect password", "Contraseña incorrecta"}.
|
||||||
|
{"Administrator privileges required", "Se necesita privilegios de administrador"}.
|
||||||
|
{"Moderator privileges required", "Se necesita privilegios de moderador"}.
|
||||||
|
{"JID ~s is invalid", "El JID ~s no es válido"}.
|
||||||
|
{"Nickname ~s does not exist in the room", "El apodo ~s no existe en la sala"}.
|
||||||
|
{"Invalid affiliation: ~s", "Afiliación no válida: ~s"}.
|
||||||
|
{"Invalid role: ~s", "Rol no válido: ~s"}.
|
||||||
|
{"Owner privileges required", "Se requieren privilegios de propietario de la sala"}.
|
||||||
|
{"private, ", "privado"}.
|
||||||
|
|
||||||
|
% mod_irc/mod_irc.erl
|
||||||
|
{"ejabberd IRC module\nCopyright (c) 2003-2004 Alexey Shchepin", "Módulo de IRC Ejabberd\nCopyright (c) 2003-2004 Alexey Shchepin"}.
|
||||||
|
{"You need an x:data capable client to configure mod_irc settings", "Necesitas un cliente con soporte de x:data para configurar las opciones de mod_irc"}.
|
||||||
|
{"Registration in mod_irc for ", "Registro en mod_irc para"}.
|
||||||
|
{"Enter username and encodings you wish to use for connecting to IRC servers", "Introduce el nombre de usuario y codificaciones de carácteres que quieras usar al conectar en los servidores de IRC"}.
|
||||||
|
{"IRC Username", "Nombre de usuario en IRC"}.
|
||||||
|
{"If you want to specify different encodings for IRC servers, fill this list with values in format '{\"irc server\", \"encoding\"}'. By default this service use \"~s\" encoding.", "Si quieres especificar codificaciones de carácteres distintos para cada servidor IRC rellena esta lista con valores en el formato '{\"servidor irc\", \"codificación\"}'. Este servicio usa por defecto la codificación \"~s\"."}.
|
||||||
|
{"Encodings", "Codificaciones"}.
|
||||||
|
|
||||||
|
% web/ejabberd_web_admin.erl
|
||||||
|
{"ejabberd administration", "Administración de Ejabberd"}.
|
||||||
|
{"Users", "Usuarios"}.
|
||||||
|
{"Nodes", "Nodos"}.
|
||||||
|
{"Statistics", "Estadísticas"}.
|
||||||
|
{"ejabberd (c) 2002-2004 Alexey Shchepin", "Ejabberd (c) 2002-2004 Alexey Shchepin"}.
|
||||||
|
{"(raw)", "(crudo)"}.
|
||||||
|
{"submitted", "enviado"}.
|
||||||
|
{"bad format", "mal formato"}.
|
||||||
|
{"raw", "crudo"}.
|
||||||
|
{"ejabberd access control lists configuration", "Configuración de las Listas de Control de Acceso de Ejabberd"}.
|
||||||
|
{"Delete Selected", "Eliminar los seleccionados"}.
|
||||||
|
{"Submit", "Enviar"}.
|
||||||
|
{"ejabberd access rules configuration", "Configuración de las Reglas de Acceso de Ejabberd"}.
|
||||||
|
{"~s access rule configuration", "Configuración de las Regla de Acceso ~s"}.
|
||||||
|
{"ejabberd users", "Usuarios de Ejabberd"}.
|
||||||
|
{"ejabberd stats", "Estadísticas de Ejabberd"}.
|
||||||
|
{"Node not found", "Nodo no encontrado"}.
|
||||||
|
{"Add New", "Añadir nuevo"}.
|
||||||
|
{"Registered users", "Usuarios registrados"}.
|
||||||
|
{"Authentificated users", "Usuarios autentificados"}.
|
||||||
|
{"Online users", "Usuarios conectados"}.
|
||||||
|
{"Outgoing S2S servers", "Servidores S2S de salida"}.
|
||||||
|
{"Change Password", "Cambiar contraseña"}.
|
||||||
|
{"Connected Resources:", "Recursos conectados:"}.
|
||||||
|
{"Password:", "Contraseña:"}.
|
||||||
|
{"None", "Ninguno"}.
|
||||||
|
{"Node ", "Nodo"}.
|
||||||
|
{"DB Management", "Gestión de la BD"}.
|
||||||
|
{"Listened Ports Management", "Gestión de los puertos de escucha"}.
|
||||||
|
{"Restart", "Reiniciar"}.
|
||||||
|
{"Stop", "Detener"}.
|
||||||
|
{"RPC call error", "Error en la llamada RPC"}.
|
||||||
|
{"DB Tables at ", "Tablas de la BD en "}.
|
||||||
|
{"Name", "Nombre"}.
|
||||||
|
{"Storage Type", "Tipo de almacenamiento"}.
|
||||||
|
{"Size", "Tamaño"}.
|
||||||
|
{"Memory", "Memoria"}.
|
||||||
|
{"Backup Management at ", "Gestión de copia de seguridad en "}.
|
||||||
|
{"Store a backup in a file", "Almacenar una copia de seguridad en fichero"}.
|
||||||
|
{"OK", "De acuerdo"}.
|
||||||
|
{"Restore a backup from a file", "Recuperar una copia de seguridad de un fichero"}.
|
||||||
|
{"Install a database fallback from a file", "Instalar una recuperación de BD desde un fichero"}.
|
||||||
|
{"Dump a database in a text file", "Exportar una Base de Datos a un fichero de texto"}.
|
||||||
|
{"Restore a database from a text file", "Restaurar una Bse de Datos desde un fichero de texto"}.
|
||||||
|
{"Listened Ports at ", "Puertos de escucha en "}.
|
||||||
|
{"~p statistics", "Estadísticas de ~p"}.
|
||||||
|
{"Uptime", "Tiempo de funcionamiento"}.
|
||||||
|
{"CPU Time", "Tiempo de procesador consumido"}.
|
||||||
|
{"Transactions commited", "Transacciones realizadas"}.
|
||||||
|
{"Transactions aborted", "Transacciones abortadas"}.
|
||||||
|
{"Transactions restarted", "Transacciones reiniciadas"}.
|
||||||
|
{"Transactions logged", "Transacciones almacenadas"}.
|
||||||
|
{"Port", "Puerto"}.
|
||||||
|
{"Module", "Módulo"}.
|
||||||
|
{"Options", "Opciones"}.
|
||||||
|
{"Update", "Actualizar"}.
|
||||||
|
{"Delete", "Eliminar"}.
|
||||||
|
{"", ""}.
|
||||||
|
|
||||||
|
% Local Variables:
|
||||||
|
% mode: erlang
|
||||||
|
% End:
|
@ -164,9 +164,64 @@
|
|||||||
{"Encodings", ""}.
|
{"Encodings", ""}.
|
||||||
|
|
||||||
% web/ejabberd_web_admin.erl
|
% web/ejabberd_web_admin.erl
|
||||||
|
{"ejabberd administration", ""}.
|
||||||
{"Users", ""}.
|
{"Users", ""}.
|
||||||
{"Nodes", ""}.
|
{"Nodes", ""}.
|
||||||
{"Statistics", ""}.
|
{"Statistics", ""}.
|
||||||
|
{"ejabberd (c) 2002-2004 Alexey Shchepin", ""}.
|
||||||
|
{"(raw)", ""}.
|
||||||
|
{"submitted", ""}.
|
||||||
|
{"bad format", ""}.
|
||||||
|
{"raw", ""}.
|
||||||
|
{"ejabberd access control lists configuration", ""}.
|
||||||
|
{"Delete Selected", ""}.
|
||||||
|
{"Submit", ""}.
|
||||||
|
{"ejabberd access rules configuration", ""}.
|
||||||
|
{"~s access rule configuration", ""}.
|
||||||
|
{"ejabberd users", ""}.
|
||||||
|
{"ejabberd stats", ""}.
|
||||||
|
{"Node not found", ""}.
|
||||||
|
{"Add New", ""}.
|
||||||
|
{"Registered users", ""}.
|
||||||
|
{"Authentificated users", ""}.
|
||||||
|
{"Online users", ""}.
|
||||||
|
{"Outgoing S2S servers", ""}.
|
||||||
|
{"Change Password", ""}.
|
||||||
|
{"Connected Resources:", ""}.
|
||||||
|
{"Password:", ""}.
|
||||||
|
{"None", ""}.
|
||||||
|
{"Node ", ""}.
|
||||||
|
{"DB Management", ""}.
|
||||||
|
{"Listened Ports Management", ""}.
|
||||||
|
{"Restart", ""}.
|
||||||
|
{"Stop", ""}.
|
||||||
|
{"RPC call error", ""}.
|
||||||
|
{"DB Tables at ", ""}.
|
||||||
|
{"Name", ""}.
|
||||||
|
{"Storage Type", ""}.
|
||||||
|
{"Size", ""}.
|
||||||
|
{"Memory", ""}.
|
||||||
|
{"Backup Management at ", ""}.
|
||||||
|
{"Store a backup in a file", ""}.
|
||||||
|
{"OK", ""}.
|
||||||
|
{"Restore a backup from a file", ""}.
|
||||||
|
{"Install a database fallback from a file", ""}.
|
||||||
|
{"Dump a database in a text file", ""}.
|
||||||
|
{"Restore a database from a text file", ""}.
|
||||||
|
{"Listened Ports at ", ""}.
|
||||||
|
{"~p statistics", ""}.
|
||||||
|
{"Uptime", ""}.
|
||||||
|
{"CPU Time", ""}.
|
||||||
|
{"Transactions commited", ""}.
|
||||||
|
{"Transactions aborted", ""}.
|
||||||
|
{"Transactions restarted", ""}.
|
||||||
|
{"Transactions logged", ""}.
|
||||||
|
{"Port", ""}.
|
||||||
|
{"Module", ""}.
|
||||||
|
{"Options", ""}.
|
||||||
|
{"Update", ""}.
|
||||||
|
{"Delete", ""}.
|
||||||
|
{"", ""}.
|
||||||
|
|
||||||
% Local Variables:
|
% Local Variables:
|
||||||
% mode: erlang
|
% mode: erlang
|
||||||
|
@ -186,10 +186,63 @@
|
|||||||
{"Encodings", "Coderingen"}.
|
{"Encodings", "Coderingen"}.
|
||||||
|
|
||||||
% web/ejabberd_web_admin.erl
|
% web/ejabberd_web_admin.erl
|
||||||
|
{"ejabberd administration", ""}.
|
||||||
{"Users", "Gebruikers"}.
|
{"Users", "Gebruikers"}.
|
||||||
{"Nodes", "Nodes"}.
|
{"Nodes", "Nodes"}.
|
||||||
{"Statistics", "Statistieken"}.
|
{"Statistics", "Statistieken"}.
|
||||||
{"", ""}.
|
{"ejabberd (c) 2002-2004 Alexey Shchepin", ""}.
|
||||||
|
{"(raw)", ""}.
|
||||||
|
{"submitted", ""}.
|
||||||
|
{"bad format", ""}.
|
||||||
|
{"raw", ""}.
|
||||||
|
{"ejabberd access control lists configuration", ""}.
|
||||||
|
{"Delete Selected", ""}.
|
||||||
|
{"Submit", ""}.
|
||||||
|
{"ejabberd access rules configuration", ""}.
|
||||||
|
{"~s access rule configuration", ""}.
|
||||||
|
{"ejabberd users", ""}.
|
||||||
|
{"ejabberd stats", ""}.
|
||||||
|
{"Node not found", ""}.
|
||||||
|
{"Add New", ""}.
|
||||||
|
{"Registered users", ""}.
|
||||||
|
{"Authentificated users", ""}.
|
||||||
|
{"Online users", ""}.
|
||||||
|
{"Outgoing S2S servers", ""}.
|
||||||
|
{"Change Password", ""}.
|
||||||
|
{"Connected Resources:", ""}.
|
||||||
|
{"Password:", ""}.
|
||||||
|
{"None", ""}.
|
||||||
|
{"Node ", ""}.
|
||||||
|
{"DB Management", ""}.
|
||||||
|
{"Listened Ports Management", ""}.
|
||||||
|
{"Restart", ""}.
|
||||||
|
{"Stop", ""}.
|
||||||
|
{"RPC call error", ""}.
|
||||||
|
{"DB Tables at ", ""}.
|
||||||
|
{"Name", ""}.
|
||||||
|
{"Storage Type", ""}.
|
||||||
|
{"Size", ""}.
|
||||||
|
{"Memory", ""}.
|
||||||
|
{"Backup Management at ", ""}.
|
||||||
|
{"Store a backup in a file", ""}.
|
||||||
|
{"OK", ""}.
|
||||||
|
{"Restore a backup from a file", ""}.
|
||||||
|
{"Install a database fallback from a file", ""}.
|
||||||
|
{"Dump a database in a text file", ""}.
|
||||||
|
{"Restore a database from a text file", ""}.
|
||||||
|
{"Listened Ports at ", ""}.
|
||||||
|
{"~p statistics", ""}.
|
||||||
|
{"Uptime", ""}.
|
||||||
|
{"CPU Time", ""}.
|
||||||
|
{"Transactions commited", ""}.
|
||||||
|
{"Transactions aborted", ""}.
|
||||||
|
{"Transactions restarted", ""}.
|
||||||
|
{"Transactions logged", ""}.
|
||||||
|
{"Port", ""}.
|
||||||
|
{"Module", ""}.
|
||||||
|
{"Options", ""}.
|
||||||
|
{"Update", ""}.
|
||||||
|
{"Delete", ""}.
|
||||||
{"", ""}.
|
{"", ""}.
|
||||||
|
|
||||||
% Local Variables:
|
% Local Variables:
|
||||||
|
@ -186,10 +186,63 @@
|
|||||||
{"Encodings", "Кодировки"}.
|
{"Encodings", "Кодировки"}.
|
||||||
|
|
||||||
% web/ejabberd_web_admin.erl
|
% web/ejabberd_web_admin.erl
|
||||||
|
{"ejabberd administration", "Администрирование ejabberd"}.
|
||||||
{"Users", "Пользователи"}.
|
{"Users", "Пользователи"}.
|
||||||
{"Nodes", "Узлы"}.
|
{"Nodes", "Узлы"}.
|
||||||
{"Statistics", "Статистика"}.
|
{"Statistics", "Статистика"}.
|
||||||
{"", ""}.
|
{"ejabberd (c) 2002-2004 Alexey Shchepin", "ejabberd (c) 2002-2004 Алексей Щепин"}.
|
||||||
|
{"(raw)", "(необработанный формат)"}.
|
||||||
|
{"submitted", "отправлено"}.
|
||||||
|
{"bad format", "неправильный формат"}.
|
||||||
|
{"raw", "необработанный формат"}.
|
||||||
|
{"ejabberd access control lists configuration", "Конфигурация списков управления доступом ejabberd"}.
|
||||||
|
{"Delete Selected", "Удалить выделенные"}.
|
||||||
|
{"Submit", "Отправить"}.
|
||||||
|
{"ejabberd access rules configuration", "Конфигурация правил доступа ejabberd"}.
|
||||||
|
{"~s access rule configuration", "Конфигурация правила доступа ~s"}.
|
||||||
|
{"ejabberd users", "Пользователи ejabberd"}.
|
||||||
|
{"ejabberd stats", "Статистика ejabberd"}.
|
||||||
|
{"Node not found", "Узел не найден"}.
|
||||||
|
{"Add New", "Добавить"}.
|
||||||
|
{"Registered users", "Зарегистрированные пользователи"}.
|
||||||
|
{"Authentificated users", "Аутентифицированные пользователи"}.
|
||||||
|
{"Online users", "Подключённые пользователи"}.
|
||||||
|
{"Outgoing S2S servers", "Исходящие S2S-серверы"}.
|
||||||
|
{"Change Password", "Сменить пароль"}.
|
||||||
|
{"Connected Resources:", "Подключённые ресурсы:"}.
|
||||||
|
{"Password:", "Пароль:"}.
|
||||||
|
{"None", "Нет"}.
|
||||||
|
{"Node ", "Узел "}.
|
||||||
|
{"DB Management", "Управление БД"}.
|
||||||
|
{"Listened Ports Management", "Управление прослушиваемыми портами"}.
|
||||||
|
{"Restart", "Перезапустить"}.
|
||||||
|
{"Stop", "Остановить"}.
|
||||||
|
{"RPC call error", "Ошибка вызова RPC"}.
|
||||||
|
{"DB Tables at ", "Таблицы БД на "}.
|
||||||
|
{"Name", "Название"}.
|
||||||
|
{"Storage Type", "Тип таблицы"}.
|
||||||
|
{"Size", "Размер"}.
|
||||||
|
{"Memory", "Память"}.
|
||||||
|
{"Backup Management at ", "Управление резервным копированием на "}.
|
||||||
|
{"Store a backup in a file", "Сохранить резервную копию в файл"}.
|
||||||
|
{"OK", "Продолжить"}.
|
||||||
|
{"Restore a backup from a file", "Восстановить из резервной копии из файла"}.
|
||||||
|
{"Install a database fallback from a file", "Установить базу данных для восстановления при следующем запуске"}.
|
||||||
|
{"Dump a database in a text file", "Копировать базу данных в текстовый файл"}.
|
||||||
|
{"Restore a database from a text file", "Восстановить базу данных из текстового файла"}.
|
||||||
|
{"Listened Ports at ", "Прослушиваемые порты на "}.
|
||||||
|
{"~p statistics", "статистика узла ~p"}.
|
||||||
|
{"Uptime", "Время работы"}.
|
||||||
|
{"CPU Time", "Процессорное время"}.
|
||||||
|
{"Transactions commited", "Транзакции завершенные"}.
|
||||||
|
{"Transactions aborted", "Транзакции отмененные"}.
|
||||||
|
{"Transactions restarted", "Транзакции перезапущенные"}.
|
||||||
|
{"Transactions logged", "Транзакции запротоколированные"}.
|
||||||
|
{"Port", "Порт"}.
|
||||||
|
{"Module", "Модуль"}.
|
||||||
|
{"Options", "Параметры"}.
|
||||||
|
{"Update", "Обновить"}.
|
||||||
|
{"Delete", "Удалить"}.
|
||||||
{"", ""}.
|
{"", ""}.
|
||||||
|
|
||||||
% Local Variables:
|
% Local Variables:
|
||||||
|
@ -71,18 +71,20 @@ make_xhtml(Els, Lang) ->
|
|||||||
[?XE("tbody",
|
[?XE("tbody",
|
||||||
[?XE("tr",
|
[?XE("tr",
|
||||||
[?XE("td",
|
[?XE("td",
|
||||||
|
[?XAE("a", [{"href", "/admin/"}],
|
||||||
[?XA("img", [{"src", "/admin/logo.png"},
|
[?XA("img", [{"src", "/admin/logo.png"},
|
||||||
{"width", "343"},
|
{"width", "343"},
|
||||||
{"height", "55"},
|
{"height", "55"},
|
||||||
{"alt", "ejabberd"},
|
{"alt", "ejabberd"},
|
||||||
{"border", "0"}])]),
|
{"border", "0"}])])]),
|
||||||
?XAE("td", [{"width", "100%"},
|
?XAE("td", [{"width", "100%"},
|
||||||
{"background", "/admin/logo-fill.png"}],
|
{"background", "/admin/logo-fill.png"}],
|
||||||
|
[?XAE("a", [{"href", "/admin/"}],
|
||||||
[?XA("img", [{"src", "/admin/1x1tr.gif"},
|
[?XA("img", [{"src", "/admin/1x1tr.gif"},
|
||||||
{"width", "100%"},
|
{"width", "100%"},
|
||||||
{"height", "55"},
|
{"height", "55"},
|
||||||
{"alt", ""},
|
{"alt", ""},
|
||||||
{"border", "0"}])]
|
{"border", "0"}])])]
|
||||||
)])])
|
)])])
|
||||||
])])]),
|
])])]),
|
||||||
?XAE("tr",
|
?XAE("tr",
|
||||||
@ -485,7 +487,7 @@ process_admin(#request{user = User,
|
|||||||
path = [],
|
path = [],
|
||||||
q = Query,
|
q = Query,
|
||||||
lang = Lang} = Request) ->
|
lang = Lang} = Request) ->
|
||||||
make_xhtml([?XC("h1", "ejabberd administration"),
|
make_xhtml([?XCT("h1", "ejabberd administration"),
|
||||||
?XE("ul",
|
?XE("ul",
|
||||||
[?LI([?ACT("acls/", "Access Control Lists"), ?C(" "),
|
[?LI([?ACT("acls/", "Access Control Lists"), ?C(" "),
|
||||||
?ACT("acls-raw/", "(raw)")]),
|
?ACT("acls-raw/", "(raw)")]),
|
||||||
@ -547,7 +549,7 @@ process_admin(#request{user = User,
|
|||||||
nothing
|
nothing
|
||||||
end,
|
end,
|
||||||
ACLs = lists:flatten(io_lib:format("~p.", [ets:tab2list(acl)])),
|
ACLs = lists:flatten(io_lib:format("~p.", [ets:tab2list(acl)])),
|
||||||
make_xhtml([?XCT("h1", "ejabberd ACLs configuration")] ++
|
make_xhtml([?XCT("h1", "ejabberd access control lists configuration")] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?CT("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?CT("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
@ -559,7 +561,7 @@ process_admin(#request{user = User,
|
|||||||
{"cols", "80"}],
|
{"cols", "80"}],
|
||||||
ACLs),
|
ACLs),
|
||||||
?BR,
|
?BR,
|
||||||
?INPUT("submit", "", "")
|
?INPUT("submit", "submit", "Submit")
|
||||||
])
|
])
|
||||||
], Lang);
|
], Lang);
|
||||||
|
|
||||||
@ -588,7 +590,7 @@ process_admin(#request{method = Method,
|
|||||||
nothing
|
nothing
|
||||||
end,
|
end,
|
||||||
ACLs = lists:keysort(2, ets:tab2list(acl)),
|
ACLs = lists:keysort(2, ets:tab2list(acl)),
|
||||||
make_xhtml([?XCT("h1", "ejabberd ACLs configuration")] ++
|
make_xhtml([?XCT("h1", "ejabberd access control lists configuration")] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?CT("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?CT("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
@ -655,10 +657,10 @@ process_admin(#request{user = User,
|
|||||||
[{{config, {access, '$1'}, '$2'},
|
[{{config, {access, '$1'}, '$2'},
|
||||||
[],
|
[],
|
||||||
[{{access, '$1', '$2'}}]}])])),
|
[{{access, '$1', '$2'}}]}])])),
|
||||||
make_xhtml([?XC("h1", "ejabberd access rules configuration")] ++
|
make_xhtml([?XCT("h1", "ejabberd access rules configuration")] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XAE("form", [{"method", "post"}],
|
[?XAE("form", [{"method", "post"}],
|
||||||
@ -667,7 +669,7 @@ process_admin(#request{user = User,
|
|||||||
{"cols", "80"}],
|
{"cols", "80"}],
|
||||||
Access),
|
Access),
|
||||||
?BR,
|
?BR,
|
||||||
?INPUT("submit", "", "")
|
?INPUT("submit", "submit", "Submit")
|
||||||
])
|
])
|
||||||
], Lang);
|
], Lang);
|
||||||
|
|
||||||
@ -693,10 +695,10 @@ process_admin(#request{method = Method,
|
|||||||
[{{config, {access, '$1'}, '$2'},
|
[{{config, {access, '$1'}, '$2'},
|
||||||
[],
|
[],
|
||||||
[{{access, '$1', '$2'}}]}]),
|
[{{access, '$1', '$2'}}]}]),
|
||||||
make_xhtml([?XC("h1", "ejabberd access rules configuration")] ++
|
make_xhtml([?XCT("h1", "ejabberd access rules configuration")] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XE("p", [?ACT("../access-raw/", "raw")])] ++
|
[?XE("p", [?ACT("../access-raw/", "raw")])] ++
|
||||||
@ -734,16 +736,16 @@ process_admin(#request{method = Method,
|
|||||||
Rs1
|
Rs1
|
||||||
end,
|
end,
|
||||||
make_xhtml([?XC("h1",
|
make_xhtml([?XC("h1",
|
||||||
"'" ++ SName ++ "' access rule configuration")] ++
|
io_lib:format(?T("~s access rule configuration"), [SName]))] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XAE("form", [{"method", "post"}],
|
[?XAE("form", [{"method", "post"}],
|
||||||
[access_rule_to_xhtml(Rules),
|
[access_rule_to_xhtml(Rules),
|
||||||
?BR,
|
?BR,
|
||||||
?INPUT("submit", "submit", "")
|
?INPUTT("submit", "submit", "Submit")
|
||||||
])
|
])
|
||||||
], Lang);
|
], Lang);
|
||||||
|
|
||||||
@ -752,21 +754,21 @@ process_admin(#request{user = User,
|
|||||||
q = Query,
|
q = Query,
|
||||||
lang = Lang} = Request) ->
|
lang = Lang} = Request) ->
|
||||||
Res = list_users(),
|
Res = list_users(),
|
||||||
make_xhtml([?XC("h1", "ejabberd users")] ++ Res, Lang);
|
make_xhtml([?XCT("h1", "ejabberd users")] ++ Res, Lang);
|
||||||
|
|
||||||
process_admin(#request{user = User,
|
process_admin(#request{user = User,
|
||||||
path = ["users", Diap],
|
path = ["users", Diap],
|
||||||
q = Query,
|
q = Query,
|
||||||
lang = Lang} = Request) ->
|
lang = Lang} = Request) ->
|
||||||
Res = list_users_in_diapason(Diap),
|
Res = list_users_in_diapason(Diap),
|
||||||
make_xhtml([?XC("h1", "ejabberd users")] ++ Res, Lang);
|
make_xhtml([?XCT("h1", "ejabberd users")] ++ Res, Lang);
|
||||||
|
|
||||||
process_admin(#request{user = User,
|
process_admin(#request{user = User,
|
||||||
path = ["stats"],
|
path = ["stats"],
|
||||||
q = Query,
|
q = Query,
|
||||||
lang = Lang} = Request) ->
|
lang = Lang} = Request) ->
|
||||||
Res = get_stats(Lang),
|
Res = get_stats(Lang),
|
||||||
make_xhtml([?XC("h1", "ejabberd stats")] ++ Res, Lang);
|
make_xhtml([?XCT("h1", "ejabberd stats")] ++ Res, Lang);
|
||||||
|
|
||||||
process_admin(#request{user = User,
|
process_admin(#request{user = User,
|
||||||
path = ["user", U],
|
path = ["user", U],
|
||||||
@ -788,7 +790,7 @@ process_admin(#request{user = User,
|
|||||||
lang = Lang} = Request) ->
|
lang = Lang} = Request) ->
|
||||||
case search_running_node(SNode) of
|
case search_running_node(SNode) of
|
||||||
false ->
|
false ->
|
||||||
make_xhtml([?XC("h1", "Node not found")], Lang);
|
make_xhtml([?XCT("h1", "Node not found")], Lang);
|
||||||
Node ->
|
Node ->
|
||||||
Res = get_node(Node, NPath, Query, Lang),
|
Res = get_node(Node, NPath, Query, Lang),
|
||||||
make_xhtml(Res, Lang)
|
make_xhtml(Res, Lang)
|
||||||
@ -1109,8 +1111,8 @@ user_info(User, Query, Lang) ->
|
|||||||
?INPUTT("submit", "chpassword", "Change Password")],
|
?INPUTT("submit", "chpassword", "Change Password")],
|
||||||
[?XC("h1", "User: " ++ User)] ++
|
[?XC("h1", "User: " ++ User)] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XAE("form", [{"method", "post"}],
|
[?XAE("form", [{"method", "post"}],
|
||||||
@ -1160,10 +1162,10 @@ get_nodes(Lang) ->
|
|||||||
?LI([?C(S)])
|
?LI([?C(S)])
|
||||||
end, lists:sort(StoppedNodes)))
|
end, lists:sort(StoppedNodes)))
|
||||||
end,
|
end,
|
||||||
[?XC("h1", "Nodes"),
|
[?XCT("h1", "Nodes"),
|
||||||
?XC("h3", "Running Nodes"),
|
?XCT("h3", "Running Nodes"),
|
||||||
FRN,
|
FRN,
|
||||||
?XC("h3", "Stopped Nodes"),
|
?XCT("h3", "Stopped Nodes"),
|
||||||
FSN].
|
FSN].
|
||||||
|
|
||||||
search_running_node(SNode) ->
|
search_running_node(SNode) ->
|
||||||
@ -1181,10 +1183,10 @@ search_running_node(SNode, [Node | Nodes]) ->
|
|||||||
|
|
||||||
get_node(Node, [], Query, Lang) ->
|
get_node(Node, [], Query, Lang) ->
|
||||||
Res = node_parse_query(Node, Query),
|
Res = node_parse_query(Node, Query),
|
||||||
[?XC("h1", "Node: " ++ atom_to_list(Node))] ++
|
[?XC("h1", ?T("Node ") ++ atom_to_list(Node))] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XE("ul",
|
[?XE("ul",
|
||||||
@ -1202,7 +1204,7 @@ get_node(Node, [], Query, Lang) ->
|
|||||||
get_node(Node, ["db"], Query, Lang) ->
|
get_node(Node, ["db"], Query, Lang) ->
|
||||||
case rpc:call(Node, mnesia, system_info, [tables]) of
|
case rpc:call(Node, mnesia, system_info, [tables]) of
|
||||||
{badrpc, _Reason} ->
|
{badrpc, _Reason} ->
|
||||||
[?XC("h1", "RPC call error")];
|
[?XCT("h1", "RPC call error")];
|
||||||
Tables ->
|
Tables ->
|
||||||
Res = node_db_parse_query(Node, Tables, Query),
|
Res = node_db_parse_query(Node, Tables, Query),
|
||||||
STables = lists:sort(Tables),
|
STables = lists:sort(Tables),
|
||||||
@ -1240,10 +1242,10 @@ get_node(Node, ["db"], Query, Lang) ->
|
|||||||
integer_to_list(Memory))
|
integer_to_list(Memory))
|
||||||
])
|
])
|
||||||
end, STables),
|
end, STables),
|
||||||
[?XC("h1", "DB Tables at " ++ atom_to_list(Node))] ++
|
[?XC("h1", ?T("DB Tables at ") ++ atom_to_list(Node))] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XAE("form", [{"method", "post"}],
|
[?XAE("form", [{"method", "post"}],
|
||||||
@ -1268,7 +1270,7 @@ get_node(Node, ["db"], Query, Lang) ->
|
|||||||
|
|
||||||
get_node(Node, ["backup"], Query, Lang) ->
|
get_node(Node, ["backup"], Query, Lang) ->
|
||||||
Res = node_backup_parse_query(Node, Query),
|
Res = node_backup_parse_query(Node, Query),
|
||||||
[?XC("h1", "Backup Management at " ++ atom_to_list(Node)),
|
[?XC("h1", ?T("Backup Management at ") ++ atom_to_list(Node)),
|
||||||
?XAE("form", [{"method", "post"}],
|
?XAE("form", [{"method", "post"}],
|
||||||
[?XAE("table", [],
|
[?XAE("table", [],
|
||||||
[?XE("tbody",
|
[?XE("tbody",
|
||||||
@ -1323,10 +1325,10 @@ get_node(Node, ["ports"], Query, Lang) ->
|
|||||||
end,
|
end,
|
||||||
NewPorts = lists:sort(
|
NewPorts = lists:sort(
|
||||||
rpc:call(Node, ejabberd_config, get_local_option, [listen])),
|
rpc:call(Node, ejabberd_config, get_local_option, [listen])),
|
||||||
[?XC("h1", "Listened Ports at " ++ atom_to_list(Node))] ++
|
[?XC("h1", ?T("Listened Ports at ") ++ atom_to_list(Node))] ++
|
||||||
case Res of
|
case Res of
|
||||||
ok -> [?C("submitted"), ?P];
|
ok -> [?CT("submitted"), ?P];
|
||||||
error -> [?C("bad format"), ?P];
|
error -> [?CT("bad format"), ?P];
|
||||||
nothing -> []
|
nothing -> []
|
||||||
end ++
|
end ++
|
||||||
[?XAE("form", [{"method", "post"}],
|
[?XAE("form", [{"method", "post"}],
|
||||||
@ -1349,7 +1351,7 @@ get_node(Node, ["stats"], Query, Lang) ->
|
|||||||
TransactionsLogged =
|
TransactionsLogged =
|
||||||
rpc:call(Node, mnesia, system_info, [transaction_log_writes]),
|
rpc:call(Node, mnesia, system_info, [transaction_log_writes]),
|
||||||
|
|
||||||
[?XC("h1", atom_to_list(Node) ++ " statistics"),
|
[?XC("h1", io_lib:format(?T("~p statistics"), [Node])),
|
||||||
?XAE("table", [],
|
?XAE("table", [],
|
||||||
[?XE("tbody",
|
[?XE("tbody",
|
||||||
[?XE("tr", [?XCT("td", "Uptime"),
|
[?XE("tr", [?XCT("td", "Uptime"),
|
||||||
@ -1377,7 +1379,7 @@ get_node(Node, ["stats"], Query, Lang) ->
|
|||||||
])];
|
])];
|
||||||
|
|
||||||
get_node(Node, NPath, Query, Lang) ->
|
get_node(Node, NPath, Query, Lang) ->
|
||||||
[?XC("h1", "Not found")].
|
[?XCT("h1", "Not found")].
|
||||||
|
|
||||||
|
|
||||||
node_parse_query(Node, Query) ->
|
node_parse_query(Node, Query) ->
|
||||||
|
Loading…
Reference in New Issue
Block a user