Header
16:36 22/08 - [32 giorni fa]
[JS - PHP] - Localizzare data e ora per il nostro visitatote
in: PHP  So/Code: Generico 

A volte vi è la necessita di localizzare un certo orario e una certa data nel fuso orario dell'utenza che visita il nostro sito web. Per far ciò esistono due possibili strade:

  •  Localizzare l'IP facendo una richiesta a servizi del tipo geoip
    https://geoip.tools/v1/xml/?q=192.168.200.200
  • Utilizzare JS per captare il fusorario del browser.

In questa snippet utilizziamo JS e PHP per localizzare un determinato datetime rispetto all'orario dello stesso.

La componente JS, semplicemente memorizza l'informazione nei cookie che recuperiamo con PHP successivamente. 

$(document).ready(function(){
    var tz = jstz.determine(); 
    var timezone = tz.name(); 
	document.cookie = "timezone="+timezone;
});

In questo caso è inserito in jquery. Richiede ( )

Successivamente in PHP stabiliremo di default l'orario in cui i nostri datetime sono creati e successivamente recuperemo dai cookie il timezone preso dalla componente JS.

 

date_default_timezone_set('Europe/Rome');
if(isset($_COOKIE['timezone'])){ $userTimezone = $_COOKIE['timezone']; }


Fatto ciò tutti i datetime cui necessitano questo timo di localizzazione saranno così impostati:

$date = new DateTime($table["datetime"]);
$date->setTimezone(new DateTimeZone($userTimezone));

Per poi proseguire con la formattazione desiderata

echo $date->format('Y-m-d H:i');

Ciauz!

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: php datetime date hour ora localizzazione localizer fuso orario time zone europe berlin rome



10:31 02/08 - [53 giorni fa]
Gioco d’azzardo, il problema della comunicazione ai giocatori
in: Web  So/Code: Generico 

Il problema della comunicazione legata al gioco d’azzardo è ormai argomento di dibattito quotidiano. Il Decreto Dignità ha posto l’accento sulla presenza massiccia di messaggi pubblicitari sulle case da gioco nella vita di tutti i giorni dei potenziali giocatori. La soluzione, di certo estrema, è il divieto totale, sia sui mezzi di informazione sia come sponsor pubblicitari. La decisione del governo ha provocato forti discussioni, soprattutto tra chi ritiene il provvedimento adeguato e chi si preoccupa delle sue conseguenze a livello finanziario per le imprese che traevano profitti dalla cessione dei diritti pubblicitari. L’impressione è appunto che l’errore sia a livello comunicativo.

A Milano si è di recente svolto un convegno per presentare la ricerca condotta dall’Osservatorio di Gioco relativa al 2017-18. Le riflessioni che ne sono seguite hanno evidenziato il ruolo fondamentale che la comunicazione deve ricoprire nella riabilitazione dell’immagine del gioco d’azzardo. Allo stato attuale, il settore del gambling soffre ancora della reputazione negativa fomentata dall’idea del giocatore incallito che si indebita in bische clandestine.

...(Continua)

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: sponsored



10:54 27/07 - [59 giorni fa]
Mediterraneo
in: Web  So/Code: Generico 

 

Sono Guido, sono della provincia meno vivibile d'Italia forse una fra le ultime d'Europa, la stessa provincia di Saviano. Ho letto il suo appello. Per troppo tempo non ho voluto scrivere nulla di politico ho lasciato il blog al mero tecnicismo, è un vecchio blog lontano dai canoni moderni, ogni tanto post pubblicizzati e adsense per pagare il dominio nessun introito personale lo faccio per restituire briciole ad una comunità che mi ha dato tanto. Ultimamente ho scritto un post su come rilevare il blocco pubblicitario e non l’ho neanche inserito nel blog, non mi interessa se le persone non vogliono visualizzare le pubblicità mirate dei colossi che ci spiano da anni. La statistica comanda e regola tutto sapendo una decina di cose su di una persona si possono sapere migliaia di cose della stessa con una precisione abbastanza alta. I databases, di cui mi occupo da anni, sono oro colato per la pianificazione industriale, i nostri dati personali sono lo Strumento.

