public function execute($args = null) { if (!empty($_POST)) { $_POST['id'] = null; $_POST['hash'] = ServiceAuth::createHash($_POST['pass1']); $_POST['inBounds'] = 0; $_POST['outBounds'] = 0; $u = ModelUser::newInstance()->hydrate($_POST); $p = ModelProfile::newInstance(); if ($_POST['pass1'] != $_POST['pass2']) { ServiceMessage::getInstance()->addMessage('Les mots de passes ne correspondent pas', 'error'); } elseif (CollectionUser::newInstance()->findBy('login', $_POST['login'])) { ServiceMessage::getInstance()->addMessage('Ce login est déjà utilisé', 'error'); } else { if (ServiceDb::getInstance()->persist($u)) { if ($i = ServiceDb::getInstance()->lastInsertId()) { if (ServiceDb::getInstance()->persist($p->hydrate(array('user_id' => $i)))) { ServiceMessage::getInstance()->addMessage('Votre compte a bien été créé', 'success'); ServiceDb::getInstance()->persist(ModelAction::newInstance()->setUser_id($i)->setType('create')->setObject('profile')->setWhen()); return header('Location: /logout/quiet'); } else { ServiceDb::getInstance()->delete($u); ServiceMessage::getInstance()->addMessage('Une erreur est survenue #2', 'error'); } } else { ServiceMessage::getInstance()->addMessage('Une erreur est survenue #1', 'error'); } } } } ServiceRenderHtml::newInstance()->load('subscribe')->setData('hideNavigation', true)->render(); }
private function del($args) { $p = ServiceRenderJson::newInstance(); $u = ServiceAuth::getInstance()->getUser(); $i = $u->getId(); if ($v = $this->getQueryNext()) { if (!($o = $u->getPhoto($v))) { $p->setData('success', false)->setData('message', 'Cette photo n\'existe pas !'); } elseif ($o->getUser_id() != $i) { $p->setData('success', false)->setData('message', 'Cette photo n\'est pas la votre !'); } else { if (!ServiceDb::getInstance()->delete($o)) { $p->setData('message', 'L\'opération a échoué !'); } else { $p->setData('success', true)->setData('message', 'La photo a bien été supprimée'); $u->delPhoto($o); $f = '../public/uploads/' . $o->getId(); //.'.'.$ext; if (@unlink($f)) { ServiceDb::getInstance()->persist(ModelAction::newInstance()->setUser_id($i)->setType('delete')->setObject('photo')->setValue($o->getId())->setWhen()); } else { $p->setData('success', false)->setData('message', 'Erreur lors de la suppression de l\'image'); } } } } else { $p->setData('success', false); } $p->render(); }
public function execute($args = null) { $p = ServiceRenderJson::newInstance(); if (isset($_POST['id'], $_POST['type'], $_POST['action'])) { if (!($u = CollectionUser::newInstance()->find($_POST['id']))) { $p->setData('success', false)->setData('message', 'Membre inconnu'); } else { $c = ($_POST['action'] == 'add' ? 'enable' : 'disable') . 'Type'; $r = ServiceAuth::getInstance()->getUser()->getUser_has_user($u); $r->{$c}($_POST['type']); if (ServiceDb::getInstance()->persist($r)) { $p->setData('success', true)->setData('message', 'La relation a bien été ' . ($_POST['action'] == 'add' ? 'ajoutée' : 'supprimée')); ServiceDb::getInstance()->persist(ModelAction::newInstance()->setUser_id(ServiceAuth::getInstance()->getUser()->getId())->setObject('relation')->setValue($u->getLogin() . ' (' . ModelUser_has_user::$shortNames[$_POST['type']] . ')')->setType($_POST['action'] == 'add' ? 'create' : 'delete')->setWhen()); if ($r->getType() == 0) { ServiceAuth::getInstance()->getUser()->delUser_has_user($r); ServiceDb::getInstance()->delete($r); } else { ServiceAuth::getInstance()->getUser()->addUser_has_user($r); } } else { $p->setData('message', 'L\'opération a échoué !'); } } } else { $p->setData('success', false); } $p->render(); }
private function updateV($args) { $p = ServiceRenderJson::newInstance(); $pro = ServiceAuth::getInstance()->getUser()->getProfile(); if (isset($_POST['id'], $_POST['value'])) { if (!($u = $pro->getParameter($_POST['id']))) { $p->setData('success', false)->setData('message', 'Paramètre inconnu'); } else { if (!ModelParameter::isValidVisibility($_POST['value'])) { $p->setData('success', false)->setData('message', 'Valeur incorrecte'); } else { $u->setVisibility($_POST['value']); // we persist the Profile, not the Parameter ! Be careful if (ServiceDb::getInstance()->persist($pro)) { $p->setData('success', true)->setData('message', 'La visibilité du paramètre a bien été modifiée'); ServiceDb::getInstance()->persist(ModelAction::newInstance()->setUser_id(ServiceAuth::getInstance()->getUser()->getId())->setType('update')->setObject('parameter visibility')->setValue($_POST['id'])->setWhen()); } else { $p->setData('message', 'L\'opération a échoué !'); } } } } else { $p->setData('success', false); } $p->render(); }
private function del($args) { $p = ServiceRenderJson::newInstance(); $u = ServiceAuth::getInstance()->getUser(); $i = $u->getId(); if ($v = $this->getQueryNext()) { if (!($o = $u->getSkill($v))) { $p->setData('success', false)->setData('message', 'Vous n\'avez pas cette compétence #1'); } elseif ($o->getUser_id() != $u->getId()) { $p->setData('success', false)->setData('message', 'Vous n\'avez pas cette compétence #2'); } else { if (!ServiceDb::getInstance()->delete($o)) { $p->setData('message', 'L\'opération a échoué !'); } else { $p->setData('success', true)->setData('message', 'La compétence a bien été supprimée'); $u->delSkill($o); ServiceDb::getInstance()->persist(ModelAction::newInstance()->setUser_id($i)->setType('delete')->setObject('skill')->setValue($o->getName())->setWhen()); } } } else { $p->setData('success', false); } $p->render(); }