Example #1
0
 public function onProjectCreate(ProjectEvent $event)
 {
     $hooks = $event->getProject()->getRepository()->getHooks();
     foreach ($this->hooks as $name => $file) {
         $hooks->setSymlink($name, $file);
     }
 }
Example #2
0
 /**
  * Method called when a project is deleted
  */
 public function onProjectDelete(ProjectEvent $event)
 {
     $path = $this->getPath($event->getProject());
     $flags = \FilesystemIterator::SKIP_DOTS;
     $iterator = new \RecursiveDirectoryIterator($path, $flags);
     $iterator = new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::CHILD_FIRST);
     foreach ($iterator as $file) {
         if (is_file($file)) {
             unlink($file);
         } else {
             rmdir($file);
         }
     }
     rmdir($path);
 }
 public function onProjectCreate(ProjectEvent $event)
 {
     $project = $event->getProject();
     if (count($project->getGitAccesses())) {
         return;
     }
     $em = $this->registry->getManager();
     $roles = $em->getRepository('GitonomyCoreBundle:Role')->getIndexedByName(array('Lead developer', 'Developer', 'Visitor'));
     if (isset($roles['Lead developer'])) {
         $permissions[] = new ProjectGitAccess($project, $roles['Lead developer'], '*', true, true);
     }
     if (isset($roles['Developer'])) {
         $permissions[] = new ProjectGitAccess($project, $roles['Developer'], '*', true, false);
     }
     if (isset($roles['Visitor'])) {
         $permissions[] = new ProjectGitAccess($project, $roles['Visitor'], '*', false, false);
     }
     foreach ($permissions as $permission) {
         $project->getGitAccesses()->add($permission);
         $em->persist($permission);
     }
 }