Example #1
0
 private function _setUpAutoLogin()
 {
     $user = new User();
     $user->username = TEST_LOGIN_USERNAME;
     $user->populateWithUsername();
     Zend_Auth::getInstance()->getStorage()->write($user);
 }
 public function setUp()
 {
     parent::setUp();
     $user = new User();
     $user->username = TEST_LOGIN_USERNAME;
     $user->populateWithUsername();
     Zend_Auth::getInstance()->getStorage()->write($user);
 }
 public function setUp()
 {
     parent::setUp();
     $user = new User();
     $user->username = TEST_LOGIN_USERNAME;
     $user->populateWithUsername();
     Zend_Auth::getInstance()->getStorage()->write($user);
     $clinicalNoteTemplate = new ClinicalNoteTemplate();
     $clinicalNoteTemplate->name = 'Test Note';
     $clinicalNoteTemplate->template = "<progressNoteTemplate>\r\n\t<question label=\"Are you in pain?\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.inPain\" dbValue=\"tinyint\" label=\"y/n\">\r\n\t\t</dataPoint>\r\n\t</question>\r\n\t<question label=\"Describe the pain:\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.burning\" dbValue=\"tinyint\" label=\"Burning\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.cramping\" dbValue=\"tinyint\" label=\"Cramping\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.penetrating\" dbValue=\"tinyint\" label=\"Penetrating\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.colic\" dbValue=\"tinyint\" label=\"Colic\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.oppressive\" dbValue=\"tinyint\" label=\"Oppressive\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.shooting\" dbValue=\"tinyint\" label=\"Shooting\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.sharp\" dbValue=\"tinyint\" label=\"Sharp\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.other\" dbValue=\"tinyint\" label=\"Other\"/>\r\n\t</question>\r\n\t<question label=\"Duration of pain:\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.constant\" dbValue=\"tinyint\" label=\"Constant\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.intermittent\" dbValue=\"tinyint\" label=\"Intermittent\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.home\" dbValue=\"tinyint\" label=\"Home\"/>\r\n\t</question>\r\n\t<question label=\"What relieves the pain?\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.relief.sleep\" dbValue=\"tinyint\" label=\"Sleep\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.relief.heat\" dbValue=\"tinyint\" label=\"Heat\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.relief.cold\" dbValue=\"tinyint\" label=\"Cold\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.description.relief.medicine\" dbValue=\"tinyint\" label=\"Medicine\"/>\r\n\t</question>\r\n\t<question label=\"Problem Sleeping?\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.sleep.problemSleeping\" dbValue=\"tinyint\" label=\"y/n\"/>\r\n\t</question>\r\n\t<question label=\"Is pain now controlled?\">\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.nowControlled\" dbValue=\"tinyint\" label=\"y/n\"/>\r\n\t\t<dataPoint type=\"text\" namespace=\"assessment.pain.comment\" dbValue=\"varchar:255\" label=\"Pain Comment:\"/>\r\n\t</question>\r\n\t<question label=\"Is patient able to communicate?\">\r\n\t\t<heading>Verbal:</heading>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.verbal.positive\" dbValue=\"tinyint\" label=\"Positive\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.verbal.plaintativeWhining\" dbValue=\"tinyint\" label=\"Plaintative/Whining\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.verbal.weeping\" dbValue=\"tinyint\" label=\"Weeping\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.verbal.screaming\" dbValue=\"tinyint\" label=\"Screaming\"/>\r\n\t\t<heading>Body Movements:</heading>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.bodyMovement.easeOfMovement\" dbValue=\"tinyint\" label=\"Ease of Movement\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.bodyMovement.neutral\" dbValue=\"tinyint\" label=\"Neutral\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.bodyMovement.tense\" dbValue=\"tinyint\" label=\"Tense\" />\r\n\t\t<heading>Facial:</heading>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.facial.smiling\" dbValue=\"tinyint\" label=\"Smiling\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.facial.neutral\" dbValue=\"tinyint\" label=\"Neutral\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.facial.grin\" dbValue=\"tinyint\" label=\"Grin\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.communicate.facial.grittedTeeth\" dbValue=\"tinyint\" label=\"Gritted Teeth\"/>\r\n\t\t<heading>Area of pain:</heading>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.areaNonPalpable\" dbValue=\"tinyint\" label=\"Non-palpable\"/>\r\n\t\t<dataPoint type=\"checkbox\" namespace=\"assessment.pain.areaReagent\" dbValue=\"tinyint\" label=\"Reagent\"/>\r\n\t\t<dataPoint type=\"text\" namespace=\"assessment.pain.areaIndicated\" dbValue=\"varchar:255\" label=\"Indicated:\"/>\r\n\t</question>\r\n</progressNoteTemplate>";
     $clinicalNoteTemplate->persist();
     $this->_objects['noteTemplate'] = $clinicalNoteTemplate;
     $clinicalNoteDefinition = new ClinicalNoteDefinition();
     $clinicalNoteDefinition->title = 'Test Note Definition';
     $clinicalNoteDefinition->clinicalNoteTemplateId = $clinicalNoteTemplate->clinicalNoteTemplateId;
     $clinicalNoteDefinition->active = 1;
     $clinicalNoteDefinition->persist();
     $this->_objects['noteDefinition'] = $clinicalNoteDefinition;
 }
 public function generateUsersKeysAction()
 {
     exit;
     //$f = fopen('/tmp/newusers.csv','r');
     //$counter = 0;
     //while (($data = fgetcsv($f)) !== FALSE) {
     //if ($counter == 0) { $counter++; continue; }
     echo $data[4] . "<br />";
     flush();
     $user = new User();
     $user->username = '******';
     $user->populateWithUsername();
     $userKey = new UserKey();
     $userKey->userId = $user->userId;
     //field 2 is passphrase
     $userKey->generateKeys('test passphrase');
     echo $user->toString();
     echo $data[0] . "\n";
     flush();
     $userKey->persist();
     $counter++;
     //}
     //fclose($f);
     exit;
 }
 public function registerAction()
 {
     $this->view->updateFileId = (int) $this->_getParam('updateFileId');
     $data = array();
     $users = array();
     $xml = new SimpleXMLElement('<clearhealth/>');
     $xml->addChild('apiKey', Zend_Registry::get('config')->healthcloud->apiKey);
     foreach (User::listActiveUsers() as $user) {
         $xmlUser = $xml->addChild('user');
         $xmlUser->addChild('userId', (int) $user->personId);
         $xmlUser->addChild('username', (string) $user->username);
     }
     $ch = curl_init();
     $url = Zend_Registry::get('config')->healthcloud->updateServerUrl . '/check-users';
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_POST, true);
     curl_setopt($ch, CURLOPT_POSTFIELDS, $xml->asXML());
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     try {
         $response = curl_exec($ch);
         if (curl_errno($ch)) {
             throw new Exception(curl_error($ch));
         }
         curl_close($ch);
         trigger_error($response);
         $responseXml = new SimpleXMLElement($response);
         if ($responseXml->error) {
             throw new Exception($responseXml->error->errorMsg, $responseXml->error->errorCode);
         }
         $enabledUsers = array();
         $disabledUsers = array();
         foreach ($responseXml->user as $user) {
             $userId = (int) $user->userId;
             $username = (string) $user->username;
             if ($user->enabled && $user->enabled == 1) {
                 $enabledUsers[$userId] = $username;
             } else {
                 $disabledUsers[$userId] = $username;
             }
         }
         $disabledUsersCtr = count($disabledUsers);
         if ($disabledUsersCtr > 0) {
             $pointsPerUser = (double) $responseXml->pointsPerUser;
             $points = (double) $responseXml->points;
             $ret = array();
             $ret[] = 'Enabling subscription will cost you ' . number_format($pointsPerUser, 0, '.', ',') . ' points/user!';
             $ret[] = 'You currently have ' . number_format($points, 0, '.', ',') . ' points in you account!';
             $ret[] = '';
             $ret[] = '***** Users to register *****';
             $ctr = 1;
             foreach ($disabledUsers as $userId => $username) {
                 $user = new User();
                 $user->username = $username;
                 $user->populateWithUsername();
                 $ret[] = $ctr++ . ') ' . $user->displayName . ' (' . $username . ')';
             }
             $ret[] = '';
             $totalPoints = $disabledUsersCtr * $pointsPerUser;
             if ($totalPoints > $points) {
                 $ret[] = 'WARNING: You currently have insufficient points!';
                 $ret[] = '';
                 $data['insufficientPoints'] = true;
             }
             if (count($enabledUsers) > 0) {
                 $ret[] = '';
                 $ret[] = '***** Registered Users *****';
                 $ctr = 1;
                 foreach ($enabledUsers as $userId => $username) {
                     $user = new User();
                     $user->username = $username;
                     $user->populateWithUsername();
                     $ret[] = $ctr++ . ') ' . $user->displayName . ' (' . $username . ')';
                 }
             }
             $data['data'] = implode("\n", $ret);
         } else {
             $data['ok'] = true;
         }
     } catch (Exception $e) {
         $error = $e->getMessage();
         trigger_error($error);
         $data['error'] = $error;
     }
     $this->view->data = $data;
     $this->render('register');
 }
