Sha256: 249f150ddd1d799f13abc14a289b65edac140c922b0e7e0b88cf0d0d943c10ec
Contents?: true
Size: 837 Bytes
Versions: 13
Compression:
Stored size: 837 Bytes
Contents
module Scrivito class PageConfig < Struct.new(:obj, :editing_context, :lookup_context) def initialize(**named_params) named_params.each { |key, value| self[key] = value } end def to_json { current_page: current_page_config, user_id: user_id_config, preloaded_obj_data: preloaded_obj_data }.to_json end private def user_id_config editor.id end def preloaded_obj_data if obj obj_in_selected_workpace = editing_context.selected_workspace.objs.find_including_deleted(obj.id) [obj_in_selected_workpace.data_from_cms.to_h] else [] end end def current_page_config return {} unless obj { id: obj.id, is_restricted: editor.restriction_messages_for(obj).any?, } end def editor editing_context.editor end end end
Version data entries
13 entries across 13 versions & 1 rubygems