Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F75651
D7414.diff
All Users
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
5 KB
Referenced Files
None
Subscribers
None
D7414.diff
View Options
diff --git a/src/applications/repository/application/PhabricatorApplicationRepositories.php b/src/applications/repository/application/PhabricatorApplicationRepositories.php
--- a/src/applications/repository/application/PhabricatorApplicationRepositories.php
+++ b/src/applications/repository/application/PhabricatorApplicationRepositories.php
@@ -29,8 +29,6 @@
return array(
'/repository/' => array(
'' => 'PhabricatorRepositoryListController',
- 'create/' => 'PhabricatorRepositoryCreateController',
- 'delete/(?P<id>[1-9]\d*)/' => 'PhabricatorRepositoryDeleteController',
'project/edit/(?P<id>[1-9]\d*)/' =>
'PhabricatorRepositoryArcanistProjectEditController',
'project/delete/(?P<id>[1-9]\d*)/' =>
diff --git a/src/applications/repository/controller/PhabricatorRepositoryCreateController.php b/src/applications/repository/controller/PhabricatorRepositoryCreateController.php
deleted file mode 100644
--- a/src/applications/repository/controller/PhabricatorRepositoryCreateController.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-
-final class PhabricatorRepositoryCreateController
- extends PhabricatorRepositoryController {
-
- public function processRequest() {
-
-
- $request = $this->getRequest();
- $user = $request->getUser();
-
- $e_name = true;
- $e_callsign = true;
-
- $repository = new PhabricatorRepository();
-
- $type_map = PhabricatorRepositoryType::getAllRepositoryTypes();
- $errors = array();
-
- if ($request->isFormPost()) {
-
- $repository->setName($request->getStr('name'));
- $repository->setCallsign($request->getStr('callsign'));
- $repository->setVersionControlSystem($request->getStr('type'));
-
- if (!strlen($repository->getName())) {
- $e_name = 'Required';
- $errors[] = 'Repository name is required.';
- } else {
- $e_name = null;
- }
-
- if (!strlen($repository->getCallsign())) {
- $e_callsign = 'Required';
- $errors[] = 'Callsign is required.';
- } else if (!preg_match('/^[A-Z]+$/', $repository->getCallsign())) {
- $e_callsign = 'Invalid';
- $errors[] = 'Callsign must be ALL UPPERCASE LETTERS.';
- } else {
- $e_callsign = null;
- }
-
- if (empty($type_map[$repository->getVersionControlSystem()])) {
- $errors[] = 'Invalid version control system.';
- }
-
- if (!$errors) {
- try {
- $repository->save();
-
- return id(new AphrontRedirectResponse())
- ->setURI('/repository/edit/'.$repository->getID().'/');
-
- } catch (AphrontQueryDuplicateKeyException $ex) {
- $e_callsign = 'Duplicate';
- $errors[] = 'Callsign must be unique. Another repository already '.
- 'uses that callsign.';
- }
- }
- }
-
- $error_view = null;
- if ($errors) {
- $error_view = new AphrontErrorView();
- $error_view->setErrors($errors);
- $error_view->setTitle('Form Errors');
- }
-
- $form = new AphrontFormView();
- $form
- ->setUser($user)
- ->setAction('/repository/create/')
- ->appendChild(
- id(new AphrontFormTextControl())
- ->setLabel('Name')
- ->setName('name')
- ->setValue($repository->getName())
- ->setError($e_name)
- ->setCaption('Human-readable repository name.'))
- ->appendChild(hsprintf(
- '<p class="aphront-form-instructions">Select a "Callsign" — a '.
- 'short, uppercase string to identify revisions in this repository. If '.
- 'you choose "EX", revisions in this repository will be identified '.
- 'with the prefix "rEX".</p>'))
- ->appendChild(
- id(new AphrontFormTextControl())
- ->setLabel('Callsign')
- ->setName('callsign')
- ->setValue($repository->getCallsign())
- ->setError($e_callsign)
- ->setCaption(
- 'Short, UPPERCASE identifier. Once set, it can not be changed.'))
- ->appendChild(
- id(new AphrontFormSelectControl())
- ->setLabel('Type')
- ->setName('type')
- ->setOptions($type_map)
- ->setValue($repository->getVersionControlSystem()))
- ->appendChild(
- id(new AphrontFormSubmitControl())
- ->setValue('Create Repository')
- ->addCancelButton('/repository/'));
-
- $form_box = id(new PHUIObjectBoxView())
- ->setHeaderText(pht('Create Repository'))
- ->setFormError($error_view)
- ->setForm($form);
-
- return $this->buildApplicationPage(
- array(
- $form_box,
- ),
- array(
- 'title' => pht('Create Repository'),
- 'device' => true,
- ));
- }
-
-}
diff --git a/src/applications/repository/controller/PhabricatorRepositoryListController.php b/src/applications/repository/controller/PhabricatorRepositoryListController.php
--- a/src/applications/repository/controller/PhabricatorRepositoryListController.php
+++ b/src/applications/repository/controller/PhabricatorRepositoryListController.php
@@ -74,7 +74,7 @@
$panel = new AphrontPanelView();
$panel->setHeader('Repositories');
if ($is_admin) {
- $panel->setCreateButton('Create New Repository', '/repository/create/');
+ $panel->setCreateButton('Create New Repository', '/diffusion/create/');
}
$panel->appendChild($table);
$panel->setNoBackground();
File Metadata
Details
Attached
Mime Type
text/x-diff
Storage Engine
amazon-s3
Storage Format
Raw Data
Storage Handle
phabricator/t2/yt/y43wfow5eced2p4q
Default Alt Text
D7414.diff (5 KB)
Attached To
Mode
D7414: Ship "Repositories" create button to new Diffusion workflow
Attached
Detach File
Event Timeline
Log In to Comment