module Kajian
Constants
- KesalahanDaerah
- TidakAdaAdapter
- VERSION
Public Class Methods
adapter()
click to toggle source
# File lib/kajian.rb, line 12 def adapter @@adapter ||= Kajian::Makro.adapter end
lihat(*sumber_sumber)
click to toggle source
# File lib/kajian.rb, line 16 def lihat *sumber_sumber sumber_sumber = [:semua] if sumber_sumber.empty? if sumber_sumber.length == 1 if sumber_sumber.first == :semua raise TidakAdaAdapter unless Kajian.adapter Kajian::KoleksiAdapter.new(Kajian.adapter) else s = sumber_sumber.first Kajian::Adapter.new(s) end else Kajian::KoleksiAdapter.new(sumber_sumber) end end
Public Instance Methods
blok(filter_blok) { |laman| ... }
click to toggle source
# File lib/kajian/makro.rb, line 91 def blok(filter_blok) @blok = if block_given? proc {|laman| yield(laman)} elsif filter_blok filter_blok end @proc_blok = proc do |daerah, dir| if instance_variable_get("@laman_#{daerah}").nil? laman = Nokogiri::HTML(open(File.join(self.url, dir))) instance_variable_set("@laman_#{daerah}", laman) end laman ||= instance_variable_get("@laman_#{daerah}") if @blok.kind_of? Proc @blok.(laman) elsif filter_blok laman.public_send(*filter_blok.to_a.first) end.map do |b| kajian = {} KOLOM.each do |k| konten = self.public_send("proc_#{k}").(b) rescue nil kajian[k] = konten.kind_of?(Array) ? (k == :penceramah ? konten : konten.first) : konten end kajian end end end
buang_direktori(*args)
click to toggle source
# File lib/kajian/makro.rb, line 79 def buang_direktori(*args) set_direktori! @pakai_direktori = direktori_master.keys - args.map(&:to_sym) @buang_direktori = args end
json_ke_hash(file_name = "
click to toggle source
# File lib/kajian/makro.rb, line 68 def json_ke_hash(file_name = "#{simbol}.json") JSON( File.read(File.join(File.dirname(caller[0][/^.*\.rb/]), file_name)), symbolize_names: true ) end
pakai_direktori(*args)
click to toggle source
# File lib/kajian/makro.rb, line 85 def pakai_direktori(*args) set_direktori! @buang_direktori = direktori_master.keys - args.map(&:to_sym) @pakai_direktori = args.map(&:to_sym) end
set_direktori!()
click to toggle source
# File lib/kajian/makro.rb, line 75 def set_direktori! @direktori_salinan = direktori_master.dup end
Private Instance Methods
bersihkan(teks, harus_hilang, nama_kolom)
click to toggle source
# File lib/kajian/makro.rb, line 165 def bersihkan(teks, harus_hilang, nama_kolom) teks.gsub!(harus_hilang, '') if harus_hilang if nama_kolom == :tema teks.sub(/\s+((B|b)ersama (Usta(d)?(z)?(ah)?)? .*)?$/, '') elsif nama_kolom == :penceramah teks.sub(/^(((A|a)l(\-?|\s+))?(U|u)stad?z?(ah)?)\s+/, '') elsif nama_kolom == :tanggal BULAN.each do |asal_kata, terjemahan| teks.sub!(asal_kata, terjemahan) end teks else teks end end
konversi(teks, parser)
click to toggle source
# File lib/kajian/makro.rb, line 185 def konversi(teks, parser) parser ? parser.parse(teks) : teks end
substitusi(teks, sub_hash)
click to toggle source
# File lib/kajian/makro.rb, line 181 def substitusi(teks, sub_hash) sub_hash ? teks.gsub(*sub_hash.to_a.first) : teks end