Breve aggiornamento

Chi va piano va sano e va lontano (si spera)

NewsReport

Aggiornamento: Dato che sono testardo ho trovato la causa del problema di aggiornamento dei grafici di UOShards ;)

Ieri ho dato un occhiata più approfondita al vecchio UOShards è sono stato colpito da quante cose non funzionino più, sebbene le statistiche vengano prelevate correttamente, molti grafici non vengono aggiornati mentre altri si. Sarebbe da approfondire per trovarne la causa, ma il tempo che mi porterebbe via preferisco dedicarlo a mandare avanti il nuovo portale che prosegue, lento, ma abbastanza costante (ci posso lavorare solamente nei week-end).

---------------------------------------------------------------------------------
Language                       files          blank        comment           code
---------------------------------------------------------------------------------
Java                             106           1136           1395           5888
JavaScript                        13            556            419           3426
XML                               21            116            677           1248
Maven                              7            117             42            796
Freemarker Template               28            119             20            775
CSS                                8            228             68            681
YAML                              26             65              9            432
HTML                               7             34             14            303
SQL                               22              9              7            183
XSD                                2              0              0             55
Bourne Shell                       6              1              0             16
---------------------------------------------------------------------------------
SUM:                             246           2381           2651          13803
---------------------------------------------------------------------------------

Come si vede, rispetto al precedente report, il codice cresce (da 8706 righe di codice a 13803), il salto maggiore lo ha fatto javascript da quando sto lavorando alla parte front-end con vue.js (N.B. le librerie non sono contate nel report, le righe contante sono effettivamente solo quelle scritte da me). Un po' meno bene sono andati i commenti, trend che devo cambiare il prima possibile se non voglio rifare la fine che ho fatto con UOShards!

Vue si è rivelato proprio quello che mi serviva, l’unica pecca è la non interazione con jquery nelle chiamate ajax, che ho risolto passando il riferimento dell’oggetto vue alla classe di jquery ( vedi codice seguente ) cosa che mi permette facilmente di far parlare ajax con vue senza adoperare la libreria dedicata di vue, evitando quindi di avere 2 librerie che fanno esattamente la stessa cosa ma in posti diversi (le librerie attuali in totale fanno 750kb di dati non compressi).

var vueObject = new Vue({
	el: '#divname',
	data: {
		... omissis ...
	},
	methods: {
		myEvent: function (event) {
		... omissis ...
			$.ajax({
				caller:this, (1)
				type: 'POST',
				url: url,
				data: {
				... omissis ...
				},
				success: function (data) {
					....omissis ...
					this.caller.variable=data.result_element; (2)
				},
				error: function (xhr, status, error) {
					....omissis ...
				},
				dataType: "json",
			});
		}
	}
});
1 punto in cui passo l’oggetto vue (this in quel contesto) all’oggetto di jquery per la chiamata ajax;
2 l’oggetto vue viene adoperato per visualizzare il dato preso via ajax sulla pagina sfruttando il binding di vue.

Forse si può fare di meglio, comunque va abbastanza bene per ora.

Il mio obiettivo è portare qualcosa online a ottobre per rimpiazzare UOShards e poi proseguire con il progetto di estendere il tutto ad altri giochi.

Una delle cose che sto ancora cercando di produrre sono i bottoni per i server, ancora non ho alcuna idea su come strutturare graficamente il layout e se provare a fare qualche cosa in javascript come twitter e affini.

Per ora è tutto

Al prossimo aggiornamento.

Cya

K.