Browse Source

Minor CS tweaks

Jordi Boggiano 12 years ago
parent
commit
087e10bdb5

+ 20 - 15
src/Packagist/WebBundle/Controller/WebController.php

@@ -297,14 +297,12 @@ class WebController extends Controller
             );
         }
 
-        $user = $this->getUser();
-        if ($user && $package->getMaintainers()->contains($user)) {
-            $data['form'] = $this->createAddMaintainerForm()->createView();
-        }
-
         $data['searchForm'] = $this->createSearchForm()->createView();
+        if ($maintainerForm = $this->createAddMaintainerForm()) {
+            $data['form'] = $maintainerForm->createView();
+        }
         if ($deleteForm = $this->createDeletePackageForm()) {
-           $data['deleteForm'] = $deleteForm->createView();
+            $data['deleteForm'] = $deleteForm->createView();
         }
 
         return $data;
@@ -408,13 +406,6 @@ class WebController extends Controller
         return new Response('Invalid form input', 400);
     }
 
-    protected function createDeletePackageForm()
-    {
-        if ($this->get('security.context')->isGranted('ROLE_DELETE_PACKAGES')) {
-            return $this->createFormBuilder(array())->getForm();
-        }
-    }
-
     /**
      * @Template("PackagistWebBundle:Web:viewPackage.html.twig")
      * @Route("/packages/{name}/maintainers/", name="add_maintainer", requirements={"name"="[A-Za-z0-9_.-]+/[A-Za-z0-9/_.-]+"})
@@ -547,13 +538,27 @@ class WebController extends Controller
         if (!isset($parameters['searchForm'])) {
             $parameters['searchForm'] = $this->createSearchForm()->createView();
         }
+
         return parent::render($view, $parameters, $response);
     }
 
     private function createAddMaintainerForm()
     {
-        $addMaintainerRequest = new AddMaintainerRequest;
-        return $this->createForm(new AddMaintainerRequestType, $addMaintainerRequest);
+        if (!$user = $this->getUser()) {
+            return;
+        }
+
+        if ($this->get('security.context')->isGranted('ROLE_EDIT_PACKAGES') || $package->getMaintainers()->contains($user)) {
+            $addMaintainerRequest = new AddMaintainerRequest;
+            return $this->createForm(new AddMaintainerRequestType, $addMaintainerRequest);
+        }
+    }
+
+    private function createDeletePackageForm()
+    {
+        if ($this->get('security.context')->isGranted('ROLE_DELETE_PACKAGES')) {
+            return $this->createFormBuilder(array())->getForm();
+        }
     }
 
     private function createSearchForm()

+ 8 - 8
src/Packagist/WebBundle/Entity/Package.php

@@ -112,9 +112,9 @@ class Package
 
     private $entityRepository;
     /**
-     * @var \Composer\Repository\RepositoryInterface
+     * @var \Composer\Repository\Vcs\VcsDriverInterface
      */
-    private $repositoryClass;
+    private $vcsDriver;
 
     public function __construct()
     {
@@ -148,8 +148,8 @@ class Package
     public function isRepositoryValid(ExecutionContext $context)
     {
         $property = 'repository';
-        $repo = $this->repositoryClass;
-        if (!$repo) {
+        $driver = $this->vcsDriver;
+        if (!$driver) {
             if (preg_match('{//.+@}', $this->repository)) {
                 $context->addViolationAtSubPath($property, 'URLs with user@host are not supported, use a read-only public URL', array(), null);
             } else {
@@ -158,7 +158,7 @@ class Package
             return;
         }
         try {
-            $information = $repo->getComposerInformation($repo->getRootIdentifier());
+            $information = $driver->getComposerInformation($driver->getRootIdentifier());
 
             if (!isset($information['name']) || !$information['name']) {
                 $context->addViolationAtSubPath($property, 'The package name was not found in the composer.json, make sure there is a name present.', array(), null);
@@ -309,11 +309,11 @@ class Package
             $config = Factory::createConfig();
             $repository = new VcsRepository(array('url' => $repository), new NullIO(), $config);
 
-            $repo = $this->repositoryClass = $repository->getDriver();
-            if (!$repo) {
+            $driver = $this->vcsDriver = $repository->getDriver();
+            if (!$driver) {
                 return;
             }
-            $information = $repo->getComposerInformation($repo->getRootIdentifier());
+            $information = $driver->getComposerInformation($driver->getRootIdentifier());
             $this->setName($information['name']);
         } catch (\Exception $e) {
         }