Sono uno sviluppatore che lotta per restare a lavorare nella città in cui è nato nella speranza che io goccia possa contribuire a colmare il processo di cambiamento e miglioramento. Il problema alla base di tutto penso sia unicamente sociale e si basa tutto su di un insensata competizione all'incremento delle ricchezze personali e al mantenimento di uno status quo sempre più elevato.

Potremmo parlare di una società dell’apparire lontano dall’essere, poiché le comunicazioni visive sono immediate, schediste e possono suddividere distintamente in classi sociali più o meno in modo realistico ( forse di “apparismo” si può parlare ). Lo possiamo notare nell’utilizzo dei social, il Facebook che lascia posto a Instagram come strumento di divulgazione del proprio essere sociale.
C’è una grave carenza del confronto intellettuale di qualsiasi tipo o livello, l’immediato è facile, non richiede applicazione, viene servito e condito di una superficiale analisi della comunità la quale partecipa.

Sulla base di ciò penso poi nasca il populismo che è la stupida esemplificazione dell’arte di governare un popolo, affondando le radici nell’assenza o nella svogliatezza della ricerca e diffusione dell’informazione. Il tutto si riflette nel seguire una linea politica di provenienza ignota al fine di non incappare nell’emarginazione sociale.

Sostanzialmente quello a cui assistiamo in Italia è un populismo economico dove il finto risparmio la fa da padrone, il tutto si riduce in una costante diminuzione degli investimenti nell’infrastruttura statale: formativa,infrastrutturale etc… In sostanza l’assenza di costruzione di un futuro rivolgendo il pensiero all’immediatezza.

Non esiste più una cultura politica in grado di eleggere persone responsabili e pronte a portare le civiltà un passo avanti, io immagino un futuro dove non esisteranno confini, è difficile se non impossibile pensare diversamente. L’attuale classe politica gestisce il tutto come se la storia degli ultimi 50 anni, forse anche meno, sia l unica esistita. Sull'immigrazione ci pongono davanti al male, come se i migranti fossero tutti pronti a rubarci il lavoro, commettere crimini e atti indicibili. Noi siamo ancora migranti economici Germania, Inghilterra, Irlanda etc… Per dirla tutta siamo anche grandi esportatori di malavita per dirne una.

Non dobbiamo distogliere l’attenzione dalle vere emergenze, che non sono immigrazione o i fattarelli del giorno, questi sono unicamente i “distrattori di massa” per elidere la nostra attenzione dalle vere drammatiche problematiche di difficile risoluzione, dove pochi politici osano indagare. Sulla democrazia diretta: panzane, nessuno di noi è tanto preparato da poter abbracciare tante questioni così tecniche, fu proprio questo il motivo per cui nacquero le prime forme parlamentari… non mi dilungo su una cavolata così grande.

La protezione del territorio e delle tradizioni non é nulla di più ridicolo, i confini si sono delineati con il tempo, le tradizioni sono la fusione di culture,civiltà,usanze e costumi. Perché abbiamo deciso che la nostra Cultura debba restare invariata? Il ciclo storico ripartendo fonde i popoli dando sempre più linfa vitale alle civiltà. Non dobbiamo temere il cambiamento che può apportare energia nelle generazioni future. E ciò può avvenire anche nei social dove ostinati continuiamo a rifiutare il diverso.

I famosi “leoni da tastiera” pronti ad insultare un un tweet od un post, pochi in grado di scrivere un pensiero completo… ogni opinione per quanto assurda va rispettata ma se si vuole criticare perché non scrivete un post civile dove si esprime il proprio pensiero come io sto cercando di buttare giù queste righe… scrivete, leggete, informatevi, documentatevi. Sentire più campane andare a vedere. La verità viene sempre costruita dalla somma di più punti di vista..

La cruda realtà e che nessuno di noi è libero di scegliere dove vivere e cosa fare, già dalla nascita sei cittadino di un posto politico: qui puoi andare lì no, qui puoi lavorare lì no, qui puoi emigrare li no. Se ci osservasse una civiltà aliena avanzata, per ipotesi, cosa penserebbe dei confini e delle dissacranti differenze economiche? potrebbe essere un concetto comprensibile? potrebbe essere il nostro pianeta etichettato come una civiltà non evoluta o in via di evoluzione?

Io forse ho avuto la fortuna di avere dei genitori che basano la loro vita sulla esperienza vissuta, sulla comprensione e l’istruzione.Qui che fai il salto e ti accorgi che in questa società il “nemico alle porte” è figurato come il vicino, l’invidia e il prevalere a discapito del prossimo in una corsa alla proprietà e alla ricchezza che porta ad un finto benessere personale. Lessi da qualche parte, non ricordo se fosse una religione o uno stile di vita, che chi non desidera nulla é arrivato allo stato di benessere totale alla quiete al senso della vita. Ed é, penso, probabilmente una verità anche se bisognerebbe arrivarci per capire.

La ricetta penso sia nelle prioritarie politiche sociali di coesione… vi é necessità di riunire le persone, nell’aiutarsi a vicenda a prescindere da chi sia o cosa faccia. Nella diffusione della cultura non sono a livello generazione, verticale, ma di un incremento nella parte orizzontale ultimamente molto trascurata. L’aspetto sociale è l’unico che può frenare l’infinita ed affannosa corsa alla materialità.


Concludendo vorrei finire con una citazione di un film strepitoso di Salvatores:

<<Dedicato a tutti quelli che stanno scappando>>

List but not last

Nessuno nasce odiando i propri simili a causa della razza, della religione o della classe alla quale appartengono. Gli uomini imparano a odiare, e se possono imparare a odiare, possono anche imparare ad amare, perché l'amore, per il cuore umano, è più naturale dell'odio.” Nelson Mandela


Guido Camerlingo
Senza odio, rancore, con affetto per tutti chi la pensa come me, chi si avvicina al mio pensiero, a chi non la pensa come me e a chi pensa che abbia scritto una marea di cavolate.
Scrivete anche voi, scrivete tutti…


 

Leggi Tutto ->

Commenti Commenti (2) | User Autore: Guido Camerlingo (Guiz)
Tags: robertosaviano #iosonorobertosaviano



09:57 26/06 - [90 giorni fa]
Individuare AdBlock ( Anti AdBlock )
in: Java  So/Code: Generico 

Tempi duri, AdBlock è uno strumento utile per i navigatori ma al quanto penalizzante per i possessori di siti web, blog o altro. Personalmente non ci guadagno nulla però ci pago le spese del blog e mi consente di continuare a scrivere. Oltre agli articoli sponsorizzati è l'unica "entrata". Penso entro quest'anno ci sarà una nuova veste grafica del sisto utilizzando boostrap, il che mi consente di rendere il sito responsive e di eliminare la versione mobile. Oggi spiego molto rapidamente le tecniche più comuni per individuare se il visitare abbia installato AdBlock e quindi per mostrare un messaggio o qualsiasi cosa vogliate. Personalmente preferisco avvisare che impedire la navigazione, anche se capisco perfettamente che ci sono persone che ci vivono.

Analizziamo il primo caso: Adsense

L'individuazione di Adsense è uno dei casi più comuni ed è facilmente implementabile, alla fine del caricamento della pagina vericheremo se il carimento delle ads è stato effettuato correttamente altrimente mostreremo un altert o qualsiasi cosa vogliate.

<script>
  window.onload = function() {
    setTimeout(function() {
      if ( typeof(window.google_jobrunner) === "undefined" ) {
	alert("Per sostenere questo sito disabilita AdBlock.");
        console.log("ad blocker installato");
      } else {
        console.log("nessun ad blocker installato.");
      }
    }, 10000);  
  };
</script>

Ovviamente dove è presente l'alert jquery sarà possibile inserire qualsivoglia avviso anche nella forma limitativa, cioè oscurando il sito o altro.


