Ejemplo n.º 1
0
 public function runtest()
 {
     //create someuser just to test, so do not get from factory
     //create
     $someuser = new SomeUser();
     $someuser->setPassword('cleartext');
     $someuser->setUsername('testuser');
     $someuser->setEmail('*****@*****.**');
     $someuser->setHomepage('http://www.example.org/');
     $someuser->setUserrole('registered');
     $someuser->create();
     //need to have users id
     $this->results[] = "created user, expecting posivite integer as userid. value is:" . $someuser->getId();
     //read
     $someuser2 = new SomeUser();
     $someuser2->setId($someuser->getId());
     $someuser2->read();
     $this->results[] = "read user, expecting username to be testuser. value is:" . $someuser2->getUsername();
     //update
     $someuser2->setEmail('*****@*****.**');
     $someuser2->setUserrole('admin');
     $someuser2->update();
     $someuser2->read();
     $this->results[] = "updated user, expecting userrole to be admin. value is:" . $someuser2->getUserrole();
     //delete
     $someuser3 = new SomeUser();
     $someuser3->setPassword('cleartext2');
     $someuser3->setUsername('testuser2');
     $someuser3->setEmail('*****@*****.**');
     $someuser3->setHomepage('http://www2.example.com/');
     $someuser3->create();
     $this->results[] = "created another user, expecting users id to be positive integer. value is:" . $someuser3->getId();
     //delete previous user
     $someuser4 = new SomeUser();
     $someuser4->setPassword('cleartext3');
     $someuser4->setUsername('testuser3');
     $someuser4->setEmail('*****@*****.**');
     $someuser4->setHomepage('http://www3.example.org/');
     $someuser4->setUserrole('anonymous');
     $someuser4->create();
     $someuser4->delete();
     //expecting that user4 can not be read...
     $someuser5 = new SomeUser();
     $someuser5->setId($someuser4->getId());
     $didexception = false;
     try {
         $someuser5->read();
     } catch (SomeDatabaseException $sde) {
         $didexception = true;
         $this->results[] = "read deleted user, expecting username to be empty. value is:" . $someuser5->getUsername();
     }
     if (!$didexception) {
         $this->results[] = "read deleted user, expecting username to be empty. But value is:" . $someuser5->getUsername();
     }
     unset($someuser);
     $someuser2->delete();
     $someuser3->delete();
     unset($someuser4);
     unset($someuser5);
 }
Ejemplo n.º 2
0
 /**
  * @return true if user is created, false if not.
  */
 public function create()
 {
     $user = SomeFactory::getUser();
     if ($user->getUserrole() === SomeUser::ROLE_HEADTEACHER) {
         someloader('some.user.user');
         $someuser = new SomeUser();
         $this->userdata = array('username' => SomeRequest::getVar('tunnus', ''), 'fname' => SomeRequest::getVar('etunimi', ''), 'lname' => SomeRequest::getVar('sukunimi', ''), 'unit' => SomeRequest::getVar('yksikko', ''), 'email' => SomeRequest::getVar('sposti', ''), 'phone' => SomeRequest::getVar('puh', ''), 'password' => SomeRequest::getVar('salasana', ''));
         $someuser->setUsername($this->userdata['username']);
         // DO THE PASSWORD HASHING HERE
         $someuser->setPassword($this->userdata['password']);
         $someuser->setUserrole('teacher');
         $this->userdata['userrole'] = $someuser->getUserrole();
         $someuser->create();
         //Yritetään lisäksi tehdä uusi tuutori
         $db = SomeFactory::getDBO();
         $stmt = $db->prepare("INSERT INTO tuutori VALUES(?, ?, ?, ?, ?, ?, 'Tuutori')");
         $ok = $stmt->execute(array($this->userdata['username'], $this->userdata['fname'], $this->userdata['lname'], $this->userdata['email'], $this->userdata['phone'], $this->userdata['unit']));
         if ($someuser->getId() > 0 && $ok > 0) {
             $this->userdata['id'] = $someuser->getId();
             return true;
         } else {
             return false;
         }
     }
 }