Ejemplo n.º 1
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore()
 {
     global $conf;
     if ($conf['cache']) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
     }
     if (site_audit_env_is_dev()) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_INFO;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_FAIL;
 }
Ejemplo n.º 2
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore() {
   global $conf;
   if ($conf['page_cache_maximum_age'] >= 900) {
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
   }
   elseif (!$conf['page_cache_maximum_age']) {
     if (site_audit_env_is_dev()) {
       return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_INFO;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_FAIL;
   }
   return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_WARN;
 }
Ejemplo n.º 3
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore()
 {
     global $conf;
     if ($conf['block_cache']) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
     } elseif (count(module_implements('node_grants'))) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_WARN;
     }
     // Block caching is off.
     if (site_audit_env_is_dev()) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_INFO;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_FAIL;
 }
Ejemplo n.º 4
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore()
 {
     // Views Cache Bully.
     $this->registry['views_cache_bully_output'] = FALSE;
     if (module_exists('views_cache_bully') && variable_get('views_cache_bully_output_lifespan', 3600) > 0) {
         $this->registry['views_cache_bully_output'] = TRUE;
     }
     if ($this->registry['views_cache_bully_output']) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
     }
     $this->registry['output_lifespan'] = array();
     foreach ($this->registry['views'] as $view) {
         foreach ($view->display as $display_name => $display) {
             if (!isset($display->disabled) || !$display->disabled) {
                 // Default display OR overriding display.
                 if (isset($display->display_options['cache'])) {
                     if ($display->display_options['cache']['type'] == 'none' || $display->display_options['cache'] == '') {
                         if ($display_name == 'default') {
                             $this->registry['output_lifespan'][$view->name]['default'] = 'none';
                         } else {
                             $this->registry['output_lifespan'][$view->name]['displays'][$display_name] = 'none';
                         }
                     } else {
                         if ($display->display_options['cache']['output_lifespan'] == 'custom') {
                             $lifespan = $display->display_options['cache']['output_lifespan_custom'];
                         } else {
                             $lifespan = $display->display_options['cache']['output_lifespan'];
                         }
                         if ($lifespan < 1) {
                             $lifespan = 'none';
                         }
                         if ($display_name == 'default') {
                             $this->registry['output_lifespan'][$view->name]['default'] = $lifespan;
                         } else {
                             $this->registry['output_lifespan'][$view->name]['displays'][$display_name] = $lifespan;
                         }
                     }
                 } else {
                     $this->registry['output_lifespan'][$view->name]['displays'][$display_name] = 'default';
                 }
             }
         }
     }
     $this->registry['views_without_output_caching'] = array();
     foreach ($this->registry['output_lifespan'] as $view_name => $view_data) {
         // Views with only master display.
         if (!isset($view_data['displays']) || count($view_data['displays']) == 0) {
             if ($view_data['default'] == 'none') {
                 $this->registry['views_without_output_caching'][] = $view_name;
             }
         } else {
             // If all the displays are default, consolidate.
             $all_default_displays = TRUE;
             foreach ($view_data['displays'] as $display_name => $lifespan) {
                 if ($lifespan != 'default') {
                     $all_default_displays = FALSE;
                 }
             }
             if ($all_default_displays) {
                 if ($view_data['default'] == 'none') {
                     $this->registry['views_without_output_caching'][] = $view_name;
                 }
             } else {
                 $uncached_view_string = $view_name;
                 $uncached_view_displays = array();
                 foreach ($view_data['displays'] as $display_name => $display_data) {
                     if ($display_data == 'none' || $display_data == 'default' && $view_data['default'] == 'none') {
                         $uncached_view_displays[] = $display_name;
                     }
                 }
                 if (!empty($uncached_view_displays)) {
                     $uncached_view_string .= ' (' . implode(', ', $uncached_view_displays) . ')';
                     $this->registry['views_without_output_caching'][] = $uncached_view_string;
                 }
             }
         }
     }
     if (count($this->registry['views_without_output_caching']) == 0) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
     }
     if (site_audit_env_is_dev()) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_INFO;
     }
     if (count($this->registry['views_without_output_caching']) == count($this->registry['views'])) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_FAIL;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_WARN;
 }
Ejemplo n.º 5
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore()
 {
     $this->registry['extensions_dev'] = array();
     $extension_info = $this->registry['extensions'];
     uasort($extension_info, '_drush_pm_sort_extensions');
     $dev_extensions = $this->getExtensions();
     foreach ($extension_info as $key => $extension) {
         $row = array();
         $status = drush_get_extension_status($extension);
         // Only enabled extensions.
         if (!in_array($status, array('enabled'))) {
             unset($extension_info[$key]);
             continue;
         }
         // Not in the list of known development modules.
         if (!array_key_exists($extension->name, $dev_extensions)) {
             unset($extension_info[$key]);
             continue;
         }
         // Do not report modules that are dependencies of other modules, such
         // as field_ui in Drupal Commerce.
         if (isset($extension->required_by) && !empty($extension->required_by)) {
             unset($extension_info[$key]);
             continue;
         }
         // Name.
         $row[] = $extension->label;
         // Reason.
         $row[] = $dev_extensions[$extension->name];
         $this->registry['extensions_dev'][$extension->name] = $row;
     }
     if (!empty($this->registry['extensions_dev'])) {
         if (site_audit_env_is_dev()) {
             return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_INFO;
         }
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_WARN;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
 }
Ejemplo n.º 6
0
 /**
  * Implements \SiteAudit\Check\Abstract\calculateScore().
  */
 public function calculateScore()
 {
     $this->registry['extensions_unrec'] = array();
     $extension_info = $this->registry['extensions'];
     uasort($extension_info, '_drush_pm_sort_extensions');
     $unrecommended_extensions = $this->getExtensions();
     foreach ($extension_info as $extension) {
         $row = array();
         // Not in the list of known unrecommended modules.
         if (!array_key_exists($extension->name, $unrecommended_extensions)) {
             continue;
         }
         // Exceptions for backup_migrate in installation profiles on Pantheon.
         if ($extension->name == 'backup_migrate' && drush_get_option('vendor') == 'pantheon') {
             $in_profile = strpos($extension->filename, 'profiles/') === 0;
             $status = drush_get_extension_status($extension);
             // If in profiles and disabled, ignore.
             if ($in_profile && $status != 'enabled') {
                 continue;
             }
             // If enabled in dev, ignore.
             if ($status == 'enabled' && site_audit_env_is_dev()) {
                 continue;
             }
             // If in profiles and enabled in non-dev, be more specific.
             if ($in_profile && $status == 'enabled' && !site_audit_env_is_dev()) {
                 $this->registry['extensions_unrec'][$extension->name] = array($extension->label, dt('backup_migrate should only be on Pantheon in live environments used to facilitate migrations; disable when complete and this check will pass.'));
                 continue;
             }
         }
         // Name.
         $row[] = $extension->label;
         // Reason.
         $row[] = $unrecommended_extensions[$extension->name];
         $this->registry['extensions_unrec'][$extension->name] = $row;
     }
     if (!empty($this->registry['extensions_unrec'])) {
         return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_FAIL;
     }
     return SiteAuditCheckAbstract::AUDIT_CHECK_SCORE_PASS;
 }