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 'date'
 | 
				
			||||||
require 'erb'
 | 
					require 'erb'
 | 
				
			||||||
require 'net/http'
 | 
					require 'net/http'
 | 
				
			||||||
 | 
					require 'neinomat.lib.rb'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#----------------------------------------------------------------------------
 | 
					#----------------------------------------------------------------------------
 | 
				
			||||||
# Constants
 | 
					# Constants
 | 
				
			||||||
| 
						 | 
					@ -15,35 +16,6 @@ require "#{$0}.templates.rb"
 | 
				
			||||||
#----------------------------------------------------------------------------
 | 
					#----------------------------------------------------------------------------
 | 
				
			||||||
# Some helper functions
 | 
					# 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)
 | 
					def head(url)
 | 
				
			||||||
  uri = URI.parse(url)
 | 
					  uri = URI.parse(url)
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,41 +1,14 @@
 | 
				
			||||||
#!/usr/bin/env ruby
 | 
					#!/usr/bin/env ruby
 | 
				
			||||||
$:.unshift('vendor/ruby-mediawiki/lib')
 | 
					$:.unshift('vendor/ruby-mediawiki/lib')
 | 
				
			||||||
require 'mediawiki/dotfile'
 | 
					require 'mediawiki/dotfile'
 | 
				
			||||||
 | 
					require 'date'
 | 
				
			||||||
 | 
					require 'neinomat.lib.rb'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@wiki = MediaWiki.dotfile(nil,'entropia')
 | 
					@wiki = MediaWiki.dotfile(nil,'entropia')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
require 'date'
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#----------------------------------------------------------------------------
 | 
					#----------------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
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 table_termine (t)
 | 
					def table_termine (t)
 | 
				
			||||||
  body = '{| border=1 cellspacing="0" cellpadding="5" style="border-collapse:collapse;"'
 | 
					  body = '{| border=1 cellspacing="0" cellpadding="5" style="border-collapse:collapse;"'
 | 
				
			||||||
  body += "\n"
 | 
					  body += "\n"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										28
									
								
								neinomat.lib.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								neinomat.lib.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
		Reference in a new issue