Il secondo caso si basa sul caricamento di un file js di nome ads.js . Gli adblocker provano ad impedire il caricamento di questo js e quindi tramite un piccolo controllo possiamo verificare il caricamento.


<script>var isAdsLoaded=false;</script><script src="js/ads.js"></script><script>
if (!isAdsLoaded) { 
  console.log("The visitor is blocking ads");
}
</script>

Il file ads.js sarà composto unicamente dalla riga isAdsLoaded=true; banalmente si basa su una variabile che varia unicamente se il file js viene caricato. ads.js può essere incluso in qualsiasi percorso.

Salutoni

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: AdBlock anti script individuare detect visitatori sito web web site script





11:44 18/06 - [98 giorni fa]
Book of Ra, come funziona e perché è così famosa tra i gamblers
in: Google  So/Code: Generico 

 

Il tema dell’antico Egitto è più che mai attuale e continua a suscitare interesse. Non è un caso se una delle slot machine di maggiore successo, in Italia come nel resto del mondo, è Book Of Ra, un classico che ha superato l’ardua prova degli anni per rimanere sulla cresta dell’onda nel settore del gambling. Oggi si trova praticamente in ogni casinò terrestre e in numerosi di quelli online, oltre alle slot machine posizionate nei locali pubblici.

Costruita con 5 russi per un massimo di nove linee di puntata, ha come protagonista assoluto il Libro di Ra, che dà il nome alla macchinetta. Infatti, il simbolo corrispondente all’oggetto sacro ha la funzione di Wild e di Scatter, che attiva i Free Spins con simboli espandibili. Questa modalità consente di effettuare dieci scommesse gratuite, in cui una delle icone standard appare almeno tre volte, per poi estendersi coprendo il rullo per intero, e il valore della combinazione più alta si moltiplica per il numero di linee vincenti. Nel caso in cui durante i Free Spins dovessero apparire nuovamente 3 Scatter, si avrebbe diritto a 10 ulteriori turni bonus. Su ogni linea di puntata si possono scommettere al massimo cinque gettoni, ma la possibile vincita è tra le più alte nel campo delle slot machine. Per guadagnare bisogna ottenere tre o più simboli uguali a partire dal primo rullo a sinistra. La percentuale di payout online è stimata al 97,80%, ai vertici del settore.

...(Continua)

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: 





09:27 11/06 - [105 giorni fa]
GDPR e le novità su Wix
in: Web  So/Code: Generico 

Dal 25 maggio 2018 entra in vigore il regolamento GDPR, General Data Protection Regulation, dell’Unione Europea valente per tutti gli stati membri al fine di aggiornare le regolamentazione sul trattamento e lo scambio dei dati personali.

Tra gli aggiornamenti riscontriamo nuovi limiti sul trattamento automatizzato, una migliore protezione per la migrazione dei dati fuori dalla zona UE e normative severe nel caso di violazione dei sistemi con perdita dei data. (data breach).

Il GDPR è abbastanza complesso e richiede diverse attenzioni per i possessori di siti web che, oltre a rispettare le leggi locali, devono essere in grado di creare alcune policy per il trattamento dei dati. In generale bisogna aver bene presente il concetto di trasparenza abbreviando il tutto nella consapevolezza che ogni azione eseguita con i dati dell’utenza richiede un esplicito consenso.

Elenchiamo alcuni possibili steps:

  • Creare un regolamento sulla privacy dei dati
  • Verificare che tutte le possibili applicazioni di terze parti siano conformi alla normativa GDPR
  • Specificare come e quando saranno utilizzati i dati dei visitatori e i loro possibili accessi
  • Richiedere il consenso al trattamento dei dati

Regolamento

Il regolamento è parte fondamentale del GDPR, in questo vanno specificate le informazioni raccolte, come e perché sono raccolte e come vengono conservate all’interno dei sito. Un esempio interessante c’è lo da Wix.Com dove le utenze, che possiedono un sito web vengono aiutate nella gestione di tutto il processo alla convalida GDPR.

