Esempio n. 1
0
 public function login()
 {
     /*
             $db = ECPFactory::getDbo();
              * */
     ecpimport("helpers.cryptology");
     $db = ECPFactory::getPDO("Logins");
     $pasw = 'c17a1a963e2b9ebb228030c0615fdb4bd91bd982';
     //$pasw = ECPFactory::getForm("login")->pasw->value;
     $login = '******';
     $loginpin = ECP_Cryptology::generateInteger(30);
     $pinhash = ECP_Cryptology::generateHash($loginpin);
     $log = new Logins();
     $log->setLogin($login)->setPaswoord($pasw);
     $results = Logins::findByExample($db, $log);
     if (empty($results)) {
         //email en ww komt niet overeen
         return false;
     } else {
         foreach ($results as $result) {
             $id = $result->getId();
             $result->setIpadres($_SERVER['REMOTE_ADDR'])->setLoginpin($pinhash);
             $count = $result->updateToDatabase($db);
             if ($count != l) {
                 return 2;
             } else {
                 return array("uid" => $id, "pin" => $loginpin);
             }
         }
     }
 }
Esempio n. 2
0
 public function testFunction()
 {
     ecpimport("database.overleggen.Overleggen");
     self::$db = ECPFactory::getPDO("Overleggen");
     $lok = new OverlegLok();
     $result = $lok->findByOverleg(self::$db);
     return self::resultToArray($result, OverlegLok::getFieldNamesLok());
 }
Esempio n. 3
0
 private function createEditOverleg()
 {
     $this->setState("editoverleg.start");
     $this->basisgegevens = ECPFactory::getForm("basisgegevens")->addField(new ECP_FormObj_Radio("locatie", array("0" => "Bij de patiënt huis", "1" => "Elders")));
     $this->basisgegevens->addField(new ECP_FormObj_Radio("aanwezig", array("0" => "De patiënt", "1" => "Vertegenwoordigster (kies onderaan)", "2" => "Niemand")));
     $this->basisgegevens->addField(new ECP_FormObj_Radio("instemming", array("0" => "Stemt in.", "1" => "Stemmen niet in.")));
     $this->setState("editoverleg.basisgegevens.ready");
     //$this->teamoverleg = ECPFactory::getForm("teamoverleg");
     $this->attestbijlagen = ECPFactory::getForm("attestbijlagen")->addField(new ECP_FormObj_Radio("verblijf", array("0" => "Thuis", "1" => "Opgenomen")));
     $this->setState("editoverleg.attestbijlagen.ready");
     $this->setState("editoverleg.end");
 }
Esempio n. 4
0
 /**
  * Set user to guest -> can only be done from session class! (when validating)
  */
 public function setGuest()
 {
     $session = ECPFactory::getSession();
     if ($session->getState() === "unvalidated" || $session->getState() === "postunvalidated") {
         $this->guest = 1;
         $this->locked = 1;
         $this->user = array("naam" => "Gast", "type" => "Guest");
     }
 }
Esempio n. 5
0
 public function __construct()
 {
     $this->meldingform = ECPFactory::getForm("melding")->addField(new ECP_FormObj_Date("datum"))->addField(new ECP_FormObj_Select("contactwijzelist"))->addField(new ECP_FormObj_Checkbox("meldpunt"))->addField(new ECP_FormObj_Radio("meldersoort", array("0" => "hulpverlener", "1" => "slachtoffer zelf", "2" => "andere")));
     $this->melderhvlform = ECPFactory::getForm("meldingsoorthvl")->addField(new ECP_FormObj_Hulpverlener("hulpverlener"));
     $this->melderandersform = ECPFactory::getForm("meldersoortanders")->addField(new ECP_FormObj_Input("naam"))->addField(new ECP_FormObj_Input("adres"))->addField(new ECP_FormObj_Postcode("postcode"))->addField(new ECP_FormObj_Telefoon("telefoon"))->addField(new ECP_FormObj_Email("email"))->addField(new ECP_FormObj_Select("relatielist"))->addField(new ECP_FormObj_Input("detail"));
 }
