Page MenuHomePhorge

20130716.archivememberlessprojects.php
No OneTemporary

Size
1005 B
Referenced Files
None
Subscribers
None

20130716.archivememberlessprojects.php

<?php
echo pht('Archiving projects with no members...')."\n";
$table = new PhabricatorProject();
$table->openTransaction();
foreach (new LiskMigrationIterator($table) as $project) {
$members = PhabricatorEdgeQuery::loadDestinationPHIDs(
$project->getPHID(),
PhabricatorProjectProjectHasMemberEdgeType::EDGECONST);
if (count($members)) {
echo pht(
'Project "%s" has %d members; skipping.',
$project->getName(),
count($members)), "\n";
continue;
}
if ($project->getStatus() == PhabricatorProjectStatus::STATUS_ARCHIVED) {
echo pht(
'Project "%s" already archived; skipping.',
$project->getName()), "\n";
continue;
}
echo pht('Archiving project "%s"...', $project->getName())."\n";
queryfx(
$table->establishConnection('w'),
'UPDATE %T SET status = %s WHERE id = %d',
$table->getTableName(),
PhabricatorProjectStatus::STATUS_ARCHIVED,
$project->getID());
}
$table->saveTransaction();
echo "\n".pht('Done.')."\n";

File Metadata

Mime Type
text/x-php
Expires
Mon, Jul 14, 2:44 PM (2 d)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
354727
Default Alt Text
20130716.archivememberlessprojects.php (1005 B)

Event Timeline