aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v0/remote.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v0/remote.rb')
-rw-r--r--lib/sisu/v0/remote.rb18
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/sisu/v0/remote.rb b/lib/sisu/v0/remote.rb
index efa49dc0..c65c619f 100644
--- a/lib/sisu/v0/remote.rb
+++ b/lib/sisu/v0/remote.rb
@@ -117,20 +117,25 @@ module SiSU_Remote
@rgx_skin=/(?:0~|@)skin:?\s+(\S+)/ #@rgx_skin=/^0~skin\s+(\S+)/
threads=[]
for requested_page in @get_s
+ re_fnb=/((?:https?|file):\/\/[^\/ ]+?\/[^\/ ]+?)\/\S+?\/([^\/]+?)\.ss(t)/ #revisit and remove DO
threads << Thread.new(requested_page) do |url|
open(url) do |f|
raise "#{url} not found" unless f
- re_fnb=/((?:https?|file):\/\/[^\/ ]+?\/[^\/ ]+?)\/\S+?\/([^\/]+?)\.ss(t)/ #revisit and remove DO
base_uri,fnb,instr=re_fnb.match(url)[1..3] if re_fnb
- imagedir= base_uri + '/_sisu/image' #check on
+ imagedir=base_uri + '/_sisu/image' #check on
doc_skin_dir = /((?:https?|file):\/\/\S+?)\/[^\/]+?\.sst$/.match(url).captures.join + '/_sisu/skin/doc'
#"Got file, and ready to process: #{fnb}.t#{instr}"
downloaded_file=File.new("#{fnb}.-sst",'w+')
images=SiSU_Assemble::Remote_image.new.image(imagedir)
skin=SiSU_Assemble::Remote_image.new.image(doc_skin_dir)
f.collect.each do |r| # work area
- skin << r.scan(@rgx_skin).uniq if r =~@rgx_skin
- images << r.scan(@rgx_image).uniq if r =~@rgx_image
+ unless r =~/^%+\s/
+ skin << r.scan(@rgx_skin).uniq if r =~@rgx_skin
+ if r !~/^%+\s/ \
+ and r =~@rgx_image
+ images << r.scan(@rgx_image).uniq
+ end
+ end
downloaded_file << r
end
if skin \
@@ -139,7 +144,10 @@ module SiSU_Remote
end
if images \
and images.length > 1
- images.flatten!.uniq!
+ images.flatten!
+ images.uniq!
+ images.delete_if {|x| x =~/http:\/\// }
+ images.sort!
@msg,@msgs='downloading images:', [ images.join(',') ]
@tell.call.warn unless @opt.cmd =~/q/
SiSU_Assemble::Remote_image.new.download_images(images)