Bug 2531

https://gist.github.com/artpard/c2bb3c70fe502704923f
my intention was not to move all stuff to mixin (we don't need this all huge methods), but only repeated code:

if user_id is None:
    return []
data = self.get_data(user_id)