Sha256: 448d3eba3d5774d1e5a2281e49ccc4a4fa0d47a8f52838b065cefbb997fd58a0

Contents?: true

Size: 1.56 KB

Versions: 7

Compression:

Stored size: 1.56 KB

Contents

unless Lanes.Models.Role

    class Lanes.Models.Role extends Lanes.Models.Base
        props:
            id:     'string'
            name:   'string'
            member: { type: 'boolean', default: false }

unless Lanes.Models.User
    class Lanes.Models.User extends Lanes.Models.Base

        constructor: (attributes, access) ->
            super
            this.access_data = access

        api_path: -> '/users'

        derived:
            roles:
                fn: -> []
            isLoggedIn:
                fn: -> false
            allRoles:
                fn: -> new Lanes.Models.Role.Collection

        session:
            access_data: 'object'
            id:          'integer'
            login:       'string'
            name:        'string'
            email:       'string'
            role_names:  'array'
            options:     'object'
            password:    'string'
        hasAccess: -> true
        canRead:   (model, field) -> true
        canWrite:  (model, field) -> true
        canDelete: (model)        -> true

CURRENT_USER = null

Object.defineProperty(Lanes, 'current_user', {

    set: (user) ->
        events = null
        if CURRENT_USER
            events = CURRENT_USER._events
        if _.some(events)
            for key, callbacks of events
                if user._events[key]
                    user._events[key] = user._events[key].concat(callbacks)
                else
                    user._events[key] = callbacks
        CURRENT_USER = user

    get: ->
        CURRENT_USER
})

Lanes.current_user = new Lanes.Models.User

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
lanes-0.7.0 client/lanes/models/User.coffee
lanes-0.6.1 client/lanes/models/User.coffee
lanes-0.6.0 client/lanes/models/User.coffee
lanes-0.5.6 client/lanes/models/User.coffee
lanes-0.5.5 client/lanes/models/User.coffee
lanes-0.5.0 client/lanes/models/User.coffee
lanes-0.4.0 client/lanes/models/User.coffee