public function preDispatch() { parent::preDispatch(); // do something before the action is called //-> see Zend Framework \Pimcore\Tool\Authentication::authenticateSession(); $adminSession = new \Zend_Session_Namespace("pimcore_admin"); if (!$adminSession->user instanceof \User) { $auth = \Zend_Auth::getInstance(); if ($auth->hasIdentity()) { // We have a login session (user is logged in) $cached_person = $auth->getIdentity(); $id = $cached_person->getId(); $this->view->person = $this->person = \Object\Person::getById($id); } else { $this->forward("form-login", "login"); } } else { $this->view->person = $this->person = \Object\Person::getById(590); } if ($this->person) { $this->view->user = $this->user = $this->person; $this->view->societe = $this->societe = $this->person->getSociete(); $this->view->locations = $this->locations = $this->societe->getLocations(); $this->storeLocation(); } }
public function getPersons() { $result = array(); if ($this->model->getId() > 0) { $sql = sprintf(" SELECT distinct r.src_id FROM `object_relations_4` r join object_query_4 o on o.oo_id=r.src_id WHERE r.`dest_id` = '%d' AND r.`fieldname` = 'positions' ", $this->model->getId()); $data = $this->db->FetchAll($sql); } foreach ($data as $key => $row) { $loc = \Object\Person::getById($row["src_id"]); if ($loc instanceof \Object\Person) { $result[] = $loc; } } return $result; }
public function replace($data = array()) { try { if ($this->model->getId() > 0) { $object = $this->model; } elseif ($data['id'] > 0 and $data['id'] != "") { $object = \Object\Person::getById($data['id']); } elseif ($data['o_id'] > 0 and $data['o_id'] != "") { $object = \Object\Person::getById($data['o_id']); } else { $object = $this->model; $date = new \Zend_Date(); $object->setCreationDate($date->get()); //todo $object->setUserOwner(1); $object->setUserModification(1); if (method_exists($object, "setAvatar")) { $object->setAvatar($this->getDefaultImage()); } $object->setPublished(1); } if ($object instanceof \Object\Person) { $object->setValues($data); $date = new \Zend_Date(); $object->setModificationDate($date); if (!$object->getO_key()) { $folder = $this->getFolderRoot(); $object->setParent($folder); if (!method_exists($object, getEmail)) { $key1 = $this->model->getClassName(); } else { $key1 = $object->getEmail() ? $object->getEmail() : $this->model->getClassName(); } $numero = $date->get(\Zend_Date::TIMESTAMP); $object_key = $this->correctClassname($key1) . '-' . $numero; $object->setO_key(strtolower($object_key)); } return $object; } else { \Logger::warning("Erreur : Classe de l'objet erronnée"); return false; } } catch (\Exception $e) { \Logger::warning($e->getMessage()); return false; } }
public function getPersons() { $result = array(); try { if ($this->model->getId() > 0) { $sql = sprintf(" SELECT distinct r.src_id FROM `object_relations_4` r join object_query_4 o on o.oo_id=r.src_id WHERE r.`dest_id` = '%d' AND r.`fieldname` = 'societe' ", $this->model->getId()); $data = $this->db->FetchAll($sql); } foreach ($data as $key => $row) { $loc = \Object\Person::getById($row["src_id"]); if ($loc instanceof \Object\Person) { $result[] = $loc; } } } catch (\Exception $e) { // something went wrong: eg. limit exceeded, wrong configuration, ... \Logger::err($e); echo $e->getMessage(); } return $result; }
public function personsListAction() { //get societe/location and serving $reponse = new Reponse(); $societe = $this->societe; $persons = $societe->getPersons(); //we check if we are in the Editor if ($_POST['action']) { //if REMOVE if ($_POST['action'] == "remove") { foreach ($_POST['id'] as $id) { $person = Object_Person::getById($id, 1); if ($person instanceof \Object\Person) { $person->delete(); } } $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->data = ''; } //if EDIT if ($_POST['action'] == "edit") { $person = \Object\Person::getById($_POST['id']); if ($person instanceof Object_Person) { $person->setFirstname($_POST['data']['firstname']); $person->setLastname($_POST['data']['lastname']); $person->setEmail($_POST['data']['email']); $person->setPhone($_POST['data']['phone']); $person->setPermits($_POST['data']['permits']); $location = Object\Location::getById($_POST['data']['locationid'], 1); $person->setLocation($location); $person->setPassword(md5($_POST['data']['password'])); $person->save(); } $data = $_POST['data']; $data['DT_RowId'] = "row_" . $_POST['data']['id']; $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->row = $data; } //if CREATE if ($_POST['action'] == "create") { $row['firstname'] = $_POST['data']['firstname']; $row['lastname'] = $_POST['data']['lastname']; $row['email'] = $_POST['data']['email']; $row['phone'] = $_POST['data']['phone']; $row['permits'] = $_POST['data']['permits']; $location = Object\Location::getById($_POST['data']['locationid'], 1); $row['location'] = $location; $row['password'] = md5($_POST['data']['password']); $current = Object\Person::getByEmail($row['email'], 1); if ($current instanceof Object\Person) { $error['name'] = "email"; $error['status'] = "Email already exists"; $reponse->fieldErrors = array($error); } else { $result = $societe->createPerson($row); if ($result instanceof \Object\Person) { $row['DT_RowId'] = $result->getId(); $row['id'] = $result->getId(); $row['locationid'] = $result->getLocation()->getId(); $row['locationname'] = $result->getLocation()->getName(); $reponse->success = true; $reponse->message = "TXT_CREATE_OK"; $reponse->row = $row; $reponse->debug = $data; } else { $reponse->success = false; $reponse->message = "TXT_CREATE_ERROR"; $reponse->row = $result; $reponse->debug = $result; } } } } else { $data = array(); foreach ($persons as $key => $person) { $i++; $array = array(); $array = $person->toArray(); $array['id'] = $person->getId(); $array['DT_RowId'] = $person->getId(); array_push($data, $array); } $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->data = $data; } $this->render($reponse); }
public function setPositionAction() { $reponse = new Reponse(); $personId = $this->getParam("personId"); $positionId = $this->getParam("positionId"); $value = $this->getParam("value", 0); $person = \Object\Person::getById($personId); if ($person instanceof \Object\Person and $positionId > 0) { $person->setPosition($positionId, $value); $person->save(); $reponse->data = $person->getPositions(); } $reponse->message = 'TXT_PERSON_UPDATED'; $reponse->success = true; $this->render($reponse); }
/** * create */ public function create() { $res = new Reponse(); $data = $this->requete->params; if ($this->person) { $data['person'] = $this->person; } else { $person = \Object\Person::getById(248); } $rec = new \Object\Reservation(); $formattedData = \Object\Reservation::formatData($data); $result = $rec->updateData($formattedData); if ($result instanceof \Object\Reservation) { $res->success = true; $res->message = "TXT_CREATE_OK"; $res->data = $result->toArray(); $res->debug = $formattedData; } else { $res->message = "TXT_CREATE_ERROR"; $res->data = $result; $res->debug = $formattedData; } return $res; }
public function mynewpassAction() { $email = $this->getParam('email'); $person = \Object\Person::getByEmail($email, 1); if ($person instanceof \Object\Person) { $realpass = $person->getPassword(); $userpass = $this->getParam('password'); if ($userpass == $realpass) { $newPassword = $this->getParam('newpassword'); if ($newPassword) { $person->setPassword($newPassword); $person->save(); } $this->view->person = $this->person = $person; $this->forward("login", "login", null, array("email" => $email, "password" => $newPassword, "error" => 'TXT_PASSWORD_CHANGED_MESSAGE')); } else { $this->forward("form-login", "login", null, array("email" => $email, "password" => $userpass, "error" => 'TXT_PASSWORD_INCORRECT')); } } else { $this->forward("form-login", "login", null, array("email" => $email, "error" => 'TXT_EMAIL_UNKNOWN')); } }