javascript - Meteor JS meteor pages showing all records on new account create -
i have found bug in application. believe it's problem meteor-pages pagination or data being cached. i'm using stardard accounts package logging , signing up.
the problem if have 2 tabs opened in browser, , on 1 of them log out, create new account , log out new account, when change second browser tab, , log in on normal account , switch 1 of views can see items of brandcampaignspagination pagination, shouldn't happen, instead should able see personal campaigns.
everything goes normal when reload browser tab.
below can see pagination:
@brandcampaignspagination = new meteor.pagination campaigns, availablesettings: filters: true sort: true perpage: 10 templatename: 'campaignpaginate' itemtemplate: 'singlecampaign' navshowfirst: false navshowlast: false maxsubscriptions: 100 divwrapper: false and controller:
class brands.campaignscontroller extends brands.basecontroller action: -> @render "brandscampaigns#{@params.status.capitalize()}" waiton: -> meteor.subscribe 'brandcampaignsproposals', @params.status meteor.subscribe 'money-package-fxrates' onstop: -> brandcampaignspagination.unsubscribe() onrerun: -> brandcampaignspagination.unsubscribe() @next() onbeforeaction: -> brandcampaignspagination.set filters: userid: meteor.userid() status: @params.status @next() i tried onstop , onrerun hooks force unsubscription on pagination collection didn't work.
any ideas?
i have solution, problem pagination , lack of authentication function, extension pagination posted below works charm.
@brandcampaignspagination = new meteor.pagination campaigns, availablesettings: filters: true sort: true perpage: 10 templatename: 'campaignpaginate' itemtemplate: 'singlecampaign' navshowfirst: false navshowlast: false maxsubscriptions: 100 divwrapper: false auth: (skip,subscription) -> alwaysfilters = userid: subscription.userid userpagination = brandcampaignspagination.usersettings[subscription._session.id] || {} userfilters = userpagination.filters || {} usersort = userpagination.sort || {} unless _.contains _.values(campaignstatuses), userfilters.status userfilters.status = campaignstatuses.published filters = _.extend alwaysfilters, status: userfilters.status options = sort: usersort, skip: skip, limit: @perpage [filters,options]
Comments
Post a Comment