From 2e4cb128171df410003d542c2a51f904d698357c Mon Sep 17 00:00:00 2001
From: chylex <contact@chylex.com>
Date: Fri, 16 Jun 2017 03:50:16 +0200
Subject: [PATCH] Add template name check and safeguard empty ajax token in
 template plugin

---
 Resources/Plugins/templates/browser.js | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Resources/Plugins/templates/browser.js b/Resources/Plugins/templates/browser.js
index 3bb7a768..9e59b564 100644
--- a/Resources/Plugins/templates/browser.js
+++ b/Resources/Plugins/templates/browser.js
@@ -205,6 +205,10 @@ enabled(){
             url = evaluator;
             evaluator = null;
           }
+          
+          if (!url){
+            break;
+          }
 
           promises.push(doAjaxRequest(url, evaluator).then(result => {
             const placeholderLen = 5; // "(...)".length
@@ -373,13 +377,17 @@ enabled(){
           let name = $("[name='template-name']", editor).val();
           let identifier = name.toLowerCase().replace(/[^a-z0-9]/g, "")+"-"+(Math.random().toString(36).substring(2, 7));
           
+          if (name.trim().length === 0){
+            alert("Please, include a name for your template.");
+            $("[name='template-name']", editor).focus();
+            return;
+          }
+          
           me.config.templates[identifier] = {
             name: name,
             contents: $("[name='template-contents']", editor).val()
           };
           
-          // TODO check validity
-          
           toggleEditor();
           onTemplatesUpdated(true);
           break;