mirror of
				https://github.com/ossrs/srs.git
				synced 2025-03-09 15:49:59 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable file
		
	
	
	
	
angular.module('bravoUiAlert', [])
 | 
						|
    .directive('bravoAlert', function () {
 | 
						|
        return {
 | 
						|
            restrict: "A",
 | 
						|
            transclude: true,
 | 
						|
            template: '<div ng-transclude></div>',
 | 
						|
            scope: {
 | 
						|
                alert_show: '=alertShow',
 | 
						|
                on_close: '&bravoAlertClose',
 | 
						|
                on_closed: '&bravoAlertClosed'
 | 
						|
            },
 | 
						|
            compile: function (elem, attr) {
 | 
						|
                var manual = attr['alertShow'];
 | 
						|
                return function (scope, elem, attr) {
 | 
						|
                    elem.on('click', function(event) {
 | 
						|
                        var obj = angular.element(event.target);
 | 
						|
                        if (obj.attr('data-dismiss')) {
 | 
						|
                            scope.on_destory();
 | 
						|
                        }
 | 
						|
                    });
 | 
						|
                    scope.on_destory = function () {
 | 
						|
                        if (!manual) {
 | 
						|
                            scope.on_close();
 | 
						|
                            elem.addClass('ng-hide');
 | 
						|
                            scope.on_closed();
 | 
						|
                        } else {
 | 
						|
                            scope.on_close();
 | 
						|
                            scope.alert_show = false;
 | 
						|
                            scope.$apply();
 | 
						|
                        }
 | 
						|
                    };
 | 
						|
                    scope.$watch('alert_show', function (nv, ov) {
 | 
						|
                        if (nv != ov) {
 | 
						|
                            if (!nv) {
 | 
						|
                                elem.addClass('ng-hide');
 | 
						|
                                scope.on_closed();
 | 
						|
                            } else {
 | 
						|
                                elem.removeClass('ng-hide');
 | 
						|
                            }
 | 
						|
                        }
 | 
						|
                    });
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
    });
 |