lib/uni/public_info.rb in uni-0.0.5 vs lib/uni/public_info.rb in uni-0.0.6

- old
+ new

@@ -6,11 +6,11 @@ SITUACIONY = [ "TITULADO", "BACHILLER", "EGRESADO"] module Uni SITUACION = SITUACIONX + SITUACIONY @x, @y = {}, {} @base = Mechanize.new - # Inicializa las constantes @x y @y + # Inicializa las constantes @x y @y, para el uso de #fast_uni def self.initialize (1900..2014).each do |n| tmp, v, ans = n, 2123, 0 4.times do ans += (tmp%10)*(v%10) @@ -25,34 +25,35 @@ ans += (tmp%10)*(v%10) v /= 10 tmp /= 10 end @y[n] = ans + "Ahora puedes usar #fast_uni" end end - # Obtiene letra de codigo (mas rapido que la implementacion #codigo_uni) + # Obtiene la letra del codigo (mas rapido que la implementacion #codigo_uni) # @see #codigo_uni - # @param n [Fixnum] Un objeto Fixnum - # @return [String] El codigo con su respectiva letra + # @param n [Fixnum] Un objeto Fixnum # 20072531 + # @return [String] El codigo con su respectiva letra # 20072531G def self.fast_uni n n.to_s + (65 + (@x[n/10000] + @y[n%10000])%11).chr end # Obtiene letra de codigo # @see #fast_uni - # @param n [Fixnum] Un objeto Fixnum - # @return [String] El codigo con su respectiva letra + # @param n [Fixnum] Un objeto Fixnum # 20072531 + # @return [String] El codigo con su respectiva letra # 20072531G def self.codigo_uni n codigo = n.to_s v, ans = 21234567, 0 8.times do ans += (n%10)*(v%10) v /= 10 n /= 10 end codigo + (65 + ans%11).chr end - # Obtiene informacion publica de un alumno - # @param codigo [String] Un objeto String, que representa el codigo de un estudiante + # Obtiene informacion publica de un alumno # faculta, especialidad, pic:url, ciclo_relativo, etc + # @param codigo [String] Un objeto String, que representa el codigo de un estudiante # 20072531G # @return [Hash] Informacion publica obtenida de la Orce def self.data codigo agent = @base cod = codigo.upcase \ No newline at end of file