Esempio n. 6
0
 public function setAanvraag($pat_id, $data)
 {
     //rijksregister, patient_code, gemeente_id
     $patient = $this->getPatientById($pat_id, true);
     //met true halen we het object op!
     if ($data['huidigok'] == 1) {
         //huidige organisator blijft behouden, wat was deze?
         $data['organisator'] = $patient->getToegewezenGenre();
         //gemeente moet eigenlijk ocmw worden anders klopt de enum niet :s
         if ($data['organisator'] == "gemeente") {
             $data['organisator'] = "ocmw";
         }
         $data['organisatorid'] = $patient->getToegewezenId();
         //de organisatorid is ms onbekend.. dat is niet goed! dan maar 1 nemen
         if ($data['organisatorid'] == "" || $data['organisatorid'] == 0) {
             $data['organisatorid'] = 1;
         }
         //error of warning?
     }
     //rijksregister en gemeente_id gaan we niet gebruiken (zit bij patient, dus code is voldoende)
     //overleg_id is er pas indien er ook effectief een overleg komt
     self::$db = ECPFactory::getPDO("aanvraag.overleg");
     //print_r($data);
     $aanvraag = new AanvraagOverleg();
     $aanvraag->setPatientCode($patient->getCode())->setRijksregister($patient->getRijksregister())->setGemeenteId($patient->getGemId());
     //volgende waarden mogen niet leeg zijn, maar moeten tekst bevatten..
     self::slashset($data['organisator_reden']);
     self::slashset($data['organisator_reden_andere']);
     $aanvraag->setKeuzeOrganisator($data['organisator'])->setRedenOrganisator($data['organisator_reden']);
     $aanvraag->setAndereRedenOrganisator($data['organisator_reden_andere'])->setIdOrganisator($data['organisatorid']);
     //doelen mogen niet leeg zijn, dat zijn ze wel als ze niet aangevinkt waren :s
     //idem voor dringend || alle doelen behalve andere zijn integers.. dus preset.
     self::preset($data['informeren']);
     self::preset($data['beslissen']);
     self::preset($data['organiseren']);
     self::preset($data['debriefen']);
     self::preset($data['overtuigen']);
     self::slashset($data['doel_andere']);
     $aanvraag->setDoelInformeren($data['informeren'])->setDoelBeslissen($data['beslissen'])->setDoelDebriefen($data['debriefen']);
     $aanvraag->setDoelOrganiseren($data['organiseren'])->setDoelOvertuigen($data['overtuigen'])->setDoelAndere($data['doel_andere']);
     self::preset($data['dringend']);
     $aanvraag->setDringend($data['dringend']);
     $aanvraag->setNaamAanvrager($data['naam'])->setDisciplineAanvrager($data['relatie'])->setOrganisatieAanvrager($data['organisatie']);
     $aanvraag->setInfoAanvrager($data['email'] . "|" . $data['telefoon'])->setDringend($data['dringend'])->setStatus("aanvraag");
     $aanvraag->setTimestamp(time())->setRedenStatus("Nieuwe aanvraag");
     try {
         $insert = $aanvraag->insertIntoDatabase(self::$db);
     } catch (Exception $e) {
         ecpexit('{"succes":"negative","message":"Er liep iets grandioos fout!<br/>' . htmlentities($e->getMessage()) . '"}');
     }
     //ontvangst? Bron?
     return $insert;
 }
Esempio n. 7
0
 /**
  * Starts a session
  * 
  * @return boolean True when done
  */
 public function start()
 {
     if ($this->_state === 'active') {
         return true;
         //session already started
     }
     $this->user = ECPFactory::getApp()->getUser();
     if (!$this->user->isGuest()) {
         $this->_state = "starting";
         //moet omdat anders userclass niks gaat teruggeven!
         $this->session = $this->user->getUser();
         $this->_state = "unvalidated";
         //moet omdat anders userclass niet naar guest kan overgaan!
         $this->validate();
     } else {
         $this->startGuest();
     }
     // hier eventuele dispatchers als we dat gaan gebruiken...
     return true;
 }
Esempio n. 8
0
 public function __CONSTRUCT()
 {
     $this->app = ECPFactory::getApp();
 }
Esempio n. 9
0
 /**
  * Creates a hash with the sectretkey and a string to hash
  * @param mixed $tohash
  * @return mixed Hashed value
  */
 public static function getHash($tohash)
 {
     return md5(ECPFactory::getApp()->get('secret') . $tohash);
 }
