question = $question; return $this; } public function setUser(PhabricatorUser $user) { $this->user = $user; return $this; } public function setActionURI($uri) { $this->actionURI = $uri; return $this; } public function render() { require_celerity_resource('ponder-core-view-css'); $is_serious = PhabricatorEnv::getEnvConfig('phabricator.serious-business'); $question = $this->question; $panel = id(new AphrontPanelView()) ->addClass("ponder-panel") ->setHeader("Your Answer:"); $form = new AphrontFormView(); $form ->setUser($this->user) ->setAction($this->actionURI) ->setWorkflow(true) ->addHiddenInput('question_id', $question->getID()) ->appendChild( id(new PhabricatorRemarkupControl()) ->setName('answer') ->setID('answer-content') ->setEnableDragAndDropFileUploads(true)) ->appendChild( id(new AphrontFormSubmitControl()) ->setValue($is_serious ? 'Submit' : 'Make it so.')); $panel->appendChild($form); $panel->appendChild( '
'. '
'. ''. 'Loading answer preview...'. ''. '
'. '
' ); Javelin::initBehavior( 'ponder-feedback-preview', array( 'uri' => '/ponder/answer/preview/', 'content' => 'answer-content', 'preview' => 'answer-preview', 'question_id' => $question->getID() )); return $panel->render(); } }