forked from Coded/SIPRP
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							40 lines
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
	
	
							40 lines
						
					
					
						
							1.2 KiB
						
					
					
				
 | 
						|
//	usage:	<partials-renderer partial-id="partial-1"></partials-renderer>
 | 
						|
 | 
						|
evoapp.directive('partialsRenderer', function($rootScope, $compile) {
 | 
						|
 | 
						|
    return {
 | 
						|
    	restrict: 'AE',
 | 
						|
        link: function (scope, elem, attrs) {   
 | 
						|
        	
 | 
						|
        	scope.partialId = attrs.partialId || null;
 | 
						|
        	
 | 
						|
        	if(scope.partialId != null){
 | 
						|
        		
 | 
						|
                var partialEL = $rootScope.viewCache.find('[id=' + scope.partialId + ']');
 | 
						|
                
 | 
						|
                if(partialEL.length == 0){               	
 | 
						|
                	throw Error('partial ' + scope.partialId + ' not found!');
 | 
						|
                }else{
 | 
						|
                	
 | 
						|
                	if(partialEL.length > 1){  
 | 
						|
                		throw Error('more than one partial ' + scope.partialId + ' was found!');                		
 | 
						|
                	}else{
 | 
						|
                		
 | 
						|
                		var finalEl = $.parseHTML(partialEL.html());
 | 
						|
                		
 | 
						|
                		$(finalEl).insertAfter(elem);
 | 
						|
                		
 | 
						|
                		elem.remove();
 | 
						|
                		
 | 
						|
                		$compile(finalEl)(scope);
 | 
						|
                	}                	
 | 
						|
                }
 | 
						|
        		
 | 
						|
        	}
 | 
						|
          
 | 
						|
 | 
						|
 | 
						|
        }
 | 
						|
    }
 | 
						|
}); |