Sha256: ce9beed5be05623ce7541b7d385f1abd919e8e677745c9837bbc09b3173890f2
Contents?: true
Size: 1.33 KB
Versions: 5
Compression:
Stored size: 1.33 KB
Contents
require 'rails/generators' module Mapfish module Generators class ViewerGenerator < Rails::Generators::Base class_option "name", :type => :string, :required => true class_option "repo", :type => :string, :required => true source_root File.expand_path("../templates", __FILE__) def clone_viewer @viewer = options["name"] puts "Cloning viewer..." dir = Dir.mktmpdir begin git :clone => "--depth=1 #{options['repo']} #{dir}" Dir.glob("#{dir}/*").each do |fn| if File.directory?(fn) name = File.basename(fn).sub(/.+?(build)?$/, "#{@viewer}\\1") puts "Copy viewer to 'public/apps/#{name}/..." directory fn, "public/apps/#{name}", :verbose => false if File.directory?("#{fn}/.sencha") #TODO: replace app name in .sencha/app/sencha.cfg directory "#{fn}/.sencha", "public/apps/#{name}/.sencha", :verbose => false end end end ensure FileUtils.rm_rf dir end end def generate_viewer_html @viewer = options["name"] dest = "app/views/apps/#{@viewer}.html.erb" template "viewer.html.erb", dest puts "Please adapt javascript and css references in '#{dest}'" end end end end
Version data entries
5 entries across 5 versions & 1 rubygems