initial commit

This commit is contained in:
2021-07-10 16:25:16 +02:00
parent bff57cbf45
commit 20fb7267a8
2426 changed files with 792090 additions and 0 deletions
@@ -0,0 +1,79 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Autorisatie_model
*
* @author Theo Weijmer
* @date april 26, 2013 2:21 PM
*
*
*
*/
class Autorisaties_model extends MY_Model{
protected $tablename = 'tb_autorisaties';
function __construct(){
parent::__construct();
$models = array('Autorisatietypes_model');
$this->load->model($models);
}
function check_autorisatie($role, $level){
$this->sql = " SELECT {$role} & {$level} AS level";
$check = $this->get_query_row('level');
return $check;
}
function get_autorisaties($level){
$autotypes = $this->Autorisatietypes_model->get_records_where();
if(!$autotypes) return FALSE;
foreach($autotypes as $autotype){
if($this->check_autorisatie($autotype->autorisatietype_level, $level)){
$autorisaties[] = $autotype->autorisatietype_naam;
}
}
if(!isset($autorisaties)) $autorisaties = FALSE;
return $autorisaties;
}
function check_partituur_access($partituurid, $type){
$read = TRUE;
$write= TRUE;
if(!$this->admin){
$partorgid = $this->Partituurs_model->get_record_by_id($partituurid, 'partituur_organisatie_id');
if($this->globorgid!=$partorgid){
$read = FALSE;
$write= FALSE;
}else{
// aangepast van $this->role naar $this->userrole
if(!$this->check_autorisatie(WRITE, $this->userrole)){
$write = FALSE;
}
}
}
if($type==1){
return $read;
}else{
return $write;
}
}
function get_autorisaties_per_gebruiker($min,$max){
$this->sql = "SELECT id, autorisatietype_level as level, autorisatietype_naam as omschrijving
FROM tb_autorisatietypes
WHERE autorisatietype_level >= {$min}
AND autorisatietype_level <= {$max} ";
return $this->get_query_result();
}
}
@@ -0,0 +1,70 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Autorisatietypes_model
*
* @author Theo Weijmer
* @date juli 19, 2013 3:19 PM
*
*
*
*/
class Autorisatietypes_model extends MY_Model{
protected $tablename = 'tb_autorisatietypes';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,70 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Challanges_model
*
* @author Theo Weijmer
* @date mei 11, 2013 12:33 PM
*
*
*
*/
class Challanges_model extends MY_Model{
protected $tablename = 'tb_challanges';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details(){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,106 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Doctags_model
*
* @author Theo Weijmer
* @date juli 17, 2013 10:57 AM
*
*
*
*/
class Doctags_model extends MY_Model{
protected $tablename = 'tb_doctags';
function __construct(){
parent::__construct();
$models = array('ijkpartituur/Documents_model');
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$tag = $this->Tags_model->get_single_detail(array('id'=>$record->id));
$details->tagname = $tag->tagname;
$details->tagid = $tag->id;
return $details;
}
function get_selected_tags($documentid){
$this->db->order_by('tag_name');
$this->db->from($this->tablename);
$this->db->join('tb_tags', 'tb_tags.id = doctag_tag_id');
$this->db->where(array('doctag_document_id'=>$documentid));
$records = $this->get_ar_query();
$details = $this->get_records_details($records);
return $details;
}
function get_non_selected_tags($documentid){
$this->sql = "
SELECT T.*
FROM tb_tags T
LEFT JOIN (
SELECT *
FROM tb_doctags D
WHERE doctag_document_id = {$documentid}
) Q1
ON T.id = Q1.doctag_tag_id
WHERE Q1.id IS NULL
ORDER BY tag_name";
$records = $this->get_query_result();
$details = $this->get_records_details($records);
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,76 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Doctypes_model
*
* @author Theo Weijmer
* @date juni 11, 2013 8:57 PM
*
*
*
*/
class Doctypes_model extends MY_Model{
protected $tablename = 'tb_doctypes';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
if($record){
$details = $this->get_record_details($record);
}else{
$details = FALSE;
}
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->name = $record->doctype_name;
$details->icon = $record->doctype_icon;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,77 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Files_model
*
* @author Theo Weijmer
* @date juni 11, 2013 4:13 PM
*
*
*
*/
class Documents_model extends MY_Model{
protected $tablename = 'tb_documents';
function __construct(){
parent::__construct();
$models = array('ijkpartituur/Doctypes_model');
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->original = $record->document_original;
$details->name = $record->document_name;
$details->extension = $record->document_extension;
$details->size = $record->document_size;
$details->doctypeid = $record->document_doctype_id;
$details->doctype = $this->Doctypes_model->get_single_detail(array('id'=>$record->document_doctype_id));
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,72 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Eigenpijlers_model
*
* @author Theo Weijmer
* @date mei 8, 2013 4:21 PM
*
*
*
*/
class Eigenpijlers_model extends MY_Model{
protected $tablename = 'tb_eigenpijlers';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_pijlers_not_in_partituur($orgid, $partID){
$this->sql ="SELECT id, eigenpijler_naam as naam
FROM tb_eigenpijlers ep
WHERE ep.orgID = {$orgid}
AND ep.id not in (SELECT eigenpijlerID FROM tb_parteigenpijlers pep where pep.partituurID = {$partID})";
return $this->get_query_result();
}
function get_details($where){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->naam = $record->eigenpijler_naam;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,10 @@
<html>
<head>
<title>403 Forbidden</title>
</head>
<body>
<p>Directory access is forbidden.</p>
</body>
</html>
@@ -0,0 +1,71 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Mailadresses_model
*
* @author Theo Weijmer
* @date juli 22, 2013 11:48 AM
*
*
*
*/
class Mailadresses_model extends MY_Model{
protected $tablename = 'tb_mailadresses';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->adress = $record->mailadress_adress;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,76 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Mails_model
*
* @author Theo Weijmer
* @date juli 22, 2013 11:28 AM
*
*
*
*/
class Mails_model extends MY_Model{
protected $tablename = 'tb_mails';
function __construct(){
parent::__construct();
$models = array('ijkpartituur/Mailadresses_model');
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->naam = $record->mail_name;
$details->template = $record->mail_template;
$details->uitleg = $record->uitleg;
$data = array('mailadress_mail_id'=>$record->id, 'mailadress_organisatie_id'=>$this->globorgid);
$details->adresses = $this->Mailadresses_model->get_details($data);
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,45 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten x doelgroepen model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModActDoel extends MY_Model{
protected $tablename = 'tbActxDoelgroep';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function doelgroepen_per_activiteit($actID){
$this->sql="SELECT d.id, d.omschrijving
FROM tbActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID = {$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
function doelgroepen_niet_in_activiteit($actID){
$this->sql = "SELECT d.id, d.omschrijving
FROM tbDoelgroepen d
WHERE d.id NOT IN (SELECT doelgroepID FROM tbActxDoelgroep WHERE activiteitID = {$actID} )";
return $this->get_query_result();
}
function delete_link($actID, $hulpID){
$this->sql = "DELETE FROM tbActxDoelgroep
WHERE activiteitID = {$actID}
AND doelgroepID = {$hulpID}";
$this->db->query($this->sql);
}
function get_doelgroepen_per_act ($actID){
$this->sql = "SELECT d.id, d.omschrijving, a.id as padID
FROM tbActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID ={$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
}
@@ -0,0 +1,56 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModActHulp extends MY_Model{
protected $tablename = 'tbActxHulpmiddel';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function middelen_per_activiteit($actID){
$this->sql = "SELECT h.id, h.omschrijving , h.filenaam
FROM tbHulpmiddelen h , tbActxHulpmiddel a
WHERE a.actID = {$actID}
AND h.ID=a.hulpID ";
return $this->get_query_result();
}
function middelen_niet_in_activiteit($actID,$pijlerID){
$this->sql = "SELECT h.id, h.omschrijving , h.filenaam
FROM tbHulpmiddelen h
WHERE h.id NOT IN (SELECT hulpID FROM tbActxHulpmiddel WHERE actID = {$actID} )
AND pijlerID = {$pijlerID}";
return $this->get_query_result();
}
function delete_link($actID, $hulpID){
$this->sql = "DELETE FROM tbActxHulpmiddel
WHERE actID = {$actID}
AND hulpID = {$hulpID}";
$this->db->query($this->sql);
}
function get_act_per_middel($middelID){
$this->sql= "SELECT a.id, p.naam as pijler, a.naam,
f.naam as fase,
o.naamkort as bron
FROM tbActxHulpmiddel h, tbPijlers p , tbActiviteiten a
LEFT JOIN tb_organisaties o
ON o.id = a.bronID
LEFT JOIN tbFases f
ON f.id = a.faseID
WHERE h.hulpID = {$middelID}
AND a.id = h.actID
AND p.id = a.pijlerID";
return $this->get_query_result();
}
}
@@ -0,0 +1,130 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modactiviteiten extends MY_Model{
protected $tablename = 'tbActiviteiten';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_activiteiten_per_pijler($pijler, $bronID=false,$zoekstring=false){
$this->sql = "SELECT a.id, a.naam, a.pijlerID,
a.inclusiviteitsniveau,
a.omschrijving,
n.omschrijving as niveau,
a.omschrijving,
a.duur,
a.resultaatomschrijving,
a.email_dagen,
a.email_pleider,
a.email_verantwoordelijke,
o.naamkort as bron,
f.naam as fase
FROM tbActiviteiten a
LEFT JOIN tbNiveaus n
ON a.inclusiviteitsniveau = n.id
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tb_organisaties o
ON o.id = a.bronID
WHERE pijlerID = {$pijler}";
if ($bronID > 0) { $this->sql .= " AND a.bronID = {$bronID}" ;}
if ($zoekstring !== 'undefined') {$this->sql .= " AND a.naam LIKE '%{$zoekstring}%' ";}
$this->sql .= " ORDER BY faseID, a.naam";
return $this->get_query_result();
}
function getAinfo ($activiteitID){
$this->sql = "SELECT a.id,
a.naam,
a.inclusiviteitsniveau,
a.pijlerID,
a.faseID,
f.naam as fasenaam,
a.resultaatomschrijving,
n.omschrijving as niveau,
a.omschrijving, a.duur,
a.email_dagen, a.email_pleider, a.email_verantwoordelijke,
a.bronID as bronID, o.naamkort as bron,
p.naam as pijlernaam
FROM tbActiviteiten a
LEFT JOIN tb_organisaties o
ON o.id= a.bronID
LEFT JOIN tbPijlers p
ON p.id = a.pijlerID
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tbNiveaus n
ON n.id = a.inclusiviteitsniveau
WHERE a.id = {$activiteitID}
";
return $this->get_query_result();
}
function get_partituur_activiteiten_per_pijler($partID,$pijler){
// get alle activiteiten bij een pijler, die nog niet izjn opgenoemen in de partituur
// inclusief eigen activiteiten
$this->sql = "SELECT a.id, a.naam, a.inclusiviteitsniveau,
n.omschrijving as niveau,
a.omschrijving, a.duur,
a.faseID,
f.naam as fase,
o.naamkort as bron,
p.naam as pijlernaam, p.omschrijving
FROM tbActiviteiten a
LEFT JOIN tb_organisaties o
ON a.bronID = o.id
LEFT JOIN tbNiveaus n
ON a.inclusiviteitsniveau = n.id
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tbPijlers p
ON p.id = a.pijlerID
WHERE (pijlerID = {$pijler} OR (pijlerID = 0 and bronID =$this->globorgid))
ORDER BY a.bronID, f.volgorde , a.naam";
return $this->get_query_result();
}
function get_kosten_per_activiteit($actID){
$this->sql = "SELECT id, omschrijving, kosten as bedrag, activiteitID as actID
FROM tbActKosten
WHERE activiteitID = $actID" ;
$results = $this->get_query_result();
if ($results) {
foreach ($results as $result) {
$result->bedrag = mysql2bedrag($result->bedrag);
};
};
return $results;
}
function get_kosten_per_kost($kostID){
$this->sql = "SELECT id, omschrijving, kosten as bedrag, activiteitID as actID
FROM tbActKosten
WHERE id = $kostID" ;
$results = $this->get_query_result();
foreach ($results as $result) {
$result->bedrag = mysql2bedrag($result->bedrag);
};
return $results;
}
function get_doelgroepen_per_activiteit ($actID){
$this->sql = "SELECT d.id, d.omschrijving
FROM tbActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID ={$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
function get_hulpmiddelen_per_activiteit($actID){
$this->sql = "SELECT h.id, h.omschrijving
FROM tbHulpmiddelen h, tbActxHulpmiddel ah
WHERE ah.actID = {$actID}
AND h.id = ah.hulpID";
return $this->get_query_result();
}
}
@@ -0,0 +1,130 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modactiviteiten extends MY_Model{
protected $tablename = 'tbActiviteiten';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_activiteiten_per_pijler($pijler, $bronID=false,$zoekstring=false){
$this->sql = "SELECT a.id, a.naam, a.pijlerID,
a.inclusiviteitsniveau,
a.omschrijving,
n.omschrijving as niveau,
a.omschrijving,
a.duur,
a.resultaatomschrijving,
a.email_dagen,
a.email_pleider,
a.email_verantwoordelijke,
o.naamkort as bron,
f.naam as fase
FROM tbActiviteiten a
LEFT JOIN tbNiveaus n
ON a.inclusiviteitsniveau = n.id
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tb_organisaties o
ON o.id = a.bronID
WHERE pijlerID = {$pijler}";
if ($bronID > 0) { $this->sql .= " AND a.bronID = {$bronID}" ;}
if ($zoekstring !== 'undefined') {$this->sql .= " AND a.naam LIKE '%{$zoekstring}%' ";}
$this->sql .= " ORDER BY faseID, a.naam";
return $this->get_query_result();
}
function getAinfo ($activiteitID){
$this->sql = "SELECT a.id,
a.naam,
a.inclusiviteitsniveau,
a.pijlerID,
a.faseID,
f.naam as fasenaam,
a.resultaatomschrijving,
n.omschrijving as niveau,
a.omschrijving, a.duur,
a.email_dagen, a.email_pleider, a.email_verantwoordelijke,
a.bronID as bronID, o.naamkort as bron,
p.naam as pijlernaam
FROM tbActiviteiten a
LEFT JOIN tb_organisaties o
ON o.id= a.bronID
LEFT JOIN tbPijlers p
ON p.id = a.pijlerID
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tbNiveaus n
ON n.id = a.inclusiviteitsniveau
WHERE a.id = {$activiteitID}
";
return $this->get_query_result();
}
function get_partituur_activiteiten_per_pijler($partID,$pijler){
// get alle activiteiten bij een pijler, die nog niet izjn opgenoemen in de partituur
// inclusief eigen activiteiten
$this->sql = "SELECT a.id, a.naam, a.inclusiviteitsniveau,
n.omschrijving as niveau,
a.omschrijving, a.duur,
a.faseID,
f.naam as fase,
o.naamkort as bron,
p.naam as pijlernaam, p.omschrijving
FROM tbActiviteiten a
LEFT JOIN tb_organisaties o
ON a.bronID = o.id
LEFT JOIN tbNiveaus n
ON a.inclusiviteitsniveau = n.id
LEFT JOIN tbFases f
ON f.id = a.faseID
LEFT JOIN tbPijlers p
ON p.id = a.pijlerID
WHERE (pijlerID = {$pijler} OR (pijlerID = 0 and bronID =$this->globorgid))
ORDER BY a.bronID, f.volgorde , a.naam";
return $this->get_query_result();
}
function get_kosten_per_activiteit($actID){
$this->sql = "SELECT id, omschrijving, kosten as bedrag, activiteitID as actID
FROM tbActKosten
WHERE activiteitID = $actID" ;
$results = $this->get_query_result();
if ($results) {
foreach ($results as $result) {
$result->bedrag = mysql2bedrag($result->bedrag);
};
};
return $results;
}
function get_kosten_per_kost($kostID){
$this->sql = "SELECT id, omschrijving, kosten as bedrag, activiteitID as actID
FROM tbActKosten
WHERE id = $kostID" ;
$results = $this->get_query_result();
foreach ($results as $result) {
$result->bedrag = mysql2bedrag($result->bedrag);
};
return $results;
}
function get_doelgroepen_per_activiteit ($actID){
$this->sql = "SELECT d.id, d.omschrijving
FROM tbActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID ={$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
function get_hulpmiddelen_per_activiteit($actID){
$this->sql = "SELECT h.id, h.omschrijving
FROM tbHulpmiddelen h, tbActxHulpmiddel ah
WHERE ah.actID = {$actID}
AND h.id = ah.hulpID";
return $this->get_query_result();
}
}
@@ -0,0 +1,85 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Agendamodel
*
* @author Liesbeth
* @date april 25 2013
*/
class ModAgenda extends MY_Model{
protected $tablename = 'tbAgenda';
function __construct(){
parent::__construct();
// $models = array('Pijlers_model');
// $this->load->model($models);
}
function get_items($pijlerID, $activiteitID, $maand, $jaar){
$this->sql="SELECT a.id, a.owner, a.toegang, a.wijzig,
IF ((a.owner = {$this->userid}
OR (SELECT a.wijzig & $this->userrole)!=0), true, false) as schrijf,
a.pijlerID, a.activiteitID,
COALESCE(pa.naam,'geen') as actNaam,
colorcode ,
dag, maand, jaar,
startUur, startMinuut, eindUur, eindMinuut,
titel, a.opmerking
FROM tbAgenda a
LEFT JOIN tbPartActiviteiten pa
ON pa.id =a.activiteitID
WHERE maand = {$maand}
AND jaar = {$jaar}";
if ($pijlerID > 0) {
$this->sql.= " AND a.pijlerID = {$pijlerID} ";
};
if ($activiteitID> 0) {
$this->sql .= " AND a.activiteitID = {$activiteitID}" ;
};
$this->sql .= " AND (owner = {$this->userid}
OR (SELECT toegang & $this->userrole)!=0
)
AND orgid = {$this->globorgid}
ORDER BY a.jaar, a.maand,a.dag,a.startUur , a.startMinuut" ;
return $this->get_query_result();
}
function get_all_items( $activiteitID,$uid,$ulevel,$orgid){
$this->sql="SELECT dag, maand, jaar,
startUur, startMinuut, eindUur, eindMinuut,
titel, a.opmerking
FROM tbAgenda a
WHERE a.activiteitID = {$activiteitID}
AND (owner = {$uid}
OR (SELECT toegang & $ulevel)!=0
)
AND orgid = {$orgid}
ORDER BY a.jaar, a.maand,a.dag,a.startUur , a.startMinuut" ;
return $this->get_query_result();
}
function find_min_dag($pijlerID){
$this->sql="SELECT MIN(STR_TO_DATE(concat(dag,',',maand,',',jaar),'%d,%m,%Y')) as mindag
FROM tbAgenda
WHERE pijlerID = {$pijlerID} ";
return $this->get_query_result();
}
function find_max_dag($pijlerID){
$this->sql="SELECT MAX(STR_TO_DATE(concat(dag,',',maand,',',jaar),'%d,%m,%Y')) as maxdag
FROM tbAgenda
WHERE pijlerID = {$pijlerID} ";
return $this->get_query_result();
}
function find_minmax_dag($pijlerID,$actID=FALSE){
$this->sql="SELECT MIN(STR_TO_DATE(concat(dag,',',maand,',',jaar),'%d,%m,%Y')) as mindag,
MAX(STR_TO_DATE(concat(dag,',',maand,',',jaar),'%d,%m,%Y')) as maxdag
FROM tbAgenda
WHERE pijlerID = {$pijlerID}";
if ($actID) { $this->sql .= " AND activiteitID = {$actID} "; };
return $this->get_query_result();
}
} // einde class ModAgenda
@@ -0,0 +1,24 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten x doelgroepen model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modbronnen extends MY_Model{
protected $tablename = 'tbBronnen';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_bronnen(){
$this->sql="SELECT id, naam
FROM tbBronnen";
return $this->get_query_result();
}
}
@@ -0,0 +1,34 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Doelgroepen model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModDoelgroepen extends MY_Model{
protected $tablename = 'tbdoelgroepen';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function getAll(){
$this->sql = "SELECT id, omschrijving
FROM tbDoelgroepen";
return $this->get_query_result();
}
function findNoUse($doelgroepID){
$this->sql = "SELECT count(*) as aantal
FROM tbActxDoelgroep a, tbPartActxDoelgroep p
WHERE a.doelgroepID = {$doelgroepID}
OR p.doelgroepID = {$doelgroepID}";
$count = $this->db->query($this->sql)->row()->aantal;
if ($count > 0) {return false;}
else {return true;};
}
}
@@ -0,0 +1,35 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of fasesmodel
*
* @author Liesbeth
* @date 3 juni 2013
*/
class Modfases extends MY_Model{
protected $tablename = 'tbFases';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_fases(){
$this->sql="SELECT id, naam
FROM tbFases
ORDER BY volgorde";
return $this->get_query_result();
}
function get_kleuren(){
$this->sql =" SELECT naam, kleur
FROM tbFases
ORDER BY volgorde";
$res = $this->get_query_result();
$onb = (object) array("naam"=>"onbekend", "kleur"=>"#989898");
array_unshift($res,$onb );
return $res;
}
}
@@ -0,0 +1,26 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of helpdesk model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modhelpdesk extends MY_Model{
protected $tablename = 'tbHelpdesk';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_helpdesk(){
$this->sql="SELECT email, telefoon,handleiding
FROM tbHelpdesk
WHERE id = 1";
return $this->get_query_row();
}
}
@@ -0,0 +1,92 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modhulpmiddelen extends MY_Model{
protected $tablename = 'tbHulpmiddelen';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_lijst($pijlerID,$filterType,$filternaam){
$this->sql = " SELECT h.id, h.omschrijving, h.pijlerID
FROM tbHulpmiddelen h
WHERE pijlerID={$pijlerID}";
if ($filternaam){
$this->sql.= " AND omschrijving LIKE '%{$filternaam}%' ";
}
$this->sql .=" AND organisatieniveau ={$filterType}
ORDER BY omschrijving";
return $this->get_query_result();
}
function get_alle_hulpmiddelen(){
$this->sql = " SELECT h.id, h.omschrijving, h.pijlerID,p.naam as pijlernaam
FROM tbHulpmiddelen h
LEFT JOIN tbPijlers p
ON p.id = h.pijlerID
WHERE p.fw_versie = {$this->globVersieID}
ORDER BY p.volgorde, h.omschrijving ";
return $this->get_query_result();
}
function get_selected_hulpmiddelen($pijlerid, $ReedsIncluded){
$this->sql = " SELECT h.id, h.omschrijving, h.pijlerID
FROM tbHulpmiddelen h
WHERE (h.pijlerID = {$pijlerid} OR h.pijlerID = 0)";
if ($ReedsIncluded){
$this->sql .=" AND NOT(h.id IN ($ReedsIncluded)) ";
}
$this->sql .=" ORDER BY pijlerID DESC, h.omschrijving ";
return $this->get_query_result();
}
function get_hulpmiddelen_per_pijler($pijlerID){
$this->sql = "SELECT h.id,
o.naamkort as naamkort,
omschrijving,
opmerkingen,
organisatieniveau
FROM tbHulpmiddelen h
LEFT JOIN tb_organisaties o
ON o.id = h.bronID
WHERE pijlerID={$pijlerID}
ORDER BY omschrijving" ;
return $this->get_query_result();
}
function get_nieuwe_middel($newID){
$this->sql = " SELECT id, omschrijving, filenaam
FROM tbHulpmiddelen
WHERE id={$newID}
ORDER BY omschrijving";
return $this->get_query_result();
}
function get_middel($middelID){
$this->sql = "SELECT h.id, h.omschrijving, h.opmerkingen,h.filenaam, h.bronID, h.organisatieniveau as soort,
p.naam as pijlernaam,
o.naamkort as bron
FROM tbHulpmiddelen h
LEFT JOIN tb_organisaties o
ON o.id = h.bronID
LEFT JOIN tbPijlers p
ON p.id = h.pijlerID
WHERE h.id ={$middelID}";
return $this->get_query_result();
}
function get_hulpmiddelenlijst_per_activiteit($actID, $hulpID = false){
$this->sql="SELECT a.id as hID, h.omschrijving , h.id as hulpID
FROM tbActxHulpmiddel a, tbHulpmiddelen h
WHERE a.actID = {$actID}";
if ($hulpID) {$this->sql .= " AND a.hulpID = {$hulpID}";} ;
$this->sql .= " AND h.id = a.hulpID";
return $this->get_query_result();
}
}
@@ -0,0 +1,32 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten x doelgroepen model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModKosten extends MY_Model{
protected $tablename = 'tbActKosten';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_kosten_per_activiteit($actID){
$this->sql = "SELECT id, omschrijving, kosten, activiteitID as actID
FROM tbActKosten
WHERE activiteitID = $actID" ;
$results = $this->get_query_result();
if (! empty($results)) {
foreach ($results as $result) {
$result->kosten = mysql2bedrag($result->kosten);
};
};
return $results;
}
}
@@ -0,0 +1,373 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modpartactiviteiten extends MY_Model{
protected $tablename = 'tbPartActiviteiten';
protected $matrix;
protected $matrixusers;
function __construct(){
parent::__construct();
$models = array('ijkpartituur/Modfases',
'ijkpartituur/Modpartactxorgusers',
'shared/Users_model');
$this->load->model($models);
}
function get_details($where=FALSE, $matrix=FALSE){
$this->matrixusers = $this->set_matrixusers();
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records=FALSE){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->naam = $record->naam;
$details->omschrijving = $record->omschrijving;
$details->start = mysql2date($record->start);
$details->eind = mysql2date($record->eind);
$details->fase = $this->Modfases->get_record_by_id($record->fase, 'naam');
$details->matrix = $this->set_matrix($details->id);
return $details;
}
/**
* [set_matrix description maakt een object per activiteit van gebruikers die een activiteit hebben]
*
* @param $activiteitid integer
*/
function set_matrix($activiteitid){
if($this->matrixusers){
$i=0;
foreach($this->matrixusers as $matrixuser){
$data = array('activiteitID'=>$activiteitid, 'orguserID'=>$matrixuser->id);
$details[$i]['id'] = $matrixuser->id;
$details[$i]['actief'] = $this->Modpartactxorgusers->check_for_record($data);
$data = array('id'=>$activiteitid, 'verantwoordelijke'=>$matrixuser->id);
$details[$i]['verant'] = $this->Modpartactiviteiten->check_for_record($data);
$i++;
}
}else{
$details = FALSE;
}
return $details;
}
/**
* [set_matrixusers description haalt alle gebruikers (orgusers) op
* die een activiteit hebben binnen de partituur (actief)]
*
* @return : array met de actieve gebruikers
*/
function set_matrixusers(){
$this->sql = " SELECT DISTINCT B.id, B.user_id
FROM tb_orgusers B
JOIN tb_users U
ON U.id = B.user_id
WHERE B.organisatie_id = {$this->globorgid}
ORDER BY U.achternaam, U.voornaam";
$actusers = $this->get_query_result();
if($actusers){
foreach($actusers as $actuser){
$actuser->fullname = $this->Users_model->get_fullname($actuser->user_id);
}
}
return $actusers;
}
function get_kortelijst($pijlerID){
$this->sql = " SELECT pa.id,
pa.naam,
pa.verantwoordelijke
FROM tbPartActiviteiten pa
WHERE pa.pijlerID={$pijlerID}
ORDER BY pa.sequence";
return $this->get_query_result();
}
function get_taaklijst($pijlerID,$dag=FALSE,$maand=FALSE,$jaar=FALSE){
// dit vervangt get_activiteiten_per_partituur
if ($dag) {$datestring = $jaar.'-'.$maand.'-'.$dag ;} ;
$this->sql = " SELECT pa.id,
pa.pijlerID,
pa.sequence as sequence,
pa.gereed as perc,
pa.naam as naam,
pa.omschrijving as omschrijving,
pa.start,
pa.eind ,
pa.duur as duur,
pa.niveau,
o.naamkort as bron
FROM tbPartActiviteiten pa
LEFT JOIN tb_orgusers ou
ON pa.verantwoordelijke = ou.id
LEFT JOIN tb_users u
ON u.id = ou.user_id
LEFT JOIN tb_organisaties o
ON o.id = pa.bronID
WHERE pa.pijlerID={$pijlerID} ";
if ($dag) {
$this->sql.=" AND pa.start <= '{$datestring}'
AND pa.eind >= '{$datestring}' ";
};
$this->sql .= " ORDER BY pa.sequence";
return $this->get_query_result();
}
function get_id_lijst ($partID,$pijlerID){
$this->sql = " SELECT id
FROM tbPartActiviteiten
WHERE partituurID = {$partID}
AND pijlerID = {$pijlerID}
ORDER BY sequence";
return $this->get_query_result();
}
function get_activiteiten_per_pijler($pijlerID){
$this->sql = "SELECT pa.id,
pa.naam,
pa.omschrijving,
CONCAT_WS(' ', u.voornaam, u.tussenvoegsel, u.achternaam) as verantwoordelijke,
pa.start,
pa.eind,
greatest(pa.duur,0) as duur,
pa.email_dagen,
pa.email_naar_pl,
pa.email_naar_vw,
pa.email_adres,
pa.gereed,
pa.opmerkingen,
f.naam as fase,
f.kleur,
o.naamkort as bron
FROM tbPartActiviteiten pa
LEFT JOIN tb_organisaties o
ON o.id = pa.bronID
LEFT JOIN tb_orgusers ou
ON ou.id = pa.verantwoordelijke
LEFT JOIN tb_users u
ON u.id = ou.user_id
LEFT JOIN tbFases f
ON f.id = pa.fase
WHERE pa.pijlerID= {$pijlerID}
ORDER BY f.volgorde, pa.naam";
return $this->get_query_result();
}
function get_activiteiten_per_partituur($partID, $pijlerID){
$this->sql = " SELECT pa.id,
pa.pijlerID,
pa.sequence as nr,
pa.gereed as perc,
pa.naam as name,
pa.omschrijving as omschrijving,
'fw' as code,
'1' as level,
pa.start,
pa.eind as end,
pa.duur as duration,
pa.niveau,
o.organistie_naamkort as bron,
p.naam as pijlernaam,
p.omschrijving
FROM tbPartPijlers pp, tbPartActiviteiten pa
LEFT JOIN tbPijlers p
ON p.id = pp.pijlerID
LEFT JOIN tb_orgusers o
ON pa.verantwoordelijke = o.id
LEFT JOIN tb_users u
ON u.id = o.user_id
LEFT JOIN tb_organisaties o
ON pa.bronID =o.id
WHERE pa.partituurID = {$partID}
AND pa.pijlerID={$pijlerID}
ORDER BY pa.sequence";
return $this->get_query_result();
}
function get_kosten_per_partituur_activiteit($actID){
$this->sql = "SELECT id, omschrijving, kosten
FROM tbPartActKosten
WHERE activiteitID = $actID" ;
return $this->get_query_result();
}
function get_doelgroepen_per_partituur_activiteit ($actID){
$this->sql = "SELECT d.id, d.omschrijving
FROM tbPartActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID ={$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
function get_hulpmiddelen_per_partituur_activiteit($actID){
$this->sql = "SELECT h.id, h.omschrijving
FROM tbPartActXHulpmiddel a, tbHulpmiddelen h
WHERE a.activiteitID = {$actID}
AND h.id = a.hulpmiddelID";
return $this->get_query_result();
}
function get_taak_info($taakID){
$this->sql = "SELECT pa.id as ID,
pa.partituurID,
pa.activiteitID,
pa.pijlerID as pijlerID,
p.naam as pijlernaam,
pa.naam as taaknaam,
pa.omschrijving as omschrijving,
pa.opmerkingen,
pa.bronID as soortTaak,
o.naam as bronOmschrijving,
pa.start, pa.eind,
greatest(pa.duur,0) as duur,
pa.afhankelijkvanID,
pa.verantwoordelijke ,
pa.gereed,
r.omschrijving as resOmschrijving,
r.resultaat ,
pa.fase,
pa.email_dagen as eSpanne,
pa.email_naar_pl as mailPleider,
pa.email_naar_vw as mailVerantwoordelijke,
pa.email_adres as mailNaarMail
FROM tbPijlers p,
tbPartPijlers pap,
tbPartActiviteiten pa
LEFT JOIN tbPartActResultaten r
ON pa.id = r.activiteitID
LEFT JOIN tb_organisaties o
ON o.id = pa.bronID
WHERE pa.id = {$taakID}
AND pap.id = pa.pijlerID
AND p.id = pap.pijlerID
";
$outcome = $this->get_query_row();
if ($outcome){
$outcome->start = mysql2date($outcome->start);
$outcome->eind = mysql2date($outcome->eind);
}
return $outcome;
}
function get_overige_taken_in_partituur ($partID, $taakID){
$this->sql = " SELECT id, naam
FROM tbPartActiviteiten pa
WHERE pa.partituurID={$partID}
AND pa.id <> $taakID";
return $this->get_query_result();
}
function get_uitvoerenden_per_activiteit($taakid){
$this->sql ="SELECT ou.id,
CONCAT_WS(' ' ,u.voornaam, u.tussenvoegsel, u.achternaam) as fullname
FROM tbPartActxOrgusers po, tb_orgusers ou, tb_users u
WHERE po.activiteitID = {$taakid}
AND ou.id = po.orguserID
AND u.id = ou.user_id";
return $this->get_query_result();
}
function get_overige_users_per_activiteit($taakid, $orgid){
$this->sql ="SELECT ou.id,
CONCAT_WS(' ' ,u.voornaam, u.tussenvoegsel, u.achternaam) as fullname
FROM tb_orgusers ou, tb_users u
WHERE ou.organisatie_id={$orgid}
AND NOT EXISTS (
SELECT orguserID
FROM tbPartActxOrgusers
WHERE activiteitID = {$taakid}
AND orguserID = ou.id)
AND u.id = ou.user_id";
// AND orguser_level != 0 ";
return $this->get_query_result();
}
function get_sum_kosten($partID){
$this->sql = " SELECT sum(k.kosten) as kosten
FROM tbPartActiviteiten pa
JOIN tbPartActKosten k
ON k.activiteitid = pa.id
WHERE pa.partituurID={$partID}";
$result= $this->db->query($this->sql);
return $result->row()->kosten;
}
function get_gem_gereed($partituurid){
$this->sql ="SELECT sum(gereed) as som, count(*) as aantal
FROM tbPartActiviteiten pa
WHERE pa.partituurID={$partituurid} ";
$result=$this->db->query($this->sql);
$tot = $result->row()->som;
$aantal = $result->row()->aantal;
if ($aantal == 0) {return 0;}
else {return $tot / $aantal;};
}
function get_partituur_gereed($partID){
// $this->db->join('tbPartActiviteiten', 'tbPartActiviteiten.id = '.$this->tablename.'.ActiviteitID');
$this->sql=" SELECT AVG(gereed) as gemgereed
FROM tbPartActiviteiten
WHERE partituurID = {$partID}
GROUP BY partituurID";
$gemgereed = $this->get_query_row();
if ($gemgereed) {
return round($gemgereed->gemgereed,0);
}
else { return 0 ; } ;
}
function get_activiteiten_per_user($orguserid, $partID = FALSE){
$this->sql = "SELECT pa.id, pa.naam, pa.start,pa.eind, pa.duur,pa.gereed,
f.naam as fase,
p.naam as pijler,
pa.pijlerid
FROM tbPartActiviteiten pa
LEFT JOIN tbFases f
ON f.id = pa.fase
LEFT JOIN tbPartPijlers pp
ON pp.id = pa.pijlerid
LEFT JOIN tbPijlers p
ON p.id = pp.pijlerID
WHERE pa.verantwoordelijke = $orguserid";
if ($partID) {$this->sql .= " AND pa.partituurID = {$partID}"; }
else {$this->sql .= " AND pa.partituurID = {$this->partituurid}"; };
return $this->get_query_result();
}
function get_minmax_activiteiten ($pijlerID){
$this->sql="SELECT MIN(start) as minStart,
MAX(start) as maxStart,
MIN(eind) as minEind,
MAX(eind) as maxEind
FROM tbPartActiviteiten
WHERE pijlerID = {$pijlerID} ";
return $this->get_query_row();
}
}
@@ -0,0 +1,40 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartActKosten extends MY_Model{
protected $tablename = 'tbPartActKosten';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_kosten_per_activiteit($actID){
$this->sql = "SELECT id, omschrijving, kosten, activiteitID as actID
FROM tbPartActKosten
WHERE activiteitID = $actID" ;
$results = $this->get_query_result();
if (! empty($results)) {
foreach ($results as $result) {
$result->kosten = mysql2bedrag($result->kosten);
};
};
return $results;
}
function get_kosten_per_regel($kostID){
$this->sql = "SELECT id, omschrijving, kosten , activiteitID as actID
FROM tbPartActKosten
WHERE id = $kostID" ;
$results = $this->get_query_row();
$results->kosten = mysql2bedrag($results->kosten);
return $results;
}
}
@@ -0,0 +1,26 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartActResultaten extends MY_Model{
protected $tablename = 'tbPartActResultaten';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_info($actID){
$this->sql = "SELECT omschrijving, resultaat
FROM tbPartActResultaten
WHERE activiteitID ={$actID}";
return $this->get_query_row();
}
}
@@ -0,0 +1,40 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartActxDoelgroep extends MY_Model{
protected $tablename = 'tbPartActxDoelgroep';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_doelgroepen_per_act ($actID){
$this->sql = "SELECT d.id, d.omschrijving, a.id as padID
FROM tbPartActxDoelgroep a, tbDoelgroepen d
WHERE a.activiteitID ={$actID}
AND d.id = a.doelgroepID";
return $this->get_query_result();
}
function get_doelgroep($newID){
$this->sql = "SELECT d.id, d.omschrijving, a.id as padID
FROM tbPartActxDoelgroep a, tbDoelgroepen d
WHERE a.id ={$newID}
AND d.id = a.doelgroepID";
return $this->get_query_row();
}
function get_other_doelgroepen($actID){
$this->sql = "SELECT d.id, omschrijving
FROM tbDoelgroepen d
WHERE d.id not in (SELECT doelgroepID FROM tbPartActxDoelgroep a WHERE a.activiteitID = {$actID})";
return $this->get_query_result();
}
}
@@ -0,0 +1,42 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of partituur activiteiten x hulpmiddelen model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartActxHulpmiddel extends MY_Model{
protected $tablename = 'tbPartActxHulpmiddel';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_hulpmiddelenlijst_per_activiteit($actID, $hulpID = false){
$this->sql="SELECT a.id as hID, h.omschrijving , h.id as hulpID
FROM tbPartActxHulpmiddel a, tbHulpmiddelen h
WHERE a.actID = {$actID}";
if ($hulpID) {$this->sql .= " AND a.hulpID = {$hulpID}";} ;
$this->sql .= " AND h.id = a.hulpID";
return $this->get_query_result();
}
function get_id_string($partactid){
$this->sql = "SELECT hulpID
FROM tbPartActxHulpmiddel
WHERE actID = {$partactid}";
$results = $this->get_query_result();
$strResult='';
if ($results){
foreach ($results as $result){
if (strlen($strResult) > 0) {$strResult .=',' ;};
$strResult .=$result->hulpID;
};
};
return $strResult;
}
}
@@ -0,0 +1,48 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of model
*
* @author Liesbeth
* @date april 25 2013
*/
class Modpartactxorgusers extends MY_Model{
protected $tablename = 'tbPartActxOrgusers';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_uitvoerenden ($actID){
$this->sql = " SELECT CONCAT_WS(' ' , voornaam,tussenvoegsel,achternaam) as naam
FROM tbPartActxOrgusers p
LEFT JOIN tb_orgusers o
on o.id = p.orguserID
LEFT JOIN tb_users u
ON u.id = o.user_id
WHERE p.activiteitID = {$actID}";
return $this->get_query_result();
}
function get_activiteiten_per_user($orguserid, $partID=FALSE){
$this->sql = "SELECT pa.id, pa.naam, pa.start,pa.eind, pa.duur,pa.gereed,
f.naam as fase,
p.naam as pijler,
pa.pijlerid
FROM tbPartActxOrgusers po, tbPartActiviteiten pa
LEFT JOIN tbFases f
ON f.id = pa.fase
LEFT JOIN tbPartPijlers pp
ON pp.id = pa.pijlerid
LEFT JOIN tbPijlers p
ON p.id = pp.pijlerID
WHERE po.orguserID = $orguserid
AND pa.id = po.activiteitID ";
if ($partID) { $this->sql .= " AND pa.partituurID = {$partID}" ;}
else { $this->sql .=" AND pa.partituurID = {$this->partituurid}"; };
return $this->get_query_result();
}
}
@@ -0,0 +1,19 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of part eigen activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartEigenActiviteiten extends MY_Model{
protected $tablename = 'tbPartEigenActiviteiten';
function __construct(){
// parent::__construct();
//$models = array();
//$this->load->model($models);
}
}
@@ -0,0 +1,127 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Pijlers model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPartPijlers extends MY_Model{
protected $tablename = 'tbPartPijlers';
function __construct(){
parent::__construct('Modpartactiviteiten');
$models = array('ijkpartituur/Pijlers_model');
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
if($records){
foreach($records as $record){
if( $record->huidigniveau < $record->gewenstniveau) {
$details[] = $this->get_record_details($record);
}
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass();
$details->id = $record->id;
$details->pijlernaam = $this->Pijlers_model->get_record_by_id($record->pijlerID, 'naam');
$details->pijlerid = $record->pijlerID;
$details->gewenst = $record->gewenstniveau;
$details->huidig = $record->huidigniveau;
$details->start = mysql2date($record->start);
$details->eind = mysql2date($record->eind);
$details->activiteiten = $this->Modpartactiviteiten->get_details(array('pijlerID'=>$record->id));
return $details;
}
function get_joined_details($partID){
$this->sql=" select pa.id,
pa.partituurID,
pa.pijlerID,
p.volgorde,
p.naam,
p.omschrijving,
pa.huidigniveau as huidig,
pa.gewenstniveau as gewenst,
pa.start,
pa.eind
from tbPartPijlers pa
join tbPijlers p
on pa.pijlerID = p.id
where pa.partituurID = {$partID}
order by p.volgorde";
return $this->get_query_result();
}
function get_pijlers_per_partituur($partID){
$this->sql = "SELECT pp.id ,
pp.pijlerID as pijlerID ,
p.omschrijving ,
p.naam as pijlerNaam,
'school' as code,
'0' as level,
pp.start,
pp.eind as eind,
'0' as perc,
'0' as duration
FROM tbPartPijlers pp, tbPijlers p
WHERE pp.partituurID = {$partID}
AND p.id = pp.pijlerID
AND pp.huidigniveau < pp.gewenstniveau";
return $this->get_query_result();
}
function get_part_pijler_info($pijlerID){
$this->sql="SELECT pp.id, p.naam as naam,
pp.start,
pp.eind
FROM tbPartPijlers pp
LEFT JOIN tbPijlers p
ON p.id = pp.pijlerID
WHERE pp.id = {$pijlerID}" ;
return $this->get_query_row();
}
function pijlers_in_periode($partID,$van,$tm) {
$this->sql = " SELECT pa.id, p.naam, pa.start, pa.eind
FROM tbPartPijlers pa
LEFT JOIN tbPijlers p
ON p.id= pa.pijlerID
WHERE partituurID = {$partID}
AND pa.huidigniveau < pa.gewenstniveau";
return $this->get_query_result();
}
function get_pijlernaam($partpijlerid){
$this->sql = "SELECT p.naam as naam
FROM tbPartPijlers pa
LEFT JOIN tbPijlers p
ON p.id = pa.pijlerID
WHERE pa.id = {$partpijlerid}";
$res = $this->get_query_row();
return $res->naam;
}
function get_minmax_dag($partID){
$this->sql="SELECT MIN(start) as mindag,
MAX(eind) as maxdag
FROM tbPartPijlers
WHERE partituurID = {$partID} ";
return $this->get_query_result();
}
}
@@ -0,0 +1,29 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Pijlers model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPijlers extends MY_Model{
protected $tablename = 'tbPijlers';
function __construct(){
parent::__construct();
// $models = array('Pijlers_model');
// $this->load->model($models);
}
function get_pijlers($globVersieID){
$this->sql="SELECT id ,
volgorde,
naam
FROM tbPijlers
WHERE fw_versie=$globVersieID
ORDER BY volgorde";
return $this->get_query_result();
}
}
@@ -0,0 +1,26 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of portfolio model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModPortfolio extends MY_Model{
protected $tablename = 'tbPortfolio';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_notes($actid){
$this->sql="SELECT id, toonnaam, partactID
FROM tbPortfolio
WHERE partactID = {$actid}
ORDER BY toonnaam";
return $this->get_query_result();
}
} // class definitie
@@ -0,0 +1,32 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Activiteiten model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModReferenties extends MY_Model{
protected $tablename = 'tbReferenties';
function __construct(){
parent::__construct();
//$models = array();
//$this->load->model($models);
}
function get_refs ($type=false,$zoek=false){
$this->sql = "SELECT id, naam, link, opmerking,soort,srtlink, docnaam
FROM tbReferenties";
if ($type) {$this->sql .=" WHERE soort = {$type} ";}
else { $this->sql .= " WHERE true " ; } ;
if ($zoek) {
$zoektekst = '%'.strtolower($zoek).'%';
$this ->sql .=" AND (LOWER(naam) LIKE '{$zoektekst}'
OR LOWER(link) LIKE '{$zoektekst}' )" ;} ;
$this->sql .= " ORDER BY naam";
return $this->get_query_result();
}
} // einde class modreferenties
@@ -0,0 +1,39 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Ruwe Scores model
*
* @author Liesbeth
* @date april 25 2013
*/
class ModRuweScores extends MY_Model{
protected $tablename = 'tbRuweScores';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_scores($partituurID){
$this->sql ="SELECT r.pijlerID,
r.score
FROM tbRuweScores r
LEFT JOIN tbPijlers p
ON p.id = r.pijlerID
WHERE r.partituurId={$partituurID}
ORDER BY r.pijlerID";
return $this->get_query_result();
}
function get_partituurID($van, $tm, $orgid) {
$this->sql = " SELECT MAX(partituurID) as partituurID
FROM tbRuweScores r
WHERE r.orgID ={$orgid}
AND STR_TO_DATE('{$van}' ,'%Y-%m-%d') <= r.creation_date
AND STR_TO_DATE('{$tm}' ,'%Y-%m-%d') >= r.creation_date ";
return $this->get_query_row("partituurID");
}
}
@@ -0,0 +1,257 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Mutatieslog_model
*
* @author Theo Weijmer
* @date februari 4, 2013 11:57 AM
*
*
*
*/
class Mutatielog_model extends MY_Model{
protected $tablename = 'tb_mutatielog';
function __construct(){
parent::__construct();
$models = array('shared/Orgusers_model', 'shared/Users_model', 'shared/Organisaties_model');
$this->load->model($models);
}
function check_if_busy($type){
$this->db->where_in('mutatielog_result_'.$type, array(1,2));
$check = $this->Mutatielog_model->get_records_where();
return $check;
}
function get_mutaties($type, $limit){
$this->db->order_by('mutatielog_crud_'.$type.', id');
$this->db->limit($limit);
$data = array('mutatielog_result_'.$type=>1);
$where= array('mutatielog_result_'.$type=>0);
$this->Mutatielog_model->update_record_where($data, $where);
$mutaties = $this->Mutatielog_model->get_records_where(array('mutatielog_result_'.$type=>1));
return $mutaties;
}
function get_mutatie($mutatie){
$this->sql = "
SELECT *
FROM ".$mutatie->mutatielog_database.".".$mutatie->mutatielog_tablename."
WHERE ".$mutatie->mutatielog_tableid_name." = ".$mutatie->mutatielog_id;
return $this->get_query_row();
}
function mutatie_get(){
$this->load->model('Mutaties_model');
$counted = $this->Mutaties_model->get_instances();
$waiting = $this->Mutaties_model->get_waiting();
$faulted = $this->Mutaties_model->get_faulted();
$data = array('counted'=>$counted, 'waiting'=>$waiting, 'faulted'=>$faulted);
$this->response($data);
}
function faulted_get(){
$this->load->model('Mutaties_model');
$database = $this->get('db');
$tablename= $this->get('tb');
$instances = $this->Mutaties_model->get_faulted_instances($database, $tablename);
$this->response(array('instances'=>$instances));
}
function faulted_post(){
$this->load->model('Mutatielog_model');
$instanceid = $this->post('instanceid');
$this->Mutatielog_model->update_record(array('mutatielog_result'=>9), $instanceid);
}
function faulted_put(){
$this->load->model('Mutatielog_model');
$instanceid = $this->post('instanceid');
$this->Mutatielog_model->update_record(array('mutatielog_result'=>0, 'mutatielog_retry'=>0), $instanceid);
}
/**
* Insert een record
* checkt eerst of het record al bestaat (return excist)
*
* @param array $mutatie bevat alle data van de mutatie
* @return string resultaat van de insert
*/
function mutatie_insert($mutatie){
$record = $this->make_record($mutatie);
if($this->check_for_record($mutatie)){
$status = 'excist';
}else{
$this->db->set($record);
$this->db->insert($mutatie->mutatielog_tablename);
if($mutatie->mutatielog_tablename=='tb_orgusers'){
$newid = $this->db->insert_id();
$status = $this->set_orgusers($newid);
}elseif($mutatie->mutatielog_tablename=='tb_organisaties'){
$newid = $this->db->insert_id();
$status = $this->set_organisatie($newid);
}else{
$status = 'success';
}
}
return $status;
}
/**
* Functie update het user_id en organsiatie_id in de tabel orgusers
* het user_id en organsiatie_id zijn niet noodzakelijkerwijs identiek
* in source en target
*
* @param int $orguserid id van het record dat moet worden gewijzigd
* @return string resultaat van de update
*/
function set_orgusers($orguserid){
$result = 'orguser';
$orguser = $this->Orgusers_model->get_record_by_id($orguserid);
if($orguser){
$data = array('portal_id'=>$orguser->user_id);
$user = $this->Users_model->get_records_where($data, TRUE);
$data = array('portal_id'=>$orguser->organisatie_id);
$org = $this->Organisaties_model->get_records_where($data, TRUE);
// var_dump($user);
// var_dump($org);
if($user && $org){
$data = array( 'user_id' => $user->id ,
'organisatie_id'=> $org->id );
$this->Orgusers_model->update_record($data, $orguserid);
$result = 'success';
}
}
return $result;
}
function set_organisatie($orgid){
//haalt het zojuist geinserte record op
$org = $this->Organisaties_model->get_record_by_id($orgid);
if($org->id == $org->valtonder_id){
//als het een nieuw= bestuur is organisatieid gelijk aan het nieuw ingevoerde id
$bestuurid = $orgid;
}else{
//haalt het record op van het bestuur (organisatie_id staat nog op het portal id)
$bestuurid = $this->Organisaties_model->get_records_where(array('portal_id'=>$org->valtonder_id), TRUE)->id;
}
$this->Organisaties_model->update_record(array('valtonder_id'=>$bestuurid), $orgid);
return 'success';
}
function mutatie_update($mutatie){
$record = $this->make_record($mutatie);
if(!$this->check_for_record($mutatie)){
$status= 'no-record';
}else{
if($mutatie->mutatielog_tablename=='tb_orgusers'){
unset($record['user_id']);
unset($record['organisatie_id']);
}elseif($mutatie->mutatielog_tablename=='tb_organisaties'){
unset($record['valtonder_id']);
}
$this->db->where($mutatie->mutatielog_tableid_name, $mutatie->mutatielog_id);
$this->db->update($mutatie->mutatielog_tablename, $record);
$status = 'success';
}
return $status;
}
function mutatie_delete($mutatie){
$this->db->where($mutatie->mutatielog_tableid_name, $mutatie->mutatielog_id);
$this->db->delete($mutatie->mutatielog_tablename);
return 'success';
}
function store_mutatie($mutatie){
$sql = "
INSERT INTO replicatie.replicatielog (replicatie_data, creation_date, created_by, last_update_date, last_updated_by)
VALUES('".mysql_real_escape_string(serialize($mutatie))."', NOW(), 'cron', NOW(), 'cron')";
$this->db->query($sql);
}
function check_for_record($mutatie){
$this->sql = "
SELECT *
FROM ".$mutatie->mutatielog_tablename."
WHERE ".$mutatie->mutatielog_tableid_name." = ".$mutatie->mutatielog_id;
return $this->get_query_result();
}
function make_record($mutatie){
if($mutatie->mutatielog_tablename=='tb_users') $mapping = $this->map_usertable();
if($mutatie->mutatielog_tablename=='tb_orgusers') $mapping = $this->map_orguserstable();
if($mutatie->mutatielog_tablename=='tb_organisaties') $mapping = $this->map_organisatietable();
foreach($mapping as $source => $target){
$record[$target] = $mutatie->record->$source;
}
return $record;
}
function map_usertable(){
$mapping = array(
'id' => 'portal_id' ,
'user_name' => 'gnaam' ,
'user_voornaam' => 'voornaam' ,
'user_tussenvoegsel'=> 'tussenvoegsel' ,
'user_achternaam' => 'achternaam' ,
'user_email' => 'email' ,
'user_password' => 'wachtwoord' ,
'user_salt' => 'zout' );
return $mapping;
}
function map_orguserstable(){
$mapping = array(
'id' => 'portal_id' ,
'organisatie_id'=> 'organisatie_id' ,
'user_id' => 'user_id'
// ,
// 'orguser_levelpartituur'=> 'orguser_level'
);
return $mapping;
}
function map_organisatietable(){
$mapping = array(
'id' => 'portal_id' ,
'organisatie_id' => 'valtonder_id' ,
'organisatie_naam' => 'naam' ,
'organisatie_naamkort' => 'onaamkort' ,
'organisatie_brin' => 'brin' ,
'organisatie_straat' => 'adres' ,
// 'organisatie_postcode' => 'organisatie_postcode' ,
'organisatie_plaats' => 'plaats' ,
// 'organisatie_mail' => 'organisatie_email' ,
// 'organisatie_telefoon' => 'organisatie_telefoon' ,
'organisatie_partituur' => 'partituur' ,
'organisatie_partituurdatum'=> 'partituurdatum' );
return $mapping;
}
}
@@ -0,0 +1,68 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of niveaus_model
*
* @author Theo Weijmer
* @date april 26, 2013 12:00 PM
*
*/
class Niveaus_model extends MY_Model{
protected $tablename = 'tbNiveaus';
function __construct(){
parent::__construct();
$models = array('');
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass();
$details->id = $record->id;
$details->nummer = $record->nummer;
$details->omschrijving = $record->omschrijving;
$details->tekst = $record->tekst;
return $details;
}
function get_last_niveaus ($lastVersieID){
$this->sql= "SELECT id,nummer, omschrijving,tekst
FROM tbNiveaus
WHERE fw_versie = {$lastVersieID}
AND actief = 1 ";
return $this->get_query_result();
}
function get_niveaus(){
$this->sql= "SELECT id, omschrijving
FROM tbNiveaus
WHERE fw_versie = {$this->globProfielVersieID}
ORDER BY nummer";
return $this->get_query_result();
}
function get_niveau($id) {
$this->sql = "SELECT nummer,
omschrijving as header,
tekst
FROM tbNiveaus
WHERE id= {$id}";
return $this->get_query_row();
}
}
@@ -0,0 +1,53 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Orgusers_model
*
* @author Theo Weijmer
* @date april 26, 2013 12:00 PM
*
*/
class Nivoprofielen_model extends MY_Model{
protected $tablename = 'tbNivoProfielen';
function __construct(){
parent::__construct();
$models = array('');
$this->load->model($models);
}
function get_profielen_niveaus($versieID){
$this->sql ="SELECT *
FROM tbNiveaus
WHERE fw_versie = {$versieID}
ORDER BY nummer";
return $this->get_query_result();
}
function get_profielen_profiel ($niveauID){
$this->sql = "SELECT pro.niveauID,
pro.waarde,
pro.id as profielID,
p.id as pijlerID,
p.naam
FROM tbPijlers p
LEFT OUTER JOIN tbNivoProfielen pro
ON p.id = pro.pijlerID
WHERE pro.niveauID = {$niveauID}
ORDER BY p.volgorde";
return $this->get_query_result();
}
function get_last_profielen($pijlerID){
$this->sql="SELECT niveauID, waarde
FROM tbNivoProfielen
WHERE pijlerID = {$pijlerID}";
return $this->get_query_result();
}
function update_niveau($oudID, $nieuwID,$minPijlerID){
$this->sql = "UPDATE tbNivoProfielen
SET niveauID = {$nieuwID}
WHERE niveauID={$oudID}
AND pijlerID >= {$minPijlerID}";
$this->db->query($this->sql);
}
} // einde class definitie
@@ -0,0 +1,280 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Organisaties_model
*
* @author Theo Weijmer
* @date april 26, 2013 4:09 PM
*
*
*
*/
class Organisaties_model extends MY_Model{
protected $tablename = 'tb_organisaties';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where=FALSE, $like=FALSE){
if($like){
$records = $this->get_searchbgs($like);
}else{
$records = $this->get_records_where($where);
}
if($records){
foreach($records as $record){
$details[] = $this->get_organisatie_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_organisatie_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->orgnaam = $record->naam;
$details->orgkort = $record->naamkort;
$details->brin = $record->organisatie_brin;
$details->vestiging = $record->organisatie_vestiging;
$details->adres = $record->organisatie_adres;
$details->postcode = $record->organisatie_postcode;
$details->plaats = $record->organisatie_plaats;
$details->email = $record->organisatie_email;
$details->telefoon = $record->organisatie_telefoon;
if($record->id==$record->organisatie_id){
$data = array('organisatie_id'=>$record->id, 'id !=' =>$record->organisatie_id, 'partituur' => 'T');
$details->scholen = $this->get_details($data);
$details->bg = TRUE;
}else{
$details->scholen = FALSE;
$details->bg = FALSE;
}
return $details;
}
function get_partituur_bgs($isbg){
$this->sql = "
SELECT *
FROM tb_organisaties O
JOIN ( SELECT DISTINCT organisatie_id
FROM tb_organisaties
WHERE partituur='T'
) Q1
ON Q1.organisatie_id = O.id ";
if(!$this->admin){
if($isbg){
$this->sql .="
WHERE O.organisatie_id = {$this->orgid} ";
}else{
$orgs =$this->get_orgs_by_orguserID($this->userid);
if(!$orgs){
return FALSE;
}else{
$wherein = array();
foreach($orgs as $org){
array_push($wherein, $org->id);
}
$this->sql .="
WHERE O.id IN() {$wherein} ";
}
}
}
$records = $this->get_query_result();
if($records){
foreach($records as $record){
$details[] = $this->get_organisatie_details($record);
}
}
return $details;
}
function check_isbg($orgid){
$org = $this->Organisaties_model->get_record_by_id($orgid);
if($org->id == $org->organisatie_id){
return TRUE;
}else{
return FALSE;
}
}
function get_orgs($orgid = false, $row = false){
$this->sql="SELECT id, organisatie_naamkort as naamkort,
COALESCE(organisatie_plaats,'onbekend') as plaats
FROM tb_organisaties";
if ($orgid > 0){
$this->sql .=" WHERE organisatie_id = {$orgid} ";
} ;
$this->sql .=" ORDER BY organisatie_id, organisatie_naamkort ";
if ($row) {return $this->get_query_row() ;}
else {return $this->get_query_result();};
}
function get_org_by_id($orgid = false){
$this->sql="SELECT id, organisatie_naamkort as naamkort,
COALESCE(organisatie_plaats,'onbekend') as plaats
FROM tb_organisaties
WHERE id = {$orgid} ";
return $this->get_query_row() ;
}
function get_bgs(){
$this->sql="SELECT id, organisatie_naamkort as naamkort,
COALESCE(organisatie_plaats,'onbekend') as plaats
FROM tb_organisaties
WHERE id = organisatie_id ";
return $this->get_query_result() ;
}
function get_BG_by_id($BGid){
$this->sql="SELECT organisatie_naam,
organisatie_naamkort as naamkort,
organisatie_brin,
organisatie_adres,
organisatie_postcode,
organisatie_plaats,
organisatie_email,
organisatie_telefoon
FROM tb_organisaties
WHERE id = {$BGid}";
return $this->get_query_row() ;
}
function get_orgs_per_bg($BGid){
$this->sql= " SELECT organisatie_naam,
organisatie_naamkort as naamkort,
organisatie_brin,
organisatie_adres,
organisatie_postcode,
organisatie_plaats,
organisatie_email,
organisatie_telefoon
FROM tb_organisaties
WHERE organisatie_id = {$BGid}
AND id <> {$BGid}";
return $this->get_query_result();
}
function get_orgs_by_orguserid ($userID){
$this->sql = "SELECT o.*
FROM tb_organisaties o
INNER JOIN tb_orgusers ou
ON o.id = ou.orguser_organisatie_id
WHERE ou.orguser_user_id = {$userID}
ORDER BY o.organisatie_id, o.id, o.organisatie_naam";
$res = $this->get_query_result();
if($res){
foreach($res as $record){
$details[] = $this->get_organisatie_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function table_def(){
$this->sql = "
";
}
function getorgsfororguser($userid){
$this->sql= "SELECT O.id
FROM tb_organisaties O
JOIN tb_orgusers OU ON (OU.orguser_user_id = 838 AND OU.orguser_organisatie_id = O.id)";
return $this->get_query_result();
}
function getallorgs($targetorgs,$system){
$this->sql = " SELECT id, organisatie_naam, concat_ws('-',organisatie_naamkort,organisatie_plaats, organisatie_brin) AS orgnaam
FROM tb_organisaties
WHERE id in ({$targetorgs}) OR
(organisatie_id IN ({$targetorgs}) AND id != organisatie_id) OR
$system
ORDER BY organisatie_naamkort";
return $this->get_query_result();
}
function getorglist($orgid){
// get een lijst van id's van alle organisaties die onder hetzelfde swv vallen als $orgid.
// $orgid kan een organisatie op alle niveaus betreffen, dus dat moet wel eerst opgezocht worden
$toporg =$this->getswvrecursief($orgid);
$orglist = array();
if ($toporg) $orglist = $this->getlistrecursief($toporg->id, $orglist);
return $orglist;
}
function getlistrecursief($orgid,$lijst){
$lijst = array_merge($lijst, array($orgid));
$this->sql = "select id
from tb_organisaties
where organisatie_id = {$orgid}
and id <> {$orgid}";
$newlijst = $this->get_query_result();
if ($newlijst){
foreach($newlijst as $newid){
$lijst= $this->getlistrecursief($newid->id, $lijst);
}
}
return $lijst;
}
function getswvrecursief($orgid){
$organisatie = $this->get_record_by_id($orgid);
if ($organisatie ){
$this->sql = "SELECT id, soort, organisatie_id, organisatie_naam
FROM tb_organisaties
WHERE id = {$organisatie->organisatie_id}
AND id != {$organisatie->id}";
$org = $this->get_query_row();
if ($org) {
$organisatie = $this->getswvrecursief($org->id);
}
}
return $organisatie;
}
function getorgs($type, $orgid=FALSE){
$this->sql = "SELECT id, soort, organisatie_naam AS naam,
organisatie_brin AS brin,
organisatie_vestiging AS vestiging,
organisatie_plaats AS plaats
FROM tb_organisaties
WHERE soort = {$type}";
if ($orgid) {
$this->sql .= " AND organisatie_id = {$orgid} ";
}
$this->sql .= " ORDER BY organisatie_naamkort";
return $this->get_query_result();
}
function searchorgs($orgnaam){
$this->sql="SELECT id, concat_ws('-', organisatie_brin, organisatie_vestiging) AS brin,
organisatie_naamkort AS naam, organisatie_plaats AS plaats
FROM tb_organisaties
WHERE UPPER(organisatie_naam) LIKE '%{$orgnaam}%'
OR UPPER(organisatie_naamkort) LIKE '%{$orgnaam}%'
ORDER BY organisatie_naamkort
LIMIT 200";
return $this->get_query_result();
}
}
@@ -0,0 +1,110 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Orgusers_model
*
* @author Theo Weijmer
* @date april 26, 2013 12:00 PM
*
*
*
*/
class Orgusers_model extends MY_Model{
protected $tablename = 'tb_orgusers';
function __construct(){
parent::__construct();
$models = array('shared/Organisaties_model',
'shared/Autorisaties_model');
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
if($records){
foreach($records as $record){
$details[] = $this->get_orguser_details($record);
}
}
if ($details )
{ return $details;}
else {return false;};
}
function get_orguser_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->level = $record->orguser_level;
$details->orgid = $record->orguser_organisatie_id;
$details->orgnaam = $this->Organisaties_model->get_record_by_id($record->orguser_organisatie_id, 'organisatie_naamkort');
$details->userid = $record->orguser_user_id;
$details->autorisaties = $this->Autorisaties_model->get_autorisaties($record->orguser_level);
return $details;
}
function table_def(){
$this->sql = "
";
}
function get_org_users($orgid){
$this->sql="
SELECT ou.id,
CONCAT_WS(' ', u.voornaam,u.tussenvoegsel,u.achternaam) as fullname
FROM tb_orgusers ou, tb_users u
WHERE ou.orguser_organisatie_id = {$orgid}
AND u.id = ou.orguser_user_id";
// AND orguser_level != 0 ";
return $this->get_query_result();
}
function get_org_user($userid){
$this->sql="SELECT ou.id,
CONCAT_WS(' ', u.voornaam,u.tussenvoegsel,u.achternaam) as fullname
FROM tb_orgusers ou, tb_users u
WHERE ou.id= {$userid}
AND u.id = ou.orguser_user_id";
return $this->get_query_row();
}
function get_orguser_from_user($userid, $orgid){
$this->sql = "SELECT *
FROM tb_orgusers
WHERE orguser_user_id={$userid}
AND orguser_organisatie_id ={$orgid}";
return $this->get_query_row();
}
function get_full_users($orgid, $admin=false){
$this->sql= " SELECT ou.id,
CONCAT_WS(' ', u.voornaam,u.tussenvoegsel,u.achternaam) as fullname,
u.user_email, ";
if ($admin){
$this->sql.="gnaam as user_name ,";
}else{
$this->sql.="'*' as user_name ,";
}
$this->sql.=" ou.orguser_level as level
FROM tb_orgusers ou, tb_users u
WHERE ou.organisatie_id = {$orgid}
AND u.id = ou.user_id";
return $this->get_query_result();
}
function get_single_orguser($userid){
$this->sql = " SELECT id, orguser_organisatie_id as organisatie_id
FROM tb_orgusers
WHERE orguser_user_id = $userid
LIMIT 1";
return $this->get_query_row();
}
}
@@ -0,0 +1,100 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Pages_model
*
* @author Theo Weijmer
* @date april 26, 2013 7:14 PM
*
*
*
*/
class Pages_model extends MY_Model{
protected $tablename = 'tb_pages';
protected $level;
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_usermenu_ls($level, $partnodig){
$this->sql = "SELECT id , page_name as naam, page_url as url,
page_initmodel as komodel, always
FROM tb_pages
WHERE (SELECT page_level & {$level} ) != 0
AND page_id = id
AND page_partnodig <= {$partnodig}
ORDER BY page_order";
$pages= $this->get_query_result();
if ($pages){
foreach($pages as $page){
$this->sql = "SELECT id , page_name as naam, page_url as url,
page_initmodel as komodel, always
FROM tb_pages
WHERE (SELECT page_level & {$level} ) != 0
AND page_id != id
AND page_id = {$page->id}
AND page_partnodig <= {$partnodig}
ORDER BY page_order";
$page->submenu = $this->get_query_result();
}
}
return $pages;
}
function get_details($where=FALSE ){
$this->db->order_by('page_order');
$records = $this->get_records_where($where);
if($records){
foreach($records as $record){
$details[] = $this->get_page_details($record);
}
}
return $details;
}
function get_usermenu($level,$partnodig){
$this->level = $level;
$this->db->where("(SELECT page_level & {$this->level} ) != 0 ");
$this->db->where('page_id = id');
$this->db->where("page_partnodig <= {$partnodig}");
$pages = $this->get_details();
return $pages;
}
function get_page_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->naam = $record->page_name;
$details->url = $record->page_url;
$details->komodel = $record->page_initmodel;
$details->always = $record->always;
if($record->id==$record->page_id){
$data = array( 'page_id' => $record->page_id ,
'id !=' => $record->page_id ,
"(SELECT page_level & {$this->level} ) !=" => 0 );
$details->submenu = $this->get_details($data);
}
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,29 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of PartEigenpijlers_model
*
* @author Theo Weijmer
* @date mei 8, 2013 4:21 PM
*
*/
class part_eigenpijlers_model extends MY_Model{
protected $tablename = 'tb_parteigenpijlers';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_pijlers($partID){
$this->sql="SELECT pep.id,
ep.eigenpijler_naam as naam
FROM tb_parteigenpijlers pep
JOIN tb_eigenpijlers ep
ON pep.eigenpijlerID = ep.id
WHERE pep.partituurID = $partID" ;
return $this->get_query_result();
}
}
@@ -0,0 +1,77 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of partactkosten_model
*
* @author Theo Weijmer
* @date mei 8, 2013 4:41 PM
*
*
*
*/
class Partactkosten_model extends MY_Model{
protected $tablename = 'tbPartActKosten';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details(){
if($records){
foreach($records as $record){
$this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass;
return $details;
}
function get_partituur_kosten($where){
$this->db->from($this->tablename);
$this->db->join( 'tbPartActiviteiten', 'tbPartActiviteiten.id = '.$this->tablename.'.ActiviteitID');
$query = $this->db->get();
$actkosten = $query->result();
$kosten = 0;
if($actkosten){
foreach($actkosten as $actkost){
$kosten = $kosten + $actkost->Kosten;
}
}
return $kosten;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,88 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Partituurs_model
*
* @author Theo Weijmer
* @date mei 8, 2013 3:42 PM
*
*
*
*/
class Partituurs_model extends MY_Model{
protected $tablename = 'tb_partituurs';
function __construct(){
parent::__construct();
$models = array('ijkpartituur/Partactkosten_model','ijkpartituur/Modpartactiviteiten');
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_details($where){
$record = $this->get_records_where($where, TRUE);
if($record){
$details = $this->get_record_details($record);
}else{
$details = FALSE;
}
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->naam = $record->partituur_naam;
$details->actief = $record->partituur_actief;
$details->projectleider = $this->Users_model->get_user_detail_by_id($record->partituur_projectleider_id);
if (!$record->partituur_projectleider_id){
$details->projectleider = new stdClass;
$details->projectleider->fullname = '';
$details->projectleider->fullname="onbekend";};
$details->email = $record->partituur_email;
$details->profielid = $record->partituur_profiel_id;
$details->startdatum = mysql2date($record->partituur_start);
$details->einddatum = mysql2date($record->partituur_eind);
$details->kosten = $this->Partactkosten_model->get_partituur_kosten(array('partituurID'=>$record->id));
$details->gereed = $this->Modpartactiviteiten->get_partituur_gereed($record->id);
return $details;
}
function getPartituren($orgid){
$this->sql="SELECT id, partituur_naam as naam, partituur_actief as actief
FROM tb_partituurs
WHERE partituur_organisatie_id = $orgid";
return $this->get_query_result() ;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,176 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Phantom_model
*
* @author Theo Weijmer
* @date juni 28, 2013 1:41 PM
*
*
*
*/
class Phantom_model extends CI_Model{
protected $rootpath ;
protected $phantomPath ='/jslibrary/phantom/pdfPrint.js';
protected $pagesize = 'A4';//'A3, A4, A5, Legal, Letter, Tabloid'
protected $margins = array("1.5cm", "1.5cm", "1.0cm", "1.0cm");
protected $orientation = 'portrait'; // 'portrait, landscape'
protected $pdffolder = '/pdf/';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
$this->rootpath = $_SERVER['DOCUMENT_ROOT'];
// $this->rootpath = '/Users/liesbeth2/Sites/frameworkpdfs';
}
function get_pdf($data){
$data = $this->set_variables($data);
$filename = $data['filename'];
$data['filename'] = $this->get_filename($data['filename'], $data['timestamp']);
$data['header'] = $this->get_header($data['header']);
$data['pagesize'] = $this->get_page_size($data['pagesize']);
$data['margins'] = $this->get_margins($data['margins']);
$data['orientation']= $this->get_orientation($data['orientation']);
$this->make_pdf($data);
$this->download_pdf($data['filename'], $filename);
}
private function set_variables($vars){
$data = array('url'=>$vars['url'], 'filename'=>$vars['filename']);
if(!isset($vars['timestamp'])) $vars['timestamp'] = TRUE;
if(!isset($vars['header'])) $vars['header'] = TRUE;
if(!isset($vars['pagesize'])) $vars['pagesize'] = FALSE;
if(!isset($vars['margins'])) $vars['margins'] = FALSE;
if(!isset($vars['orientation'])) $vars['orientation']= FALSE;
$data['timestamp'] = $vars['timestamp'] ;
$data['header'] = $vars['header'] ;
$data['pagesize'] = $vars['pagesize'] ;
$data['margins'] = $vars['margins'] ;
$data['orientation']= $vars['orientation'];
return $data;
}
private function make_pdf($data){
$strexec = $this->config->item('phantompath').'phantomjs '.$this->rootpath.$this->phantomPath.' ';
// echo var_dump($data);
$strexec.= "'".json_encode($data)."'";
// echo $strexec;
exec($strexec);
}
private function download_pdf($filename, $downloadname){
$this->load->helper('download');
$data = file_get_contents($filename); // Read the file's contents
force_download($downloadname, $data);
chmod($filename, 0777);
unlink($filename);
}
private function get_filename($filename, $timestamp){
if(strtoupper(substr($filename, -4))=='.PDF'){
$filename = substr($filename, 0, (strlen($filename)-4));
}
if($timestamp){
date_default_timezone_set("UTC");
$date = new DateTime();
$filename.='_'.$date->format('U');
}else{
$filename;
}
return $this->rootpath.$this->pdffolder.$filename.'.pdf';
}
private function get_header($header){
if(!$header){
return FALSE;
}elseif(strlen($header)<=1){
return $this->load->view('reports/default_header', '', TRUE);
}else{
return $header;
}
}
private function get_footer($header){
if(!$header){
return FALSE;
}elseif(strlen($header)<=1){
return $this->load->view('reports/default_footer', '', TRUE);
}else{
return $header;
}
}
private function get_page_size($pagesize){
if(!$pagesize){
return $this->pagesize;
}elseif(!in_array($pagesize, array('A3', 'A4', 'A5', 'Legal', 'Letter', 'Tabloid'))){
return $this->pagesize;
}else{
return $pagesize;
}
}
private function get_margins($margins){
$add='';
if(!$margins){
return $this->margins;
}elseif(!is_array($margins)){
$margins = str_replace('cm', $margins);
if(!is_numeric($margins)) return $this->margins;
return array($margins.'cm',$margins.'cm',$margins.'cm',$margins.'cm');
}elseif(count($margins)==2){
$margin1 = str_replace('cm', $margins[0]);
$margin2 = str_replace('cm', $margins[1]);
if(!is_numeric($margin1) && !is_numeric($margins2)) return $this->margins;
if(!is_numeric($margin1)){
return array($this->margins[0].'cm', $margins2.'cm', $this->margins[2].'cm', $margins2.'cm');
}elseif(!is_numeric($margin1)){
return array($margins1.'cm', $this->margins[1].'cm', $margins1.'cm', $this->margins[3].'cm');
}else{
return array($margins1.'cm', $margins2.'cm', $margins1.'cm', $margins2.'cm');
}
}elseif(count($margins)==4){
for($i=0; $i<=3; $i++){
if(is_numeric(str_replace('cm', '',$margins[$i]))){
$newmargins[$i] = str_replace('cm', '',$margins[$i]). 'cm';
}else{
$newmargins[$i] = str_replace('cm', '',$this->margins[$i]). 'cm';
}
}
return $newmargins;
}else{
return $this->margins;
}
}
private function get_orientation($orientation){
if(in_array($orientation, array('portrait', 'landscape'))){
return $orientation;
}else{
return $this->orientation;
}
}
}
@@ -0,0 +1,33 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of pijlers_model
*
* @author Theo Weijmer
* @date april 26, 2013 12:00 PM
*
*/
class Pijlers_model extends MY_Model{
protected $tablename = 'tbPijlers';
function __construct(){
parent::__construct();
$models = array('');
$this->load->model($models);
}
function get_pijlers($globVersie){
$this->sql="SELECT id, volgorde, naam , omschrijving
FROM tbPijlers
WHERE fw_versie = {$globVersie}
ORDER BY volgorde";
return $this->get_query_result();
}
function get_last_pijlers ($lastVersieID){
$this->sql = "SELECT id,volgorde, naam, omschrijving
FROM tbPijlers
WHERE fw_versie = {$lastVersieID}";
return $this->get_query_result();
}
}
@@ -0,0 +1,82 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Reports_model
*
* @author Theo Weijmer
* @date juni 29, 2013 2:06 PM
*
*
*
*/
class Reports_model extends MY_Model{
protected $tablename = 'tb_reports';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->name = $record->report_name;
$details->level = $record->report_level;
$details->functie = $record->report_function;
return $details;
}
function get_reports_by_level(){
$this->sql = "
SELECT id, report_name as name, report_level as level, report_function as functie
FROM tb_reports R
WHERE (SELECT {$this->userrole} & report_level)!=0
ORDER BY volgorde";
$records = $this->get_query_result();
// return $this->get_records_details($records);
return $records;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,67 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Session_model
*
* @author Theo Weijmer
* @date juni 30, 2013 7:32 PM
*
*
*
*/
class Session_model extends MY_Model{
function __construct(){
parent::__construct();
$models = array( 'shared/Orgusers_model',
'shared/Autorisaties_model');
$this->load->model($models);
}
function set_session($user){
$orguser = $this->Orgusers_model->get_records_where(array('user_id'=>$user->id), TRUE);
$write = $this->Autorisaties_model->check_autorisatie((WRITE + ADMIN), $orguser->orguser_level);
if($orguser){
$data = array( 'userid' => $user->id ,
'username' => $user->user_name ,
'orgid' => $orguser->orguser_organisatie_id ,
'globorgid' => $orguser->orguser_organisatie_id ,
'role' => $orguser->orguser_level ,
'write' => $write );
}
$this->session->set_userdata($data);
}
function set_userid($userid){
$this->session->set_userdata('userid', $userid);
}
function set_globorgid($orgid){
$this->session->set_userdata('globorgid', $orgid);
}
function set_orgid($orgid){
$this->session->set_userdata('orgid', $orgid);
}
function set_role($role){
$this->session->set_userdata('role', $role);
}
function set_tmpuserid($userid){
$this->session->set_userdata('tmpuserid', $userid);
}
function set_logged(){
$this->session->set_userdata('logged', TRUE);
}
function unset_logged(){
$this->session->unset_userdata('logged');
$this->session->sess_destroy();
}
function set_write($userrole){
$write = $this->Autorisaties_model->check_autorisatie((WRITE + ADMIN), $userrole);
$this->session->set_userdata('write', $write);
}
}
@@ -0,0 +1,71 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Tags_model
*
* @author Theo Weijmer
* @date juli 17, 2013 11:47 AM
*
*
*
*/
class Tags_model extends MY_Model{
protected $tablename = 'tb_tags';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
$details = $this->get_records_details($records);
return $details;
}
function get_records_details($records){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_single_detail($where){
$record = $this->get_records_where($where, TRUE);
$details = $this->get_record_details($record);
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->tagname = $record->tag_name;
return $details;
}
function table_def(){
$this->sql = "
";
}
}
@@ -0,0 +1,172 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Users_model
*
* @author Theo Weijmer
* @date april 26, 2013 9:56 AM
*
*
*
*/
class Users_model extends MY_Model{
protected $tablename = 'tb_users';
function __construct(){
parent::__construct();
$models = array('shared/Orgusers_model');
$this->load->model($models);
}
function get_details($where=FALSE){
$records = $this->get_records_where($where);
if($records){
$details = $this->get_records_details($records);
}else{
$details = FALSE;
}
return $details;
}
function get_records_details($records ){
if($records){
foreach($records as $record){
$details[] = $this->get_record_details($record);
}
}
if(!isset($details)) $details = FALSE;
return $details;
}
function get_record_details($record){
$details = new stdClass;
$details->id = $record->id;
$details->username = $record->user_name;
$details->fullname = $this->get_fullname($record->id);
$details->orgusers = $this->Orgusers_model->get_details(array('orguser_user_id'=>$record->id), TRUE);
return $details;
}
function get_user_detail_by_id($userid){
$user = $this->get_record_by_id($userid);
if($user){
$details = $this->get_record_details($user);
}else{
$details = FALSE;
}
return $details;
}
function get_users_by_organisatie($organisatieid){
$this->db->join('tb_orgusers', 'tb_users.id = orguser_user_id');
$this->db->order_by('user_lastname', 'user_firstname');
$this->db->select('tb_users.*');
$where = array('orguser_organisatie_id'=>$organisatieid);
$records= $this->get_query($where);
if($records){
$details= $this->get_records_details($records);
}else{
$details = FALSE;
}
return $details;
}
function get_users_by_bg($bgID){
$this->sql="SELECT u.*
FROM tb_users u, tb_orgusers ou, tb_organisaties o
WHERE o.id = o.organisatie_id
AND ou.orguser_organisatie_id = o.id
AND u.id= ou.orguser_user_id";
$records = $this->get_query_result();
if($records){
$details = $this ->get_records_details($records);
}else{
$details = FALSE;
}
return $details;
}
function get_user_by_name($username){
$where = array('UCASE(user_name)' => strtoupper($username));
$user = $this->get_records_where($where, TRUE);
return $user;
}
function get_fullname($userid){
$user = $this->get_record_by_id($userid);
$fullname = $user->user_firstname;
if(strlen($user->user_midlename)!=0) $fullname.=" ".$user->user_midlename;
$fullname.= " ".$user->user_lastname;
return $fullname;
}
function getgebruikers($orgid){
$this->sql = "SELECT O.id, user_name,user_firstname AS voornaam,
user_midlename AS tussenvoegsel,
user_lastname AS achternaam,
user_email AS email,
A.level AS level,
AT.autorisatietype_naam as autorisatie
FROM tb_users O
JOIN tb_orgusers OU ON OU.orguser_user_id = O.id
left JOIN tb_autorisaties A ON A.orguser_id = OU.id
left JOIN tb_autorisatietypes AT on AT.autorisatietype_level = A.level
WHERE OU.orguser_organisatie_id = {$orgid}
AND actief = 1
ORDER BY user_lastname";
return $this->get_query_result();
}
function getgebruiker($userid){
$this->sql = "SELECT O.id, user_name,user_firstname AS voornaam,
user_midlename AS tussenvoegsel,
user_lastname AS achternaam,
user_email AS email,
A.level AS level,
AT.autorisatietype_naam as autorisatie
FROM tb_users O
JOIN tb_orgusers OU ON OU.orguser_user_id = O.id
left JOIN tb_autorisaties A ON A.orguser_id = OU.id
left JOIN tb_autorisatietypes AT on AT.autorisatietype_level = A.level
WHERE O.id = {$userid}";
return $this->get_query_row();
}
function checkusername ($userid, $gnaam){
$testuser = $this->Users_model->get_records_where(array("user_name" =>$gnaam), TRUE);
if ($userid == null && $testuser) { return false; }
elseif ($testuser && $testuser->id != $userid) { return false;}
else {return true;};
}
function getotherusers($orgid, $orglist, $role,$zoekstring){
$this->sql = "SELECT U.id, concat_ws(' ', user_firstname, user_midlename, user_lastname, concat('-', ORG.organisatie_naamkort)) AS naam FROM tb_users U
left JOIN tb_orgusers OU ON OU.orguser_user_id = U.id
AND (OU.orguser_organisatie_id IN (5, 4, 3, 2, 11) or ($role=1 OR $role =2))
AND OU.orguser_organisatie_id <> {$orgid}
left JOIN tb_organisaties ORG on ORG.id = OU.orguser_organisatie_id ";
if ($zoekstring){
$this->sql .=" WHERE UPPER(user_firstname) LIKE '%{$zoekstring}%' OR
UPPER(user_lastname) LIKE '%{$zoekstring}%' ";
}
$this->sql .= " ORDER BY user_lastname
LIMIT 200";
return $this->get_query_result();
}
}
@@ -0,0 +1,33 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Description of Orgusers_model
*
* @author LS
* @date april 26, 2013 12:00 PM
*
*/
class Versies_model extends MY_Model{
protected $tablename = 'tbVersies';
function __construct(){
parent::__construct();
$models = array('');
$this->load->model($models);
}
function get_versies(){
$this->sql="SELECT id, omschrijving, datum,vastgelegd
FROM tbVersies
ORDER BY id desc";
return $this->get_query_result();
}
function get_laatste_record(){
$this->sql="SELECT max(ID) as maxID
FROM tbVersies
WHERE vastgelegd = 1";
$rij = $this->db->query($this->sql);
return $rij->row('maxID');
}
}