Problemi col vostro sito web? No.. niente!

Simpleads node vengono aggiornati continuamente

  • Modulo simpleads Drupal 7

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

Aggiungi un commento

Freelance Web Developer Padova

Non solo siti internet, ma applicazioni Web Based, Css3 e sviluppo mobile

Contattami per maggiori info