diff --git a/advagg.install b/advagg.install index 8f76c30..b8a507e 100644 --- a/advagg.install +++ b/advagg.install @@ -12,6 +12,28 @@ function advagg_enable() { // Make sure the advagg_get_root_files_dir() function is available. drupal_load('module', 'advagg'); + // Make sure permissions for dirs are correct. Needed if installed via drush. + list($css_path, $js_path) = advagg_get_root_files_dir() + $stat_public = stat('public://'); + $stat_css = stat($css_path[0]); + $stat_js = stat($js_path[0]); + if (isset($stat_public['uid'])) + if (isset($stat_css['uid']) && $stat_public['uid'] != $stat_css['uid']) { + @chown($css_path[0], $stat_public['uid']); + } + if (isset($stat_js['uid']) && $stat_public['uid'] != $stat_js['uid']) { + @chown($stat_js[0], $stat_public['uid']); + } + } + if (isset($stat_public['gid'])) + if (isset($stat_css['gid']) && $stat_public['gid'] != $stat_css['gid']) { + @chgrp($css_path[0], $stat_public['gid']); + } + if (isset($stat_js['uid']) && $stat_public['gid'] != $stat_js['gid']) { + @chgrp($stat_js[0], $stat_public['gid']); + } + } + // Make sure the advagg_flush_all_cache_bins() function is available. module_load_include('inc', 'advagg', 'advagg'); module_load_include('inc', 'advagg', 'advagg.cache');