Improved re-push of changed and already pushed data.
This commit is contained in:
parent
419ed6571c
commit
17de3107d4
1 changed files with 40 additions and 34 deletions
|
@ -447,48 +447,54 @@ class ClientState
|
||||||
CacheIn.set( 'last_run_' + user.id.to_s , true, { :expires_in => 20.seconds } )
|
CacheIn.set( 'last_run_' + user.id.to_s , true, { :expires_in => 20.seconds } )
|
||||||
|
|
||||||
# verify already pushed data
|
# verify already pushed data
|
||||||
if @pushed[:users]
|
if !CacheIn.get( 'pushed_users' + @client_id.to_s )
|
||||||
users = {}
|
CacheIn.set( 'pushed_users' + @client_id.to_s , true, { :expires_in => 15.seconds } )
|
||||||
@pushed[:users].each {|user_id, user_o|
|
if @pushed[:users]
|
||||||
self.user( user_id, users )
|
users = {}
|
||||||
}
|
@pushed[:users].each {|user_id, user_o|
|
||||||
if !users.empty?
|
self.user( user_id, users )
|
||||||
users.each {|user_id, user_data|
|
|
||||||
self.log 'notify', "push update of already pushed user id #{user_id}"
|
|
||||||
}
|
}
|
||||||
# send update to browser
|
if !users.empty?
|
||||||
self.send({
|
users.each {|user_id, user_data|
|
||||||
:data => {
|
self.log 'notify', "push update of already pushed user id #{user_id}"
|
||||||
:collections => {
|
}
|
||||||
:User => users,
|
# send update to browser
|
||||||
|
self.send({
|
||||||
|
:data => {
|
||||||
|
:collections => {
|
||||||
|
:User => users,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
:event => [ 'loadCollection', 'ticket_overview_rebuild' ],
|
||||||
:event => [ 'loadCollection', 'ticket_overview_rebuild' ],
|
});
|
||||||
});
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# verify already pushed data
|
# verify already pushed data
|
||||||
if @pushed[:tickets]
|
if !CacheIn.get( 'pushed_tickets' + @client_id.to_s )
|
||||||
tickets = []
|
CacheIn.set( 'pushed_tickets' + @client_id.to_s , true, { :expires_in => 15.seconds } )
|
||||||
users = {}
|
if @pushed[:tickets]
|
||||||
@pushed[:tickets].each {|ticket_id, ticket_data|
|
tickets = []
|
||||||
self.ticket( ticket_id, tickets, users )
|
users = {}
|
||||||
}
|
@pushed[:tickets].each {|ticket_id, ticket_data|
|
||||||
if !tickets.empty?
|
self.ticket( ticket_id, tickets, users )
|
||||||
tickets.each {|ticket_id|
|
|
||||||
self.log 'notify', "push update of already pushed ticket id #{ticket_id}"
|
|
||||||
}
|
}
|
||||||
# send update to browser
|
if !tickets.empty?
|
||||||
self.send({
|
tickets.each {|ticket|
|
||||||
:data => {
|
self.log 'notify', "push update of already pushed ticket id #{ticket['id']}"
|
||||||
:collections => {
|
}
|
||||||
:Ticket => tickets,
|
# send update to browser
|
||||||
:User => users,
|
self.send({
|
||||||
|
:data => {
|
||||||
|
:collections => {
|
||||||
|
:Ticket => tickets,
|
||||||
|
:User => users,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
:event => [ 'loadCollection', 'ticket_overview_rebuild' ],
|
||||||
:event => [ 'loadCollection', 'ticket_overview_rebuild' ],
|
});
|
||||||
});
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue