Changeset View
Changeset View
Standalone View
Standalone View
src/applications/ponder/controller/PonderQuestionEditController.php
Show All 17 Lines | if ($id) { | ||||
->executeOne(); | ->executeOne(); | ||||
if (!$question) { | if (!$question) { | ||||
return new Aphront404Response(); | return new Aphront404Response(); | ||||
} | } | ||||
$v_projects = PhabricatorEdgeQuery::loadDestinationPHIDs( | $v_projects = PhabricatorEdgeQuery::loadDestinationPHIDs( | ||||
$question->getPHID(), | $question->getPHID(), | ||||
PhabricatorProjectObjectHasProjectEdgeType::EDGECONST); | PhabricatorProjectObjectHasProjectEdgeType::EDGECONST); | ||||
$v_projects = array_reverse($v_projects); | $v_projects = array_reverse($v_projects); | ||||
$is_new = false; | |||||
} else { | } else { | ||||
$is_new = true; | |||||
$question = PonderQuestion::initializeNewQuestion($viewer); | $question = PonderQuestion::initializeNewQuestion($viewer); | ||||
$v_projects = array(); | $v_projects = array(); | ||||
} | } | ||||
$v_title = $question->getTitle(); | $v_title = $question->getTitle(); | ||||
$v_content = $question->getContent(); | $v_content = $question->getContent(); | ||||
$v_view = $question->getViewPolicy(); | $v_view = $question->getViewPolicy(); | ||||
$v_space = $question->getSpacePHID(); | $v_space = $question->getSpacePHID(); | ||||
▲ Show 20 Lines • Show All 84 Lines • ▼ Show 20 Lines | $form = id(new AphrontFormView()) | ||||
->setUser($viewer)) | ->setUser($viewer)) | ||||
->appendControl( | ->appendControl( | ||||
id(new AphrontFormPolicyControl()) | id(new AphrontFormPolicyControl()) | ||||
->setName('viewPolicy') | ->setName('viewPolicy') | ||||
->setPolicyObject($question) | ->setPolicyObject($question) | ||||
->setSpacePHID($v_space) | ->setSpacePHID($v_space) | ||||
->setPolicies($policies) | ->setPolicies($policies) | ||||
->setValue($v_view) | ->setValue($v_view) | ||||
->setCapability(PhabricatorPolicyCapability::CAN_VIEW)) | ->setCapability(PhabricatorPolicyCapability::CAN_VIEW)); | ||||
->appendChild( | |||||
if (!$is_new) { | |||||
$form->appendChild( | |||||
id(new AphrontFormSelectControl()) | id(new AphrontFormSelectControl()) | ||||
->setLabel(pht('Status')) | ->setLabel(pht('Status')) | ||||
->setName('status') | ->setName('status') | ||||
->setValue($v_status) | ->setValue($v_status) | ||||
->setOptions(PonderQuestionStatus::getQuestionStatusMap())); | ->setOptions(PonderQuestionStatus::getQuestionStatusMap())); | ||||
} | |||||
$form->appendControl( | $form->appendControl( | ||||
id(new AphrontFormTokenizerControl()) | id(new AphrontFormTokenizerControl()) | ||||
->setLabel(pht('Projects')) | ->setLabel(pht('Projects')) | ||||
->setName('projects') | ->setName('projects') | ||||
->setValue($v_projects) | ->setValue($v_projects) | ||||
->setDatasource(new PhabricatorProjectDatasource())); | ->setDatasource(new PhabricatorProjectDatasource())); | ||||
$form->appendChild( | $form->appendChild( | ||||
id(new AphrontFormSubmitControl()) | id(new AphrontFormSubmitControl()) | ||||
->addCancelButton($this->getApplicationURI()) | ->addCancelButton($this->getApplicationURI()) | ||||
->setValue(pht('Ask Away!'))); | ->setValue(pht('Submit'))); | ||||
$preview = id(new PHUIRemarkupPreviewPanel()) | $preview = id(new PHUIRemarkupPreviewPanel()) | ||||
->setHeader(pht('Question Preview')) | ->setHeader(pht('Question Preview')) | ||||
->setControlID('content') | ->setControlID('content') | ||||
->setPreviewURI($this->getApplicationURI('preview/')); | ->setPreviewURI($this->getApplicationURI('preview/')); | ||||
$crumbs = $this->buildApplicationCrumbs(); | $crumbs = $this->buildApplicationCrumbs(); | ||||
Show All 27 Lines |