public function loginAction(Request $request, Application $app) { $adminId = $app['session']->get('adminId'); $admin = new Admin(); if ($adminId) { $admin->setId($adminId); $admin->setLastLoginTime(time()); $app['repository.admin']->editLastLoginTime($admin); $redirect = $app['url_generator']->generate('adminIndex'); return $app->redirect($redirect); } $form = $app['form.factory']->create(new AdminLoginType(), $admin); $form->handleRequest($request); if ($request->isMethod('POST')) { // $form->bind($request); if ($form->isValid()) { $resultFindByNameAndPassword = $app['repository.admin']->findByNameAndPassword($admin); if (!$resultFindByNameAndPassword) { CommonFunc::alertBack('账号或密码错误,请重试'); return; } $resultFindByNameAndPassword->setLastLoginTime(time()); $app['repository.admin']->editLastLoginTime($resultFindByNameAndPassword); $resultFindByNameAndPassword->setLastLoginIp(CommonFunc::getIP()); $app['repository.admin']->editLastLoginIp($resultFindByNameAndPassword); $app['session']->set('adminId', $resultFindByNameAndPassword->getId()); $redirect = $app['url_generator']->generate('adminIndex'); return $app->redirect($redirect); } } $data = array('form' => $form->createView(), 'title' => '用户登录'); return $app['twig']->render('admin/adminLogin.html.twig', $data); }
public function checkIsLoginHeader($user, $request, $app) { $data = array(); $userId = $user->getId(); $data['id'] = $userId; if ($userId) { $user->setId($userId); $user = $app['repository.user']->findById($user); if ($user->getStatus() == 0) { CommonFunc::alertBack('未激活,请联系管理员或到邮箱激活'); return; } $data['id'] = $userId; $data['isLogin'] = 1; $data['name'] = $user->getName(); $data['lastLoginTime'] = date("Y-m-d H:i:s", $user->getLastLoginTime()); $data['integration'] = $user->getIntegration(); $data['vipStartTime'] = date("Y-m-d H:i:s", $user->getVipStartTime()); $data['vipEndTime'] = date("Y-m-d H:i:s", $user->getVipEndTime()); $data['vipTime'] = intval(($user->getVipEndTime() - $user->getVipStartTime()) / (24 * 60 * 60)); if ($user->getVipEndTime() < time() and $user->getIsVip() == 1) { $user = new User(); $user->setId($userId); $user->setIsVip(0); $resultChangeIsVip = $app['repository.user']->changeIsVip($user); if (!$resultChangeIsVip) { CommonFunc::alertBack('系统错误,请联系管理员'); return; } } $data['isVip'] = $user->getIsVip(); $data['lastSignInTime'] = $user->getLastSignInTime(); $data['purchasedGoodsId'] = $user->getPurchasedGoodsId(); $data['shareKey'] = $user->getShareKey(); if ($data['lastSignInTime'] > strtotime(date("Y-m-d"))) { $data['isSignIn'] = 1; } else { $data['isSignIn'] = 0; } } else { $form = $app['form.factory']->create(new UserLoginType(), $user); if ($request->isMethod('POST')) { $form->bind($request); if ($form->isValid()) { $resultFindByNameAndPassword = $app['repository.user']->findByNameAndPassword($user); if (!$resultFindByNameAndPassword) { CommonFunc::alertBack('账号或密码错误,请重试'); return; } if ($resultFindByNameAndPassword->getStatus() == 0) { CommonFunc::alertBack('未激活,请联系管理员或到邮箱激活'); return; } $resultFindByNameAndPassword->setLastLoginTime(time()); $app['repository.user']->editLastLoginTime($resultFindByNameAndPassword); $resultFindByNameAndPassword->setLastLoginIp(CommonFunc::getIP()); $app['repository.user']->editLastLoginIp($resultFindByNameAndPassword); $userId = $resultFindByNameAndPassword->getId(); $app['session']->set('userId', $userId); // $redirect = $app['url_generator']->generate('userIndex'); // return $app->redirect($redirect); $user->setId($userId); $user = $app['repository.user']->findById($user); $data['id'] = $userId; $data['isLogin'] = 1; $data['name'] = $user->getName(); $data['lastLoginTime'] = date("Y-m-d H:i:s", $user->getLastLoginTime()); $data['integration'] = $user->getIntegration(); $data['vipStartTime'] = date("Y-m-d H:i:s", $user->getVipStartTime()); $data['vipEndTime'] = date("Y-m-d H:i:s", $user->getVipEndTime()); $data['vipTime'] = intval(($user->getVipEndTime() - $user->getVipStartTime()) / (24 * 60 * 60)); if ($user->getVipEndTime() < time() and $user->getIsVip() == 1) { $user = new User(); $user->setId($userId); $user->setIsVip(0); $resultChangeIsVip = $app['repository.user']->changeIsVip($user); if (!$resultChangeIsVip) { CommonFunc::alertBack('系统错误,请联系管理员'); return; } } $data['isVip'] = $user->getIsVip(); $data['lastSignInTime'] = $user->getLastSignInTime(); $data['purchasedGoodsId'] = $user->getPurchasedGoodsId(); $data['shareKey'] = $user->getShareKey(); if ($data['lastSignInTime'] > strtotime(date("Y-m-d"))) { $data['isSignIn'] = 1; } else { $data['isSignIn'] = 0; } return $data; } } $data['isLogin'] = 0; $data['isVip'] = 0; $data['form'] = $form->createView(); } return $data; }
public function loginAction(Request $request, Application $app) { $userId = $app['session']->get('userId'); $user = new User(); $user->setId($userId); $userInfo = $app['repository.user']->findById($user); if ($userId and $userInfo->getStatus() == 1) { $user->setId($userId); $user->setLastLoginTime(time()); $app['repository.user']->editLastLoginTime($user); $redirect = $app['url_generator']->generate('userIndex'); return $app->redirect($redirect); } $form = $app['form.factory']->create(new UserLoginType(), $user); if ($request->isMethod('POST')) { $form->bind($request); if ($form->isValid()) { $resultFindByNameAndPassword = $app['repository.user']->findByNameAndPassword($user); if (!$resultFindByNameAndPassword) { CommonFunc::alertBack('账号或密码错误,请重试'); return; } if ($resultFindByNameAndPassword->getStatus() == 0) { CommonFunc::alertBack('未激活,请联系管理员或到邮箱激活'); return; } $resultFindByNameAndPassword->setLastLoginTime(time()); $app['repository.user']->editLastLoginTime($resultFindByNameAndPassword); $resultFindByNameAndPassword->setLastLoginIp(CommonFunc::getIP()); $app['repository.user']->editLastLoginIp($resultFindByNameAndPassword); $app['session']->set('userId', $resultFindByNameAndPassword->getId()); $redirect = $app['url_generator']->generate('userIndex'); return $app->redirect($redirect); } } $data = array('form' => $form->createView(), 'title' => '用户登录'); return $app['twig']->render('user/userLogin.html.twig', $data); }