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; } } } ?>