Sha256: ec4f96dc8989f408d2b8fcf07f0bc772ac07144c687244cd4207c7b76e426eed

Contents?: true

Size: 452 Bytes

Versions: 35

Compression:

Stored size: 452 Bytes

Contents

module Scrivito
class Session
  def self.renew(id, user)
    payload = {
      session: {
        role: 'editor',
        user_id: user.id,
        permissions: permissions(user),
      },
    }

    CmsRestApi.task_unaware_request(:put, "sessions/#{id}", payload)
  end

  def self.permissions(user)
    Hash[user.explicit_rules.map do |permission, verb, _, _|
      [verb, permission.to_s]
    end]
  end

  private_class_method :permissions
end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
scrivito_sdk-1.5.5 lib/scrivito/session.rb
scrivito_sdk-1.6.1 lib/scrivito/session.rb
scrivito_sdk-1.6.1.rc1 lib/scrivito/session.rb
scrivito_sdk-1.5.5.rc1 lib/scrivito/session.rb
scrivito_sdk-1.4.3 lib/scrivito/session.rb
scrivito_sdk-1.5.4 lib/scrivito/session.rb
scrivito_sdk-1.6.0 lib/scrivito/session.rb
scrivito_sdk-1.6.0.rc5 lib/scrivito/session.rb
scrivito_sdk-1.5.4.rc1 lib/scrivito/session.rb
scrivito_sdk-1.6.0.rc4 lib/scrivito/session.rb
scrivito_sdk-1.6.0.rc3 lib/scrivito/session.rb
scrivito_sdk-1.5.3 lib/scrivito/session.rb
scrivito_sdk-1.6.0.rc2 lib/scrivito/session.rb
scrivito_sdk-1.5.3.rc1 lib/scrivito/session.rb
scrivito_sdk-1.6.0.rc1 lib/scrivito/session.rb
scrivito_sdk-1.5.2 lib/scrivito/session.rb
scrivito_sdk-1.5.2.rc1 lib/scrivito/session.rb
scrivito_sdk-1.5.1 lib/scrivito/session.rb
scrivito_sdk-1.5.1.rc2 lib/scrivito/session.rb
scrivito_sdk-1.5.1.rc1 lib/scrivito/session.rb