[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 echo "Archiving projects with no members...\n"; 4 5 $table = new PhabricatorProject(); 6 $table->openTransaction(); 7 8 foreach (new LiskMigrationIterator($table) as $project) { 9 10 $members = PhabricatorEdgeQuery::loadDestinationPHIDs( 11 $project->getPHID(), 12 PhabricatorEdgeConfig::TYPE_PROJ_MEMBER); 13 14 if (count($members)) { 15 echo sprintf( 16 'Project "%s" has %d members; skipping.', 17 $project->getName(), 18 count($members)), "\n"; 19 continue; 20 } 21 22 if ($project->getStatus() == PhabricatorProjectStatus::STATUS_ARCHIVED) { 23 echo sprintf( 24 'Project "%s" already archived; skipping.', 25 $project->getName()), "\n"; 26 continue; 27 } 28 29 echo sprintf('Archiving project "%s"...', $project->getName()), "\n"; 30 queryfx( 31 $table->establishConnection('w'), 32 'UPDATE %T SET status = %s WHERE id = %d', 33 $table->getTableName(), 34 PhabricatorProjectStatus::STATUS_ARCHIVED, 35 $project->getID()); 36 } 37 38 $table->saveTransaction(); 39 echo "\nDone.\n";
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |