|  |  |  | @ -7,24 +7,59 @@ | 
			
		
	
		
			
				
					|  |  |  |  |  * @author Qiang Xue <qiang.xue@gmail.com> | 
			
		
	
		
			
				
					|  |  |  |  |  * @since 2.0 | 
			
		
	
		
			
				
					|  |  |  |  |  */ | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | /** | 
			
		
	
		
			
				
					|  |  |  |  |  * yii is the root module for all Yii JavaScript modules. | 
			
		
	
		
			
				
					|  |  |  |  |  * It implements a mechanism of organizing JavaScript code in modules through the function "yii.initModule()". | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  * Each module should be named as "x.y.z", where "x" stands for the root module (for the Yii core code, this is "yii"). | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  * A module may be structured as follows: | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  * ~~~ | 
			
		
	
		
			
				
					|  |  |  |  |  * yii.sample = (function($) { | 
			
		
	
		
			
				
					|  |  |  |  |  *     var pub = { | 
			
		
	
		
			
				
					|  |  |  |  |  *         // whether this module is currently active. If false, init() will not be called for this module
 | 
			
		
	
		
			
				
					|  |  |  |  |  *         // it will also not be called for all its child modules. If this property is undefined, it means true.
 | 
			
		
	
		
			
				
					|  |  |  |  |  *         isActive: true, | 
			
		
	
		
			
				
					|  |  |  |  |  *         init: function() { | 
			
		
	
		
			
				
					|  |  |  |  |  *             // ... module initialization code go here ...
 | 
			
		
	
		
			
				
					|  |  |  |  |  *         }, | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  *         // ... other public functions and properties go here ...
 | 
			
		
	
		
			
				
					|  |  |  |  |  *     }; | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  *     // ... private functions and properties go here ...
 | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  *     return pub; | 
			
		
	
		
			
				
					|  |  |  |  |  * }); | 
			
		
	
		
			
				
					|  |  |  |  |  * ~~~ | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  * Using this structure, you can define public and private functions/properties for a module. | 
			
		
	
		
			
				
					|  |  |  |  |  * Private functions/properties are only visible within the module, while public functions/properties | 
			
		
	
		
			
				
					|  |  |  |  |  * may be accessed outside of the module. For example, you can access "yii.sample.init()". | 
			
		
	
		
			
				
					|  |  |  |  |  * | 
			
		
	
		
			
				
					|  |  |  |  |  * You must call "yii.initModule()" once for the root module of all your modules. | 
			
		
	
		
			
				
					|  |  |  |  |  */ | 
			
		
	
		
			
				
					|  |  |  |  | yii = (function ($) { | 
			
		
	
		
			
				
					|  |  |  |  | 	var pub = { | 
			
		
	
		
			
				
					|  |  |  |  | 		version: '2.0' | 
			
		
	
		
			
				
					|  |  |  |  | 		version: '2.0', | 
			
		
	
		
			
				
					|  |  |  |  | 		initModule: function (module) { | 
			
		
	
		
			
				
					|  |  |  |  | 			if (module.isActive === undefined || module.isActive) { | 
			
		
	
		
			
				
					|  |  |  |  | 				if ($.isFunction(module.init)) { | 
			
		
	
		
			
				
					|  |  |  |  | 					module.init(); | 
			
		
	
		
			
				
					|  |  |  |  | 				} | 
			
		
	
		
			
				
					|  |  |  |  | 				$.each(module, function () { | 
			
		
	
		
			
				
					|  |  |  |  | 					if ($.isPlainObject(this)) { | 
			
		
	
		
			
				
					|  |  |  |  | 						pub.initModule(this); | 
			
		
	
		
			
				
					|  |  |  |  | 					} | 
			
		
	
		
			
				
					|  |  |  |  | 				}); | 
			
		
	
		
			
				
					|  |  |  |  | 			} | 
			
		
	
		
			
				
					|  |  |  |  | 		} | 
			
		
	
		
			
				
					|  |  |  |  | 	}; | 
			
		
	
		
			
				
					|  |  |  |  | 	return pub; | 
			
		
	
		
			
				
					|  |  |  |  | })(jQuery); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | jQuery(document).ready(function ($) { | 
			
		
	
		
			
				
					|  |  |  |  | 	// call the init() method of every module
 | 
			
		
	
		
			
				
					|  |  |  |  | 	var init = function (module) { | 
			
		
	
		
			
				
					|  |  |  |  | 		if ($.isFunction(module.init) && (module.trigger == undefined || $(module.trigger).length)) { | 
			
		
	
		
			
				
					|  |  |  |  | 			module.init(); | 
			
		
	
		
			
				
					|  |  |  |  | 		} | 
			
		
	
		
			
				
					|  |  |  |  | 		$.each(module, function () { | 
			
		
	
		
			
				
					|  |  |  |  | 			if ($.isPlainObject(this)) { | 
			
		
	
		
			
				
					|  |  |  |  | 				init(this); | 
			
		
	
		
			
				
					|  |  |  |  | 			} | 
			
		
	
		
			
				
					|  |  |  |  | 		}); | 
			
		
	
		
			
				
					|  |  |  |  | 	}; | 
			
		
	
		
			
				
					|  |  |  |  | 	init(yii); | 
			
		
	
		
			
				
					|  |  |  |  | jQuery(document).ready(function () { | 
			
		
	
		
			
				
					|  |  |  |  | 	yii.initModule(yii); | 
			
		
	
		
			
				
					|  |  |  |  | }); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |