tbmsg icon indicating copy to clipboard operation
tbmsg copied to clipboard

Paginate

Open dsbilling opened this issue 10 years ago • 10 comments

Is it possible to add a paginate function for messages in convos and for conversations?

dsbilling avatar Nov 21 '14 18:11 dsbilling

yes it is surely needed! Ill find some time soon and start working on it

tzookb avatar Nov 23 '14 07:11 tzookb

@abhishek238 please open a new issue, so we could discuss there.

tzookb avatar Jan 03 '15 18:01 tzookb

This is something i ran into my self! I have been looking into it. Shouldn't be that hard to make but depends on how far you want to take it. Making a function like this should get people started:

public static function getMessages($convId, $start = 0, $perPage = 20) {
   // SQL QUERY LIMIT = $perPage and OFFSET = $start.
}

This way you won't need to load all messages from the DB and should work great for ajax calls but the only problem with this is that you won't know how many pages there are in total. This also means you won't be able to make a Laravel Paginator object. I don't like working with the Paginator for messages and don't recommend it. But if that is what you want you could make something like:

$conv = TBMsg::getConversationMessages($convId, $userId,);
$conv->getAllMessages();
$conv->paginateMessages($perPage);

-----------------------

public function paginateMessages($perPage = 20) {
  // $messages= all the messages
  // $total = count() on all the $messages
  // Paginator::make($collection->all(), $total, $perPage);
}

The problem here is that Pagenator::make() will use Paginator::getCurrentPage() to get the current page from the GET parameters. This will also make the package more dependent on laravel.

Raoul

Raou1d avatar Jan 04 '15 12:01 Raou1d

yes your first option will be the option, as I dont want to add the laravel paginator now.

Ill implement it soon

tzookb avatar Jan 04 '15 16:01 tzookb

just finished the big change with tests, so now it will be much safer to change stuff. I'll try to add it soon

tzookb avatar Jan 06 '15 21:01 tzookb

Yes, this feature is very much required to move forward. I'd love to help out implementing this if you don't have the time.

tmunzar-jfish avatar May 06 '15 13:05 tmunzar-jfish

Hi @tmunzar-jfish I would always would be happy to get help :)

tzookb avatar May 06 '15 13:05 tzookb

Is this feature implemented yet?

rohitnaidu19 avatar Dec 21 '15 10:12 rohitnaidu19

not yet, hope to do it soon, or would be happy if you have suggestions.

tzookb avatar Dec 21 '15 11:12 tzookb

Your package is awesome. One of the best chat systems for laravel available. Very flexible. Just a few issues else it's perfect.

Wish I could help but I'm a noob :-) On Dec 21, 2015 4:47 PM, "Tzook" [email protected] wrote:

not yet, hope to do it soon, or would be happy if you have suggestions.

— Reply to this email directly or view it on GitHub https://github.com/tzookb/tbmsg/issues/22#issuecomment-166274076.

rohitnaidu19 avatar Dec 21 '15 14:12 rohitnaidu19