Rogier Neeleman
9 years ago
8 changed files with 446 additions and 1 deletions
@ -0,0 +1,187 @@
@@ -0,0 +1,187 @@
|
||||
<?php |
||||
defined('BASEPATH') OR exit('No direct script access allowed'); |
||||
|
||||
/** |
||||
* Logout Class |
||||
*/ |
||||
class Beoordelen extends CI_Controller |
||||
{ |
||||
|
||||
public function __construct() |
||||
{ |
||||
parent::__construct(); |
||||
$this->load->library('session'); |
||||
if(! $this->session->userdata('validated')){ |
||||
redirect(base_url('/login')); |
||||
} |
||||
} |
||||
|
||||
public function index() |
||||
{ |
||||
redirect(base_url('/beoordelen/lijst')); |
||||
} |
||||
|
||||
public function lijst() |
||||
{ |
||||
$data['title'] = 'JOS'; |
||||
|
||||
// Get data |
||||
$this->load->model('Beoordelen_model'); |
||||
$lijsten = $this->Beoordelen_model->get_lijst(); |
||||
|
||||
// Data prepare |
||||
foreach ($lijsten as $lijst) |
||||
{ |
||||
$data['lijsten'][$lijst['id']] = $lijst['naam']; |
||||
} |
||||
|
||||
// Header |
||||
$this->load->view('header'); |
||||
|
||||
// login page |
||||
$this->load->view('user_lijsten', $data); |
||||
|
||||
// Footer |
||||
$this->load->view('footer'); |
||||
} |
||||
|
||||
public function ronde() |
||||
{ |
||||
// Check input |
||||
$lijstid = $this->security->xss_clean($this->input->post('lijstid')); |
||||
if ($lijstid OR $this->session->userdata('lijstid')) { |
||||
if ($lijstid) { |
||||
$this->session->set_userdata('lijstid', $lijstid); |
||||
} else { |
||||
$lijstid = $this->session->userdata('lijstid'); |
||||
} |
||||
} else { |
||||
redirect(base_url('/beoordelen/lijst')); |
||||
} |
||||
|
||||
// Check is ronde question is possible |
||||
$this->load->model('Beoordelen_model'); |
||||
$rondes = $this->Beoordelen_model->get_rondes($lijstid)->ronde; |
||||
|
||||
if ($rondes == 1) { |
||||
$this->session->set_userdata('ronde', '1'); |
||||
redirect(base_url('/beoordelen/subgroep')); |
||||
} |
||||
|
||||
for ($i=1; $i <= $rondes; $i++) { |
||||
$data['ronde'][$i] = $i; |
||||
} |
||||
// Make page |
||||
|
||||
// Header |
||||
$this->load->view('header'); |
||||
|
||||
// login page |
||||
$this->load->view('user_ronde', $data); |
||||
|
||||
// Footer |
||||
$this->load->view('footer'); |
||||
|
||||
} |
||||
|
||||
public function subgroep() |
||||
{ |
||||
// Check input |
||||
$ronde = $this->security->xss_clean($this->input->post('ronde')); |
||||
if ($ronde OR $this->session->userdata('ronde')) { |
||||
if ($ronde) { |
||||
$this->session->set_userdata('ronde', $ronde); |
||||
} else { |
||||
$ronde = $this->session->userdata('ronde'); |
||||
} |
||||
} else { |
||||
redirect(base_url('/beoordelen/ronde')); |
||||
} |
||||
|
||||
// Get groepdata |
||||
$this->load->model('Beoordelen_model'); |
||||
$subgroepen = $this->Beoordelen_model->get_subgroepen(); |
||||
|
||||
// Prepare data |
||||
$data['subgroepen'] = array(); |
||||
foreach ($subgroepen as $subgroep) |
||||
{ |
||||
if (!$this->Beoordelen_model->check_score($this->session->userdata('ronde'), $this->session->userdata('lijstid'), $subgroep['id'])) { |
||||
$data['subgroepen'][$subgroep['id']] = $subgroep['nummer'].'. '.$subgroep['themanaam']; |
||||
} |
||||
} |
||||
|
||||
// Header |
||||
$this->load->view('header'); |
||||
|
||||
// login page |
||||
$this->load->view('user_subgroep', $data); |
||||
|
||||
// Footer |
||||
$this->load->view('footer'); |
||||
} |
||||
|
||||
public function score() |
||||
{ |
||||
// Check input |
||||
$subgroepid = $this->security->xss_clean($this->input->post('subgroepid')); |
||||
if (!$subgroepid) { |
||||
redirect(base_url('/beoordelen/subgroep')); |
||||
} |
||||
|
||||
$data['subgroepid'] = $subgroepid; |
||||
|
||||
// Get questions |
||||
$this->load->model('Beoordelen_model'); |
||||
$data['vragen'] = $this->Beoordelen_model->get_vragen(); |
||||
|
||||
// Header |
||||
$this->load->view('header'); |
||||
|
||||
// login page |
||||
$this->load->view('user_score', $data); |
||||
|
||||
// Footer |
||||
$this->load->view('footer'); |
||||
|
||||
} |
||||
|
||||
public function score_save() |
||||
{ |
||||
// Check input |
||||
$ronde = $this->session->userdata('ronde'); |
||||
$lijstid = $this->session->userdata('lijstid'); |
||||
$subgroepid = $this->security->xss_clean($this->input->post('subgroepid')); |
||||
|
||||
// Score items ophalen |
||||
$this->load->model('Beoordelen_model'); |
||||
$vragen = $this->Beoordelen_model->get_vragen(); |
||||
|
||||
// Op te slaan data klaarzetten |
||||
|
||||
$i = 0; |
||||
foreach ($vragen as $vraag) |
||||
{ |
||||
$score[$i]['vraagid'] = $vraag['id']; |
||||
|
||||
// Check for type of awnser |
||||
if ($vraag['antwoord'] == 0) { |
||||
if ($this->input->post($vraag['id']) == 1) { |
||||
$score[$i]['score'] = $vraag['score']; |
||||
} else { |
||||
$score[$i]['score'] = 0; |
||||
} |
||||
} elseif ($vraag['antwoord'] == 1) { |
||||
$score[$i]['score'] = $this->input->post($vraag['id']); |
||||
} |
||||
$i++; |
||||
|
||||
} |
||||
|
||||
// Data opslaan |
||||
$this->Beoordelen_model->store_score($ronde, $subgroepid, $score); |
||||
|
||||
// Redirecten naar nieuwe ploeg |
||||
redirect(base_url().'beoordelen/subgroep'); |
||||
} |
||||
} |
@ -0,0 +1,106 @@
@@ -0,0 +1,106 @@
|
||||
<?php |
||||
defined('BASEPATH') OR exit('No direct script access allowed'); |
||||
|
||||
/** |
||||
* Regio model |
||||
*/ |
||||
class Beoordelen_model extends CI_Model |
||||
{ |
||||
|
||||
public function __construct() |
||||
{ |
||||
parent::__construct(); |
||||
} |
||||
|
||||
public function get_lijst() |
||||
{ |
||||
$this->db->select('id, naam'); |
||||
$this->db->from('lijst'); |
||||
$this->db->where('jaar', date('Y')); |
||||
$this->db->where('regioid', $this->session->regio); |
||||
$this->db->where('actief', '1'); |
||||
$this->db->order_by('naam', 'ASC'); |
||||
|
||||
$query = $this->db->get(); |
||||
|
||||
return $query->result_array(); |
||||
} |
||||
|
||||
public function get_rondes($lijstid) |
||||
{ |
||||
$this->db->select('ronde'); |
||||
$this->db->from('lijst'); |
||||
$this->db->where('id', $lijstid); |
||||
$this->db->where('regioid', $this->session->regio); |
||||
$this->db->where('jaar', date('Y')); |
||||
$this->db->where('actief', '1'); |
||||
|
||||
$query = $this->db->get(); |
||||
|
||||
return $query->row(); |
||||
} |
||||
|
||||
public function get_subgroepen() |
||||
{ |
||||
$this->db->select('id, naam, themanaam, nummer'); |
||||
$this->db->from('subgroep'); |
||||
$this->db->where('regioid', $this->session->regio); |
||||
$this->db->where('jaar', date('Y')); |
||||
$this->db->order_by('nummer', 'ASC'); |
||||
|
||||
$query = $this->db->get(); |
||||
|
||||
return $query->result_array(); |
||||
} |
||||
|
||||
public function get_vragen() |
||||
{ |
||||
$this->db->select('id, score, vraag, antwoord, score'); |
||||
$this->db->from('vragen'); |
||||
$this->db->where('regioid', $this->session->regio); |
||||
$this->db->where('lijstid', $this->session->lijstid); |
||||
$this->db->where('jaar', date('Y')); |
||||
|
||||
$this->db->order_by('volgorde', 'ASC'); |
||||
|
||||
$query = $this->db->get(); |
||||
|
||||
return $query->result_array(); |
||||
} |
||||
|
||||
public function check_score($ronde, $lijstid, $subgroepid) |
||||
{ |
||||
$this->db->from('resultaat'); |
||||
$this->db->where('resultaat.regioid', $this->session->regio); |
||||
$this->db->where('resultaat.ronde', $ronde); |
||||
$this->db->where('vragen.lijstid', $lijstid); |
||||
$this->db->where('resultaat.subgroepid', $subgroepid); |
||||
$this->db->join('vragen', 'resultaat.vraagid=vragen.id'); |
||||
|
||||
$query = $this->db->get(); |
||||
|
||||
if ($query->num_rows() == 0) |
||||
{ |
||||
return false; |
||||
} else { |
||||
return true; |
||||
} |
||||
} |
||||
|
||||
public function store_score($ronde, $subgroepid, $score) |
||||
{ |
||||
foreach ($score as $item) |
||||
{ |
||||
$data = array( |
||||
'regioid' => $this->session->regio, |
||||
'vraagid' => $item['vraagid'], |
||||
'ronde' => $ronde, |
||||
'subgroepid' => $subgroepid, |
||||
'score' => $item['score'], |
||||
'userid' => $this->session->id, |
||||
); |
||||
$this->db->insert('resultaat', $data); |
||||
|
||||
} |
||||
} |
||||
} |
@ -0,0 +1,6 @@
@@ -0,0 +1,6 @@
|
||||
<div class="container"> |
||||
<h1>Invoeren scorelijsten</h1> |
||||
<p> |
||||
<a href='<?php echo base_url();?>beoordelen/'><button type="button" class="btn btn-success btn-lg">Beoordelen</button></a>
|
||||
</p> |
||||
</div> |
@ -0,0 +1,20 @@
@@ -0,0 +1,20 @@
|
||||
<div class="container"> |
||||
<h1>De volgende lijsten zijn beschikbaar:</h1> |
||||
|
||||
<?php echo form_open(base_url().'beoordelen/ronde'); ?> |
||||
|
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-sm-offset-4"> |
||||
<?php echo form_dropdown('lijstid', $lijsten); ?> |
||||
</div> |
||||
</div> |
||||
<p> |
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-4 col-sm-offset-5"> |
||||
<button type="submit" class="btn btn-primary btn-lg">Kies</button> |
||||
</div> |
||||
</div> |
||||
</p> |
||||
<?php echo form_close(); ?> |
||||
|
||||
</div> |
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
<div class="container"> |
||||
<h1>Kies de ronde</h1> |
||||
|
||||
<?php // $attributes = array('class' => 'form-horizontal', 'role' => 'form');?>
|
||||
<?php echo form_open(base_url().'beoordelen/subgroep')."\n"; ?> |
||||
|
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-3 col-sm-offset-4"> |
||||
<label>Ronde</label> |
||||
</div> |
||||
<div class="col-xs-2 col-sm-2"> |
||||
<?php echo form_dropdown('ronde', $ronde); ?> |
||||
</div> |
||||
</div> |
||||
<p> |
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-4 col-sm-offset-5"> |
||||
<button type="submit" class="btn btn-primary btn-lg">Volgende</button> |
||||
</div> |
||||
</div> |
||||
<?php echo form_close(); ?> |
||||
</p> |
||||
</div> |
@ -0,0 +1,41 @@
@@ -0,0 +1,41 @@
|
||||
<div class="container"> |
||||
|
||||
<div class="starter-template"> |
||||
<h1>Geef de score aan</h1> |
||||
|
||||
<?php echo form_open(base_url().'beoordelen/score_save'); ?> |
||||
<?php echo form_hidden('subgroepid', $subgroepid); ?> |
||||
|
||||
|
||||
<?php |
||||
foreach ($vragen as $vraag) |
||||
{ ?> |
||||
<div class="row"> |
||||
<div class="col-xs-9 col-sm-6 col-sm-offset-3"> |
||||
<?php echo $vraag['vraag']; ?> |
||||
</div> |
||||
<div class="col-xs-3 col-sm-1"> |
||||
<?php if ($vraag['antwoord'] == 0) { |
||||
echo ': '.form_checkbox($vraag['id'], '1'); |
||||
} else { |
||||
for ($i=1; $i <= $vraag['score']; $i++) { |
||||
$score[$i] = $i; |
||||
} |
||||
echo form_dropdown($vraag['id'], $score); |
||||
} ?> |
||||
</div> |
||||
</div> |
||||
<?php } ?> |
||||
|
||||
<p> |
||||
|
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-4 col-sm-offset-5"> |
||||
<button type="submit" class="btn btn-success btn-lg">Opslaan</button> |
||||
</div> |
||||
</div> |
||||
<?php echo form_close(); ?> |
||||
|
||||
|
||||
</div> |
||||
</div> |
@ -0,0 +1,39 @@
@@ -0,0 +1,39 @@
|
||||
<div class="container"> |
||||
|
||||
<div class="starter-template"> |
||||
<h1>Kies de ploeg</h1> |
||||
|
||||
<?php if (count($subgroepen) != 0) { ?> |
||||
|
||||
<?php echo form_open(base_url().'beoordelen/score'); ?> |
||||
|
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-sm-offset-5 col-xs-offset-2"> |
||||
<?php echo form_dropdown('subgroepid', $subgroepen); ?> |
||||
</div> |
||||
</div> |
||||
<p> |
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-4 col-sm-offset-5"> |
||||
<button type="submit" class="btn btn-primary btn-lg">Volgende</button> |
||||
</div> |
||||
</div> |
||||
<?php echo form_close(); ?> |
||||
|
||||
<?php } else { ?> |
||||
<div class="row"> |
||||
<div class="col-xs-10 col-sm-4 col-xs-offset-1 col-sm-offset-4"> |
||||
Er zijn geen groepen meer te beoordelen. |
||||
</div> |
||||
</div> |
||||
<div class="row"> |
||||
<div class="col-xs-2 col-sm-2 col-xs-offset-4 col-sm-offset-5"> |
||||
<button type="button" class="btn btn-success btn-lg" disabled="disabled"> |
||||
<span class="glyphicon glyphicon-ok"></span> |
||||
</button> |
||||
</div> |
||||
</div> |
||||
<?php } ?> |
||||
|
||||
</div> |
||||
</div> |
Loading…
Reference in new issue