Class: Roebe::OneLinePasswords

Inherits:
Base show all
Defined in:
lib/roebe/classes/one_line_passwords.rb

Overview

Roebe::OneLinePasswords

Constant Summary collapse

FILE_STUDIUM_PASSWORDS =
#

FILE_STUDIUM_PASSWORDS

#
BeautifulUrl.file_passwords
FILE_ALL_PASSWORDS =
#

FILE_ALL_PASSWORDS

#
BeautifulUrl.file_passwords

Constants inherited from Base

Base::COLOURS, Base::HOME_DIRECTORY_OF_USER_X, Base::N, Base::NAMESPACE

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#actions, #append_this_onto_that_file, #append_what_into, #be_silent, #be_verbose?, #beautiful_url, #burlywood, #call_next, #chdir, #cheerful_guy, #cliner, #complex_esystem, #convert_global_env, #copy_directory, #copy_file, #cornflowerblue, #create_directory, #crimson, #current_month?, #current_time?, #current_year?, #cyan, #darkcyan, #darkgreen, #darkkhaki, #darkslateblue, #deeppink, #delete_symlink, #do_not_use_the_base_colours, #do_use_the_base_colours, #e, #ecomment, #editor_to_use?, #efancy, #eimp, #emphasis, #ensure_main_encoding, #ensure_utf_encoding, #eparse, #erev, #esteelblue, #etomato, #ewarn, #exit_program, #firebrick, #get_current_day, #get_current_month, #get_files_and_directories, #get_files_from, #get_german_name_for_this_weekday, #gold, #green, #grey, #hh_mm_ss, #hh_mm_ss_day_month_year, #home_dir?, #home_directory_of_user_x?, #infer_the_namespace, #internal_hash?, #is_a_directory?, #is_a_file?, #is_a_jpg_file?, #is_an_image_file?, #is_archive?, #is_audio_file?, #is_in_studium_dir?, #is_multimedia_file?, #is_on_roebe?, #is_on_windows?, #is_studium_available?, #is_symlink?, #is_this_a_ruby_file?, #is_video_file?, #iso_encoding?, #le, #left_colour, #lightblue, #lightgreen, #lightseagreen, #lightsteelblue, #lime, #limegreen, #localhost_to_data, #log_directory?, #main_encoding?, #mediumorchid, #mediumpurple, #mediumseagreen, #mediumslateblue, #mediumspringgreen, #mediumturquoise, #mkdir_p, #mv, #n_days_in_this_month, #n_pages_in_this_pdf_file?, #namespace?, #no_file_exists_at, #ogrey, #olive, #olivedrab, #open_in_browser, #opne, #opnesystem, #opnn, #orange, #orchid, #orev, #palegoldenrod, #palevioletred, #pink, #powderblue, #programs_dir?, #project_base_dir?, #random_html_colour, #rds, #read_file_in_iso_encoding, #read_file_via_the_default_encoding, #read_lines_via_iso_encoding, #readlines_with_main_encoding, #red, #register_sigint, #remove, #remove_directory, #remove_file, #rename_kde_konsole_tab, #replace_localhost_with_data, #report_pwd, #require_rescue, #reset_the_internal_hash, #return_all_directories_from_this_directory, #return_all_files_from_this_directory, #return_current_directory, #return_dd_mm_yyyy, #return_file_or_directory_of, #return_files_from_pwd, #return_last_part_of_the_current_directory, #return_utc, #rev, #right_arrow?, #right_colour, #roebe_log_directory?, #rosybrown, #royalblue, #ruby_base_directory?, #run_in_background, #run_rcfiles_then_run_ata_via_qdbus, #sandybrown, #sdir, #seagreen, #set_be_verbose, #set_xorg_buffer, #sfancy, #sfile, #show_help, #silent_redirection?, #simp, #simple_esystem, #skyblue, #slateblue, #slategray, #springgreen, #steelblue, #string_italic, #swarn, #symlink, #teal, #temp_dir?, #to_camelcase, #to_counted_hash, #tomato, #touch, #try_to_require_the_beautiful_url_gem, #try_to_require_the_html_template, #try_to_require_the_open_gem, #try_to_require_the_program_information_gem, #try_to_require_the_xorg_buffer, #use_colours?, #verbose_truth, #weekday?, #word_wrap, #write_what_into, #yellow

Methods included from Base::CommandlineArguments

#append_onto_the_commandline_arguments, #clear_commandline_arguments, #commandline_arguments?, #commandline_arguments_as_string?, #commandline_arguments_without_leading_hyphens?, #first_argument?, #first_argument_without_leading_hyphens?, #has_an_argument_been_passed?, #remove_hyphened_arguments_from_the_commandline_arguments, #return_commandline_arguments_with_leading_hyphens, #second_argument?, #set_commandline_arguments

Constructor Details

#initialize(commandline_arguments = nil, run_already = true) ⇒ OneLinePasswords

#

initialize

#


