Sha256: 32e7056bddad8d3643aa65b106bfeb738fc544b2836d7d69f416fb17a6c6abaf

Contents?: true

Size: 1.2 KB

Versions: 3

Compression:

Stored size: 1.2 KB

Contents

# frozen_string_literal: true

module KepplerFrontend
  module Views
    # CodeHandler
    class CssHandler
      def initialize(view_data)
        @view = view_data
        @file = view_css(@view.name)
      end

      def install
        out_file = File.open(@file, 'w')
        out_file.puts("/* Keppler - #{@view.name}.scss file */")
        out_file.close
        true
      rescue StandardError
        false
      end

      def uninstall
        File.delete(@file) if File.exist?(@file)
        true
      rescue StandardError
        false
      end

      def output
        File.read(@file)
      rescue StandardError
        false
      end

      def update(name)
        File.rename(@file, view_css(name))
        true
      rescue StandardError
        false
      end

      def save(input)
        File.delete(@file) if File.exist?(@file)
        out_file = File.open(@file, 'w')
        out_file.puts(input)
        out_file.close
        true
      rescue StandardError
        false
      end

      private

      def view_css(name)
        assets = KepplerFrontend::Urls::Assets.new
        assets = assets.core_assets('stylesheets', 'app')
        "#{assets}/views/#{name}.scss"
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
keppler-2.1.18 installer/core/rockets/keppler_frontend/app/services/keppler_frontend/views/css_handler.rb
keppler-2.1.17 installer/core/rockets/keppler_frontend/app/services/keppler_frontend/views/css_handler.rb
keppler-2.1.16 installer/core/rockets/keppler_frontend/app/services/keppler_frontend/views/css_handler.rb