1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-20 20:40:56 +01:00
phorge-phorge/resources/sql/autopatches/20161210.dashboards.01.author.php
Chad Little 59f3b5125d Add authorPHID to Dashboards
Summary: Adds an authorPHIDs, populates olds ones.

Test Plan: Make a new Dashboard, see that I created it.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: Korvin

Differential Revision: https://secure.phabricator.com/D17022
2016-12-12 15:26:43 -08:00

39 lines
901 B
PHP

<?php
// Set authorPHID on Dashboards
//
$table = new PhabricatorDashboard();
$conn_w = $table->establishConnection('w');
$txn_table = new PhabricatorDashboardTransaction();
$txn_conn = $table->establishConnection('r');
echo pht("Building Dashboard authorPHIDs...\n");
foreach (new LiskMigrationIterator($table) as $dashboard) {
if ($dashboard->getAuthorPHID()) {
continue;
}
$author_row = queryfx_one(
$txn_conn,
'SELECT authorPHID FROM %T WHERE objectPHID = %s ORDER BY id ASC LIMIT 1',
$txn_table->getTableName(),
$dashboard->getPHID());
if (!$author_row) {
$author_phid = id(new PhabricatorDashboardApplication())->getPHID();
} else {
$author_phid = $author_row['authorPHID'];
}
queryfx(
$conn_w,
'UPDATE %T SET authorPHID = %s WHERE id = %d',
$table->getTableName(),
$author_phid,
$dashboard->getID());
}
echo pht("Done\n");