Esempio n. 10
0
 public function nieuw()
 {
     ecpimport("components.overleg.base.overlegform");
     $formmodel = new ECP_Comp_OverlegForm();
     if ($_SERVER['REQUEST_METHOD'] != "POST") {
         if (!is_null($this->vars[0])) {
             //patientnummer opgeven
             $pat_id = $this->vars[0];
             //patient met overleggen ophalen
             $patient = $this->model->getOverlegByPatientId($pat_id);
             if ($patient == null) {
                 //patient had geen overleggen... Dan maar alleen patient opgeven
                 $patient = $this->model->getPatientById($pat_id);
             }
             //de toegewezen OC ophalen en bij data patient steken...
             $patient['toegewezen'] = $this->model->getPatientToewijzing($pat_id);
             //regionaal dienstencentra ophalen (RDC)
             $formmodel->updateRDCList($this->model->getRDC());
             //zorgaanbieders ophalen (ZA)
             $formmodel->updateZAList($this->model->getZA());
             //zorgaanbieders profiel PSY ophalen
             $formmodel->updatePSYList($this->model->getPSY());
             $this->view->newOverleg($patient, $pat_id, $formmodel->getForm("new"));
         } else {
             $patienten = $this->model->getAllPatients();
             $formmodel->updatePatientList($patienten);
             $this->view->selectPatient($patienten, $formmodel->getForm("select"));
         }
     } else {
         //we zouden nu data hebben mee gekregen :)
         if (array_key_exists("values", $_POST) && array_key_exists("patid", $_POST)) {
             $session = ECPFactory::getSession();
             if ($session->isActive()) {
                 //hier normaal controle op loginpin
                 $patient = $this->model->getOverlegByPatientId($_POST['patid']);
                 if ($patient == null) {
                     //patient had geen overleggen... Dan maar alleen patient opgeven
                     $patient = $this->model->getPatientById($_POST['patid']);
                 }
                 if ($patient == null) {
                     ecpexit('{"succes":"negative","message":"Oei het loopt even mis!<br/>De server kon de patient niet vinden..."}');
                 }
                 //regionaal dienstencentra ophalen (RDC)
                 $formmodel->updateRDCList($this->model->getRDC());
                 //zorgaanbieders ophalen (ZA)
                 $formmodel->updateZAList($this->model->getZA());
                 //zorgaanbieders profiel PSY ophalen
                 $formmodel->updatePSYList($this->model->getPSY());
                 //data insteken
                 $values = json_decode($_POST['values'], true);
                 //json string naar assoc array parsen..
                 $report = $formmodel->validateValuesNewOverleg($values);
                 if ($report === 0) {
                     ecpexit('{"succes":"negative","message":"Oei het loopt even mis!<br/>De server kon niets opmaken uit de gestuurde waarden..."}');
                 }
                 //en dan nu valideren :)
                 //print_r($report);
                 $error = $formmodel->validateNewOverleg($report);
                 //print_r($error);
                 if ($this->model->setAanvraag($_POST['patid'], $values)) {
                     ecpexit('{"succes":"positive","message":"Het overleg werd aangevraagd!<br/>Het systeem keert terug naar de overleglijst..."}');
                 } else {
                     ecpexit('{"succes":"negative","message":"Oei het loopt even mis!<br/>Onze database kon de aanvraag niet verwerken.<br/>Probeer opnieuw of neem contact op met de beheerder."}');
                 }
             } else {
                 echo $session->getState();
             }
         } else {
             echo '{"succes":"negative","message":"Oei het loopt even mis!<br/>De server ontving geen waarden van het formulier..."}';
             ecpexit();
         }
     }
 }
Esempio n. 11
0
 public function __construct()
 {
     $this->uri = ECPFactory::getURI();
     $this->state = "inactive";
 }
Esempio n. 12
0
 public function checkOmb()
 {
     $form = ECPFactory::getForm("base");
     $form->smartInsert($_POST);
     $rapport = $form->validate();
     if (is_array($rapport)) {
         echo '{"error":"' . $rapport[0][0] . '"}';
         //eerste index:: 1. velden met fouten, 2. fout per veld, 3. aantal fouten totaal.
         exit;
         //geen view doen :)
     } else {
         $omb = $this->model->newOmb();
     }
 }
Esempio n. 13
0
 /**
  * Get a configuration object
  *
  *
  * @return EQConfig object
  */
 public static function getConfig()
 {
     if (!self::$conf) {
         self::$conf = self::_createConfig();
     }
     return self::$conf;
 }
