aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v5/db_import.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v5/db_import.rb')
-rw-r--r--lib/sisu/v5/db_import.rb71
1 files changed, 63 insertions, 8 deletions
diff --git a/lib/sisu/v5/db_import.rb b/lib/sisu/v5/db_import.rb
index 2289613d..8d9fc229 100644
--- a/lib/sisu/v5/db_import.rb
+++ b/lib/sisu/v5/db_import.rb
@@ -116,7 +116,7 @@ module SiSU_DbImport
puts "#{__FILE__}:#{__LINE__}" if @opt.act[:maintenance][:set]==:on
end
@id_n =0 if @col[:lid].nil? or @col[:lid].to_s.empty?
- @col[:lv1]=@col[:lv2]=@col[:lv3]=@col[:lv4]=@col[:lv5]=@col[:lv6]=0
+ @col[:lv0]=@col[:lv1]=@col[:lv2]=@col[:lv3]=@col[:lv4]=@col[:lv5]=@col[:lv6]=0
@db=SiSU_Env::InfoDb.new
@pdf_fn=SiSU_Env::FileOp.new(@md).base_filename
@@dl ||=SiSU_Env::InfoEnv.new.digest.length
@@ -152,7 +152,7 @@ module SiSU_DbImport
puts @conn.driver_name if defined? @conn.driver_name
puts @conn.driver if defined? @conn.driver
end
- begin
+ begin #% sql
if @sql_type=~/sqlite/
@conn.transaction do |conn|
t_d.each do |sql|
@@ -310,8 +310,23 @@ module SiSU_DbImport
notedata=data.obj.dup
#% :headings
if data.is==:heading \
- && (data.ln.inspect=~/[123]/)
- @col[:lev],txt,@col[:ocn],@col[:lev_an],@col[:ocnd],@col[:ocns],@col[:t_of],@col[:t_is],@col[:node],@col[:parent],@col[:digest_clean],@col[:digest_all]=data.ln,data.obj,data.ocn,data.lv,data.odv,data.osp,data.of,data.is,data.node,data.parent,'',''
+ && (data.ln.inspect=~/[0-3]/)
+ (
+ @col[:lev],
+ txt,@col[:ocn],
+ @col[:lev_an],
+ @col[:ocnd],@col[:ocns],
+ @col[:t_of],@col[:t_is],
+ @col[:node],@col[:parent],
+ @col[:digest_clean],@col[:digest_all]=
+ data.ln,
+ data.obj,data.ocn,
+ data.lv,
+ data.odv,data.osp,
+ data.of,data.is,
+ data.node,data.parent,
+ '',''
+ )
@col[:lid]+=1
txt=endnotes(txt).extract_any
body=SiSU_FormatShared::CSS_Format.new(@md,data).lev4_minus
@@ -330,6 +345,7 @@ module SiSU_DbImport
t=SiSU_DbTuple::LoadDocuments.new(@conn,@col,@opt,@file_maint)
@tuple_array << t.tuple
case @col[:lev]
+ when /0/ then @col[:lv0]+=1
when /1/ then @col[:lv1]+=1
when /2/ then @col[:lv2]+=1
when /3/ then @col[:lv3]+=1
@@ -337,7 +353,20 @@ module SiSU_DbImport
@col[:lev]=@col[:plaintext]=@col[:body]=''
elsif data.is==:heading \
&& data.ln==4
- @@seg,txt,@col[:ocn],@col[:lev_an],@col[:ocnd],@col[:ocns],@col[:t_of],@col[:t_is],@col[:node],@col[:parent],@col[:digest_clean],@col[:digest_all]=data.name,data.obj,data.ocn,data.lv,data.odv,data.osp,data.of,data.is,data.node,data.parent,'',''
+ (
+ @@seg,txt,
+ @col[:ocn],@col[:lev_an],
+ @col[:ocnd],@col[:ocns],
+ @col[:t_of],@col[:t_is],
+ @col[:node],@col[:parent],
+ @col[:digest_clean],@col[:digest_all]=
+ data.name,data.obj,
+ data.ocn,data.lv,
+ data.odv,data.osp,
+ data.of,data.is,
+ data.node,data.parent,
+ '',''
+ )
@col[:seg]=@@seg
@col[:lv4]+=1
@col[:lid]+=1
@@ -365,7 +394,20 @@ module SiSU_DbImport
@col[:lev]=@col[:plaintext]=@col[:body]=''
elsif data.is==:heading \
&& data.ln==5
- txt,@col[:ocn],@col[:lev_an],@col[:ocnd],@col[:ocns],@col[:t_of],@col[:t_is],@col[:node],@col[:parent],@col[:digest_clean],@col[:digest_all]=data.obj,data.ocn,data.lv,data.odv,data.osp,data.of,data.is,data.node,data.parent,'',''
+ (
+ txt,
+ @col[:ocn],@col[:lev_an],
+ @col[:ocnd],@col[:ocns],
+ @col[:t_of],@col[:t_is],
+ @col[:node],@col[:parent],
+ @col[:digest_clean],@col[:digest_all]=
+ data.obj,
+ data.ocn,data.lv,
+ data.odv,data.osp,
+ data.of,data.is,
+ data.node,data.parent,
+ '',''
+ )
@@seg_full=data.name if data.is==:heading \
&& data.ln==5 \
&& data.name #check data.name
@@ -433,8 +475,21 @@ module SiSU_DbImport
#% :
else #% regular text
@col[:lid]+=1
- txt=''
- txt,@col[:ocn],@col[:ocnd],@col[:ocns],@col[:t_of],@col[:t_is],@col[:node],@col[:parent],@col[:digest_clean],@col[:digest_all]=data.obj,data.ocn,data.odv,data.osp,data.of,data.is,'',data.parent,'',''
+ (
+ txt=''
+ txt,@col[:ocn],
+ @col[:ocnd],@col[:ocns],
+ @col[:t_of],@col[:t_is],
+ @col[:node],@col[:parent],
+ @col[:digest_clean],@col[:digest_all],
+ @col[:lev]=
+ data.obj,data.ocn,
+ data.odv,data.osp,
+ data.of,data.is,
+ '',data.parent,
+ '','',
+ 9
+ )
@hname=if @col[:seg] \
and not @col[:seg].to_s.empty?
@@hname=@col[:seg].to_s