Beispiel #1
0
 public function deleteMessage($messageID, $message = array(), $action = true)
 {
     // Delete message
     $retval = $this->db->delete('timeline_messages', array('message_id' => $messageID), 1);
     if ($retval) {
         if ($action) {
             // Delete timeline action
             timeline_helper::delete('timeline_message_post', $message['user_id'], $messageID);
         }
         // Action hook
         hook::action('timeline/messages/delete', $messageID);
     }
     return $retval;
 }
Beispiel #2
0
 public function saveComment($commentID, $comment, $resource = '', $userID = 0, $itemID = 0, $table = '', $column = '')
 {
     // Is this a new comment?
     if (!$commentID) {
         // Get resource ID
         if (!($resourceID = config::item('resources', 'core', $resource, 'resource_id'))) {
             return false;
         }
         // Comment data
         $comment['resource_id'] = $resourceID;
         $comment['user_id'] = $userID;
         $comment['item_id'] = $itemID;
         $comment['poster_id'] = session::item('user_id');
         $comment['post_date'] = date_helper::now();
         // Get table and column names
         $table = $table ? $table : config::item('resources', 'core', $resource, 'table');
         $column = $column ? $column : config::item('resources', 'core', $resource, 'column');
         // Insert comment
         if ($commentID = $this->db->insert('core_comments', $comment)) {
             // Update comment count
             $this->db->query("UPDATE `:prefix:" . $table . "` SET `total_comments`=`total_comments`+1 WHERE `" . $column . "`=? LIMIT 1", array($itemID));
             // Action hook
             hook::action('comments/insert', session::item('user_id'), $resourceID, $userID, $itemID, $comment);
             // Do we have user id?
             if ($userID && $userID != session::item('user_id')) {
                 // Save notification
                 timeline_helper::notice($resource . '_comment', $userID, session::item('user_id'), $itemID);
             }
         }
     } else {
         $this->db->update('core_comments', $comment, array('comment_id' => $commentID), 1);
         // Action hook
         hook::action('comments/update', $commentID, $comment);
     }
     return $commentID;
 }
Beispiel #3
0
 public function deleteAd($adID, $userID, $ad)
 {
     // Load pictures model
     loader::model('classifieds/pictures', array(), 'classifieds_pictures_model');
     // Delete pictures
     $this->classifieds_pictures_model->deletePictures($adID, $userID, $ad);
     // Delete ad
     $retval = $this->fields_model->deleteValues('classified_ad', $adID);
     if ($retval) {
         // Update counters
         $column = $ad['active'] == 1 ? 'total_classifieds' : 'total_classifieds_i';
         $this->db->query("UPDATE `:prefix:users` SET `{$column}`=`{$column}`-1 WHERE `user_id`=? LIMIT 1", array($userID));
         // Delete reports
         loader::model('reports/reports');
         $this->reports_model->deleteReports('classified_ad', $adID);
         // Delete comments
         if ($ad['total_comments']) {
             loader::model('comments/comments');
             $this->comments_model->deleteComments('classified_ad', $adID, $ad['total_comments']);
         }
         // Delete likes
         if ($ad['total_likes']) {
             loader::model('comments/likes');
             $this->likes_model->deleteLikes('classified_ad', $adID, $ad['total_likes']);
         }
         // Delete votes
         if ($ad['total_votes']) {
             loader::model('comments/votes');
             $this->votes_model->deleteVotes('classified_ad', $adID, $ad['total_votes']);
         }
         // Clean up counters
         $this->counters_model->deleteCounters('user', $userID);
         // Delete timeline action
         timeline_helper::delete('classified_ad_post', $userID, $adID);
         // Action hook
         hook::action('classifieds/delete', $adID, $ad);
     }
     return $retval;
 }