Esempio n. 14
0
 public function eid()
 {
     include "openid.php";
     $openid = new LightOpenID('localhost');
     if ($openid->mode) {
         $session = ECPFactory::getSession();
         ecpimport("helpers.cryptology");
         $loginpin = ECP_Cryptology::generateInteger(30);
         $pinhash = ECP_Cryptology::generateHash($loginpin);
         $user = $openid->getAttributes();
         $achternaam = $user["namePerson/last"];
         $postcode = $user["contact/postalCode/home"];
         $adres = $user["contact/postalAddress/home"];
         $db = ECPFactory::getPDO("Logins");
         $log = new Logins();
         $log->setAdres($adres)->setOverlegGemeente($postcode)->setNaam($achternaam);
         $results = Logins::findByExample($db, $log);
         if (empty($results)) {
             //email en ww komt niet overeen
             ecpexit("exit");
         } else {
             foreach ($results as $result) {
                 $id = $result->getId();
                 $result->setIpadres($_SERVER['REMOTE_ADDR'])->setLoginpin($pinhash);
                 $count = $result->updateToDatabase($db);
                 if ($count != l) {
                     return 2;
                 } else {
                     ecpexit("uid=>{$id},pin=>{$loginpin}");
                 }
             }
         }
     } else {
         //Step 2: Authentication, with requirements
         $openid->identity = 'https://www.e-contract.be/eid-idp/endpoints/openid/auth-ident';
         $openid->required = array('namePerson/first', 'namePerson/last', 'namePerson', 'person/gender', 'contact/postalCode/home', 'contact/postalAddress/home', 'contact/city/home', 'eid/nationality', 'eid/pob', 'birthDate', 'eid/card-number', 'eid/card-validity/begin', 'eid/card-validity/end');
         //$openid->optional = array('');
         header('Location: ' . $openid->authUrl());
     }
 }
Esempio n. 15
0
<?php

/**
 * @version		Version 1.0
 * @copyright           EcarePlan made by Robin Moors & Joris Jacobs
 */
define('ECP_AC', 1);
define('DS', '/');
define('PHP', '.php');
$paths = explode(DIRECTORY_SEPARATOR, __FILE__);
array_pop($paths);
define("ECPPATH_SITE", implode(DS, $paths));
header('Access-Control-Allow-Origin: *');
//moorskeshoeve
//load system application
require_once DS . 'includes' . DS . 'framework.php';
// Instantiate
$app = ECPFactory::getApp('Site');
$app->initialise();
$app->route();
$app->dispatch();
$app->render();
echo $app;
ob_end_flush();
Esempio n. 16
0
 public function __CONSTRUCT()
 {
     $this->appobj = ECPFactory::getApp();
     //haal de app op zodat we de template kunnen wijzigen!
     $this->appobj->setTemplate("unknownrequest");
 }
Esempio n. 17
0
 /**
  * Laad onderdelen in en duw ze in een template
  *
  * @since	1.0
  */
 public function build()
 {
     //inlezen welke site, pagina, optie geladen is of welke opdracht uitgevoerd moet worden
     //benodigde files inladen en openen
     //site website, heeft enkel een siteID en een to parameter nodig, dus controleren of die er is
     if ($this->conf->offline == "1") {
         $site_conf['state'] = "offline";
         //forceer offline status want server staat op offline..
         $site_conf['message'] = $this->conf->offline_message;
     }
     /*
             //site status controleren en template instellen
             switch($site_conf['state']){
                 default: case "offline":  //site is offline, of de status is niet gekend.
                     $template = "offline";
                     $msg = $site_conf['message'];
                     break;
                 case "running": //site staat online voor iedereen
                     $name = explode('.php',$site_conf['TemplateFile']); //old sites have .php extention in templatename, stripping this out..
                     $template = $name[0];
                     break;
                 case "private": //site staat alleen online voor leden
                     $template = "private";
                     $msg = $site_conf['message'];
                     break;
                 case "admin": //site alleen toegankelijk voor administrators
                     $template = "private_adminonly";
                     $msg = $site_conf['message'];
                     break;
             }
             
             //templatedata
             if($template!="offline") self::createTemplateData($site_conf);
             else{
                 self::createTemplateData($site_conf);
                 $this->templatedata['content'] = $msg;
             }
             
             //template inladen, instellen en dan afsluiten
            $templ = EQFactory::getTemplate($template);
            $templ->give($this->templatedata); //give templatedata to the template
             $templ->input($message);
             if($templ->succes()){
                 $this->output = $templ->get();
             }else{ //error gemaakt ergens..
                 $templ->viewErrors(); 
                 $this->output = $templ->get();
             } */
     $this->template = $this->conf->offline ? "offline" : "listel";
     $templ = ECPFactory::getTemplate($this->template);
     $tdata = self::createTemplateData();
     $templ->give($tdata);
     $templ->input($message);
     if ($templ->succes()) {
         $this->output = $templ->get();
     } else {
         $templ->viewErrors();
         $this->output = $templ->get();
     }
 }