Module: ThecoreUiCommons

Defined in:
lib/thecore_ui_commons.rb,
lib/thecore_ui_commons/engine.rb,
lib/thecore_ui_commons/version.rb

Defined Under Namespace

Classes: Engine

Constant Summary collapse

VERSION =
"3.3.6".freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.swagger_api_versionsObject



24
25
26
# File 'lib/thecore_ui_commons.rb', line 24

def swagger_api_versions
	@swagger_api_versions.nil? ? scan_swagger_routes(Rails.application.routes.routes) : @swagger_api_versions
end

Class Method Details

.save_files(files) ⇒ Object



38
39
40
41
42
43
44
45
46
# File 'lib/thecore_ui_commons.rb', line 38

def self.save_files files
	files.each do |pic|
		upload_dir = Rails.root.join(Settings.ns(:importer).import_from_folder, 'uploads')
		FileUtils.mkdir_p upload_dir
		file_to_upload = Rails.root.join(upload_dir, "uploaded-#{Time.now.strftime("%Y%m%d%H%M%S%L")}-#{pic.original_filename}")
		
		File.open(file_to_upload, 'wb') { |file| file.write(pic.read) } if Regexp.new("\\.#{Settings.ns(:importer).extension.gsub(/ +/, "").split(",").join("|\\.")}$").match? pic.original_filename
	end
end

.scan_swagger_routes(routes) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/thecore_ui_commons.rb', line 29

def self.scan_swagger_routes(routes)
	routes
		.map { |r| r.path.spec.to_s }
		.grep(/\/api\/(v\d+)\/info\/swagger/)
		.map { |p| p.match(/\/api\/(v\d+)\/info\/swagger/)[1] }
		.uniq
		.sort_by { |v| v[1..].to_i }
end