/** * testing method return array type */ public function testTypeFunction() { $model = new PatientForm(); $this->assertInternalType('array', $model->rules()); $this->assertInternalType('array', $model->attributeLabels()); $dateTrue = "06/07/2016"; $dateFalse = "06-07-2016"; $this->assertTrue($model->dateFormat($dateTrue)); $this->assertFalse($model->dateFormat($dateFalse)); $this->assertFalse($model->dateFormat("32/20/16547")); $this->assertInternalType('array', $model->getGenre()); $this->assertInternalType('array', $model->getSource()); }
public function actionAffichepatient() { $model = new PatientForm(); $patient = (object) null; if (isset($_SESSION['datapatient'])) { $patient = $_SESSION['datapatient']; $model->copyPatient($patient); } if (isset($_POST['PatientForm'])) { $actionForm = $_POST['PatientForm']['action']; $model = new PatientForm(); $model->attributes = $_POST['PatientForm']; if ($_POST['PatientForm']['prenom'] == "" || $_POST['PatientForm']['nom_naissance'] == "" || $_POST['PatientForm']['date_naissance'] == "") { Yii::app()->user->setFlash(TbAlert::TYPE_ERROR, Yii::t('common', 'missingFields')); $this->redirect(array('site/patient')); } if ($model->dateFormat($model->date_naissance) == false) { Yii::app()->user->setFlash('error', Yii::t('common', 'unvalidDate')); $this->redirect(array('site/patient')); } $patient->id = null; $patient->source = null; //à identifier en fonction de l'app $patient->sourceId = null; $patient->birthName = $model->nom_naissance; if ($model->nom != "") { $patient->useName = $model->nom; } else { $patient->useName = null; } $patient->firstName = $model->prenom; $patient->birthDate = $model->date_naissance; if ($model->sexe != "") { $patient->sex = $model->sexe; } else { $patient->sex = null; } if ($actionForm == 'create') { $patient->source = $model->source == "1" ? "1" : "2"; $patientest = CommonTools::wsGetPatient($patient); if ($patientest == 'NoPatient') { $patient = CommonTools::wsAddPatient($patient); } else { $patient = $patientTest; } } else { $patient = CommonTools::wsGetPatient($patient); } } switch ($patient) { case "NoPatient": Yii::app()->user->setFlash(TbAlert::TYPE_ERROR, Yii::t('common', 'noPatient')); Yii::app()->user->setState('patientModel', $model); $model->scenario = 'create'; $this->render('patient_bis', array('model' => $model, 'actionForm' => 'create')); exit; break; case "PatientNotSaved": Yii::app()->user->setFlash(TbAlert::TYPE_ERROR, Yii::t('common', 'patientNotSaved')); Yii::app()->user->setState('patientModel', $model); $model->scenario = 'create'; $this->render('patient_bis', array('model' => $model, 'actionForm' => 'create')); exit; break; case "ManyPatient": Yii::app()->user->setFlash(TbAlert::TYPE_ERROR, Yii::t('common', 'manyPatient')); Yii::app()->user->setState('patientModel', $model); $this->render('patient_bis', array('model' => $model, 'actionForm' => 'search')); exit; break; default: } if ($model->validate() && isset($patient->id)) { $model->id = $patient->id; $criteria = new EMongoCriteria(); $criteria->id_patient = (string) $model->id; $criteriaCliniques = new EMongoCriteria($criteria); if (Yii::app()->user->getState('activeProfil') == "clinicien") { $criteriaCliniques->login = Yii::app()->user->id; } $criteriaCliniques->type = "clinique"; $criteriaNeuropathologiques = new EMongoCriteria($criteria); $criteriaNeuropathologiques->type = "neuropathologique"; $neuropath = Answer::model()->findAll($criteriaNeuropathologiques); $criteriaGenetiques = new EMongoCriteria($criteria); $criteriaGenetiques->type = "genetique"; $genetique = Answer::model()->findAll($criteriaGenetiques); $dataProviderCliniques = new EMongoDocumentDataProvider('Answer'); $dataProviderCliniques->setId('dpCli'); $dataProviderNeuropathologiques = new EMongoDocumentDataProvider('Answer'); $dataProviderCliniques->setId('dpNeuPa'); $dataProviderGenetiques = new EMongoDocumentDataProvider('Answer'); $dataProviderCliniques->setId('dpGen'); $dataProviderCliniques->setCriteria($criteriaCliniques); $dataProviderNeuropathologiques->setCriteria($criteriaNeuropathologiques); $dataProviderGenetiques->setCriteria($criteriaGenetiques); $questionnaire = Questionnaire::model()->findAll(); $_SESSION['datapatient'] = $patient; if (isset($_SESSION['datapatient'])) { $this->render('affichepatient', array('model' => $model, 'dataProviderCliniques' => $dataProviderCliniques, 'dataProviderNeuropathologiques' => $dataProviderNeuropathologiques, 'dataProviderGenetiques' => $dataProviderGenetiques, 'questionnaire' => $questionnaire, 'patient' => $patient, 'neuropath' => $neuropath, 'genetique' => $genetique)); } elseif (isset($_POST['PatientForm'])) { $this->render('affichepatient', array('model' => $model, 'dataProviderCliniques' => $dataProviderCliniques, 'dataProviderNeuropathologiques' => $dataProviderNeuropathologiques, 'dataProviderGenetiques' => $dataProviderGenetiques, 'patient' => $patient)); } else { $this->redirect(array('site/patient')); } } else { $this->redirect(array('site/patient')); } }