mirror of
				https://github.com/gyurix1968/guacamole-client.git
				synced 2025-10-31 00:53:21 +00:00 
			
		
		
		
	GUACAMOLE-723: Move getClientIdentifier() to GroupListItem for convenience of other uses of the guacGroupList directive.
This commit is contained in:
		| @@ -21,4 +21,8 @@ | |||||||
|  * Module for displaying the contents of a connection group, allowing the user |  * Module for displaying the contents of a connection group, allowing the user | ||||||
|  * to select individual connections or groups. |  * to select individual connections or groups. | ||||||
|  */ |  */ | ||||||
| angular.module('groupList', ['list', 'rest']); | angular.module('groupList', [ | ||||||
|  |     'navigation', | ||||||
|  |     'list', | ||||||
|  |     'rest' | ||||||
|  | ]); | ||||||
|   | |||||||
| @@ -20,7 +20,11 @@ | |||||||
| /** | /** | ||||||
|  * Provides the GroupListItem class definition. |  * Provides the GroupListItem class definition. | ||||||
|  */ |  */ | ||||||
| angular.module('groupList').factory('GroupListItem', ['ConnectionGroup', function defineGroupListItem(ConnectionGroup) { | angular.module('groupList').factory('GroupListItem', ['$injector', function defineGroupListItem($injector) { | ||||||
|  |  | ||||||
|  |     // Required types | ||||||
|  |     var ClientIdentifier = $injector.get('ClientIdentifier'); | ||||||
|  |     var ConnectionGroup  = $injector.get('ConnectionGroup'); | ||||||
|  |  | ||||||
|     /** |     /** | ||||||
|      * Creates a new GroupListItem, initializing the properties of that |      * Creates a new GroupListItem, initializing the properties of that | ||||||
| @@ -109,14 +113,50 @@ angular.module('groupList').factory('GroupListItem', ['ConnectionGroup', functio | |||||||
|  |  | ||||||
|         /** |         /** | ||||||
|          * Returns the number of currently active users for this connection, |          * Returns the number of currently active users for this connection, | ||||||
|          * connection group, or sharing profile, if known. |          * connection group, or sharing profile, if known. If unknown, null may | ||||||
|  |          * be returned. | ||||||
|          *  |          *  | ||||||
|          * @type Number |          * @returns {Number} | ||||||
|  |          *     The number of currently active users for this connection, | ||||||
|  |          *     connection group, or sharing profile. | ||||||
|          */ |          */ | ||||||
|         this.getActiveConnections = template.getActiveConnections || (function getActiveConnections() { |         this.getActiveConnections = template.getActiveConnections || (function getActiveConnections() { | ||||||
|             return null; |             return null; | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|  |         /** | ||||||
|  |          * Returns the unique string identifier that must be used when | ||||||
|  |          * connecting to a connection or connection group represented by this | ||||||
|  |          * GroupListItem. | ||||||
|  |          * | ||||||
|  |          * @returns {String} | ||||||
|  |          *     The client identifier associated with the connection or | ||||||
|  |          *     connection group represented by this GroupListItem, or null if | ||||||
|  |          *     this GroupListItem cannot have an associated client identifier. | ||||||
|  |          */ | ||||||
|  |         this.getClientIdentifier = template.getClientIdentifier || function getClientIdentifier() { | ||||||
|  |  | ||||||
|  |             // If the item is a connection, generate a connection identifier | ||||||
|  |             if (this.type === GroupListItem.Type.CONNECTION) | ||||||
|  |                 return ClientIdentifier.toString({ | ||||||
|  |                     dataSource : this.dataSource, | ||||||
|  |                     type       : ClientIdentifier.Types.CONNECTION, | ||||||
|  |                     id         : this.identifier | ||||||
|  |                 }); | ||||||
|  |  | ||||||
|  |             // If the item is a connection group, generate a connection group identifier | ||||||
|  |             if (this.type === GroupListItem.Type.CONNECTION_GROUP) | ||||||
|  |                 return ClientIdentifier.toString({ | ||||||
|  |                     dataSource : this.dataSource, | ||||||
|  |                     type       : ClientIdentifier.Types.CONNECTION_GROUP, | ||||||
|  |                     id         : this.identifier | ||||||
|  |                 }); | ||||||
|  |  | ||||||
|  |             // Otherwise, no such identifier can exist | ||||||
|  |             return null; | ||||||
|  |  | ||||||
|  |         }; | ||||||
|  |  | ||||||
|         /** |         /** | ||||||
|          * The connection, connection group, or sharing profile whose data is |          * The connection, connection group, or sharing profile whose data is | ||||||
|          * exposed within this GroupListItem. If the type of this GroupListItem |          * exposed within this GroupListItem. If the type of this GroupListItem | ||||||
|   | |||||||
| @@ -25,7 +25,6 @@ angular.module('home').controller('homeController', ['$scope', '$injector', | |||||||
|  |  | ||||||
|     // Get required types |     // Get required types | ||||||
|     var ConnectionGroup  = $injector.get('ConnectionGroup'); |     var ConnectionGroup  = $injector.get('ConnectionGroup'); | ||||||
|     var ClientIdentifier = $injector.get('ClientIdentifier'); |  | ||||||
|     var GroupListItem    = $injector.get('GroupListItem'); |     var GroupListItem    = $injector.get('GroupListItem'); | ||||||
|              |              | ||||||
|     // Get required services |     // Get required services | ||||||
| @@ -74,51 +73,6 @@ angular.module('home').controller('homeController', ['$scope', '$injector', | |||||||
|  |  | ||||||
|     }; |     }; | ||||||
|  |  | ||||||
|     /** |  | ||||||
|      * Object passed to the guacGroupList directive, providing context-specific |  | ||||||
|      * functions or data. |  | ||||||
|      */ |  | ||||||
|     $scope.context = { |  | ||||||
|  |  | ||||||
|         /** |  | ||||||
|          * Returns the unique string identifier which must be used when |  | ||||||
|          * connecting to a connection or connection group represented by the |  | ||||||
|          * given GroupListItem. |  | ||||||
|          * |  | ||||||
|          * @param {GroupListItem} item |  | ||||||
|          *     The GroupListItem to determine the client identifier of. |  | ||||||
|          * |  | ||||||
|          * @returns {String} |  | ||||||
|          *     The client identifier associated with the connection or |  | ||||||
|          *     connection group represented by the given GroupListItem, or null |  | ||||||
|          *     if the GroupListItem cannot have an associated client |  | ||||||
|          *     identifier. |  | ||||||
|          */ |  | ||||||
|         getClientIdentifier : function getClientIdentifier(item) { |  | ||||||
|  |  | ||||||
|             // If the item is a connection, generate a connection identifier |  | ||||||
|             if (item.type === GroupListItem.Type.CONNECTION) |  | ||||||
|                 return ClientIdentifier.toString({ |  | ||||||
|                     dataSource : item.dataSource, |  | ||||||
|                     type       : ClientIdentifier.Types.CONNECTION, |  | ||||||
|                     id         : item.identifier |  | ||||||
|                 }); |  | ||||||
|  |  | ||||||
|             // If the item is a connection group, generate a connection group identifier |  | ||||||
|             if (item.type === GroupListItem.Type.CONNECTION_GROUP) |  | ||||||
|                 return ClientIdentifier.toString({ |  | ||||||
|                     dataSource : item.dataSource, |  | ||||||
|                     type       : ClientIdentifier.Types.CONNECTION_GROUP, |  | ||||||
|                     id         : item.identifier |  | ||||||
|                 }); |  | ||||||
|  |  | ||||||
|             // Otherwise, no such identifier can exist |  | ||||||
|             return null; |  | ||||||
|  |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|     }; |  | ||||||
|  |  | ||||||
|     // Retrieve root groups and all descendants |     // Retrieve root groups and all descendants | ||||||
|     dataSourceService.apply( |     dataSourceService.apply( | ||||||
|         connectionGroupService.getConnectionGroupTree, |         connectionGroupService.getConnectionGroupTree, | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <a class="home-connection" | <a class="home-connection" | ||||||
|    ng-href="#/client/{{context.getClientIdentifier(item)}}" |    ng-href="#/client/{{ item.getClientIdentifier() }}" | ||||||
|    ng-class="{active: item.getActiveConnections()}"> |    ng-class="{active: item.getActiveConnections()}"> | ||||||
|  |  | ||||||
|     <!-- Connection icon --> |     <!-- Connection icon --> | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| <span class="home-connection-group name"> | <span class="home-connection-group name"> | ||||||
|     <a ng-show="item.balancing" ng-href="#/client/{{context.getClientIdentifier(item)}}">{{item.name}}</a> |     <a ng-show="item.balancing" ng-href="#/client/{{ getClientIdentifier() }}">{{item.name}}</a> | ||||||
|     <span ng-show="!item.balancing">{{item.name}}</span> |     <span ng-show="!item.balancing">{{item.name}}</span> | ||||||
| </span> | </span> | ||||||
|   | |||||||
| @@ -23,7 +23,6 @@ | |||||||
|         </div> |         </div> | ||||||
|         <div class="all-connections"> |         <div class="all-connections"> | ||||||
|             <guac-group-list |             <guac-group-list | ||||||
|                 context="context" |  | ||||||
|                 connection-groups="filteredRootConnectionGroups" |                 connection-groups="filteredRootConnectionGroups" | ||||||
|                 templates="{ |                 templates="{ | ||||||
|                     'connection'       : 'app/home/templates/connection.html', |                     'connection'       : 'app/home/templates/connection.html', | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user