Cookies

Diverse persone mi hanno chiesto sui cookie, se sussiste un qualche regola particolare sul GDPR, diciamo che per i cookies non c’è alcuna novità resta in vigore l’alter cookies.

Wix.com e la normativa

Per i possessori o per i futuri utenti di Wix.com, lo staff ha creato diverse guide per portare l’utenza ad un pieno rispetto della normativa GDPR. Anche qui il primo step sarà la creazione di una policy della privacy, come da link precedente e successivamente sarà possibile adattare i servizi offerti.

Le newsletter o le campagne di marketing necessitano di una esplicita adesione da parte delle utenze quindi che stiate usando Wix ShoutOut, MailChimp o un altro sistema Wix mette a disposizione dei tutorial mirati su come ottenere il consenso tramite il Wix Code o tramite Forms a seconda della scelta di sviluppo.

Altra funzione obbligatoria è fornire i dati storicizzati alla singola utenza che ne faccia richiesta o addirittura eliminare quest’ultimi. Di seguito alcuni link su come effettuare queste procedure dal sito ufficiale:

Novità e migliore ai tools

Wix ha tra le diverse cose introdotto diverse novità fra cui nella gestione delle newsletter, Wix ShoutOut, da giugno 2018 è possibile inviare email alle sole utenze attive eliminando quasi il rischio che queste possano essere segnalate come spam dall’utenza poco o non più attiva. Anche i Wix Video si aggiornano con la possibilità di abilitare i commenti in modo da creare delle conversazioni fra l’utenza, modificare l’orario di pubblicazione che può essere posticipato per creare una programmazione e una più facile gestione con una serie di opzioni per la modifica rapida.

Una delle funzioni più interessanti è il Wix Logo Maker che permette la creazione di un logo realmente professionale registrando le preferenze con una serie di domande al fine di inquadrare il proprio campo di attività. Nome attività, tipologia di riferimento, tags selezionabili e uno step finale che permette la selezione grafica con dei loghi d’esempio per comprendere il target visivo preferito del gestore del sito.

Wix è ancora innovatore puntando fra le altre cose ad un potenziamento del reparto illustrativo iniettando una dose di qualità alle possibili inclusioni direttamente dall’Editor online con un archivio di centinaia di illustrazioni già pronte suddivise per categoria, fra cui sport, negozi, cibi, natura, icone e addirittura una parte dedicata all’astratto.


Le basi della protezione

Tornando alla questione GDPR, Wix ha di base introdotto numerose novità per rendere molto più agevole l’avvento della normativa fra cui elenchiamo:

  • L’utilizzo di software esterni per lo scan delle vulnerabilità e in sostanza il penetrations testing
  • Accesso e registrazione tramite HTTPS/SSL
  • Storicizzazione dei dati protetti tramite multi layers per le problematiche 0-day
  • Utilizzo della crittografia per la storicizzazione delle password che in caso di data breach non potranno essere visualizzate.
  • Due importanti certificazioni PCI fra cui quella per i pagamenti online tramite carta di credito quindi LEVEL 1 Merchant e Level 1 Provider.

Queste creano una base molto robusta per il rispetto della GDPR, che risulta ostica in molti frangenti. Wix resta davvero uno strumento all’avanguardia su come creare un sito web e con il suo editor, del quale abbiamo già parlato in precedenza, si pone ancora una volta fra i migliori in assoluto avendo la peculiarità di innovare continuamente e rendere molto più agevole i più critici passaggi dello sviluppo web per i gli addetti ai lavori e non.

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: GDPR normativa wix com special

15:07 15/05 - [132 giorni fa]
Listare i processi in esecuzione su Android
in: Android  So/Code: Android 

Oggi mi sono imbattuto nel porting di un codice per renderlo compatibile per Android 7, quindi nougat, da versione precedenti. Durante questa fase ho scoperto che dal SDK 25 in poi non vi è più la possibilità di listare tramite il listFiles della /proc .

