Completed
Push — master ( 6d6774...64f3ed )
by Jeroen
11:23 queued 05:13
created

AdminBundle/Twig/AdminPermissionsTwigExtension.php (1 issue)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
namespace Kunstmaan\AdminBundle\Twig;
4
5
use Kunstmaan\AdminBundle\Helper\Security\Acl\Permission\PermissionAdmin;
6
use Symfony\Component\Form\FormView;
7
use Twig\Environment;
8
use Twig\Extension\AbstractExtension;
9
use Twig\TwigFunction;
10
11
/**
12
 * AdminPermissionsTwigExtension
13
 *
14
 * @final since 5.4
15
 */
16
class AdminPermissionsTwigExtension extends AbstractExtension
17
{
18
    /**
19
     * Returns a list of functions to add to the existing list.
20
     *
21
     * @return array An array of functions
0 ignored issues
show
Consider making the return type a bit more specific; maybe use TwigFunction[].

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
22
     */
23
    public function getFunctions()
24
    {
25
        return array(
26
            new TwigFunction('permissionsadmin_widget', array($this, 'renderWidget'), array('needs_environment' => true, 'is_safe' => array('html'))),
27
        );
28
    }
29
30
    /**
31
     * Renders the permission admin widget.
32
     *
33
     * @param Environment     $env
34
     * @param PermissionAdmin $permissionAdmin The permission admin
35
     * @param FormView        $form            The form
36
     * @param array           $parameters      Extra parameters
37
     *
38
     * @return string
39
     */
40
    public function renderWidget(Environment $env, PermissionAdmin $permissionAdmin, FormView $form, array $parameters = array())
41
    {
42
        $template = $env->load('@KunstmaanAdmin/PermissionsAdminTwigExtension/widget.html.twig');
43
44
        return $template->render(array_merge(array(
45
            'form' => $form,
46
            'permissionadmin' => $permissionAdmin,
47
            'recursiveSupport' => true,
48
        ), $parameters));
49
    }
50
}
51