Kaynağa Gözat

se agrego link a crear cliente en remote_client_type

Guillermo Espinoza 8 yıl önce
ebeveyn
işleme
be1d7ec838

+ 1 - 1
Resources/config/services.yml

@@ -26,6 +26,6 @@ services:
             
    webservice.twig_remote_client_extension:
        class: WebserviceBundle\Twig\RemoteClientExtension
-       arguments: ["@webservice"]
+       arguments: ["@webservice", "%remote_client_create_url%"]
        tags:
            - { name: twig.extension }

+ 2 - 0
Resources/translations/WebserviceBundle.es.yml

@@ -0,0 +1,2 @@
+link:
+    create_client: Crear cliente

+ 11 - 1
Resources/views/Type/remote_client_widget.html.twig

@@ -9,6 +9,7 @@
         <style type="text/css">
             .select2-selection.select2-selection--single {
                 height: 34px;
+                border-radius: 0px;
             }
         </style>
         <script type="text/javascript">
@@ -34,6 +35,15 @@
             });
         });
         </script>
-        {{ block('choice_widget') }}
+        <div>
+            <div style="width: 50%; float: left;">
+                {{ block('choice_widget') }}
+            </div>
+            <div style="width: 50%; float: left;">
+                <a href="{{ remote_client_url() }}" class="btn btn-link" target="_blank" title="{{ 'link.create_client'|trans({}, 'WebserviceBundle') }}">
+                    <i class="fa fa-plus-circle" aria-hidden="true"></i>
+                </a>
+            </div>
+        </div>
     {% endspaceless %}
 {% endblock %}

+ 18 - 1
Twig/RemoteClientExtension.php

@@ -12,13 +12,20 @@ class RemoteClientExtension extends \Twig_Extension
      */
     protected $webservice;
     
+    /**
+     * @var string
+     */
+    protected $remoteClientCreateUrl;
+    
     
     /**
      * @param Webservice $webservice
+     * @param string $remoteClientCreateUrl
      */
-    public function __construct(Webservice $webservice)
+    public function __construct(Webservice $webservice, $remoteClientCreateUrl)
     {
         $this->webservice = $webservice;
+        $this->remoteClientCreateUrl = $remoteClientCreateUrl;
     }
 
     /**
@@ -28,11 +35,13 @@ class RemoteClientExtension extends \Twig_Extension
     {
         return array(
             new \Twig_SimpleFunction('remote_client', array($this, 'getClient')),
+            new \Twig_SimpleFunction('remote_client_url', array($this, 'getClientCreateUrl')),
         );
     }
 
     /**
      * @param int $clientId
+     * 
      * @return string
      */
     public function getClient($clientId)
@@ -40,6 +49,14 @@ class RemoteClientExtension extends \Twig_Extension
         return $this->webservice->getById('client', $clientId);
     }
 
+    /**
+     * @return string
+     */
+    public function getClientCreateUrl()
+    {
+        return $this->remoteClientCreateUrl;
+    }
+
     /**
      * @return string
      */