Autor Tema: Añadir Hora local al lado "Ultima actualización"  (Leído 5226 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Samal

  • Visitante
Añadir Hora local al lado "Ultima actualización"
« en: 03 de Abril del 2021, 17:58:14 pm »
Hola a todos,
Estoy configurando poco a poco el skin belchertown pero lo pongo aquí porque imagino que en los demás skins seria lo mismo.

Querría poder agregar a continuación de donde pone la fecha y la hora de la ultima actualización la hora local.
Como yo de código no se, por eso pregunto aquí.
Creo que el código es el siguiente:

Código: [Seleccionar]
// Update the Last Updated timestamp with moment.js,
            updated = moment.unix( $current.dateTime.raw ).utcOffset($moment_js_utc_offset).format("$obs.label.time_last_updated");
            updated_text = "$obs.label.header_last_updated " + updated;
            jQuery(".updated").html( updated_text );
           
            #end if

Me gustaría poder poner lo de hora local y no me importa si después de un cambio de horario lo tengo que cambiar manualmente. Solo querría un código que en estos momentos me sumara las dos horas actuales. O bien, sumar las dos horas directamente y listos.

Y si no es mucho pedir, me estoy mareando buscando por donde poner el calendario en catalán. Si alguien me lo puede decir. No tengo claro si es buscar donde pone es_ES y cambiarlo por ca_ES. Si fuera eso ya buscare donde esta el código es_ES y realizare el cambio.

Muchas gracias de antemano.

Saludos!

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #1 en: 03 de Abril del 2021, 18:05:51 pm »
El tema de la hora local ya lo comentó Jmviper aquí:

https://forum.meteoclimatic.net/index.php/topic,3306.msg26063.html#msg26063

En cuanto al tema del calendario en Catalán no acabo de entenderlo. Si es para el nombre de los días y los meses, efectivamente hay que tocar el locale.

Yo siempre he preferido pasar de puntillas por los locale, je je je.....

Pero, no.....no es solo cambiar es_ES, hay que generar el locale.

Advierto, que a mi no me gusta tocar los locale.....mala experiencia.....es tan caótico como los códigos de codificación de páginas web.

Sería algo como:

Código: [Seleccionar]
sudo dpkg-reconfigure locales
Saludos.

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Samal

  • Visitante
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #2 en: 03 de Abril del 2021, 18:15:25 pm »
Si jantoni, es para poner los dias y los meses en catalan.

Jolinnnn, ya me has asustado con lo de locale.

Lo mirare y cuando tengo que tocar algo que veo chungo primero hago una copia entera de la sd.

En cuanto a lo de la hora...., mira que he dado vueltas para encontrar solución tendré de hacer un cursillo de búsqueda por google  :(

Muchas gracias jantoni.

Saludos!

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #3 en: 03 de Abril del 2021, 18:36:18 pm »
Jolinnnn, ya me has asustado con lo de locale.

Lo mirare y cuando tengo que tocar algo que veo chungo primero hago una copia entera de la sd.

Es una buena práctica, que a mi se me olvida a veces.......y siempre que se te olvida, zas, catástrofe. *+* *+* *+* *+* *+*

En cuanto al locale, no es que asuste.....es que no hay de verdad un manual que lo explique correctamente.

A los scripts automáticos, generados por el dpkg-reconfigure siempre se le quedan cosas fuera del tintero.

Y mi experiencia de los locale con Weewx no es buena.......en cuanto te descuidas, zas, error en la generación y se queja la "chita" esa (cheeta o como se escriba), aunque creo que en las últimas versiones de weewx ya había solucionado tanta incidencia con ese tema.

Bueno.....un poco te he engañado.....este es mi fichero /etc/environment (para cuando termines de generar el locale en catalán)

Citar
-e LANG="es_ES.UTF-8"
LANGUAGE="es_ES.UTF-8"
LC_ALL="es_ES.UTF-8"
-e LANG="es_ES.UTF-8"
LANGUAGE="es_ES.UTF-8"
LC_ALL="es_ES.UTF-8"

Lo del -e no tengo ni idea....es la primera vez que me fijo.

Como ves, las entradas están duplicadas......y es que el dpkg-reconfigure no funciona fino.......DE NUNCA

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Samal

  • Visitante
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #4 en: 03 de Abril del 2021, 20:08:53 pm »
Gracias jantoni, ahora estoy realizando la copia de la sd y luego me lio.

En cuanto a lo antes dicho de la hora (perdona pero todo lo que veo de código me suena a chino), No tengo claro que la solución sea la de ese enlace que me has puesto.
Yo no tengo que enviar ningún dato. Tengo la raspberry y weewx en horario UTC y por fin me envía los datos correctamente a meteoclimatic. Yo solo quiero que en la hora de actualización del que sale en el skin me sume las dos horas que ahora mismo tenemos como hora local aquí en España.

Quizás me orientas bien pero yo no se verlo  :-[.

Gracias de nuevo!.

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #5 en: 03 de Abril del 2021, 20:11:43 pm »
Bueno.....la plantilla de Meteoclimatic no deja de ser una página web, con formato texto.

Por ello tendrás que configurarlo de igual manera.

Yo lo tengo pendiente de hacer......en unos días me voy a poner con ello......con el proyecto de Raspi que estoy haciendo.

A ver si te puedo ayudar, porque ahora mismo, mi web está en formato UTC desde hace años......

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.576
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #6 en: 03 de Abril del 2021, 23:34:01 pm »
Lo de la fecha está controlado por los JavaScript del skin de belchertown.

Ve adonde está el skin en weewx y busca en su carpeta js el archivo belchertown.js.tmpl , es una plantilla que crea el script con esa información.

Tiene varias funciones para funcionar con el MQTT, con websockets o con página estática que se recarga, así que tendrás que buscar todas las líneas que ponga

updated = moment.unix( epoch ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );

y cambiarlas por estas otras

updated = moment.unix(epoch).utcOffset($moment_js_utc_offset).format("$obs.label.time_last_updated") + " (" + moment.unix(epoch).tz('Europe/Madrid').format( "LL, LTS" ) + " Hora local)";

Eso pone a continuación de la hora de actualización la misma hora con la hora local española.

También utiliza una extensión de la librería moment.js que hay que enlazar para que funcione.

Ve al archivo header.html.tmpl del skin y busca los enlaces a los scripts y busca la línea que tenga

<script type='text/javascript' src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment-with-locales.min.js"></script>

(la versión que he puesto es la 2.24.0 pero en la tuya puede ser otra) y pones a continuación en una nueva línea

<script type='text/javascript' src="//cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.33/moment-timezone-with-data.js"></script>

Comprueba en la siguiente actualización si ya sale lo que quieres. Ya digo que hay varias trozos del código en funciones donde sale eso y algunas incluso difieren entre sí con valores de weewx.





Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #7 en: 04 de Abril del 2021, 09:44:44 am »
Anoche lo leía y me surgían dudas.

Yo iba a utilizar el procedimiento que indicabas en Python, y me sorprendiste con este otro sistema. Aunque escucho JavaScript y corro como un perro por el ruido de los petardos *+*

Pero, la duda....si alteras la variable updated de este modo, tienes ambas horas en la página generada. Pero afectará también a la hora plasmada en la plantilla de envío a Meteoclimatic.

Y lo digo sin ver el código, porque ahora no lo tengo disponible.

¿No sería mejor tener dos variables separadas?

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.576
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #8 en: 04 de Abril del 2021, 10:10:39 am »
Jajajajaja con lo que me gusta a mí JavaScript, caótico, impredecible, anárquico  *+* *+* *+* de verdad me gusta mucho usarlo porque es todo un objeto y se puede hacer lo que se quiera con él sabiendo manejarse con sus métodos, prototipos y propiedades o construirte los tuyos propios.

Esa variable es solo para poner ese trozo en la hora de la actualización, no afecta a nada más. JavaScript solo se ejecuta en el navegador, no afecta al skin ni nada de lo que genere y en este caso sólo afectará al index del skin de belchertown.



Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #9 en: 04 de Abril del 2021, 10:54:12 am »
Pues lo probaremos *+* *+* *+*

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Samal

  • Visitante
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #10 en: 04 de Abril del 2021, 13:22:04 pm »
Pues lo probaremos *+* *+* *+*

En eso estoy. de momento..., sin éxito. como dice jmviper, hay mas lineas de código donde sale parte de ese código. Como yo soy un especialista en eso  *-* *-*. Pero bueno... ayer copia de sd y hoy copia de esos dos archivos  :;

De todas formas.... muy agradecido a los dos y haber haber, al igual suena la flauta  :D

Saludos

Samal

  • Visitante
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #11 en: 04 de Abril del 2021, 13:36:12 pm »
Estas son las lineas que he encontrado en el archivo belchertown.js.tmpl realizando la búsqueda de:
Código: [Seleccionar]
$obs.label.time_last_updated. A parte tres que ya he cambiado porque eran exactas a las que me ha dicho jmviper:
Código: [Seleccionar]
updated = moment.unix( epoch ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
Código: [Seleccionar]
    almanac_updated = "$obs.label.header_last_updated " + moment.unix( data["current"]["datetime_raw"] ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
        updated = moment.unix( inactive_timestamp ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
    updated = moment.unix( "$current.dateTime.raw" ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
        updated = moment.unix( inactive_timestamp ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
updated = moment.unix( "$current.dateTime.raw" ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
  updated = moment.unix( "$current.dateTime.raw" ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
        updated = moment.unix( "$current.dateTime.raw" ).utcOffset( $moment_js_utc_offset ).format( "$obs.label.time_last_updated" );
        updated = moment.unix(epoch).utcOffset($moment_js_utc_offset).format("$obs.label.time_last_updated");

Por mi parte..., cualquiera se atreve a tocar nada  :; :; :;

EDITO: Si la búsqueda la realizo de este código:
Código: [Seleccionar]
moment_js_utc_offset. Incluido las 3 que he cambiado hay 33 lineas.
« Última modificación: 04 de Abril del 2021, 13:46:10 pm por Samal »

Samal

  • Visitante
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #12 en: 04 de Abril del 2021, 21:46:32 pm »
Por fin he conseguido alguna cosa.

jantoni, me he liado con el locale y trasteando trasteando primero me ha quedado el calendario en Ingles. He visto que alguna cosa no funcionaba bien. He googleado y al final he encontrado como se tenia que seleccionar el idioma que uno quiere instalar. Yo seleccionaba el idioma y le daba o bien a intro o a aceptar. Para variar lo hacia mal. Una vez seleccionado se le tiene que dar a la barra espaciadora y entonces si, lo selecciona y se puede instalar. Ahora la raspi ya me dice que el idioma es el catalán y el país España. Naturalmente, también me sale el calendario en el belchertown en catalán  :D

Por lo demás, locale no me ha dado problema. Por lo menos, de momento que yo sepa, veremos...  :;

Saludos.

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #13 en: 04 de Abril del 2021, 23:21:38 pm »
Puedes usar el procedimiento que pongo en el nuevo hilo de weewx.

Bueno....yo soy siempre un poco exagerado, ja ja ja


Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.793
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Añadir Hora local al lado "Ultima actualización"
« Respuesta #14 en: 04 de Abril del 2021, 23:22:56 pm »

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41