Put some stuff into a simple lib
This commit is contained in:
		
							parent
							
								
									d884808187
								
							
						
					
					
						commit
						a7d947ba4a
					
				
					 3 changed files with 32 additions and 59 deletions
				
			
		| 
						 | 
				
			
			@ -5,6 +5,7 @@ require 'cgi'
 | 
			
		|||
require 'date'
 | 
			
		||||
require 'erb'
 | 
			
		||||
require 'net/http'
 | 
			
		||||
require 'neinomat.lib.rb'
 | 
			
		||||
 | 
			
		||||
#----------------------------------------------------------------------------
 | 
			
		||||
# Constants
 | 
			
		||||
| 
						 | 
				
			
			@ -15,35 +16,6 @@ require "#{$0}.templates.rb"
 | 
			
		|||
#----------------------------------------------------------------------------
 | 
			
		||||
# Some helper functions
 | 
			
		||||
 | 
			
		||||
def parse_template(title, template)
 | 
			
		||||
  template_re = Regexp.new("\\\{\\\{" + template + "(.*?)\\\}\\\}")
 | 
			
		||||
 | 
			
		||||
  fields = {}
 | 
			
		||||
 | 
			
		||||
  fields_string = @wiki.article(title).text.scan(template_re)[0][0]
 | 
			
		||||
 | 
			
		||||
  inlink = 0
 | 
			
		||||
  field = ""
 | 
			
		||||
  fields_string += "|" unless fields_string.match(/\|$/)
 | 
			
		||||
  fields_string.split(//).each do |c|
 | 
			
		||||
    if c == "|" && inlink == 0
 | 
			
		||||
      (key, value) = field.split(/=/)
 | 
			
		||||
      fields[key] = value
 | 
			
		||||
      field = ""
 | 
			
		||||
    else
 | 
			
		||||
      inlink += 1 if c == "["
 | 
			
		||||
      inlink -= 1 if c == "]"
 | 
			
		||||
      field += c
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  fields
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
def datum2isodate(datum)
 | 
			
		||||
  return datum[6..9] + "-" + datum[3..4] + "-" + datum[0..1]
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
def head(url)
 | 
			
		||||
  uri = URI.parse(url)
 | 
			
		||||
 
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue