Example #1
0
File: friend.php Project: anqh/core
 /**
  * Add new friend.
  *
  * @static
  * @param   integer  $user_id
  * @param   integer  $friend_id
  * @return  boolean
  */
 public static function add($user_id, $friend_id)
 {
     try {
         $friend = new Model_Friend();
         $friend->set_fields(array('user_id' => $user_id, 'friend_id' => $friend_id, 'created' => time()));
         $friend->save();
         Anqh::cache_delete('friends_' . $user_id);
         Anqh::cache_delete('friends_of_' . $friend_id);
         return true;
     } catch (Exception $e) {
         return false;
     }
 }
Example #2
0
File: user.php Project: anqh/anqh
 /**
  * Get user's friends.
  *
  * @param   boolean  $frienders  true for frienders, false for friends
  * @return  array
  */
 public function find_friends($frienders = false)
 {
     return $frienders ? Model_Friend::find_by_friend($this->id) : Model_Friend::find_by_user($this->id);
 }
Example #3
0
 public function action_request_accept()
 {
     // no confirmation
     $friend = new Model_Owner($this->request->param('id'));
     if (!$friend->is_on_my_friends_list($this->me())) {
         Message::add('error', 'This person does not want to be your friend.');
         Request::current()->redirect('');
     }
     if ($friend->is_on_friends_friends_list($this->me())) {
         Message::add('error', 'You are already friends with this person.');
         Request::current()->redirect('');
     }
     $new_friend = new Model_Friend();
     $new_friend->creator_id = $this->me()->id;
     $new_friend->firstname = $friend->firstname;
     $new_friend->surname = $friend->surname;
     $new_friend->email = $friend->email;
     $new_friend->save();
     Message::add('success', 'Successfully confirmed friendship');
     Request::current()->redirect('');
 }
Example #4
0
 public function action_delete_friend()
 {
     @(list($list_id, $friend_id) = explode('-', $this->request->param('id')));
     $this->template->title = 'Confirm';
     if (!$list_id || !$friend_id) {
         Request::current()->redirect('user/noaccess');
     }
     $list = new Model_List($list_id);
     $friend = new Model_Friend($friend_id);
     if (arr::get($_POST, 'delete')) {
         $friend->remove('lists', $list);
         Message::add('success', 'Friend removed from list.');
         Request::current()->redirect('list/mine/' . $list->id);
     }
     $view = View::factory('list/delete-friend');
     $view->list = $list;
     $view->friend = $friend;
     $this->template->content = $view;
 }
Example #5
0
File: user.php Project: anqh/core
 /**
  * Get user's friends
  *
  * @return  array
  */
 public function find_friends()
 {
     return Model_Friend::find_by_user($this->id);
 }
Example #6
0
 /**
  * See if $this is on $user's friends list
  */
 public function is_on_friends_friends_list(Model_User $user)
 {
     $friends_friend = new Model_Friend(array('email' => $this->email, 'creator_id' => $user->id));
     return $friends_friend->loaded();
 }