Beispiel #4
0
 public function deletePicture($pictureID, $albumID, $userID, $picture, $album)
 {
     // Delete picture
     $retval = $this->fields_model->deleteValues('picture', $pictureID);
     if ($retval) {
         // Delete files
         $this->storage_model->deleteFiles($picture['file_id'], 3);
         // Update counters
         $column = $picture['active'] == 1 ? 'total_pictures' : 'total_pictures_i';
         $this->db->query("UPDATE `:prefix:pictures_albums_data` SET `{$column}`=`{$column}`-1 WHERE `album_id`=? LIMIT 1", array($albumID));
         $this->db->query("UPDATE `:prefix:users` SET `{$column}`=`{$column}`-1 WHERE `user_id`=? LIMIT 1", array($userID));
         $this->db->query("UPDATE `:prefix:pictures_data` SET `order_id`=`order_id`-1 WHERE `album_id`=? AND `order_id`>? LIMIT ?", array($albumID, $picture['order_id'], $album['total_pictures'] + $album['total_pictures_i'] - $picture['order_id']));
         // Is this a cover picture?
         if ($album['picture_id'] && $album['picture_id'] == $pictureID) {
             $this->pictures_albums_model->updateCover($albumID, 0);
         }
         // Delete reports
         loader::model('reports/reports');
         $this->reports_model->deleteReports('picture', $pictureID);
         // Delete comments
         if ($picture['total_comments']) {
             loader::model('comments/comments');
             $this->comments_model->deleteComments('picture', $pictureID, $picture['total_comments']);
         }
         // Delete likes
         if ($picture['total_likes']) {
             loader::model('comments/likes');
             $this->likes_model->deleteLikes('picture', $pictureID, $picture['total_likes']);
         }
         // Delete votes
         if ($picture['total_votes']) {
             loader::model('comments/votes');
             $this->votes_model->deleteVotes('picture', $pictureID, $picture['total_votes']);
         }
         // Delete timeline action
         timeline_helper::delete('picture_post', $userID, $albumID);
         // Action hook
         hook::action('pictures/delete', $pictureID, $picture);
     }
     return $retval;
 }
Beispiel #5
0
 public function saveLike($resource, $userID, $itemID, $like, $table = '', $column = '')
 {
     // Get resource ID
     if (!($resourceID = config::item('resources', 'core', $resource, 'resource_id'))) {
         return false;
     }
     // Get table and column names
     $table = $table ? $table : config::item('resources', 'core', $resource, 'table');
     $column = $column ? $column : config::item('resources', 'core', $resource, 'column');
     $data = array('resource_id' => $resourceID, 'item_id' => $itemID, 'user_id' => session::item('user_id'));
     // Like
     if ($like) {
         $data['post_date'] = date_helper::now();
         // Update total likes
         if ($retval = $this->db->query("UPDATE `:prefix:" . $table . "` SET `total_likes`=`total_likes`+1 WHERE `" . $column . "`=? LIMIT 1", array($itemID))) {
             // Save like
             $this->db->insert('core_likes', $data);
             // Action hook
             hook::action('likes/insert', session::item('user_id'), $resourceID, $itemID);
             // Do we have user id?
             if ($userID && $userID != session::item('user_id')) {
                 // Save notification
                 timeline_helper::notice($resource . '_like', $userID, session::item('user_id'), $itemID);
             }
         }
     } else {
         // Update total likes
         if ($retval = $this->db->query("UPDATE `:prefix:" . $table . "` SET `total_likes`=`total_likes`-1 WHERE `" . $column . "`=? LIMIT 1", array($itemID))) {
             // Save like
             if ($this->db->delete('core_likes', $data, 1)) {
                 // Action hook
                 hook::action('likes/unlike', session::item('user_id'), $resourceID, $itemID);
                 // Delete notification
                 timeline_helper::unnotice($resource . '_like', $userID, session::item('user_id'), $itemID);
             }
         }
     }
     return $retval;
 }
Beispiel #6
0
 public function saveVote($resource, $userID, $itemID, $score, $table = '', $column = '')
 {
     // Get resource ID
     if (!($resourceID = config::item('resources', 'core', $resource, 'resource_id'))) {
         return false;
     }
     // Get table and column names
     $table = $table ? $table : config::item('resources', 'core', $resource, 'table');
     $column = $column ? $column : config::item('resources', 'core', $resource, 'column');
     $data = array('resource_id' => $resourceID, 'item_id' => $itemID, 'user_id' => session::item('user_id'), 'score' => $score, 'post_date' => date_helper::now());
     // Update total votes and score
     $retval = $this->db->query("UPDATE `:prefix:" . $table . "`\n\t\t\tSET `total_votes`=`total_votes`+1, `total_score`=`total_score`+?, `total_rating`=`total_score`/`total_votes`\n\t\t\tWHERE `" . $column . "`=? LIMIT 1", array($score, $itemID));
     if ($retval) {
         // Save vote
         $this->db->insert('core_votes', $data);
         // Action hook
         hook::action('votes/insert', session::item('user_id'), $resourceID, $itemID, $score);
         // Do we have user id?
         if ($userID != session::item('user_id')) {
             // Save notification
             timeline_helper::notice($resource . '_vote', $userID, session::item('user_id'), $itemID);
         }
     }
     return $retval;
 }
