| 
									
										
										
										
											2013-05-29 15:05:44 -07:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-22 17:27:56 +10:00
										 |  |  | echo pht('Migrating macro authors...')."\n"; | 
					
						
							| 
									
										
										
										
											2013-05-29 15:05:44 -07:00
										 |  |  | foreach (new LiskMigrationIterator(new PhabricatorFileImageMacro()) as $macro) { | 
					
						
							| 
									
										
										
										
											2015-05-22 17:27:56 +10:00
										 |  |  |   echo pht('Macro #%d', $macro->getID())."\n"; | 
					
						
							| 
									
										
										
										
											2013-05-29 15:05:44 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |   if ($macro->getAuthorPHID()) { | 
					
						
							|  |  |  |     // Already have an author; skip it.
 | 
					
						
							|  |  |  |     continue; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if (!$macro->getFilePHID()) { | 
					
						
							|  |  |  |     // No valid file; skip it.
 | 
					
						
							|  |  |  |     continue; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   $file = id(new PhabricatorFile())->loadOneWhere( | 
					
						
							|  |  |  |     'phid = %s', | 
					
						
							|  |  |  |     $macro->getFilePHID()); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if (!$file) { | 
					
						
							|  |  |  |     // Couldn't load the file; skip it.
 | 
					
						
							|  |  |  |     continue; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if (!$file->getAuthorPHID()) { | 
					
						
							|  |  |  |     // File has no author; skip it.
 | 
					
						
							|  |  |  |     continue; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   queryfx( | 
					
						
							|  |  |  |     $macro->establishConnection('w'), | 
					
						
							|  |  |  |     'UPDATE %T SET authorPHID = %s WHERE id = %d', | 
					
						
							|  |  |  |     $macro->getTableName(), | 
					
						
							|  |  |  |     $file->getAuthorPHID(), | 
					
						
							|  |  |  |     $macro->getID()); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-22 17:27:56 +10:00
										 |  |  | echo pht('Done.')."\n"; |