[Poll] Added templates, response counting

This commit is contained in:
Daniel
2020-11-08 16:36:06 +00:00
committed by Hugo Sales
parent 27a0c43f7b
commit cdbf7da8be
11 changed files with 187 additions and 45 deletions

View File

@@ -22,33 +22,39 @@
namespace Plugin\PollPlugin\Controller;
use App\Core\DB\DB;
use App\Core\Form;
use function App\Core\I18n\_m;
use App\Entity\Poll;
use App\Util\Common;
use App\Util\Exception\RedirectException;
use Plugin\PollPlugin\Forms\NewPollForm;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\HttpFoundation\Request;
class NewPoll
{
private int $numOptions = 3;
public function newpoll(Request $request)
{
$user = Common::ensureLoggedIn();
$numOptions = 3; //temporary
$form = NewPollForm::make($numOptions);
$form = NewPollForm::make($this->numOptions);
$form->handleRequest($request);
$question = 'Test Question?';
$opt = [];
$opt = [];
if ($form->isSubmitted()) {
$data = $form->getData();
//var_dump($data);
for ($i = 1; $i <= $numOptions; ++$i) {
$question = $data['Question'];
for ($i = 1; $i <= $this->numOptions; ++$i) {
array_push($opt,$data['Option_' . $i]);
}
$testPoll = Poll::make($question,$opt);
DB::persist($testPoll);
$poll = Poll::make($question,$opt);
DB::persist($poll);
DB::flush();
//var_dump($testPoll);
throw new RedirectException('showpoll', ['id' => $poll->getId()]);
}
// testing
@@ -63,4 +69,18 @@ class NewPoll
return ['_template' => 'Poll/newpoll.html.twig', 'form' => $form->createView()];
}
/*
public function pollsettings(Request $request)
{
$form = Form::create([['Num_of_Questions', NumberType::class, ['label' => _m(('Number of questions:'))]],['save', SubmitType::class, ['label' => _m('Continue')]]]);
$form->handleRequest($request);
if ($form->isSubmitted())
{
$data = $form->getData();
$this->numOptions = $data['Num_of_Questions'];
var_dump($data);
}
return ['_template' => 'Poll/newpoll.html.twig', 'form' => $form->createView()];
}
*/
}