mirror of
				https://github.com/gyurix1968/guacamole-client.git
				synced 2025-10-31 09:03:21 +00:00 
			
		
		
		
	GUAC-1176: Allow field types to define hard-coded HTML templates (without a URL).
This commit is contained in:
		| @@ -241,18 +241,27 @@ angular.module('form').provider('formService', function formServiceProvider() { | ||||
|             // Defer compilation of template pending successful retrieval | ||||
|             var compiledTemplate = $q.defer(); | ||||
|  | ||||
|             // Attempt to retrieve template HTML | ||||
|             templateRequest(fieldType.templateUrl) | ||||
|             // Use raw HTML template if provided | ||||
|             if (fieldType.template) | ||||
|                 compiledTemplate.resolve($compile(fieldType.template)(scope)); | ||||
|  | ||||
|             // Resolve with compiled HTML upon success | ||||
|             .then(function templateRetrieved(html) { | ||||
|                 compiledTemplate.resolve($compile(html)(scope)); | ||||
|             }) | ||||
|             // If no raw HTML template is provided, retrieve template from URL | ||||
|             else { | ||||
|  | ||||
|             // Reject on failure | ||||
|             ['catch'](function templateError() { | ||||
|                 compiledTemplate.reject(); | ||||
|             }); | ||||
|                 // Attempt to retrieve template HTML | ||||
|                 templateRequest(fieldType.templateUrl) | ||||
|  | ||||
|                 // Resolve with compiled HTML upon success | ||||
|                 .then(function templateRetrieved(html) { | ||||
|                     compiledTemplate.resolve($compile(html)(scope)); | ||||
|                 }) | ||||
|  | ||||
|                 // Reject on failure | ||||
|                 ['catch'](function templateError() { | ||||
|                     compiledTemplate.reject(); | ||||
|                 }); | ||||
|  | ||||
|             } | ||||
|  | ||||
|             // Return promise which resolves to the compiled template | ||||
|             return compiledTemplate.promise; | ||||
|   | ||||
| @@ -38,9 +38,19 @@ angular.module('form').factory('FieldType', [function defineFieldType() { | ||||
|         // Use empty object by default | ||||
|         template = template || {}; | ||||
|  | ||||
|         /** | ||||
|          * The raw HTML of the template that should be injected into the DOM of | ||||
|          * a form using this field type. If provided, this will be used instead | ||||
|          * of templateUrl. | ||||
|          * | ||||
|          * @type String | ||||
|          */ | ||||
|         this.template = template.template; | ||||
|  | ||||
|         /** | ||||
|          * The URL of the template that should be injected into the DOM of a | ||||
|          * form using this field type. | ||||
|          * form using this field type. This property will be ignored if a raw | ||||
|          * HTML template is supplied via the template property. | ||||
|          * | ||||
|          * @type String | ||||
|          */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user