2020-04-07 14:15:09 +00:00
#encoding: utf-8
2019-09-28 11:48:59 +00:00
$: . push File . expand_path ( " ../lib " , __FILE__ )
# Maintain your gem's version:
require " patchfile/version "
2022-08-03 03:13:31 +00:00
bundle_update_flag = ARGV [ 0 ] == 'update' || ARGV [ 0 ] == 'install'
if bundle_update_flag
app_path = File . expand_path ( __dir__ )
dir_pwd = ENV [ 'PWD' ]
template_path = dir_pwd + '/app/templates'
all_template = Dir . glob ( template_path + '/*/' )
#if !Dir.exist?("#{ENV['PWD']}"+"/app/assets/stylesheets/lib/jquery-ui-1.12.1/")
2022-10-16 11:55:32 +00:00
# puts "copying jquery-ui"
# begin
# `cp -rf "#{app_path}/updatefiles/javascripts/." "#{dir_pwd}/app/assets/javascripts/"`
# `cp -r "#{app_path}/updatefiles/accessibility/jquery-ui-1.13.2/." "#{dir_pwd}/app/assets/stylesheets/lib/jquery-ui-1.13.2/"`
# rescue
# puts "There is an error in coppying jquery-ui"
# end
2022-08-03 03:13:31 +00:00
#end
@original_dir = Dir . pwd
` cd " #{ dir_pwd } " && git add app/templates/ app/assets built_in_extensions.rb config/mongoid.yml bin/ && cd " #{ @original_dir } " ` #using git to add modified files and to avoid git pull not working
#Add patchfile to Admin area
@patchfile_li = File . read ( app_path + " /patchfile_li.txt " ) . force_encoding ( 'UTF-8' )
@patchfile_li_choices = File . read ( app_path + " /patchfile_li_choices.txt " ) . force_encoding ( 'UTF-8' )
@file_text = File . read ( dir_pwd + '/app/views/shared/_side_bar.html.erb' ) . force_encoding ( 'UTF-8' )
if ! @file_text . include? ( '<div class="patchfile sub-nav-block icons-megaphone">' )
@indert_index = @file_text . index ( '</nav>' )
unless @indert_index . nil?
@file_text . insert ( @indert_index , @patchfile_li_choices )
end
end
if ! @file_text . include? ( 'patchfile_li' )
@indert_index = @file_text . index ( '<li title="<%= t(\'site_info\') %>">' )
unless @indert_index . nil?
@file_text . insert ( @indert_index , @patchfile_li )
end
end
begin
f = File . open ( dir_pwd + '/app/views/shared/_side_bar.html.erb' , 'w' )
f . write ( @file_text )
f . close
puts " finish change patchfile in #{ dir_pwd } /app/views/shared "
rescue
puts " Permission denied in #{ dir_pwd } /app/views/shared "
end
change_text = '<a title="{{site_title_1}}" class="navbar-brand" href="{{home_link_1}}"><img class="site-logo" src="{{logo_url_1}}" alt="Site Logo"></a><script>$(document).ready(function(){var url =$(\'.site-logo\').eq(0).attr(\'src\');if(url == "/assets/default-site-logo.png"){$(\'.navbar-brand\').eq(0).remove();};if($(\'.navbar-brand\').length == 2){$(\'.site-logo\').css(\'height\',\'auto\')};$(\'.site-logo\').eq(0).css(\'margin-right\',0);$(\'.navbar-brand\').css(\'padding-right\',0)})</script><a title="{{site_title}}" class="navbar-brand" href="{{home_link}}"><img class="site-logo" src="{{logo_url}}" alt="Site Logo"> {{site_name}}</a>'
change_text_fix = '<a title="{{site_title_1}}" class="" href="{{home_link_1}}"><img class="site-logo" src="{{logo_url_1}}" alt="Site Logo"></a><script>$(document).ready(function(){var url =$(\'.site-logo\').eq(0).attr(\'src\');if(url == "/assets/default-site-logo.png"){$(\'.navbar-brand\').eq(0).remove();};if($(\'.navbar-brand\').length == 2){$(\'.site-logo\').css(\'height\',\'auto\')};$(\'.site-logo\').eq(0).css(\'margin-right\',0);$(\'.navbar-brand\').css(\'padding-right\',0)})</script><a title="{{site_title}}" class="" href="{{home_link}}"><img class="site-logo" src="{{logo_url}}" alt="Site Logo"> {{site_name}}</a>'
change_text_fix1 = '<a title="{{site_title_1}}" class="" href="{{home_link_1}}"><img class="site-logo" src="{{logo_url_1}}" alt="Site Logo"></a><script>$(document).ready(function(){var url =$(\'.site-logo\').eq(0).attr(\'src\');if(url == "/assets/default-site-logo.png"){if($(\'.navbar-brand\').length != 0){$(\'.navbar-brand\').eq(0).remove();}else{$(\'.site-title >a\').eq(0).remove();}};if($(\'.navbar-brand\').length == 2 || $(\'.site-title >a\').length == 2){$(\'.site-logo\').css(\'height\',\'auto\')};$(\'.site-logo\').eq(0).css(\'margin-right\',0);$(\'.navbar-brand\').css(\'padding-right\',0)})</script><a title="{{site_title}}" class="" href="{{home_link}}"><img class="site-logo" src="{{logo_url}}" alt="Site Logo"> {{site_name}}</a>'
all_template . each do | folder |
if ! folder . include? ( 'mobile' )
begin
filename = folder + 'partial/_head.html.erb'
texts = File . read ( filename ) . force_encoding ( 'UTF-8' )
new_texts = texts . gsub ( / <.*javascript_include_tag.*bootstrap.*> / , " <%= javascript_include_tag \" bootstrap.min \" %> " )
bootstrap_count = 0
new_texts = new_texts . gsub ( " <%= javascript_include_tag \" bootstrap.min \" %> " ) { | t |
bootstrap_count += 1
( bootstrap_count > 1 ) ? " " : t
}
if new_texts . include? ( 'jquery_prefix' )
new_texts = new_texts . gsub ( / <.*javascript_include_tag.* \/ jquery \ .min.*>|<.*javascript_include_tag.* \/ jquery-1 \ .11 \ .0 \ .min.*> / , " <%= javascript_include_tag \" jquery.min \" %> " )
else
new_texts = new_texts . gsub ( / <%= javascript_include_tag \ "jquery.min \ "%> / , " <%= javascript_include_tag \" jquery.min \" %> \n \t <%= javascript_include_tag \" jquery_prefix \" %> " )
end
if texts != new_texts
File . open ( filename , 'w' ) do | f |
f . write new_texts
end
end
rescue = > e
puts " #{ e . inspect } \n not found #{ folder } partial/_head.html.erb "
end
2020-04-24 16:15:01 +00:00
2022-08-03 03:13:31 +00:00
begin
begin
require 'nokogiri'
rescue ScriptError = > e
2022-10-16 11:55:32 +00:00
if RUBY_VERSION . to_f < = 2 . 1
2022-11-04 07:15:14 +00:00
nokogiri_version = '1.7.0.1'
2022-10-16 11:55:32 +00:00
else
2022-11-04 07:15:14 +00:00
nokogiri_version = '1.8.5'
2022-10-16 11:55:32 +00:00
end
2022-11-04 07:15:14 +00:00
flag = system ( " gem install nokogiri -v #{ nokogiri_version } " )
if flag
gem_home = ENV [ " GEM_HOME " ]
if ! gem_home . nil?
$LOAD_PATH << " #{ gem_home } /gems/nokogiri- #{ nokogiri_version } /lib "
$LOAD_PATH << " #{ gem_home } /extensions/ #{ RUBY_PLATFORM } / #{ RUBY_VERSION } /nokogiri- #{ nokogiri_version } "
require 'nokogiri'
end
else
next
2022-08-03 03:13:31 +00:00
end
end
puts " changing header.html.erb in #{ folder } /home/header.html.erb "
if folder . split ( '/' ) [ - 1 ] != 'mobile'
filename = folder + 'home/header.html.erb'
texts = File . read ( filename ) . force_encoding ( 'UTF-8' )
texts_html = Nokogiri :: HTML . parse ( texts )
if texts_html . css ( '.navbar-brand' ) . length == 1
new_texts = texts . gsub ( texts_html . css ( '.navbar-brand' ) . to_s . gsub ( " %7B " , '{' ) . gsub ( '%7D' , '}' ) , change_text )
File . open ( filename , 'w' ) do | f |
f . write new_texts
end
elsif texts_html . css ( '.site-title >a' ) . length == 1 && texts_html . css ( '.navbar-brand' ) . length == 0
new_texts = texts . gsub ( texts_html . css ( '.site-title >a' ) . to_s . gsub ( " %7B " , '{' ) . gsub ( '%7D' , '}' ) , change_text_fix1 )
File . open ( filename , 'w' ) do | f |
f . write new_texts
end
elsif texts_html . css ( '.site-title >a.navbar-brand' ) . length == 2
new_texts = texts . gsub ( change_text , change_text_fix1 )
File . open ( filename , 'w' ) do | f |
f . write new_texts
end
elsif texts . include? change_text_fix
new_texts = texts . gsub ( change_text_fix , change_text_fix1 )
File . open ( filename , 'w' ) do | f |
f . write new_texts
end
end
end
rescue = > e
puts " #{ e . inspect } \n not found #{ folder } home/header.html.erb "
end
end
end
#begin
# system("cp -f #{app_path}/updatefiles/application_helper.rb #{dir_pwd}/app/helpers/application_helper.rb")
#rescue => e
# puts e.backtrace
#end
#change_html_old = 'html.gsub("%7B%7Blogo_url_1%7D%7D",((site.site_logo_1.url.nil? ? "/assets/default-site-logo.png" : site.site_logo_1.url) rescue "/assets/default-site-logo.pngs"))'
#change_html_new = 'html.gsub("%7B%7Blogo_url_1%7D%7D",((site.site_logo_1.url.nil? ? "/assets/default-site-logo.png" : site.site_logo_1.url) rescue "/assets/default-site-logo.png"))'
#begin
# @file_text = File.read(ENV['PWD']+'/app/helpers/application_helper.rb')
# File.open(ENV['PWD']+'/app/helpers/application_helper.rb_new','w+') do |f|
# f.chmod 0777
# if @file_text.include?(change_html_old)
# @file_text = @file_text.gsub(change_html_old,change_html_new)
# elsif (!@file_text.include?(change_html_old) && !@file_text.include?(change_html_new))
# insert_index = @file_text.index('html.gsub("%7B%7Blogo_url%7D%7D"')
# @file_text.insert(insert_index,change_html_new+"\n")
# end
# f.write(@file_text)
# end
# system("cp #{ENV['PWD']+'/app/helpers/application_helper.rb_new'} #{ENV['PWD']+'/app/helpers/application_helper.rb'}")
# puts "finish change application_helper.rb in #{ENV['PWD']}/app/helpers/"
#rescue => e
# puts "Permission denied in #{ENV['PWD']}/app/helpers/application_helper.rb"
#end
2020-03-27 09:13:27 +00:00
end
2019-09-28 11:48:59 +00:00
# Describe your gem and declare its dependencies:
2020-04-07 07:29:06 +00:00
Gem :: Specification . new do | s |
2022-08-03 03:13:31 +00:00
s . name = " patchfile "
s . version = Patchfile :: VERSION
s . authors = [ " Ruling Digital " ]
s . email = [ " bohung@rulingcom.com " ]
s . homepage = " http://www.rulingcom.com "
s . summary = " Patch file for Orbit "
s . description = " Patch file for Orbit "
s . license = " MIT "
s . add_dependency " nokogiri "
s . files = Dir [ " {app,config,db,lib}/**/* " , " MIT-LICENSE " , " Rakefile " , " README.rdoc " ]
s . test_files = Dir [ " test/**/* " ]
2020-04-07 07:29:06 +00:00
end