Beispiel #7
0
 public function deleteBlog($blogID, $userID, $blog)
 {
     // Delete blog
     $retval = $this->fields_model->deleteValues('blog', $blogID);
     if ($retval) {
         // Update counters
         $column = $blog['active'] == 1 ? 'total_blogs' : 'total_blogs_i';
         $this->db->query("UPDATE `:prefix:users` SET `{$column}`=`{$column}`-1 WHERE `user_id`=? LIMIT 1", array($userID));
         // Delete reports
         loader::model('reports/reports');
         $this->reports_model->deleteReports('blog', $blogID);
         // Delete comments
         if ($blog['total_comments']) {
             loader::model('comments/comments');
             $this->comments_model->deleteComments('blog', $blogID, $blog['total_comments']);
         }
         // Delete likes
         if ($blog['total_likes']) {
             loader::model('comments/likes');
             $this->likes_model->deleteLikes('blog', $blogID, $blog['total_likes']);
         }
         // Delete votes
         if ($blog['total_votes']) {
             loader::model('comments/votes');
             $this->votes_model->deleteVotes('blog', $blogID, $blog['total_votes']);
         }
         // Clean up counters
         $this->counters_model->deleteCounters('user', $userID);
         // Delete timeline action
         timeline_helper::delete('blog_post', $userID, $blogID);
         // Action hook
         hook::action('blogs/delete', $blogID, $blog);
     }
     return $retval;
 }
Beispiel #8
0
 public function deleteUser($userID, $user)
 {
     // Delete comments
     loader::model('comments/comments');
     $this->comments_model->deleteUser($userID, $user);
     // Delete likes
     loader::model('comments/likes');
     $this->likes_model->deleteUser($userID, $user);
     // Delete votes
     loader::model('comments/votes');
     $this->votes_model->deleteUser($userID, $user);
     // Delete reports
     loader::model('reports/reports');
     $this->reports_model->deleteUser($userID, $user);
     // Delete visitors
     loader::model('users/visitors', array(), 'users_visitors_model');
     $this->users_visitors_model->deleteUser($userID, $user);
     // Delete timeline actions
     loader::model('timeline/timeline');
     $this->timeline_model->deleteUser($userID, $user);
     // Delete friends
     $this->users_friends_model->deleteUser($userID, $user);
     // Delete picture
     if ($user['picture_id']) {
         $this->deletePicture($userID, $user['picture_id'], false);
     }
     // Delete user
     $this->db->delete('users_data_' . config::item('usertypes', 'core', 'keywords', $user['type_id']), array('profile_id' => $userID), 1);
     $this->db->delete('users_data_items', array('data_id' => $userID));
     $this->db->delete('users_config', array('user_id' => $userID));
     $retval = $this->db->delete('users', array('user_id' => $userID), 1);
     // Clean up counters
     $this->counters_model->deleteCounters('user', $userID);
     // Delete timeline action
     timeline_helper::delete('user_signup', $userID, $userID);
     // Action hook
     hook::action('users/account/delete', $userID, $user);
     return $retval;
 }
Beispiel #9
0
?>

			</ul>

		</div>

	</div>
	<div class="content">

		<dl class="content-grid">
			<?php 
view::load('users/profile/elements/profile', array('name' => false, 'fields' => $fields, 'user' => $user, 'overview' => config::item('user_profile_full', 'users') ? 0 : 1));
?>
		</dl>

		<?php 
if (config::item('timeline_active', 'timeline') && config::item('timeline_profile', 'timeline')) {
    ?>
			<?php 
    echo timeline_helper::getTimeline($user, isset($user['config']['privacy_timeline_messages']) ? $user['config']['privacy_timeline_messages'] : 1);
    ?>
		<?php 
}
?>

	</div>

</section>

<?php 
view::load('footer');
Beispiel #10
0
 public function deleteAlbum($albumID, $userID, $album)
 {
     // Load pictures model
     loader::model('pictures/pictures');
     // Delete pictures
     $this->pictures_model->deletePictures($albumID, $userID, $album);
     // Delete album
     $retval = $this->fields_model->deleteValues('picture_album', $albumID);
     if ($retval) {
         // Update counters
         $this->db->query("UPDATE `:prefix:users` SET `total_albums`=`total_albums`-1 WHERE `user_id`=? LIMIT 1", array($userID));
         $this->db->query("UPDATE `:prefix:users` SET `total_pictures`=`total_pictures`-?, `total_pictures_i`=`total_pictures_i`-? WHERE `user_id`=? LIMIT 1", array($album['total_pictures'], $album['total_pictures_i'], $userID));
         // Delete reports
         loader::model('reports/reports');
         $this->reports_model->deleteReports('picture_album', $albumID);
         if ($album['total_likes']) {
             loader::model('comments/likes');
             $this->likes_model->deleteLikes('picture_album', $albumID, $album['total_likes']);
         }
         // Delete votes
         if ($album['total_votes']) {
             loader::model('comments/votes');
             $this->votes_model->deleteVotes('picture_album', $albumID, $album['total_votes']);
         }
         // Delete timeline action
         timeline_helper::delete('picture_post', $userID, $albumID);
         // Action hook
         hook::action('pictures/albums/delete', $albumID, $album);
         // Clean up counters
         $this->counters_model->deleteCounters('user', $userID);
     }
     return $retval;
 }