12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- class sfProjectPermissionsTask extends sfBaseTask
- {
-
- protected function configure()
- {
- $this->aliases = array('permissions', 'fix-perms');
- $this->namespace = 'project';
- $this->name = 'permissions';
- $this->briefDescription = 'Fixes symfony directory permissions';
- $this->detailedDescription = <<<EOF
- The [project:permissions|INFO] task fixes directory permissions:
- [./symfony project:permissions|INFO]
- EOF;
- }
-
- protected function execute($arguments = array(), $options = array())
- {
- if (file_exists(sfConfig::get('sf_upload_dir')))
- {
- $this->getFilesystem()->chmod(sfConfig::get('sf_upload_dir'), 0777);
- }
- $this->getFilesystem()->chmod(sfConfig::get('sf_cache_dir'), 0777);
- $this->getFilesystem()->chmod(sfConfig::get('sf_log_dir'), 0777);
- $this->getFilesystem()->chmod(sfConfig::get('sf_root_dir').DIRECTORY_SEPARATOR.'symfony', 0777);
- $dirs = array(sfConfig::get('sf_cache_dir'), sfConfig::get('sf_upload_dir'), sfConfig::get('sf_log_dir'));
- $dirFinder = sfFinder::type('dir');
- $fileFinder = sfFinder::type('file');
- foreach ($dirs as $dir)
- {
- $this->getFilesystem()->chmod($dirFinder->in($dir), 0777);
- $this->getFilesystem()->chmod($fileFinder->in($dir), 0666);
- }
- }
- }
|