| 
									
										
										
										
											2009-10-20 00:36:55 +00:00
										 |  |  | module ObjectDaddyHelpers | 
					
						
							| 
									
										
										
										
											2010-02-08 18:53:12 +00:00
										 |  |  |   # TODO: Remove these three once everyone has ported their code to use the | 
					
						
							|  |  |  |   # new object_daddy version with protected attribute support | 
					
						
							| 
									
										
										
										
											2010-01-23 16:50:41 +00:00
										 |  |  |   def User.generate_with_protected(attributes={}) | 
					
						
							| 
									
										
										
										
											2010-02-08 18:53:12 +00:00
										 |  |  |     User.generate(attributes) | 
					
						
							| 
									
										
										
										
											2010-01-23 16:50:41 +00:00
										 |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-10-20 00:36:55 +00:00
										 |  |  |   def User.generate_with_protected!(attributes={}) | 
					
						
							| 
									
										
										
										
											2010-02-08 18:53:12 +00:00
										 |  |  |     User.generate!(attributes) | 
					
						
							| 
									
										
										
										
											2010-01-23 16:50:41 +00:00
										 |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def User.spawn_with_protected(attributes={}) | 
					
						
							| 
									
										
										
										
											2010-02-08 18:53:12 +00:00
										 |  |  |     User.spawn(attributes) | 
					
						
							| 
									
										
										
										
											2009-10-20 00:36:55 +00:00
										 |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-10 19:44:45 +00:00
										 |  |  |   def User.add_to_project(user, project, roles) | 
					
						
							|  |  |  |     roles = [roles] unless roles.is_a?(Array) | 
					
						
							|  |  |  |     Member.generate!(:principal => user, :project => project, :roles => roles) | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-10-20 00:36:55 +00:00
										 |  |  |   # Generate the default Query | 
					
						
							|  |  |  |   def Query.generate_default!(attributes={}) | 
					
						
							|  |  |  |     query = Query.spawn(attributes) | 
					
						
							|  |  |  |     query.name ||= '_' | 
					
						
							|  |  |  |     query.save! | 
					
						
							|  |  |  |     query | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Generate an issue for a project, using it's trackers | 
					
						
							|  |  |  |   def Issue.generate_for_project!(project, attributes={}) | 
					
						
							|  |  |  |     issue = Issue.spawn(attributes) do |issue| | 
					
						
							|  |  |  |       issue.project = project | 
					
						
							| 
									
										
										
										
											2010-09-10 03:09:02 +00:00
										 |  |  |       issue.tracker = project.trackers.first unless project.trackers.empty? | 
					
						
							|  |  |  |       yield issue if block_given? | 
					
						
							| 
									
										
										
										
											2009-10-20 00:36:55 +00:00
										 |  |  |     end | 
					
						
							|  |  |  |     issue.save! | 
					
						
							|  |  |  |     issue | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | end |