Guest User

Untitled

a guest
Feb 20th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. #!/usr/local/bin/ruby
  2. require 'net/https'
  3. require 'open-uri'
  4. require 'cgi'
  5.  
  6. def login(options)
  7. @req = Net::HTTP::new("#{options[:domain]}.campfirenow.com", (options[:ssl] ? 443 : 80))
  8. @req.use_ssl = options[:ssl] || false
  9. headers = { 'Content-Type' => 'application/x-www-form-urlencoded' }
  10.  
  11. case options[:method]
  12. when :url
  13. res = @req.post("/#{options[:url]}", "name=#{options[:username]}", headers)
  14. @room_id = res['location'].scan(/room\/(\d+)/).to_s
  15. puts res.body if @debug
  16. when :login
  17. username = "#{options[:username]}"
  18. params = "email_address=#{CGI.escape(username)}&password=#{CGI.escape(options[:password])}"
  19. puts params if @debug
  20. res = @req.post("/login/", params, headers)
  21. @room_id = options[:room]
  22. puts "Logging into room #{@room_id}" if options[:debug]
  23. puts res.body if @debug
  24. end
  25.  
  26. @headers = { 'Cookie' => res.response['set-cookie'] }
  27. res2 = @req.get(res['location'], @headers)
  28. puts res2.body if @debug
  29.  
  30. # refresh our headers
  31. @headers = { 'Cookie' => res.response['set-cookie'] }
  32. @req.get("/room/#{@room_id}/") # join the room if necessary
  33. return @headers
  34. end
Add Comment
Please, Sign In to add comment