Use PHUIRemarkupPreviewPanel in Ponder

Summary:
Ref T3578. Ref T3671. Depends on D6673. Use `PHUIRemarkupPreviewPanel` (introduced in D6673) to provide question create/edit and answer edit previews in Ponder.

Then delete a million lines of duplicate code.

Test Plan: Edited a question; edited an answer. Saw live previews.

Reviewers: btrahan, Firehed

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T3578, T3671

Differential Revision: https://secure.phabricator.com/D6674
This commit is contained in:
epriestley
2013-08-05 10:47:06 -07:00
parent 193a9611e4
commit b2fa1293a7
10 changed files with 17 additions and 219 deletions

View File

@@ -66,6 +66,8 @@ final class PonderAnswerEditController extends PonderController {
$errors = id(new AphrontErrorView())->setErrors($errors);
}
$answer_content_id = celerity_generate_unique_node_id();
$form = id(new AphrontFormView())
->setUser($viewer)
->appendChild(
@@ -76,6 +78,7 @@ final class PonderAnswerEditController extends PonderController {
id(new PhabricatorRemarkupControl())
->setLabel(pht('Answer'))
->setName('content')
->setID($answer_content_id)
->setValue($v_content)
->setError($e_content))
->appendChild(
@@ -92,11 +95,17 @@ final class PonderAnswerEditController extends PonderController {
id(new PhabricatorCrumbView())
->setName(pht('Edit Answer')));
$preview = id(new PHUIRemarkupPreviewPanel())
->setHeader(pht('Answer Preview'))
->setControlID($answer_content_id)
->setPreviewURI($this->getApplicationURI('preview/'));
return $this->buildApplicationPage(
array(
$crumbs,
$errors,
$form,
$preview,
),
array(
'title' => pht('Edit Answer'),