示例#1
0
function DPRenderQuestionForm($PollForm, $DiscussionPoll, $Disabled, $Closed)
{
    echo '<div class="P" id="DP_Form">';
    if (!C('Plugins.DiscussionPolls.DisablePollTitle', FALSE)) {
        echo $PollForm->Label('Discussion Poll Title', 'DP_Title');
        echo Wrap($PollForm->TextBox('DP_Title', array_merge($Disabled, array('maxlength' => 100, 'class' => 'InputBox BigInput'))), 'div', array('class' => 'TextBoxWrapper'));
    }
    echo Anchor(' ', '/plugin/discussionpolls/', array('id' => 'DP_PreviousQuestion', 'title' => T('Previous Question')));
    $QuestionCount = 0;
    // set and the form data for existing questions and render a form
    foreach ($DiscussionPoll->Questions as $Question) {
        DPRenderQuestionField($PollForm, $QuestionCount, $Question, $Disabled);
        $QuestionCount++;
    }
    // If there is no data, render a single question form with 2 options to get started
    if (!$QuestionCount) {
        DPRenderQuestionField($PollForm);
    }
    // the end of the form
    if (!$Closed) {
        echo Anchor(T('Add a Question'), '/plugin/discussionpolls/addquestion/', array('id' => 'DP_NextQuestion', 'title' => T('Add a Question')));
        echo Anchor(T('Add an Option'), '/plugin/discussionpolls/addoption', array('id' => 'DP_AddOption', 'title' => T('Add an Option')));
    } else {
        if ($QuestionCount > 1) {
            echo Anchor(T('Next Question'), '/plugin/discussionpolls/addquestion/', array('id' => 'DP_NextQuestion', 'title' => T('Next Question')));
        }
    }
    echo '</div>';
}
 /**
  * Renders / fetches question fields for form
  * @param stdClass $PollForm the poll object we are rendering
  * @param boolean $Echo echo or return result string
  * @return mixed Will return string if $Echo is false, will return true otherwise
  */
 protected function _RenderQuestionFields($PollForm, $Echo = TRUE)
 {
     include_once $this->ThemeView('questions');
     if ($Echo) {
         DPRenderQuestionField($PollForm);
         return TRUE;
     } else {
         ob_start();
         DPRenderQuestionField($PollForm);
         $Result = ob_get_contents();
         ob_end_clean();
         return $Result;
     }
 }