45
46
47
48
49
50
51
52
53
54
# File 'lib/roebe/classes/one_line_passwords.rb', line 45

def initialize(
    commandline_arguments = nil,
    run_already           = true
  )
  reset
  set_commandline_arguments(
    commandline_arguments
  )
  run if run_already
end

Class Method Details

.[](i = ARGV) ⇒ Object

#

Roebe::OneLinePasswords[]

#


182
183
184
# File 'lib/roebe/classes/one_line_passwords.rb', line 182

def self.[](i = ARGV)
  new(i)
end

.hashObject

#

Roebe::OneLinePasswords.hash

This method will simply return a hash with all passwords.

#


191
192
193
194
195
# File 'lib/roebe/classes/one_line_passwords.rb', line 191

def self.hash
  YAML.load_file(FILE_STUDIUM_PASSWORDS).merge(
    YAML.load_file(FILE_ALL_PASSWORDS)
  )
end

Instance Method Details

#dataset?Boolean Also known as: dataset

#

dataset?

#

Returns:

  • (Boolean)


73
74
75
# File 'lib/roebe/classes/one_line_passwords.rb', line 73

def dataset?
  @dataset
end

#display_the_main_datasetObject

#

display_the_main_dataset

#


113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# File 'lib/roebe/classes/one_line_passwords.rb', line 113

def display_the_main_dataset
  case first_argument?
  # ======================================================================= #
  # === 1pass tuwien
  # ======================================================================= #
  when /^tuwien$/i
    e
    this_file = BeautifulUrl.file_passwords
    if File.exist? this_file
      dataset = YAML.load_file(this_file)
      left_right 'TU Wien',           dataset['tu_wien']
    end
  # ======================================================================= #
  # === 1pass github 
  # ======================================================================= #
  when /^github$/i
    e 
    left_right 'Github',           dataset?['github']
  # ======================================================================= #
  # === 1pass boku
  #
  # This is to quickly show the password at the BOKU.
  # ======================================================================= #
  when /^boku$/i
    e
    if File.exist? FILE_STUDIUM_PASSWORDS
      dataset = YAML.load_file(FILE_STUDIUM_PASSWORDS)
      left_right 'BOKU',           dataset['boku_wien']
    end
  # ======================================================================= #
  # === 1pass facebook
  # ======================================================================= #
  when /^facebook$/i, 'fbook'
    e
    dataset = YAML.load_file(FILE_STUDIUM_PASSWORDS)
    left_right 'Facebook',         dataset['facebook']
  else
    e "#{rev}Showing all available passwords next:"
    e
    left_right 'Github',         @dataset['github']
    left_right 'GMail / Google', @dataset['google']
    if File.exist? FILE_STUDIUM_PASSWORDS
      dataset = YAML.load_file(FILE_STUDIUM_PASSWORDS)
      left_right 'BOKU',           dataset['boku_wien']
      left_right 'TU Wien',        dataset['tu_wien']
      left_right 'Uniwien',        dataset['univie_unet']
      left_right 'Meduni Wien',    dataset['meduni_wien']
      left_right 'Vetmeduni Wien', dataset['vetmeduni_wien']
      left_right 'Nawi',           dataset['nawi']
      left_right 'Facebook',       dataset['facebook']
    end
    if is_on_roebe?
      left_right 'WLAN at home', :password_for_wlan_at_home
      left_right 'Tor-Browser',  :password_for_tor_browser
    end
  end
end

#left_right(left = 'Github', right = '') ⇒ Object

#

left_right

#


80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/roebe/classes/one_line_passwords.rb', line 80

def left_right(
    left  = 'Github',
    right = ''
  )
  # ======================================================================= #
  # First handle some special Symbols for the second argument:
  # ======================================================================= #
  case right
  when :password_for_tor_browser,
       :password_for_torbrowser
    right = 'mandretardin75 aaaaaaB' #1bb
  when :password_for_wlan_at_home
    right = '1'+('a'*9)
  end
  if right.is_a? Hash
    if right.has_key? 'benutzername'
      name = right['benutzername']
    elsif right.has_key? 'account'
      name = right['account']
    else
      name = right['name']
    end
    # We require the name for the password to be 'password'. How clever. :)
    right = name+' '+right['password']
  end
  e '  '+
    steelblue( (left+':').ljust(20) )+
    mediumseagreen(right)
end

#resetObject

#

reset (reset tag)

#


59
60
61
62
63
64
65
66
67
68
# File 'lib/roebe/classes/one_line_passwords.rb', line 59

def reset
  super()
  infer_the_namespace
  # ======================================================================= #
  # === @dataset
  #
  # Load up our initial dataset here.
  # ======================================================================= #
  @dataset = YAML.load_file(FILE_ALL_PASSWORDS) if File.exist?(FILE_ALL_PASSWORDS)
end

#runObject

#

run (run tag)

#


174
175
176
177
# File 'lib/roebe/classes/one_line_passwords.rb', line 174

def run
  display_the_main_dataset
  e
end