/** * @Route ("/admin/chat/ip") * @Secure ({"ADMIN"}) * * @param array $params * @param ViewModel $model * @throws Exception * @return string */ public function adminChatIp(array $params, ViewModel $model) { $model->title = 'Chat'; FilterParams::isRequired($params, 'ip'); $userService = UserService::instance(); $model->usersByIp = $userService->findUsersWithIP($params['ip']); $model->searchIp = $params['ip']; return 'admin/chat'; }
/** * @Route ("/admin/user/{id}/subscription/{subscriptionId}/save") * @Route ("/admin/user/{id}/subscription/save") * @Secure ({"ADMIN"}) * @HttpMethod ({"POST"}) * * @param array $params * @param ViewModel $model * @throws Exception * @return string */ public function subscriptionSave(array $params, ViewModel $model) { FilterParams::isRequired($params, 'subscriptionType'); FilterParams::isRequired($params, 'status'); FilterParams::isRequired($params, 'createdDate'); FilterParams::isRequired($params, 'endDate'); $subscriptionsService = SubscriptionsService::instance(); $subscriptionType = $subscriptionsService->getSubscriptionType($params['subscriptionType']); $subscription = array(); $subscription['subscriptionType'] = $subscriptionType['id']; $subscription['subscriptionTier'] = $subscriptionType['tier']; $subscription['status'] = $params['status']; $subscription['createdDate'] = $params['createdDate']; $subscription['endDate'] = $params['endDate']; $subscription['userId'] = $params['id']; $subscription['subscriptionSource'] = isset($params['subscriptionSource']) && !empty($params['subscriptionSource']) ? $params['subscriptionSource'] : Config::$a['subscriptionType']; if (isset($params['subscriptionId']) && !empty($params['subscriptionId'])) { $subscription['subscriptionId'] = $params['subscriptionId']; $subscriptionId = $subscription['subscriptionId']; $subscriptionsService->updateSubscription($subscription); Session::set('modelSuccess', 'Subscription updated!'); } else { $subscriptionId = $subscriptionsService->addSubscription($subscription); Session::set('modelSuccess', 'Subscription created!'); } $authService = AuthenticationService::instance(); $authService->flagUserForUpdate($params['id']); return 'redirect: /admin/user/' . urlencode($params['id']) . '/subscription/' . urlencode($subscriptionId) . '/edit'; }
/** * Check if a user can receive a gift * Returns JSON * * @Route ("/gift/check") * @Secure ({"USER"}) * * @param array $params */ public function giftCheckUser(array $params, ViewModel $model) { FilterParams::isRequired($params, 's'); $userService = UserService::instance(); $subscriptionService = SubscriptionsService::instance(); $userId = Session::getCredentials()->getUserId(); $data = array('valid' => false, 'cangift' => false, 'username' => $params['s']); $user = $userService->getUserByUsername($params['s']); if (!empty($user)) { $data['cangift'] = $subscriptionService->getCanUserReceiveGift($userId, $user['userId'], null); $data['valid'] = true; } $response = new Response(Http::STATUS_OK); $response->addHeader(Http::HEADER_CONTENTTYPE, MimeType::JSON); $response->setBody(json_encode($data)); return $response; }
/** * @Route ("/admin/user/find") * @Secure ({"ADMIN"}) * * @param array $params */ public function adminUserFind(array $params) { FilterParams::isRequired($params, 's'); $userService = UserService::instance(); $users = $userService->findUsers($params['s'], 10); $response = new Response(Http::STATUS_OK); $response->addHeader(Http::HEADER_CONTENTTYPE, MimeType::JSON); $response->setBody(json_encode($users)); return $response; }
/** * Update/add a address * * @Route ("/profile/address/update") * @Secure ({"USER"}) * @Transactional * * @param array $params */ public function updateAddress(array $params) { FilterParams::isRequired($params, 'fullName'); FilterParams::isRequired($params, 'line1'); FilterParams::isRequired($params, 'line2'); FilterParams::isRequired($params, 'city'); FilterParams::isRequired($params, 'region'); FilterParams::isRequired($params, 'zip'); FilterParams::isRequired($params, 'country'); $userService = UserService::instance(); $userId = Session::getCredentials()->getUserId(); $address = $userService->getAddressByUserId($userId); if (empty($address)) { $address = array(); $address['userId'] = $userId; } $address['fullName'] = $params['fullName']; $address['line1'] = $params['line1']; $address['line2'] = $params['line2']; $address['city'] = $params['city']; $address['region'] = $params['region']; $address['zip'] = $params['zip']; $address['country'] = $params['country']; if (!isset($address['id']) || empty($address['id'])) { $userService->addAddress($address); } else { $userService->updateAddress($address); } Session::set('modelSuccess', 'Your address has been updated'); return 'redirect: /profile'; }