module CupertinoPro::ProvisioningPortal::Helpers

Public Instance Methods

agent() click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 13
def agent
  unless @agent
    @agent = CupertinoPro::ProvisioningPortal::Agent.new

    @agent.instance_eval do
      def username
        @username ||= ask "Username:"
      end

      def password
        @password ||= pw "Password:"
      end

      def team_id
        unless @team_id
          teams = []
          page.form_with(:name => 'saveTeamSelection').radiobuttons.each do |radio|
            name = page.search(".label-primary[for=\"#{radio.dom_id}\"]").first.text.strip
            programs = page.search(".label-secondary[for=\"#{radio.dom_id}\"]").first.text.strip.split(/\,\s+/)
            team_id = radio.value
            teams << Team.new(name, programs, radio.value)
          end

          unless team = teams.detect{|t| t.name == @team || t.identifier == @team}
            team = choose "Select a team:", *teams
          end

          @team_id = team.identifier
        end

        @team_id
      end
    end
  end

  @agent
end
password() click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 22
def password
  @password ||= pw "Password:"
end
pluralize(n, singular, plural = nil) click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 51
def pluralize(n, singular, plural = nil)
  n.to_i == 1 ? "1 #{singular}" : "#{n} #{plural || singular + 's'}"
end
team_id() click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 26
def team_id
  unless @team_id
    teams = []
    page.form_with(:name => 'saveTeamSelection').radiobuttons.each do |radio|
      name = page.search(".label-primary[for=\"#{radio.dom_id}\"]").first.text.strip
      programs = page.search(".label-secondary[for=\"#{radio.dom_id}\"]").first.text.strip.split(/\,\s+/)
      team_id = radio.value
      teams << Team.new(name, programs, radio.value)
    end

    unless team = teams.detect{|t| t.name == @team || t.identifier == @team}
      team = choose "Select a team:", *teams
    end

    @team_id = team.identifier
  end

  @team_id
end
try() { || ... } click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 55
def try
  return unless block_given?

  begin
    yield
  rescue UnsuccessfulAuthenticationError
    say_error "Could not authenticate with Apple Developer Center. Check that your username & password are correct, and that your membership is valid and all pending Terms of Service & agreements are accepted. If this problem continues, try logging into https://developer.apple.com/membercenter/ from a browser to see what's going on." and abort
  end
end
username() click to toggle source
# File lib/cupertinopro/provisioning_portal/helpers.rb, line 18
def username
  @username ||= ask "Username:"
end