getUniqueCode(10); $sm = new Application_Model_SessionMapper(); while(count($sm->findBy(array('alphasessionID' => $uniqid),true))>0){ $uniqid = $this->getUniqueCode(16); } $session->setAlphasessionID($uniqid); $id = $sessionmapper->save($session); $sessionmapper->find($id, $session); return $session; } public function createClient(Application_Model_Client $client){ $clientmapper = new Application_Model_ClientMapper(); $result = $clientmapper->findBy(array('macadress' => $client->getMacadress(),'groupID'=>$client->getGroupID()),true); if(count($result)>0){ $client->setOptions($result[0]); $client->setID($result[0]['clientID']); } else{ $id = $clientmapper->save($client); $clientmapper->find($id, $client); } return $client; } private function getUniqueCode($length = "") { $code = md5(uniqid(rand(), true)); if ($length != "") return substr($code, 0, $length); else return $code; } } ?>