Пример #1
0
 function getUserFriendsList($userProfile)
 {
     try {
         $userLogged = SessionUtils::getUserLogged();
         $friendsDAO = new FriendsDAO();
         $friendsList = $friendsDAO->getFriendsList($userProfile);
         $userLoggedFriendList = SessionUtils::getUserLoggedFriendsList();
         if (!is_null($userLoggedFriendList)) {
             $copyFriendsList = $friendsList;
             for ($i = 0; $i < sizeof($copyFriendsList); $i++) {
                 $index = "friends" . $i;
                 $friendDTO = $copyFriendsList[$index];
                 if (!array_key_exists($friendDTO->getFriendId()->getUserId(), $userLoggedFriendList)) {
                     unset($friendsList[$index]);
                     $friendDTO->setFriendsSince(NULL);
                     $friendsList[$index] = $friendDTO;
                 }
                 if ($friendDTO->getFriendId()->getUserId() == $userLogged->getUserId()) {
                     unset($friendsList[$index]);
                 }
             }
         }
         return $friendsList;
     } catch (PDOException $pdoe) {
         throw $pdoe;
     } catch (UserNotAuthenticatedExceptionDTO $authExp) {
         throw $authExp;
     } catch (Exception $e) {
         throw $e;
     }
 }
Пример #2
0
 public static function notifyAction($object, $context)
 {
     $notificationDAO = new NotificationDAO();
     $timestamp = date(DATE_FORMAT);
     $userLoggedFriendList = SessionUtils::getUserLoggedFriendsList();
     if ($context === REGISTRATION_FORM) {
         $user = explode(SEPARATOR, $object);
         $message = DataModelUtils::getNotificationMessage($object, $context);
         $notificationDTO = new NotifyDTO(NULL, $user[0], 1, $message, 0, $timestamp, $context, $user[0] . SEPARATOR . $user[1]);
         $notificationDAO->saveNewNotification($notificationDTO);
     } else {
         if ($context === ADD_FRIEND_FORM) {
             $userLogged = SessionUtils::getUserLogged();
             $friend = explode(SEPARATOR, $object);
             $message = DataModelUtils::getNotificationMessage($object, $context);
             $notificationDTO = new NotifyDTO(NULL, $userLogged->getUserId(), $friend[0], $message, 0, $timestamp, $context, $userLogged->getUserId() . SEPARATOR . $userLogged->getUserName() . SEPARATOR . $friend[0] . SEPARATOR . $friend[1]);
             $notificationDAO->saveNewNotification($notificationDTO);
         } else {
             if ($context === CONFIRM_FRIENDSHIP_FORM) {
                 $userLogged = SessionUtils::getUserLogged();
                 $friend = explode(SEPARATOR, $object);
                 $message = DataModelUtils::getNotificationMessage($object, $context, TOMYSELF);
                 $notificationDTO = new NotifyDTO(NULL, $userLogged->getUserId(), $userLogged->getUserId(), $message, 1, $timestamp, $context, $userLogged->getUserId() . SEPARATOR . $userLogged->getUserName() . SEPARATOR . $friend[0] . SEPARATOR . $friend[1]);
                 $result = $notificationDAO->saveNewNotification($notificationDTO);
                 $message = DataModelUtils::getNotificationMessage($object, $context, TOMINENEWFRIEND);
                 $notificationDTO = new NotifyDTO(NULL, $userLogged->getUserId(), $friend[0], $message, 0, $timestamp, $context, $userLogged->getUserId() . SEPARATOR . $userLogged->getUserName() . SEPARATOR . $friend[0] . SEPARATOR . $friend[1]);
                 $result = $notificationDAO->saveNewNotification($notificationDTO);
                 $userLoggedFriendList = SessionUtils::getUserLoggedFriendsList();
                 SessionUtils::prepareNotificationToFriends($object, $context, $userLoggedFriendList, $timestamp, TOMYFRIENDSLIST);
                 $friendsDAO = new FriendsDAO();
                 $myfriendFriendList = $friendsDAO->getNewFriendsFriendList($userLogged->getUserId(), $friend[0]);
                 SessionUtils::prepareNotificationToFriends($object, $context, $myfriendFriendList, $timestamp, TOMINENEWFRIENDFRIENDLIST);
                 $message = '<a href="' . URL . PROFILE_CONTROLLER . INDEX . $userLogged->getUserId() . '"><label>' . $userLogged->getUsername() . '</label></a> ha stretto amicizia con <a href="' . URL . PROFILE_CONTROLLER . INDEX . $friend[0] . '"><label>' . $friend[1] . '</label></a>';
                 $adminNotificationDTO = new NotifyDTO(NULL, $userLogged->getUserId(), 1, $message, 0, $timestamp, $context, $userLogged->getUserId() . SEPARATOR . $userLogged->getUserName() . SEPARATOR . $friend[0] . SEPARATOR . $friend[1]);
                 $notificationDAO->saveNewNotification($adminNotificationDTO);
             } else {
                 $userLoggedFriendList = SessionUtils::getUserLoggedFriendsList();
                 SessionUtils::prepareNotificationToFriends($object, $context, $userLoggedFriendList, $timestamp);
             }
         }
     }
 }
Пример #3
0
 public static function userCanReadProfile()
 {
     $userProfile = SessionUtils::getDashboardId();
     $userFriendsList = SessionUtils::getUserLoggedFriendsList();
     return array_key_exists($userProfile, $userFriendsList);
 }