module ZuoraConnect::Controllers::Helpers

def select_instance

def select_instance
  begin
    app = verify_with_navbar
    url_tasks = JSON.parse(Base64.urlsafe_decode64(CGI.parse(URI.parse(app["url"]).query)["app_instance_ids"][0]))
    @app_instance_ids = JSON.parse(Base64.urlsafe_decode64(params[:app_instance_ids]))
    if (url_tasks & @app_instance_ids).size == @app_instance_ids.size
      sql = "select name,id from zuora_connect_app_instances where id = ANY(ARRAY#{@app_instance_ids})"
      result = ActiveRecord::Base.connection.execute(sql)
      @names = {}
      result.each do |x|
        @names[x["id"].to_i] = x["name"]
      end
      render "zuora_connect/static/launch"
    else
      render "zuora_connect/static/invalid_launch_request"
    end
  rescue => ex
    Rails.logger.debug("Error parsing Instance ID's: #{ex.message}")
    render "zuora_connect/static/invalid_launch_request"
  end
end