Example #6
0
 private function _setUpAutoLogin()
 {
     $user = new User();
     $user->username = TEST_LOGIN_USERNAME;
     $user->populateWithUsername();
     if (!$user->userId > 0) {
         $person = new Person();
         $person->_shouldAudit = false;
         $person->last_name = 'Administrator';
         $person->first_name = 'ClearHealth';
         $person->middle_name = 'U';
         $person->persist();
         $user->_shouldAudit = false;
         $user->person = $person;
         $user->password = TEST_LOGIN_PASSWORD;
         $user->userId = $person->personId;
         $user->personId = $person->personId;
         $user->permissionTemplateId = 'superadmin';
         $user->persist();
     }
     Zend_Auth::getInstance()->getStorage()->write($user);
 }
Example #7
0
 public static function processLogin($username, $password, Zend_Auth_Adapter_Interface $authAdapter = null)
 {
     if ($authAdapter === null) {
         $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('dbAdapter'));
     }
     $authAdapter->setTableName('user')->setIdentityColumn('username')->setCredentialColumn('password')->setIdentity($username)->setCredential($password);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     $audit = new Audit();
     $audit->objectClass = 'Login';
     $audit->objectId = 0;
     if ($result->isValid()) {
         $identity = $auth->getIdentity();
         $user = new User();
         $user->username = $identity;
         $user->populateWithUsername();
         if ($user->person->active) {
             $auth->getStorage()->write($user);
             $audit->userId = $user->userId;
             $message = __('user') . ': ' . $user->username . ' ' . __('login successful');
         } else {
             $auth->clearIdentity();
             $message = __('user') . ': ' . $username . ' ' . __('login failed due to inactive user');
             $result = new Exception('Login failed due to inactive user');
         }
     } else {
         $auth->clearIdentity();
         $message = __('user') . ': ' . $username . ' ' . __('login failed due to bad password');
         $result = new Exception('Invalid username/password');
     }
     $audit->message = $message;
     $audit->dateTime = date('Y-m-d H:i:s');
     $audit->_ormPersist = true;
     $audit->persist();
     return $result;
 }
Example #8
-1
 public function processAction()
 {
     $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('dbAdapter'));
     $authAdapter->setTableName('user')->setIdentityColumn('username')->setCredentialColumn('password')->setIdentity($_POST['username'])->setCredential($_POST['password']);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     $data = array();
     if ($result->isValid()) {
         unset($this->_session->messages);
         $identity = $auth->getIdentity();
         $user = new User();
         $user->username = $identity;
         $user->populateWithUsername();
         Zend_Auth::getInstance()->getStorage()->write($user);
         //$this->_redirect('login/complete');
         //$this->_forward('index','main');
         $data['msg'] = __("Login successful.");
         $data['code'] = 200;
     } else {
         $auth->clearIdentity();
         $this->_session->messages = $result->getMessages();
         //$this->_redirect('login');
         $data['err'] = __("Invalid username/password.");
         $data['code'] = 404;
     }
     header('Content-Type: application/xml;');
     $this->view->data = $data;
     $this->completeAction();
     //$this->render();
 }