Questo è avvenuto per motivi di sicurezza restringendo maggiormanete il raggio d'azione che differenzia Android da iOS. ( non di sicurezza sia ben inteso ) Il codice che vi incollo è quello relativo prima della versione SDK 25.

Questa funzione mi è utile per capire e recuperare il pid di un processo in background partendo dal suo nome. Resta ancora valido dalle versioni 25 in poi ma è ristretto ai permessi di lettura dell'utenza che esegue l'applicazione, quindi non listerà tutti i processi.

 

public static List pidof(String str) {
        List < String > listOfPid = new ArrayList();
        for (File file : new File("/proc").listFiles()) {
            if (!file.isFile()) {
                File file2;
                if (Build.VERSION.SDK_INT < 25) {
                    file2 = new File(file.toString() + "/cmdline");;
                }else {
                    file2 = new File(file.toString() + "/comm");
                }
                if (file2.canRead()) {
                    try {
                        BufferedReader bufferedReader = new BufferedReader(new FileReader(file2), 8192);
                        while (true) {
                            String readLine = bufferedReader.readLine();
                            if (readLine == null) {
                                break;
                            } else if (readLine.toString().contains(str.toString())) {
                                listOfPid.add(file2.getPath().split("\/")[2].toString());
                            }
                        }
                        bufferedReader.close();
                    } catch (IOException e) {
                    }
                } else {
                    continue;
                }
            }
        }
        return listOfPid;
    }

In alternativa, parliamo sempre di dispositivi con root, è possibile creare un piccolo script in sh:

sudo -c 'pidof nomeprocesso'

Salvarlo per esempio nella folder files della nostra app dandogli i permessi corretti tramite adb e successivamente richiamarlo tramite getRuntime().exec() Non so se esistano altri metodi validi e funzionali nel caso mi commentate suggerendomi?

Grazie a tutti!

Salutoni

GuiZ

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: android ps list process /proc comm listare processi background android 7 nougat pidof nome processo pid name





12:34 08/02 - [228 giorni fa]
Android - app a schermo intero nello style del tema
in: Android  So/Code: Android 

 

Settare il full screen dell'app nell'evento onCreate rigenera l'evento onCreate, questo può causare problematiche nel caso si utilizzano determinati thread o task. Per ovviare ciò è necessario modificare il tema dell'app, settando nel manifest un tema personalizzato. 

android:theme="@style/AppTheme"

Nello style del tema è possibile modificare i parametri di configurazione della window ad esempio:


<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppTheme" parent="@style/Theme.Leanback">
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>
    </style>
</resources>

Leggi Tutto ->

Commenti Commenti (0) | User Autore: Guido Camerlingo (Guiz)
Tags: android full screen app schermo intero windowNoTitle windowActionBar windowFullscreen





Vai ssalla pagina:
2 3 4 5 6 7 8 9 Successiva  Ultima 
Ricerca

Glossario Naviga nel nostro glossario!
Scopri il gergo dei Geek!


 [EN] Last Articles

 Siti Amici

Visita il Blog Roll
Contattaci! Diventa nostro amico!



 Hot Downloads

3755

 Categorie

85
163
58
87
13
2
20
36
1
2
5
5
128
7
24
15
62
45

 Code

11
11
3
6
2
24
1
7

 Games

19
45
13

 GUIDE


 Novità Downloads

62
57
3755

 Tags Cloud

google Memo usa messanger attività giugno 15 2011 google multa corte Memo terra Memo giugno mercurio nasa Metronics multa



 CopyRight

Valid XHTML 1.0 Transitional CSS Valido! [Valid RSS] Creative Commons License


Geek-Blog by Flavio Mandato, Giuseppe Vaccaro, Guido Camerlingo, Stefano Natale, Domenico Cavallo is licensed under a Creative Commons Attribuzione-Non opere derivate 2.5 Italia License.
Based on a work at www.geek-blog.it.
Permissions beyond the scope of this license may be available at http://www.geek-blog.it/

Disclaimer - Responsabilità - Pagina generata in 0.149 secondi. Geek-Blog.it