All pastes #829336 Raw Edit

Ruby's Shoutbox Code

public ruby v1 · immutable
#829336 ·published 2007-12-23 02:24 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"	  self.debug("Attempting Line-Write")          if buffer['channel'].upcase == @channel.upcase		 self.debug("Line Written")  	         main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} PRIVMSG #{buffer['channel']} :#{buffer['argument']}\n")          else		 self.warning("Channels not the same, skipped")	 	 self.warning("Channel: #{buffer['channel']} | User: #{buffer['username']}")	  end        elsif event.upcase == "KICK"  	      main_index.write(":#{buffer['username']}!#{buffer['ident']}@#{buffer['hostname']} KICK #{buffer['channel']} #{buffer['victim']} :#{buffer['argument']}\n")        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