Simpleads node vengono aggiornati continuamente
Usando il modulo simpleads di Drupal 7 ho notato che i contenuti creati si aggiornavano continuamente. Sicuramente era qualcosa legato al cron e immaginavo si trattasse delle statistiche in merito a tali banner.
Analizzando il codice invece, ho scoperto che ad ogni procedura di cron simpleads controlla se un banner (nodo) è scaduto o meno e quindi lo attiva o lo disattiva. E’ però a mio avviso uno spreco di risorse aggiornare un nodo se in realtà la modifica non c’è.
Quindi quello che ho proposto su Drupal.org è questa patch applicata sul file includes/simpleads.helper.inc in corrispondenza della funzione _simpleads_activate_deactive_ad
$old_status=$node->status; if ($start_time != '' && $end_time != '') { if ($now >= $start_time && $end_time > $now) { $node->status = 1; if ($who == 'cron' && $node->status!=$old_status) { node_save($node); } } elseif ($end_time <= $now) { $node->status = 0; if ($who == 'cron' && $node->status!=$old_status) { node_save($node); } } } elseif ($start_time == '' && $end_time != '') { if ($end_time <= $now) { $node->status = 0; if ($who == 'cron' && $node->status!=$old_status) { node_save($node); } } else { $node->status = 1; if ($who == 'cron' && $node->status!=$old_status) { node_save($node); } } } else { if ($now >= $start_time && $start_time != '') { $node->status = 1; if ($who == 'cron' && $node->status!=$old_status) { node_save($node); } } }
Ed ecco il link alla discussione su Drupal.org: http://drupal.org/node/1853466#comment-7004158
Lascia un Commento
Vuoi partecipare alla discussione?Sentitevi liberi di contribuire!