Module: Redchick

Defined in:
lib/redchick.rb,
lib/redchick/layout.rb,
lib/redchick/version.rb

Defined Under Namespace

Modules: Layout, VERSION Classes: Cli

Constant Summary collapse

CONSUMER_KEY =
'6vSPn8nvt62lIXlmQ0f6JSI7O'
CONSUMER_SECRET =
'PYZQYeIm0ca6Jc6DMdlrMx0hfDyPKZPsksA1WvMWKtgzjeihSO'
CONFIG_FILE =
'.redchick.yml'

Class Method Summary collapse

Class Method Details

.generate_config_fileObject



244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
# File 'lib/redchick.rb', line 244

def self.generate_config_file
  access_token = get_access_token
  screen_name = access_token.params[:screen_name]
  config = {
    current_user: screen_name,
    layout: 'basic',
    count: 15,
    users: {
      "#{screen_name}": {
        oauth_token: access_token.token,
        oauth_token_secret: access_token.secret
      }
    }
  }
  f = File.new(File.join(Dir.home, CONFIG_FILE), 'w')
  f.write config.to_yaml
end

.get_access_tokenObject



231
232
233
234
235
236
237
238
239
240
241
242
# File 'lib/redchick.rb', line 231

def self.get_access_token
  consumer = OAuth::Consumer.new(
    CONSUMER_KEY,
    CONSUMER_SECRET,
    site: 'https://api.twitter.com'
  )
  request_token = consumer.get_request_token
  puts 'open following url and authorize it', request_token.authorize_url
  puts 'enter PIN: '
  pin = STDIN.gets.chomp
  access_token = request_token.get_access_token(oauth_verifier: pin)
end

.startObject



224
225
226
227
228
229
# File 'lib/redchick.rb', line 224

def self.start
  generate_config_file unless File.exist? File.join(Dir.home, CONFIG_FILE)
  config = YAML.load_file(File.join(Dir.home, CONFIG_FILE))
  cli = Redchick::Cli.new(config)
  cli.start
end