/** * Vrne Id uporabniške opcije, če le-ta obstaja * * @param \App\Entity\Option $option ime opcije * @param \Aaa\Entity\User $user uprabniško ime * @return Id ali null */ public function getOptionValuesUserId($option, $user) { $optval = $this->findOneBy(["user" => $user->getId(), "option" => $option->getId(), "global" => false]); if (is_null($optval)) { $id = null; } else { $id = $optval->getId(); } return $id; }
/** * Vrne podatke o uporabniku pripravljene za pošiljanje na klienta * * @param \Aaa\Entity\User $identity */ protected function getUserData($identity) { $roles = []; $permissions = []; foreach ($identity->getRoles() as $role) { $roles[] = $role->getName(); foreach ($role->getPermissions() as $perm) { $permissions[] = $perm->getName(); } } return ['id' => $identity->getId(), 'name' => $identity->getName(), 'username' => $identity->getEmail(), 'defaultRoute' => $identity->getDefaultRoute(), 'defaultRouteParams' => $identity->getDefaultRouteParams(), 'roles' => $roles, 'permissions' => $permissions]; }
/** * Shrani array sprememb entitet v bazo * * @param array $changes */ protected function saveChanges($changes) { $sql = "INSERT INTO {$this->tableName} (razred, objectId, upor, datum, tip, data)\n VALUES (?, ?, ?, ?, ?, ?)"; $stmt = $this->conn->prepare($sql); $date = date_create("now")->format($this->platform->getDateTimeFormatString()); $user = $this->identity ? $this->identity->getId() : null; foreach ($changes as $objectId => $change) { $class = get_class($change['entity']); $type = $change['type']; $data = serialize($change['data']); $stmt->bindValue(1, $class, \PDO::PARAM_STR); $stmt->bindValue(2, $objectId, \PDO::PARAM_STR); $stmt->bindValue(3, $user, \PDO::PARAM_STR); $stmt->bindValue(4, $date, \PDO::PARAM_STR); $stmt->bindValue(5, $type, \PDO::PARAM_STR); $stmt->bindValue(6, $data, \PDO::PARAM_STR); $stmt->execute(); } }