mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-18 12:52:42 +01:00
Various translation improvements
Summary: Depends on D14070. Test Plan: Eyeball it. Reviewers: epriestley, #blessed_reviewers Reviewed By: epriestley, #blessed_reviewers Subscribers: Korvin, hach-que Differential Revision: https://secure.phabricator.com/D14073
This commit is contained in:
parent
495cb7a2e0
commit
c35b564f4d
53 changed files with 217 additions and 142 deletions
|
@ -102,7 +102,7 @@ function commit_symbols(
|
||||||
$repository->getPHID());
|
$repository->getPHID());
|
||||||
}
|
}
|
||||||
|
|
||||||
echo pht('Loading %s symbols...', new PhutilNumber(count($sql))), "\n";
|
echo pht('Loading %s symbols...', phutil_count($sql)), "\n";
|
||||||
foreach (array_chunk($sql, 128) as $chunk) {
|
foreach (array_chunk($sql, 128) as $chunk) {
|
||||||
queryfx(
|
queryfx(
|
||||||
$conn_w,
|
$conn_w,
|
||||||
|
|
|
@ -109,7 +109,7 @@ final class PhabricatorAuthListController
|
||||||
'only users with a verified email address at one of these %s '.
|
'only users with a verified email address at one of these %s '.
|
||||||
'allowed domain(s) will be able to register an account: %s',
|
'allowed domain(s) will be able to register an account: %s',
|
||||||
$domains_link,
|
$domains_link,
|
||||||
new PhutilNumber(count($domains_value)),
|
phutil_count($domains_value),
|
||||||
phutil_tag('strong', array(), implode(', ', $domains_value)));
|
phutil_tag('strong', array(), implode(', ', $domains_value)));
|
||||||
} else {
|
} else {
|
||||||
$issues[] = pht(
|
$issues[] = pht(
|
||||||
|
|
|
@ -78,7 +78,7 @@ final class PhabricatorAuthManagementRefreshWorkflow
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht(
|
pht(
|
||||||
'Found %s account(s) to refresh.',
|
'Found %s account(s) to refresh.',
|
||||||
new PhutilNumber(count($accounts))));
|
phutil_count($accounts)));
|
||||||
}
|
}
|
||||||
|
|
||||||
$providers = PhabricatorAuthProvider::getAllEnabledProviders();
|
$providers = PhabricatorAuthProvider::getAllEnabledProviders();
|
||||||
|
|
|
@ -18,7 +18,7 @@ final class CelerityManagementMapWorkflow
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Rebuilding %d resource source(s).',
|
'Rebuilding %d resource source(s).',
|
||||||
new PhutilNumber(count($resources_map))));
|
phutil_count($resources_map)));
|
||||||
|
|
||||||
foreach ($resources_map as $name => $resources) {
|
foreach ($resources_map as $name => $resources) {
|
||||||
$this->rebuildResources($resources);
|
$this->rebuildResources($resources);
|
||||||
|
|
|
@ -115,7 +115,7 @@ final class PhabricatorDaemonsSetupCheck extends PhabricatorSetupCheck {
|
||||||
$list_section = array(
|
$list_section = array(
|
||||||
pht(
|
pht(
|
||||||
'The configurations differ in the following %s way(s):',
|
'The configurations differ in the following %s way(s):',
|
||||||
new PhutilNumber(count($issues))),
|
phutil_count($issues)),
|
||||||
phutil_tag(
|
phutil_tag(
|
||||||
'ul',
|
'ul',
|
||||||
array(),
|
array(),
|
||||||
|
|
|
@ -111,7 +111,7 @@ final class PhabricatorPathSetupCheck extends PhabricatorSetupCheck {
|
||||||
|
|
||||||
$this
|
$this
|
||||||
->newIssue('config.PATH.'.$digest)
|
->newIssue('config.PATH.'.$digest)
|
||||||
->setName(pht('$PATH Component Unusable'))
|
->setName(pht('%s Component Unusable', '$PATH'))
|
||||||
->setSummary(
|
->setSummary(
|
||||||
pht(
|
pht(
|
||||||
'A component of the configured PATH can not be used by '.
|
'A component of the configured PATH can not be used by '.
|
||||||
|
|
|
@ -387,7 +387,7 @@ final class PhabricatorSetupIssueView extends AphrontView {
|
||||||
array(),
|
array(),
|
||||||
pht(
|
pht(
|
||||||
'PHP also loaded these %s configuration file(s):',
|
'PHP also loaded these %s configuration file(s):',
|
||||||
new PhutilNumber(count($more_loc))));
|
phutil_count($more_loc)));
|
||||||
$info[] = phutil_tag(
|
$info[] = phutil_tag(
|
||||||
'pre',
|
'pre',
|
||||||
array(),
|
array(),
|
||||||
|
|
|
@ -29,14 +29,13 @@ final class ConpherenceUpdateThreadConduitAPIMethod
|
||||||
protected function defineErrorTypes() {
|
protected function defineErrorTypes() {
|
||||||
return array(
|
return array(
|
||||||
'ERR_USAGE_NO_ROOM_ID' => pht(
|
'ERR_USAGE_NO_ROOM_ID' => pht(
|
||||||
'You must specify a room id or room phid to query transactions '.
|
'You must specify a room ID or room PHID to query transactions from.'),
|
||||||
'from.'),
|
|
||||||
'ERR_USAGE_ROOM_NOT_FOUND' => pht(
|
'ERR_USAGE_ROOM_NOT_FOUND' => pht(
|
||||||
'room does not exist or logged in user can not see it.'),
|
'Room does not exist or logged in user can not see it.'),
|
||||||
'ERR_USAGE_ONLY_SELF_REMOVE' => pht(
|
'ERR_USAGE_ONLY_SELF_REMOVE' => pht(
|
||||||
'Only a user can remove themselves from a room.'),
|
'Only a user can remove themselves from a room.'),
|
||||||
'ERR_USAGE_NO_UPDATES' => pht(
|
'ERR_USAGE_NO_UPDATES' => pht(
|
||||||
'You must specify data that actually updates the conpherence.'),
|
'You must specify data that actually updates the Conpherence.'),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -325,8 +325,7 @@ final class ConpherenceUpdateController
|
||||||
$remove_person = $request->getStr('remove_person');
|
$remove_person = $request->getStr('remove_person');
|
||||||
$participants = $conpherence->getParticipants();
|
$participants = $conpherence->getParticipants();
|
||||||
|
|
||||||
$message = pht(
|
$message = pht('Are you sure you want to leave this room?');
|
||||||
'Are you sure you want to leave this room?');
|
|
||||||
$test_conpherence = clone $conpherence;
|
$test_conpherence = clone $conpherence;
|
||||||
$test_conpherence->attachParticipants(array());
|
$test_conpherence->attachParticipants(array());
|
||||||
if (!PhabricatorPolicyFilter::hasCapability(
|
if (!PhabricatorPolicyFilter::hasCapability(
|
||||||
|
@ -334,17 +333,14 @@ final class ConpherenceUpdateController
|
||||||
$test_conpherence,
|
$test_conpherence,
|
||||||
PhabricatorPolicyCapability::CAN_VIEW)) {
|
PhabricatorPolicyCapability::CAN_VIEW)) {
|
||||||
if (count($participants) == 1) {
|
if (count($participants) == 1) {
|
||||||
$message .= pht(
|
$message .= ' '.pht('The room will be inaccessible forever and ever.');
|
||||||
' The room will be inaccessible forever and ever.');
|
|
||||||
} else {
|
} else {
|
||||||
$message .= pht(
|
$message .= ' '.pht('Someone else in the room can add you back later.');
|
||||||
' Someone else in the room can add you back later.');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$body = phutil_tag(
|
$body = phutil_tag(
|
||||||
'p',
|
'p',
|
||||||
array(
|
array(),
|
||||||
),
|
|
||||||
$message);
|
$message);
|
||||||
|
|
||||||
require_celerity_resource('conpherence-update-css');
|
require_celerity_resource('conpherence-update-css');
|
||||||
|
|
|
@ -77,14 +77,14 @@ final class ConpherenceTransaction extends PhabricatorApplicationTransaction {
|
||||||
count($rem));
|
count($rem));
|
||||||
} else if ($add) {
|
} else if ($add) {
|
||||||
$title = pht(
|
$title = pht(
|
||||||
'%s added %d files(s).',
|
'%s added %s files(s).',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($add));
|
phutil_count($add));
|
||||||
} else {
|
} else {
|
||||||
$title = pht(
|
$title = pht(
|
||||||
'%s removed %d file(s).',
|
'%s removed %s file(s).',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($rem));
|
phutil_count($rem));
|
||||||
}
|
}
|
||||||
return $title;
|
return $title;
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -226,7 +226,9 @@ abstract class PhabricatorDaemonManagementWorkflow
|
||||||
// Retry without sudo
|
// Retry without sudo
|
||||||
$console->writeOut(
|
$console->writeOut(
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht('sudo command failed. Starting daemon as current user.'));
|
pht(
|
||||||
|
'%s command failed. Starting daemon as current user.',
|
||||||
|
'sudo'));
|
||||||
$this->executeDaemonLaunchCommand(
|
$this->executeDaemonLaunchCommand(
|
||||||
$command,
|
$command,
|
||||||
$daemon_script_dir,
|
$daemon_script_dir,
|
||||||
|
@ -265,8 +267,9 @@ abstract class PhabricatorDaemonManagementWorkflow
|
||||||
if (preg_match('/sudo: a password is required/', $stderr)) {
|
if (preg_match('/sudo: a password is required/', $stderr)) {
|
||||||
throw new Exception(
|
throw new Exception(
|
||||||
pht(
|
pht(
|
||||||
'sudo exited with a zero exit code, but emitted output '.
|
'%s exited with a zero exit code, but emitted output '.
|
||||||
'consistent with failure under OSX.'));
|
'consistent with failure under OSX.',
|
||||||
|
'sudo'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -218,21 +218,21 @@ final class DifferentialJIRAIssuesField
|
||||||
return pht(
|
return pht(
|
||||||
'%s updated JIRA issue(s): added %d %s; removed %d %s.',
|
'%s updated JIRA issue(s): added %d %s; removed %d %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
implode(', ', $add),
|
implode(', ', $add),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
implode(', ', $rem));
|
implode(', ', $rem));
|
||||||
} else if ($add) {
|
} else if ($add) {
|
||||||
return pht(
|
return pht(
|
||||||
'%s added %d JIRA issue(s): %s.',
|
'%s added %d JIRA issue(s): %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
implode(', ', $add));
|
implode(', ', $add));
|
||||||
} else if ($rem) {
|
} else if ($rem) {
|
||||||
return pht(
|
return pht(
|
||||||
'%s removed %d JIRA issue(s): %s.',
|
'%s removed %d JIRA issue(s): %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
implode(', ', $rem));
|
implode(', ', $rem));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -125,7 +125,7 @@ final class DifferentialUnitField
|
||||||
)) + $groups;
|
)) + $groups;
|
||||||
|
|
||||||
foreach ($groups as $result => $group) {
|
foreach ($groups as $result => $group) {
|
||||||
$count = new PhutilNumber(count($group));
|
$count = phutil_count($group);
|
||||||
switch ($result) {
|
switch ($result) {
|
||||||
case ArcanistUnitTestResult::RESULT_PASS:
|
case ArcanistUnitTestResult::RESULT_PASS:
|
||||||
$note[] = pht('%s Passed Test(s)', $count);
|
$note[] = pht('%s Passed Test(s)', $count);
|
||||||
|
|
|
@ -135,12 +135,12 @@ abstract class DifferentialReviewersHeraldAction
|
||||||
case self::DO_ADD_REVIEWERS:
|
case self::DO_ADD_REVIEWERS:
|
||||||
return pht(
|
return pht(
|
||||||
'Added %s reviewer(s): %s.',
|
'Added %s reviewer(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_ADD_BLOCKING_REVIEWERS:
|
case self::DO_ADD_BLOCKING_REVIEWERS:
|
||||||
return pht(
|
return pht(
|
||||||
'Added %s blocking reviewer(s): %s.',
|
'Added %s blocking reviewer(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -81,14 +81,14 @@ final class DifferentialCreateMailReceiver extends PhabricatorMailReceiver {
|
||||||
} else {
|
} else {
|
||||||
$subject = pht(
|
$subject = pht(
|
||||||
'Diff creation failed; see body for %s error(s).',
|
'Diff creation failed; see body for %s error(s).',
|
||||||
new PhutilNumber(count($errors)));
|
phutil_count($errors));
|
||||||
}
|
}
|
||||||
$body = new PhabricatorMetaMTAMailBody();
|
$body = new PhabricatorMetaMTAMailBody();
|
||||||
$body->addRawSection($subject);
|
$body->addRawSection($subject);
|
||||||
if (count($diffs)) {
|
if (count($diffs)) {
|
||||||
$text_body = '';
|
$text_body = '';
|
||||||
$html_body = array();
|
$html_body = array();
|
||||||
$body_label = pht('%s DIFF LINK(S)', new PhutilNumber(count($diffs)));
|
$body_label = pht('%s DIFF LINK(S)', phutil_count($diffs));
|
||||||
foreach ($diffs as $filename => $diff_uri) {
|
foreach ($diffs as $filename => $diff_uri) {
|
||||||
$text_body .= $filename.': '.$diff_uri."\n";
|
$text_body .= $filename.': '.$diff_uri."\n";
|
||||||
$html_body[] = phutil_tag(
|
$html_body[] = phutil_tag(
|
||||||
|
@ -105,7 +105,7 @@ final class DifferentialCreateMailReceiver extends PhabricatorMailReceiver {
|
||||||
|
|
||||||
if (count($errors)) {
|
if (count($errors)) {
|
||||||
$body_section = new PhabricatorMetaMTAMailSection();
|
$body_section = new PhabricatorMetaMTAMailSection();
|
||||||
$body_label = pht('%s ERROR(S)', new PhutilNumber(count($errors)));
|
$body_label = pht('%s ERROR(S)', phutil_count($errors));
|
||||||
foreach ($errors as $error) {
|
foreach ($errors as $error) {
|
||||||
$body_section->addFragment($error);
|
$body_section->addFragment($error);
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,7 +68,7 @@ abstract class DiffusionAuditorsHeraldAction
|
||||||
case self::DO_ADD_AUDITORS:
|
case self::DO_ADD_AUDITORS:
|
||||||
return pht(
|
return pht(
|
||||||
'Added %s auditor(s): %s.',
|
'Added %s auditor(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -152,8 +152,8 @@ final class DivinerPHPAtomizer extends DivinerAtomizer {
|
||||||
$atom->addWarning(
|
$atom->addWarning(
|
||||||
pht(
|
pht(
|
||||||
'This call takes %s parameter(s), but only %s are documented.',
|
'This call takes %s parameter(s), but only %s are documented.',
|
||||||
new PhutilNumber(count($params)),
|
phutil_count($params),
|
||||||
new PhutilNumber(count($docs))));
|
phutil_count($docs)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -140,14 +140,14 @@ abstract class DivinerPublisher extends Phobject {
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht(
|
pht(
|
||||||
'Deleting %s document(s).',
|
'Deleting %s document(s).',
|
||||||
new PhutilNumber(count($deleted))));
|
phutil_count($deleted)));
|
||||||
$this->deleteDocumentsByHash($deleted);
|
$this->deleteDocumentsByHash($deleted);
|
||||||
|
|
||||||
$console->writeOut(
|
$console->writeOut(
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht(
|
pht(
|
||||||
'Creating %s document(s).',
|
'Creating %s document(s).',
|
||||||
new PhutilNumber(count($created))));
|
phutil_count($created)));
|
||||||
$this->createDocumentsByHash($created);
|
$this->createDocumentsByHash($created);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ final class DivinerGenerateWorkflow extends DivinerWorkflow {
|
||||||
'.book',
|
'.book',
|
||||||
'--book <book>'));
|
'--book <book>'));
|
||||||
} else {
|
} else {
|
||||||
$this->log(pht('Found %s book(s).', new PhutilNumber(count($books))));
|
$this->log(pht('Found %s book(s).', phutil_count($books)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -224,26 +224,26 @@ final class DivinerGenerateWorkflow extends DivinerWorkflow {
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s file(s) in project.',
|
'Found %s file(s) in project.',
|
||||||
new PhutilNumber(count($file_hashes))));
|
phutil_count($file_hashes)));
|
||||||
|
|
||||||
$this->deleteDeadAtoms($file_hashes);
|
$this->deleteDeadAtoms($file_hashes);
|
||||||
$atomize = $this->getFilesToAtomize($file_hashes);
|
$atomize = $this->getFilesToAtomize($file_hashes);
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s unatomized, uncached file(s).',
|
'Found %s unatomized, uncached file(s).',
|
||||||
new PhutilNumber(count($atomize))));
|
phutil_count($atomize)));
|
||||||
|
|
||||||
$file_atomizers = $this->getAtomizersForFiles($atomize);
|
$file_atomizers = $this->getAtomizersForFiles($atomize);
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s file(s) to atomize.',
|
'Found %s file(s) to atomize.',
|
||||||
new PhutilNumber(count($file_atomizers))));
|
phutil_count($file_atomizers)));
|
||||||
|
|
||||||
$futures = $this->buildAtomizerFutures($file_atomizers);
|
$futures = $this->buildAtomizerFutures($file_atomizers);
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Atomizing %s file(s).',
|
'Atomizing %s file(s).',
|
||||||
new PhutilNumber(count($file_atomizers))));
|
phutil_count($file_atomizers)));
|
||||||
|
|
||||||
if ($futures) {
|
if ($futures) {
|
||||||
$this->resolveAtomizerFutures($futures, $file_hashes);
|
$this->resolveAtomizerFutures($futures, $file_hashes);
|
||||||
|
@ -452,7 +452,7 @@ final class DivinerGenerateWorkflow extends DivinerWorkflow {
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s obsolete atom(s) in graph.',
|
'Found %s obsolete atom(s) in graph.',
|
||||||
new PhutilNumber(count($del_atoms))));
|
phutil_count($del_atoms)));
|
||||||
|
|
||||||
foreach ($del_atoms as $nhash => $shash) {
|
foreach ($del_atoms as $nhash => $shash) {
|
||||||
$atom_cache->deleteSymbol($nhash);
|
$atom_cache->deleteSymbol($nhash);
|
||||||
|
@ -466,7 +466,7 @@ final class DivinerGenerateWorkflow extends DivinerWorkflow {
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s new atom(s) in graph.',
|
'Found %s new atom(s) in graph.',
|
||||||
new PhutilNumber(count($new_atoms))));
|
phutil_count($new_atoms)));
|
||||||
|
|
||||||
foreach ($new_atoms as $nhash => $ignored) {
|
foreach ($new_atoms as $nhash => $ignored) {
|
||||||
$shash = $this->computeSymbolHash($nhash);
|
$shash = $this->computeSymbolHash($nhash);
|
||||||
|
@ -505,7 +505,7 @@ final class DivinerGenerateWorkflow extends DivinerWorkflow {
|
||||||
$this->log(
|
$this->log(
|
||||||
pht(
|
pht(
|
||||||
'Found %s affected atoms.',
|
'Found %s affected atoms.',
|
||||||
new PhutilNumber(count($dirty_nhashes))));
|
phutil_count($dirty_nhashes)));
|
||||||
|
|
||||||
foreach ($dirty_nhashes as $nhash => $ignored) {
|
foreach ($dirty_nhashes as $nhash => $ignored) {
|
||||||
$atom_cache->addGraph($nhash, $this->computeGraphHash($nhash));
|
$atom_cache->addGraph($nhash, $this->computeGraphHash($nhash));
|
||||||
|
|
|
@ -96,7 +96,10 @@ final class PhabricatorAsanaConfigOptions
|
||||||
}
|
}
|
||||||
|
|
||||||
$out = array();
|
$out = array();
|
||||||
$out[] = pht('| Workspace ID | Workspace Name |');
|
$out[] = sprintf(
|
||||||
|
'| %s | %s |',
|
||||||
|
pht('Workspace ID'),
|
||||||
|
pht('Workspace Name'));
|
||||||
$out[] = '| ------------ | -------------- |';
|
$out[] = '| ------------ | -------------- |';
|
||||||
foreach ($workspaces as $workspace) {
|
foreach ($workspaces as $workspace) {
|
||||||
$out[] = sprintf('| `%s` | `%s` |', $workspace['id'], $workspace['name']);
|
$out[] = sprintf('| `%s` | `%s` |', $workspace['id'], $workspace['name']);
|
||||||
|
|
|
@ -557,7 +557,7 @@ final class PhabricatorFile extends PhabricatorFileDAO
|
||||||
'Failed to fetch remote URI "%s" after following %s redirect(s) '.
|
'Failed to fetch remote URI "%s" after following %s redirect(s) '.
|
||||||
'(%s): %s',
|
'(%s): %s',
|
||||||
$uri,
|
$uri,
|
||||||
new PhutilNumber(count($redirects)),
|
phutil_count($redirects),
|
||||||
implode(' > ', array_keys($redirects)),
|
implode(' > ', array_keys($redirects)),
|
||||||
$ex->getMessage()),
|
$ex->getMessage()),
|
||||||
$ex);
|
$ex);
|
||||||
|
|
|
@ -37,7 +37,7 @@ final class HarbormasterSendMessageConduitAPIMethod
|
||||||
$unit_spec = HarbormasterBuildUnitMessage::getParameterSpec();
|
$unit_spec = HarbormasterBuildUnitMessage::getParameterSpec();
|
||||||
foreach ($unit_spec as $key => $parameter) {
|
foreach ($unit_spec as $key => $parameter) {
|
||||||
$type = idx($parameter, 'type');
|
$type = idx($parameter, 'type');
|
||||||
$type = str_replace('|', pht(' or '), $type);
|
$type = str_replace('|', ' '.pht('or').' ', $type);
|
||||||
$description = idx($parameter, 'description');
|
$description = idx($parameter, 'description');
|
||||||
$rows[] = "| `{$key}` | //{$type}// | {$description} |";
|
$rows[] = "| `{$key}` | //{$type}// | {$description} |";
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ final class HarbormasterSendMessageConduitAPIMethod
|
||||||
$lint_spec = HarbormasterBuildLintMessage::getParameterSpec();
|
$lint_spec = HarbormasterBuildLintMessage::getParameterSpec();
|
||||||
foreach ($lint_spec as $key => $parameter) {
|
foreach ($lint_spec as $key => $parameter) {
|
||||||
$type = idx($parameter, 'type');
|
$type = idx($parameter, 'type');
|
||||||
$type = str_replace('|', pht(' or '), $type);
|
$type = str_replace('|', ' '.pht('or').' ', $type);
|
||||||
$description = idx($parameter, 'description');
|
$description = idx($parameter, 'description');
|
||||||
$rows[] = "| `{$key}` | //{$type}// | {$description} |";
|
$rows[] = "| `{$key}` | //{$type}// | {$description} |";
|
||||||
}
|
}
|
||||||
|
|
|
@ -377,7 +377,7 @@ final class HarbormasterBuildViewController
|
||||||
array(
|
array(
|
||||||
pht(
|
pht(
|
||||||
'%s empty logs are hidden.',
|
'%s empty logs are hidden.',
|
||||||
new PhutilNumber(count($empty_logs))),
|
phutil_count($empty_logs)),
|
||||||
' ',
|
' ',
|
||||||
javelin_tag(
|
javelin_tag(
|
||||||
'a',
|
'a',
|
||||||
|
|
|
@ -231,7 +231,10 @@ final class HarbormasterStepEditController extends HarbormasterController {
|
||||||
'The following variables can be used in most fields. '.
|
'The following variables can be used in most fields. '.
|
||||||
'To reference a variable, use `%s` in a field.',
|
'To reference a variable, use `%s` in a field.',
|
||||||
'${name}');
|
'${name}');
|
||||||
$rows[] = pht('| Variable | Description |');
|
$rows[] = sprintf(
|
||||||
|
'| %s | %s |',
|
||||||
|
pht('Variable'),
|
||||||
|
pht('Description'));
|
||||||
$rows[] = '|---|---|';
|
$rows[] = '|---|---|';
|
||||||
foreach ($variables as $name => $description) {
|
foreach ($variables as $name => $description) {
|
||||||
$rows[] = '| `'.$name.'` | '.$description.' |';
|
$rows[] = '| `'.$name.'` | '.$description.' |';
|
||||||
|
|
|
@ -54,7 +54,7 @@ final class HarbormasterRunBuildPlansHeraldAction
|
||||||
case self::DO_BUILD:
|
case self::DO_BUILD:
|
||||||
return pht(
|
return pht(
|
||||||
'Started %s build(s): %s.',
|
'Started %s build(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -346,22 +346,22 @@ abstract class HeraldAction extends Phobject {
|
||||||
case self::DO_STANDARD_NO_EFFECT:
|
case self::DO_STANDARD_NO_EFFECT:
|
||||||
return pht(
|
return pht(
|
||||||
'This action has no effect on %s target(s): %s.',
|
'This action has no effect on %s target(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_STANDARD_INVALID:
|
case self::DO_STANDARD_INVALID:
|
||||||
return pht(
|
return pht(
|
||||||
'%s target(s) are invalid or of the wrong type: %s.',
|
'%s target(s) are invalid or of the wrong type: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_STANDARD_UNLOADABLE:
|
case self::DO_STANDARD_UNLOADABLE:
|
||||||
return pht(
|
return pht(
|
||||||
'%s target(s) could not be loaded: %s.',
|
'%s target(s) could not be loaded: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_STANDARD_PERMISSION:
|
case self::DO_STANDARD_PERMISSION:
|
||||||
return pht(
|
return pht(
|
||||||
'%s target(s) do not have permission to see this object: %s.',
|
'%s target(s) do not have permission to see this object: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_STANDARD_INVALID_ACTION:
|
case self::DO_STANDARD_INVALID_ACTION:
|
||||||
return pht(
|
return pht(
|
||||||
|
|
|
@ -95,12 +95,12 @@ final class LegalpadRequireSignatureHeraldAction
|
||||||
case self::DO_SIGNED:
|
case self::DO_SIGNED:
|
||||||
return pht(
|
return pht(
|
||||||
'%s document(s) are already signed: %s.',
|
'%s document(s) are already signed: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_REQUIRED:
|
case self::DO_REQUIRED:
|
||||||
return pht(
|
return pht(
|
||||||
'Required %s signature(s): %s.',
|
'Required %s signature(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -546,23 +546,23 @@ final class ManiphestTransaction
|
||||||
$removed = array_diff($old, $new);
|
$removed = array_diff($old, $new);
|
||||||
if ($added && !$removed) {
|
if ($added && !$removed) {
|
||||||
return pht(
|
return pht(
|
||||||
'%s attached %d file(s): %s.',
|
'%s attached %s file(s): %s.',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($added),
|
phutil_count($added),
|
||||||
$this->renderHandleList($added));
|
$this->renderHandleList($added));
|
||||||
} else if ($removed && !$added) {
|
} else if ($removed && !$added) {
|
||||||
return pht(
|
return pht(
|
||||||
'%s detached %d file(s): %s.',
|
'%s detached %s file(s): %s.',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($removed),
|
phutil_count($removed),
|
||||||
$this->renderHandleList($removed));
|
$this->renderHandleList($removed));
|
||||||
} else {
|
} else {
|
||||||
return pht(
|
return pht(
|
||||||
'%s changed file(s), attached %d: %s; detached %d: %s.',
|
'%s changed file(s), attached %s: %s; detached %s: %s.',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($added),
|
phutil_count($added),
|
||||||
$this->renderHandleList($added),
|
$this->renderHandleList($added),
|
||||||
count($removed),
|
phutil_count($removed),
|
||||||
$this->renderHandleList($removed));
|
$this->renderHandleList($removed));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -585,9 +585,9 @@ final class ManiphestTransaction
|
||||||
|
|
||||||
case self::TYPE_MERGED_FROM:
|
case self::TYPE_MERGED_FROM:
|
||||||
return pht(
|
return pht(
|
||||||
'%s merged %d task(s): %s.',
|
'%s merged %s task(s): %s.',
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
count($new),
|
phutil_count($new),
|
||||||
$this->renderHandleList($new));
|
$this->renderHandleList($new));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ final class ManiphestTaskResultListView extends ManiphestView {
|
||||||
$header = id(new PHUIHeaderView())
|
$header = id(new PHUIHeaderView())
|
||||||
->addSigil('task-group')
|
->addSigil('task-group')
|
||||||
->setMetadata(array('priority' => head($list)->getPriority()))
|
->setMetadata(array('priority' => head($list)->getPriority()))
|
||||||
->setHeader(pht('%s (%s)', $group, new PhutilNumber(count($list))));
|
->setHeader(pht('%s (%s)', $group, phutil_count($list)));
|
||||||
|
|
||||||
$lists[] = id(new PHUIObjectBoxView())
|
$lists[] = id(new PHUIObjectBoxView())
|
||||||
->setHeader($header)
|
->setHeader($header)
|
||||||
|
|
|
@ -75,13 +75,13 @@ abstract class PhabricatorMetaMTAEmailHeraldAction
|
||||||
case self::DO_SEND:
|
case self::DO_SEND:
|
||||||
return pht(
|
return pht(
|
||||||
'Queued email to be delivered to %s target(s): %s.',
|
'Queued email to be delivered to %s target(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_FORCE:
|
case self::DO_FORCE:
|
||||||
return pht(
|
return pht(
|
||||||
'Queued email to be delivered to %s target(s), ignoring their '.
|
'Queued email to be delivered to %s target(s), ignoring their '.
|
||||||
'notification preferences: %s.',
|
'notification preferences: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,7 +90,7 @@ final class MultimeterSampleController extends MultimeterController {
|
||||||
$events_col = $this->renderGroupingLink(
|
$events_col = $this->renderGroupingLink(
|
||||||
$group,
|
$group,
|
||||||
'id',
|
'id',
|
||||||
pht('%s Events', new PhutilNumber($row['N'])));
|
pht('%s Event(s)', new PhutilNumber($row['N'])));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($group['request'])) {
|
if (isset($group['request'])) {
|
||||||
|
|
|
@ -49,9 +49,9 @@ final class PhabricatorPeopleDeleteController
|
||||||
$form = id(new AphrontFormView())
|
$form = id(new AphrontFormView())
|
||||||
->setUser($admin)
|
->setUser($admin)
|
||||||
->appendRemarkupInstructions(
|
->appendRemarkupInstructions(
|
||||||
pht(
|
csprintf(
|
||||||
" phabricator/ $ ./bin/remove destroy %s\n",
|
" phabricator/ $ ./bin/remove destroy %R\n",
|
||||||
csprintf('%R', '@'.$user->getUsername())));
|
'@'.$user->getUsername()));
|
||||||
|
|
||||||
return $this->newDialog()
|
return $this->newDialog()
|
||||||
->setWidth(AphrontDialogView::WIDTH_FORM)
|
->setWidth(AphrontDialogView::WIDTH_FORM)
|
||||||
|
|
|
@ -156,7 +156,7 @@ final class PholioMockThumbGridView extends AphrontView {
|
||||||
array(
|
array(
|
||||||
'class' => 'pholio-mock-thumb-grid-comment-count',
|
'class' => 'pholio-mock-thumb-grid-comment-count',
|
||||||
),
|
),
|
||||||
pht('%s', new PhutilNumber(count($image->getInlineComments()))));
|
pht('%s', phutil_count($image->getInlineComments())));
|
||||||
}
|
}
|
||||||
|
|
||||||
return javelin_tag(
|
return javelin_tag(
|
||||||
|
|
|
@ -199,7 +199,9 @@ abstract class PhragmentController extends PhabricatorController {
|
||||||
$alt = PhabricatorEnv::getEnvConfig('security.alternate-file-domain');
|
$alt = PhabricatorEnv::getEnvConfig('security.alternate-file-domain');
|
||||||
if ($alt === null) {
|
if ($alt === null) {
|
||||||
return id(new PHUIInfoView())
|
return id(new PHUIInfoView())
|
||||||
->setTitle(pht('security.alternate-file-domain must be configured!'))
|
->setTitle(pht(
|
||||||
|
'%s must be configured!',
|
||||||
|
'security.alternate-file-domain'))
|
||||||
->setSeverity(PHUIInfoView::SEVERITY_ERROR)
|
->setSeverity(PHUIInfoView::SEVERITY_ERROR)
|
||||||
->appendChild(
|
->appendChild(
|
||||||
phutil_tag(
|
phutil_tag(
|
||||||
|
|
|
@ -292,7 +292,9 @@ final class PonderQuestionViewController extends PonderController {
|
||||||
$item->setObject($question);
|
$item->setObject($question);
|
||||||
|
|
||||||
$item->addAttribute(
|
$item->addAttribute(
|
||||||
pht('%d Answer(s)', $question->getAnswerCount()));
|
pht(
|
||||||
|
'%s Answer(s)',
|
||||||
|
new PhutilNumber($question->getAnswerCount())));
|
||||||
|
|
||||||
$list->addItem($item);
|
$list->addItem($item);
|
||||||
}
|
}
|
||||||
|
|
|
@ -158,7 +158,9 @@ final class PonderQuestionSearchEngine
|
||||||
$handles[$question->getAuthorPHID()]->renderLink()));
|
$handles[$question->getAuthorPHID()]->renderLink()));
|
||||||
|
|
||||||
$item->addAttribute(
|
$item->addAttribute(
|
||||||
pht('%d Answer(s)', $question->getAnswerCount()));
|
pht(
|
||||||
|
'%s Answer(s)',
|
||||||
|
new PhutilNumber($question->getAnswerCount())));
|
||||||
|
|
||||||
if ($project_handles) {
|
if ($project_handles) {
|
||||||
$item->addAttribute(
|
$item->addAttribute(
|
||||||
|
|
|
@ -112,12 +112,12 @@ abstract class PhabricatorProjectHeraldAction
|
||||||
case self::DO_ADD_PROJECTS:
|
case self::DO_ADD_PROJECTS:
|
||||||
return pht(
|
return pht(
|
||||||
'Added %s project(s): %s.',
|
'Added %s project(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_REMOVE_PROJECTS:
|
case self::DO_REMOVE_PROJECTS:
|
||||||
return pht(
|
return pht(
|
||||||
'Removed %s project(s): %s.',
|
'Removed %s project(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ final class ReleephProductEditController extends ReleephProductController {
|
||||||
if (!$product_name) {
|
if (!$product_name) {
|
||||||
$e_name = pht('Required');
|
$e_name = pht('Required');
|
||||||
$errors[] =
|
$errors[] =
|
||||||
pht('Your releeph product should have a simple descriptive name.');
|
pht('Your Releeph product should have a simple descriptive name.');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$trunk_branch) {
|
if (!$trunk_branch) {
|
||||||
|
|
|
@ -31,6 +31,7 @@ final class ReleephDiffChurnFieldSpecification
|
||||||
$rejections = 0;
|
$rejections = 0;
|
||||||
$comments = 0;
|
$comments = 0;
|
||||||
$updates = 0;
|
$updates = 0;
|
||||||
|
|
||||||
foreach ($xactions as $xaction) {
|
foreach ($xactions as $xaction) {
|
||||||
switch ($xaction->getTransactionType()) {
|
switch ($xaction->getTransactionType()) {
|
||||||
case PhabricatorTransactions::TYPE_COMMENT:
|
case PhabricatorTransactions::TYPE_COMMENT:
|
||||||
|
@ -60,13 +61,13 @@ final class ReleephDiffChurnFieldSpecification
|
||||||
} else {
|
} else {
|
||||||
$parts = array();
|
$parts = array();
|
||||||
if ($rejections) {
|
if ($rejections) {
|
||||||
$parts[] = pht('%d rejection(s)', $rejections);
|
$parts[] = pht('%s rejection(s)', new PhutilNumber($rejections));
|
||||||
}
|
}
|
||||||
if ($comments) {
|
if ($comments) {
|
||||||
$parts[] = pht('%d comment(s)', $comments);
|
$parts[] = pht('%s comment(s)', new PhutilNumber($comments));
|
||||||
}
|
}
|
||||||
if ($updates) {
|
if ($updates) {
|
||||||
$parts[] = pht('%d update(s)', $updates);
|
$parts[] = pht('%s update(s)', new PhutilNumber($updates));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count($parts) === 0) {
|
if (count($parts) === 0) {
|
||||||
|
|
|
@ -55,7 +55,7 @@ final class ReleephDiffSizeFieldSpecification
|
||||||
$mr_changes['tests']['lines'],
|
$mr_changes['tests']['lines'],
|
||||||
count($mr_changes['tests']['paths']));
|
count($mr_changes['tests']['paths']));
|
||||||
foreach ($mr_changes['tests']['paths'] as $mr_test_path) {
|
foreach ($mr_changes['tests']['paths'] as $mr_test_path) {
|
||||||
$test_blurb .= pht("%s\n", $mr_test_path);
|
$test_blurb .= sprintf("%s\n", $mr_test_path);
|
||||||
}
|
}
|
||||||
|
|
||||||
$test_tag = javelin_tag(
|
$test_tag = javelin_tag(
|
||||||
|
|
|
@ -182,7 +182,9 @@ final class ReleephBranchSearchEngine
|
||||||
$item->setStatusIcon('fa-code-fork orange');
|
$item->setStatusIcon('fa-code-fork orange');
|
||||||
$item->addIcon(
|
$item->addIcon(
|
||||||
'fa-code-fork',
|
'fa-code-fork',
|
||||||
pht('%d Open Pull Request(s)', new PhutilNumber($open_count)));
|
pht(
|
||||||
|
'%s Open Pull Request(s)',
|
||||||
|
new PhutilNumber($open_count)));
|
||||||
}
|
}
|
||||||
|
|
||||||
$list->addItem($item);
|
$list->addItem($item);
|
||||||
|
|
|
@ -172,7 +172,7 @@ final class PhabricatorRepositoryPullLocalDaemon
|
||||||
pht(
|
pht(
|
||||||
'Not enough process slots to schedule the other %s '.
|
'Not enough process slots to schedule the other %s '.
|
||||||
'repository(s) for updates yet.',
|
'repository(s) for updates yet.',
|
||||||
new PhutilNumber(count($queue))));
|
phutil_count($queue)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($futures) {
|
if ($futures) {
|
||||||
|
|
|
@ -91,7 +91,7 @@ final class PhabricatorRepositoryManagementParentsWorkflow
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht(
|
pht(
|
||||||
'Found %s total commit(s); updating...',
|
'Found %s total commit(s); updating...',
|
||||||
new PhutilNumber(count($graph))));
|
phutil_count($graph)));
|
||||||
|
|
||||||
$commit_table = id(new PhabricatorRepositoryCommit());
|
$commit_table = id(new PhabricatorRepositoryCommit());
|
||||||
$commit_table_name = $commit_table->getTableName();
|
$commit_table_name = $commit_table->getTableName();
|
||||||
|
|
|
@ -260,11 +260,12 @@ final class PhabricatorRepositoryManagementReparseWorkflow
|
||||||
|
|
||||||
if ($all_from_repo && !$force_local) {
|
if ($all_from_repo && !$force_local) {
|
||||||
$console->writeOut("%s\n", pht(
|
$console->writeOut("%s\n", pht(
|
||||||
'**NOTE**: This script will queue tasks to reparse the data. Once the '.
|
"**NOTE**: This script will queue tasks to reparse the data. Once the ".
|
||||||
'tasks have been queued, you need to run Taskmaster daemons to '.
|
"tasks have been queued, you need to run Taskmaster daemons to ".
|
||||||
'execute them.'."\n\n".
|
"execute them.\n\n%s",
|
||||||
"QUEUEING TASKS (%s Commits):",
|
pht(
|
||||||
new PhutilNumber(count($commits))));
|
'QUEUEING TASKS (%s Commit(s)):',
|
||||||
|
phutil_count($commits))));
|
||||||
}
|
}
|
||||||
|
|
||||||
$progress = new PhutilConsoleProgressBar();
|
$progress = new PhutilConsoleProgressBar();
|
||||||
|
|
|
@ -163,22 +163,22 @@ abstract class PhabricatorSubscriptionsHeraldAction
|
||||||
return pht(
|
return pht(
|
||||||
'Declined to resubscribe %s target(s) because they previously '.
|
'Declined to resubscribe %s target(s) because they previously '.
|
||||||
'unsubscribed: %s.',
|
'unsubscribed: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_AUTOSUBSCRIBED:
|
case self::DO_AUTOSUBSCRIBED:
|
||||||
return pht(
|
return pht(
|
||||||
'%s automatically subscribed target(s) were not affected: %s.',
|
'%s automatically subscribed target(s) were not affected: %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_SUBSCRIBED:
|
case self::DO_SUBSCRIBED:
|
||||||
return pht(
|
return pht(
|
||||||
'Added %s subscriber(s): %s.',
|
'Added %s subscriber(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
case self::DO_UNSUBSCRIBED:
|
case self::DO_UNSUBSCRIBED:
|
||||||
return pht(
|
return pht(
|
||||||
'Removed %s subscriber(s): %s.',
|
'Removed %s subscriber(s): %s.',
|
||||||
new PhutilNumber(count($data)),
|
phutil_count($data),
|
||||||
$this->renderHandleList($data));
|
$this->renderHandleList($data));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,7 +119,7 @@ EOBANNER;
|
||||||
$console->writeOut(
|
$console->writeOut(
|
||||||
pht(
|
pht(
|
||||||
'These %s object(s) will be destroyed forever:',
|
'These %s object(s) will be destroyed forever:',
|
||||||
new PhutilNumber(count($named_objects)))."\n\n");
|
phutil_count($named_objects))."\n\n");
|
||||||
|
|
||||||
foreach ($named_objects as $object_name => $object) {
|
foreach ($named_objects as $object_name => $object) {
|
||||||
$phid = $object->getPHID();
|
$phid = $object->getPHID();
|
||||||
|
@ -136,7 +136,7 @@ EOBANNER;
|
||||||
$ok = $console->confirm(
|
$ok = $console->confirm(
|
||||||
pht(
|
pht(
|
||||||
'Are you absolutely certain you want to destroy these %s object(s)?',
|
'Are you absolutely certain you want to destroy these %s object(s)?',
|
||||||
new PhutilNumber(count($named_objects))));
|
phutil_count($named_objects)));
|
||||||
if (!$ok) {
|
if (!$ok) {
|
||||||
throw new PhutilArgumentUsageException(
|
throw new PhutilArgumentUsageException(
|
||||||
pht('Aborted, your objects are safe.'));
|
pht('Aborted, your objects are safe.'));
|
||||||
|
@ -160,7 +160,7 @@ EOBANNER;
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht(
|
pht(
|
||||||
'Permanently destroyed %s object(s).',
|
'Permanently destroyed %s object(s).',
|
||||||
new PhutilNumber(count($named_objects))));
|
phutil_count($named_objects)));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,16 +32,16 @@ final class PhabricatorApplicationTransactionNoEffectResponse
|
||||||
$only_empty_comment = (count($xactions) == 1) &&
|
$only_empty_comment = (count($xactions) == 1) &&
|
||||||
(head($xactions)->getTransactionType() == $type_comment);
|
(head($xactions)->getTransactionType() == $type_comment);
|
||||||
|
|
||||||
$count = new PhutilNumber(count($xactions));
|
$count = phutil_count($xactions);
|
||||||
|
|
||||||
if ($ex->hasAnyEffect()) {
|
if ($ex->hasAnyEffect()) {
|
||||||
$title = pht('%d Action(s) With No Effect', $count);
|
$title = pht('%s Action(s) With No Effect', $count);
|
||||||
$head = pht('Some of your %d action(s) have no effect:', $count);
|
$head = pht('Some of your %s action(s) have no effect:', $count);
|
||||||
$tail = pht('Apply remaining actions?');
|
$tail = pht('Apply remaining actions?');
|
||||||
$continue = pht('Apply Remaining Actions');
|
$continue = pht('Apply Remaining Actions');
|
||||||
} else if ($ex->hasComment()) {
|
} else if ($ex->hasComment()) {
|
||||||
$title = pht('Post as Comment');
|
$title = pht('Post as Comment');
|
||||||
$head = pht('The %d action(s) you are taking have no effect:', $count);
|
$head = pht('The %s action(s) you are taking have no effect:', $count);
|
||||||
$tail = pht('Do you want to post your comment anyway?');
|
$tail = pht('Do you want to post your comment anyway?');
|
||||||
$continue = pht('Post Comment');
|
$continue = pht('Post Comment');
|
||||||
} else if ($only_empty_comment) {
|
} else if ($only_empty_comment) {
|
||||||
|
@ -52,8 +52,8 @@ final class PhabricatorApplicationTransactionNoEffectResponse
|
||||||
$tail = null;
|
$tail = null;
|
||||||
$continue = null;
|
$continue = null;
|
||||||
} else {
|
} else {
|
||||||
$title = pht('%d Action(s) Have No Effect', $count);
|
$title = pht('%s Action(s) Have No Effect', $count);
|
||||||
$head = pht('The %d action(s) you are taking have no effect:', $count);
|
$head = pht('The %s action(s) you are taking have no effect:', $count);
|
||||||
$tail = null;
|
$tail = null;
|
||||||
$continue = null;
|
$continue = null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -710,19 +710,19 @@ abstract class PhabricatorApplicationTransaction
|
||||||
return $type_obj->getTransactionEditString(
|
return $type_obj->getTransactionEditString(
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($add) + count($rem)),
|
new PhutilNumber(count($add) + count($rem)),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$this->renderHandleList($add),
|
$this->renderHandleList($add),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$this->renderHandleList($rem));
|
$this->renderHandleList($rem));
|
||||||
} else if ($add) {
|
} else if ($add) {
|
||||||
return $type_obj->getTransactionAddString(
|
return $type_obj->getTransactionAddString(
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$this->renderHandleList($add));
|
$this->renderHandleList($add));
|
||||||
} else if ($rem) {
|
} else if ($rem) {
|
||||||
return $type_obj->getTransactionRemoveString(
|
return $type_obj->getTransactionRemoveString(
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$this->renderHandleList($rem));
|
$this->renderHandleList($rem));
|
||||||
} else {
|
} else {
|
||||||
return $type_obj->getTransactionPreviewString(
|
return $type_obj->getTransactionPreviewString(
|
||||||
|
@ -871,21 +871,21 @@ abstract class PhabricatorApplicationTransaction
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
$this->renderHandleLink($object_phid),
|
$this->renderHandleLink($object_phid),
|
||||||
new PhutilNumber(count($add) + count($rem)),
|
new PhutilNumber(count($add) + count($rem)),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$this->renderHandleList($add),
|
$this->renderHandleList($add),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$this->renderHandleList($rem));
|
$this->renderHandleList($rem));
|
||||||
} else if ($add) {
|
} else if ($add) {
|
||||||
return $type_obj->getFeedAddString(
|
return $type_obj->getFeedAddString(
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
$this->renderHandleLink($object_phid),
|
$this->renderHandleLink($object_phid),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$this->renderHandleList($add));
|
$this->renderHandleList($add));
|
||||||
} else if ($rem) {
|
} else if ($rem) {
|
||||||
return $type_obj->getFeedRemoveString(
|
return $type_obj->getFeedRemoveString(
|
||||||
$this->renderHandleLink($author_phid),
|
$this->renderHandleLink($author_phid),
|
||||||
$this->renderHandleLink($object_phid),
|
$this->renderHandleLink($object_phid),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$this->renderHandleList($rem));
|
$this->renderHandleList($rem));
|
||||||
} else {
|
} else {
|
||||||
return pht(
|
return pht(
|
||||||
|
|
|
@ -117,23 +117,23 @@ abstract class PhabricatorStandardCustomFieldPHIDs
|
||||||
'%s updated %s, added %d: %s.',
|
'%s updated %s, added %d: %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
$this->getFieldName(),
|
$this->getFieldName(),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$xaction->renderHandleList($add));
|
$xaction->renderHandleList($add));
|
||||||
} else if ($rem && !$add) {
|
} else if ($rem && !$add) {
|
||||||
return pht(
|
return pht(
|
||||||
'%s updated %s, removed %d: %s.',
|
'%s updated %s, removed %s: %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
$this->getFieldName(),
|
$this->getFieldName(),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$xaction->renderHandleList($rem));
|
$xaction->renderHandleList($rem));
|
||||||
} else {
|
} else {
|
||||||
return pht(
|
return pht(
|
||||||
'%s updated %s, added %d: %s; removed %d: %s.',
|
'%s updated %s, added %s: %s; removed %s: %s.',
|
||||||
$xaction->renderHandleLink($author_phid),
|
$xaction->renderHandleLink($author_phid),
|
||||||
$this->getFieldName(),
|
$this->getFieldName(),
|
||||||
new PhutilNumber(count($add)),
|
phutil_count($add),
|
||||||
$xaction->renderHandleList($add),
|
$xaction->renderHandleList($add),
|
||||||
new PhutilNumber(count($rem)),
|
phutil_count($rem),
|
||||||
$xaction->renderHandleList($rem));
|
$xaction->renderHandleList($rem));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ final class PhabricatorInternationalizationManagementExtractWorkflow
|
||||||
|
|
||||||
$console->writeOut(
|
$console->writeOut(
|
||||||
"%s\n",
|
"%s\n",
|
||||||
pht('Found %s file(s)...', new PhutilNumber(count($futures))));
|
pht('Found %s file(s)...', phutil_count($futures)));
|
||||||
|
|
||||||
$results = array();
|
$results = array();
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'%d path(s)' => array('%d path', '%d paths'),
|
'%d path(s)' => array('%d path', '%d paths'),
|
||||||
'%d diff(s)' => array('%d diff', '%d diffs'),
|
'%d diff(s)' => array('%d diff', '%d diffs'),
|
||||||
|
|
||||||
'%d Answer(s)' => array('%d Answer', '%d Answers'),
|
'%s Answer(s)' => array('%s Answer', '%s Answers'),
|
||||||
'Show %d Comment(s)' => array('Show %d Comment', 'Show %d Comments'),
|
'Show %d Comment(s)' => array('Show %d Comment', 'Show %d Comments'),
|
||||||
|
|
||||||
'%s DIFF LINK(S)' => array('DIFF LINK', 'DIFF LINKS'),
|
'%s DIFF LINK(S)' => array('DIFF LINK', 'DIFF LINKS'),
|
||||||
|
@ -114,17 +114,17 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'This is a binary file. It is %s bytes in length.',
|
'This is a binary file. It is %s bytes in length.',
|
||||||
),
|
),
|
||||||
|
|
||||||
'%d Action(s) Have No Effect' => array(
|
'%s Action(s) Have No Effect' => array(
|
||||||
'Action Has No Effect',
|
'Action Has No Effect',
|
||||||
'Actions Have No Effect',
|
'Actions Have No Effect',
|
||||||
),
|
),
|
||||||
|
|
||||||
'%d Action(s) With No Effect' => array(
|
'%s Action(s) With No Effect' => array(
|
||||||
'Action With No Effect',
|
'Action With No Effect',
|
||||||
'Actions With No Effect',
|
'Actions With No Effect',
|
||||||
),
|
),
|
||||||
|
|
||||||
'Some of your %d action(s) have no effect:' => array(
|
'Some of your %s action(s) have no effect:' => array(
|
||||||
'One of your actions has no effect:',
|
'One of your actions has no effect:',
|
||||||
'Some of your actions have no effect:',
|
'Some of your actions have no effect:',
|
||||||
),
|
),
|
||||||
|
@ -139,7 +139,7 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'Apply Remaining Actions',
|
'Apply Remaining Actions',
|
||||||
),
|
),
|
||||||
|
|
||||||
'The %d action(s) you are taking have no effect:' => array(
|
'The %s action(s) you are taking have no effect:' => array(
|
||||||
'The action you are taking has no effect:',
|
'The action you are taking has no effect:',
|
||||||
'The actions you are taking have no effect:',
|
'The actions you are taking have no effect:',
|
||||||
),
|
),
|
||||||
|
@ -550,9 +550,9 @@ final class PhabricatorUSEnglishTranslation
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
||||||
'%d comment(s)' => array('%d comment', '%d comments'),
|
'%s comment(s)' => array('%s comment', '%s comments'),
|
||||||
'%d rejection(s)' => array('%d rejection', '%d rejections'),
|
'%s rejection(s)' => array('%s rejection', '%s rejections'),
|
||||||
'%d update(s)' => array('%d update', '%d updates'),
|
'%s update(s)' => array('%s update', '%s updates'),
|
||||||
|
|
||||||
'This configuration value is defined in these %d '.
|
'This configuration value is defined in these %d '.
|
||||||
'configuration source(s): %s.' => array(
|
'configuration source(s): %s.' => array(
|
||||||
|
@ -562,9 +562,9 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'configuration sources: %s.',
|
'configuration sources: %s.',
|
||||||
),
|
),
|
||||||
|
|
||||||
'%d Open Pull Request(s)' => array(
|
'%s Open Pull Request(s)' => array(
|
||||||
'%d Open Pull Request',
|
'%s Open Pull Request',
|
||||||
'%d Open Pull Requests',
|
'%s Open Pull Requests',
|
||||||
),
|
),
|
||||||
|
|
||||||
'Stale (%s day(s))' => array(
|
'Stale (%s day(s))' => array(
|
||||||
|
@ -1153,6 +1153,10 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'Found %s book.',
|
'Found %s book.',
|
||||||
'Found %s books.',
|
'Found %s books.',
|
||||||
),
|
),
|
||||||
|
'Found %s file(s)...' => array(
|
||||||
|
'Found %s file...',
|
||||||
|
'Found %s files...',
|
||||||
|
),
|
||||||
'Found %s file(s) in project.' => array(
|
'Found %s file(s) in project.' => array(
|
||||||
'Found %s file in project.',
|
'Found %s file in project.',
|
||||||
'Found %s files in project.',
|
'Found %s files in project.',
|
||||||
|
@ -1392,6 +1396,10 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'%s Day',
|
'%s Day',
|
||||||
'%s Days',
|
'%s Days',
|
||||||
),
|
),
|
||||||
|
'%s Day(s) Ago' => array(
|
||||||
|
'%s Day Ago',
|
||||||
|
'%s Days Ago',
|
||||||
|
),
|
||||||
|
|
||||||
'Setting retention policy for "%s" to %s day(s).' => array(
|
'Setting retention policy for "%s" to %s day(s).' => array(
|
||||||
'Setting retention policy for "%s" to one day.',
|
'Setting retention policy for "%s" to one day.',
|
||||||
|
@ -1425,6 +1433,59 @@ final class PhabricatorUSEnglishTranslation
|
||||||
'WARNING: There are unapproved authorizations!',
|
'WARNING: There are unapproved authorizations!',
|
||||||
),
|
),
|
||||||
|
|
||||||
|
'Found %s Open Resource(s)' => array(
|
||||||
|
'Found %s Open Resource',
|
||||||
|
'Found %s Open Resources',
|
||||||
|
),
|
||||||
|
|
||||||
|
'%s Open Resource(s) Remain' => array(
|
||||||
|
'%s Open Resource Remain',
|
||||||
|
'%s Open Resources Remain',
|
||||||
|
),
|
||||||
|
|
||||||
|
'Found %s Blueprint(s)' => array(
|
||||||
|
'Found %s Blueprint',
|
||||||
|
'Found %s Blueprints',
|
||||||
|
),
|
||||||
|
|
||||||
|
'%s Blueprint(s) Can Allocate' => array(
|
||||||
|
'%s Blueprint Can Allocate',
|
||||||
|
'%s Blueprints Can Allocate',
|
||||||
|
),
|
||||||
|
|
||||||
|
'%s Blueprint(s) Enabled' => array(
|
||||||
|
'%s Blueprint Enabled',
|
||||||
|
'%s Blueprints Enabled',
|
||||||
|
),
|
||||||
|
|
||||||
|
'%s Event(s)' => array(
|
||||||
|
'%s Event',
|
||||||
|
'%s Events',
|
||||||
|
),
|
||||||
|
|
||||||
|
'%s Unit(s)' => array(
|
||||||
|
'%s Unit',
|
||||||
|
'%s Units',
|
||||||
|
),
|
||||||
|
|
||||||
|
'QUEUEING TASKS (%s Commit(s)):' => array(
|
||||||
|
'QUEUEING TASKS (%s Commit):',
|
||||||
|
'QUEUEING TASKS (%s Commits):',
|
||||||
|
),
|
||||||
|
|
||||||
|
'Found %s total commit(s); updating...' => array(
|
||||||
|
'Found %s total commit; updating...',
|
||||||
|
'Found %s total commits; updating...',
|
||||||
|
),
|
||||||
|
|
||||||
|
'Not enough process slots to schedule the other %s '.
|
||||||
|
'repository(s) for updates yet.' => array(
|
||||||
|
'Not enough process slots to schedule the other '.'
|
||||||
|
repository for update yet.',
|
||||||
|
'Not enough process slots to schedule the other %s '.
|
||||||
|
'repositories for updates yet.',
|
||||||
|
),
|
||||||
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -126,7 +126,7 @@ abstract class PhabricatorStorageManagementWorkflow
|
||||||
"documentation.\n\n".
|
"documentation.\n\n".
|
||||||
"MySQL needs to copy table data to make some adjustments, so these ".
|
"MySQL needs to copy table data to make some adjustments, so these ".
|
||||||
"migrations may take some time.",
|
"migrations may take some time.",
|
||||||
new PhutilNumber(count($adjustments))));
|
phutil_count($adjustments)));
|
||||||
|
|
||||||
$prompt = pht('Fix these schema issues?');
|
$prompt = pht('Fix these schema issues?');
|
||||||
if (!phutil_console_confirm($prompt, $default_no = true)) {
|
if (!phutil_console_confirm($prompt, $default_no = true)) {
|
||||||
|
|
|
@ -128,7 +128,7 @@ final class PHUIHeaderView extends AphrontTagView {
|
||||||
} else if ($age == 1) {
|
} else if ($age == 1) {
|
||||||
$when = pht('Yesterday');
|
$when = pht('Yesterday');
|
||||||
} else {
|
} else {
|
||||||
$when = pht('%d Days Ago', $age);
|
$when = pht('%s Day(s) Ago', new PhutilNumber($age));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->setStatus('fa-clock-o bluegrey', null, pht('Updated %s', $when));
|
$this->setStatus('fa-clock-o bluegrey', null, pht('Updated %s', $when));
|
||||||
|
|
Loading…
Reference in a new issue