Blog
Authsome plugin: Auth for people who hate the Auth component
Un progetto molto simile era in cantiere da diverso tempo sul forum di cakephp-it.org, ma qualcuno ci ha battuti sul tempo (non che ci volesse molto visto il nostro stato dei lavori )
questa la presentazione:
Assume nothing: Authsome requires that you have some kind of user model, but that's it. It doesn't care if you use a database, passwords or religious ceremonies for verifying your member logins.
Touch nothing: Authsome does not interact with your application at all. No login redirects, no permissions checks, nothing. You never have to worry about the underlaying magic, it will never get into your way.
Always available: Authsome is there for you when you need it. You can do stuff like Authsome::get('id') from anywhere in your project. If you have MVC OCD, you can also use Authsome as a regular component: $this->Authsome->get('id')
http://github.com/felixge/cakephp-authsome
Leggendo la presentazione sembra un gran bel pezzo di codice, al più presto proverò ad implementarlo in qualche progetto... ma il bello arriverà più avanti, nel 2010:
Next on the radar is Righteful: Acl for people who hate the Acl component. We hope to have it ready at some point early next year.
http://debuggable.com/posts/cakephp-aut … 76cbdd56cb
ACL è un complesso sistema di gestione delle autenticazioni, come molti sviluppatori (e non solo su cakephp) sapranno... l'unica difficoltà, che molti sviluppatori (soprattutto su cakephp) avranno già avuto modo di notare, è l'estrema macchinosità del tutto... difficile da implementare, da gestire, da utilizzare... speriamo che questo plugin ci venga in aiuto.
Adoro la comunità di cakephp...
Bloodhound Gang - Uhn Tiss Uhn Tiss Uhn Tiss
Si apre una nuova rubrica: cultura musicale .
Adoro questo gruppo...
Tabella di compatibilità fra i browser per html5, css3, svg...
Vagando per la rete alla ricerca di informazioni sul supporto ai tag audio e video in html5, mi sono imbattuto in questa interessante tabella:
http://a.deveria.com/caniuse/
Mostra la compatibilità delle nuove (future?) tecnologie web con i browser passati, attuali e futuri. Un ottimo aiuto per gli sviluppatori...
Lockerz.com apre agli utenti italiani
Lockerz è un sito americano, fondato a marzo 2009 il cui CEO è nientemeno che l'ex patron di Amazon, Kathy Savitt.
Il sito in questione ha la simpatica peculiarità di regalare (o promettere di) prodotti di vario genere ai propri visitatori: si parla di Nintendo Wii, Xbox 360, ma anche Macbook, tavole da snowboard, scooter... insomma premi anche piuttosto grossi!
Il funzionamento è semplice: ti iscrivi e partecipi ad un semplice giochino per accumulare i primi punti, dopodichè guadagni 2 punti per ogni giorno in cui ti colleghi, ed altri 2 punti se rispondi alla domanda del giorno... il tutto raddoppiato se inviti 20 persone, entrando inoltre a far parte della z-list.
Ora... credo che un po' tutti sentano puzza di fregatura, a quanto pare invece funziona sul serio, il sito guadagna dalla pubblicità e dagli sponsor, troppo bello per essere vero?
Forse, io intanto mi sono registrato... è gratuito e non costa troppa fatica, l'unico limite è la necessità di avere un invito per potersi iscrivere.
Interessato? Lascia un commento o contattami in altro modo, ne ho un po' a disposizione :)
Helper per la formattazione delle date con Cakephp
Gestire le date con cakephp non è mai stata una cosa semplice, senza parlare poi della situazione in cui si utilizza un hosting oltreoceano...
Un piccolo helper potrebbe venirci in aiuto:
<?php
// ./app/views/helpers/date.php
/**
* Formattazione date e ore con Cakephp
*
* @author ToX - http://emanuele.itoscano.com - toss82 - at - gmail.com
*
*
*
* @installazione:
* Nella funzione daymonthyear e monthdayyear ricordati di cambiare la lingua di setlocale con ciò che ti serve (default: it_IT)
*
*/
Class DateHelper extends AppHelper{
function nicedate($date)
{
if(empty($date)) {
return "No date provided";
}
$singular = array("secondo", "minuto", "ora", "giorno", "settimana", "mese", "anno", "decade");
$plural = array("secondi", "minuti", "ore", "giorni", "settimane", "mesi", "anni", "decadi");
$lengths = array("60","60","24","7","4.35","12","10");
$now = time();
$unix_date = strtotime($date);
// check validity of date
if(empty($unix_date)) {
return "N/A";
}
// is it future date or past date
if($now > $unix_date) {
$difference = $now - $unix_date;
$tense = "fa";
} else {
$difference = $unix_date - $now;
$tense = "fra";
}
for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) {
$difference /= $lengths[$j];
}
$difference = round($difference);
if($difference != 1) {
$periods[$j] = $plural[$j];
} else {
$periods[$j] = $singular[$j];
}
if ($now > $unix_date) {
return "$difference $periods[$j] {$tense}";
} else {
return "{$tense} $difference $periods[$j]";
}
}
function daymonthyear($date)
{
if(empty($date)) {
return "No date provided";
}
$unix_date = strtotime($date);
setlocale(LC_TIME, 'it_IT');
$data = strftime("%d/%m/%Y - %H:%M", $unix_date);
return ($data);
}
function monthdayyear($date)
{
if(empty($date)) {
return "No date provided";
}
$unix_date = strtotime($date);
setlocale(LC_TIME, 'it_IT');
$data = strftime("%m/%d/%Y - %H:%M", $unix_date);
return ($data);
}
}
?>
Diciamo al nostro controller (o app_controller) di utilizzare il nuovo helper, e poi siamo pronti ad utilizzarlo:
$date->nicedate($post['Post']['created']);
oppure
$date->daymonthyear($post['Post']['created']);