module Tcms::Helper
Public Instance Methods
_css_for_local(name)
click to toggle source
# File lib/tcms/helper.rb, line 17 def _css_for_local name file_path = @_project["css"]["folder"] link_output = '<link rel="stylesheet" href="/'+file_path+"/"+name+'.css"></href>' return link_output end
_css_for_publish(name)
click to toggle source
# File lib/tcms/helper.rb, line 23 def _css_for_publish name file_path = @_project["css"]["folder"] file_content = File.read(file_path+"/#{name}.css",:encoding=>"utf-8") publish_name = name+'.'+ @_project["version"].to_s assets_path = @_project['assets']["folder"] write_file = assets_path+'/'+publish_name+'.css'; if File.exist? write_file File.delete write_file end concat_file = File.new(write_file,'w+') concat_file.puts file_content concat_file.close puts write_file puts '-生成素材'+publish_name+'.css' assets = @_project["assets"] if @_build_type == "test" url = "/"+@_project["assets"]["folder"] return '<link rel="stylesheet" href="'+url+"/"+publish_name+'.css?v='+Digest::MD5.hexdigest(file_content)+'"></link>' else site = assets["site"] domain = 'qq.com' remote_path = assets["remotepath"] if site.match 'mat1' then domain = "gtimg.com/#{assets["channel"]}" end if site.match 'pingjs' then site = 'rss' end url = "http://#{site}.#{domain}/#{remote_path}" return '<link rel="stylesheet" href="'+url+"/"+publish_name+'.css?v='+Digest::MD5.hexdigest(file_content)+'"></link>' end end
_script_for_local(name)
click to toggle source
# File lib/tcms/helper.rb, line 60 def _script_for_local name file_path = @_project["scripts"]["folder"] target_file = file_path+"/#{name}.js" script_output = '' if File.exist? target_file file_content = File.read(target_file,:encoding=>"utf-8") file_output = file_content.gsub(/\/\/=include\s([^\s]+)/){|include_str| matches = /\/\/=include\s([^\s]+)/.match(include_str) file_url = file_path+"/#{matches[1]}.js" script_output+= '<script type="text/javascript" charset="utf-8" src="/'+file_url+'"></script>'; script_output+="\n" } else puts "文件不存在:#{target_file}" end script_output += '<script type="text/javascript" charset="utf-8" src="/'+file_path+"/"+name+'.js"></script>' return script_output end
_script_for_publish(name)
click to toggle source
# File lib/tcms/helper.rb, line 81 def _script_for_publish name file_path = @_project["scripts"]["folder"] file_content = File.read(file_path+"/#{name}.js",:encoding=>"utf-8") script_output = ""; file_output = file_content.gsub(/\/\/=include\s([^\s]+)/){|include_str| matches = /\/\/=include\s([^\s]+)/.match(include_str) file_url = file_path+"/#{matches[1]}.js" unless File.exist?(file_url) puts 'no file include exist!|'+ file_url return end File.read(file_url,:encoding=>"utf-8") } publish_name = name+'.'+ @_project["version"].to_s assets_path = @_project['assets']["folder"] #写文件 write_file =assets_path+'/'+publish_name+'.js'; if File.exist? write_file File.delete write_file end concat_file = File.new(write_file,'w+') concat_file.puts file_output concat_file.close puts write_file puts '-生成素材'+publish_name+'.js' assets = @_project["assets"] if @_build_type == "test" url = "/"+@_project["assets"]["folder"] return '<script type="text/javascript" charset="utf-8" src="'+url+"/"+publish_name+'.js?v='+Digest::MD5.hexdigest(file_output)+'"></script>' else site = assets["site"] domain = 'qq.com' remote_path = assets["remotepath"] if site.match 'mat1' then domain = "gtimg.com/#{assets["channel"]}" end if site.match 'pingjs' then site = 'rss' end url = "http://#{site}.#{domain}/#{remote_path}" return '<script type="text/javascript" charset="utf-8" src="'+url+"/"+publish_name+'.js?v='+Digest::MD5.hexdigest(file_output)+'"></script>' end end
link_for(name)
click to toggle source
# File lib/tcms/helper.rb, line 10 def link_for name if @_build_type == "dev" return self._css_for_local name; else return self._css_for_publish name; end end
script_for(name)
click to toggle source
# File lib/tcms/helper.rb, line 3 def script_for name if @_build_type == "dev" return self._script_for_local name else return self._script_for_publish name end end