All pastes #829334 Raw Edit

Ruby's Shoutbox Code

public ruby v1 · immutable
#829334 ·published 2007-12-23 02:23 UTC
rendered paste body
   def shoutBox(buffer)        file = File.open("out.txt", "r")        data = file.readlines        main_index = File.open("out.txt", "w")        event = buffer['command']        if event.upcase == "PRIVMSG"          if buffer['channel'].upcase == @channel.upcase                 main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} PRIVMSG #{buffer['channel']} :#{buffer['argument']}\n")          end        elsif event.upcase == "KICK"              main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} KICK #{buffer['channel']} #{buffer['victim']} :#{buffer['arg$        elsif event.upcase == "PART"              main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} PART #{buffer['channel']} :#{buffer['argument']}\n")        elsif event.upcase == "JOIN"              main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} JOIN #{buffer['channel']}\n")        elsif event.upcase == "QUIT"              main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} QUIT :#{buffer['argument']}\n")        elsif event.upcase == "MODE"              main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} MODE #{buffer['channel']} #{buffer['argument']}\n")        elsif event.upcase == "NICK"              main_index.write(":#{buffer['argument']}!#{buffer['ident']}@#{buffer['hostname']} NICK :#{buffer['username']}\n")        elsif event.upcase == "NAMES"              unless @info[@channel.upcase].nil?                      names = Array.new                      names = @info[@channel.upcase].keys                      line = ""                      names.each do |name|                        unless @info[@channel.upcase][name].nil?                                line = "#{line} #{@info[@channel.upcase][name]['mode'].gsub('Hr', "").gsub('H', "")}#{name}"                        end                      end                      main_index.write(":@nick!internal@lol NAMES #{@channel} :#{line}\n")                end        end        data.each do |line|              main_index.write(line)        end        main_index.close   end