Sha256: 0f46109b8bd951c39a3c3bda861d0b959e0b5ec4aaa8bed91a7cf1e3171281c6

Contents?: true

Size: 2 KB

Versions: 1

Compression:

Stored size: 2 KB

Contents

# -*- encoding : utf-8 -*-
class Card; module Set; class Type
# Set: All "User" cards
#
module User;
extend Card::Set
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/account/set/type/user.rb"; end
include_set Abstract::Accountable

attr_accessor :email

module HtmlFormat; module_parent.send :register_set_format, Card::Format::HtmlFormat, self; extend Card::Set::AbstractFormat
  view :setup, unknown: true, perms: ->(_fmt) { Auth.needs_setup? } do
    with_nest_mode :edit do
      voo.title = "Your deck is ready to go!" # LOCALIZE
      voo.show! :help
      voo.hide! :menu
      voo.help = haml :setup_help
      Auth.as_bot { setup_form }
    end
  end

  def setup_form
    frame_and_form :create do
      [
        setup_hidden_fields,
        _render_name_formgroup,
        account_formgroups,
        setup_form_buttons
      ]
    end
  end

  def setup_form_buttons
    button_formgroup { setup_button }
  end

  def setup_button
    submit_button text: "Set up", disable_with: "Setting up"
  end

  def setup_hidden_fields
    hidden_tags(
      setup: true,
      success: { redirect: true, mark: path(mark: "") },
      "card[type_id]" => Card.default_accounted_type_id
    )
  end
end

def setup?
  Card::Env.params[:setup]
end

event :setup_as_bot, before: :check_permissions, on: :create, when: :setup? do
  abort :failure unless Auth.needs_setup?
  Auth.as_bot
  # we need bot authority to set the initial administrator roles
  # this is granted and inspected here as a separate event for
  # flexibility and security when configuring initial setups
end

event :setup_first_user, :prepare_to_store, on: :create, when: :setup? do
  add_subcard "signup alert email+*to", content: name
  add_subfield :roles, content: roles_for_first_user
end

def roles_for_first_user
  %i[help_desk shark administrator].map(&:cardname)
end

event :signin_after_setup, :integrate, on: :create, when: :setup? do
  Auth.signin id
end
end;end;end;end;
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/account/set/type/user.rb ~~

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
card-1.102.0 tmpsets/set/mod010-account/type/user.rb