Sha256: 58d870f6e9a8ffa52d2418c8404d16a5be767d0adb8b41269cbbe99a12ca4852

Contents?: true

Size: 1.2 KB

Versions: 22

Compression:

Stored size: 1.2 KB

Contents

module Faalis
  module Generators
    class Relation < String
      attr_accessor :to

      def initialize(value, to, options = "")
        super(value)
        @options = options
        @to = to
      end

      def resource_name
        to.split("/").last
      end

      def to
        result = ""
        if options.include? "parents"
          field_parents.each do |parent|
            result = "#{result}/#{parent}/' + $scope.#{parent}_id + '"
          end
          result = "#{result}/"
        end
        "#{result}#{@to}"
      end

      def options
        unless @options.empty?
          @options
        else
          {}
        end
      end

      def field_parents
        if options.include? "parents"
          options["parents"]
        else
          []
        end
      end

      def restangular
        result = "API"
        if options.include? "parents"
          field_parents.each do |parent|
            result = "#{result}.one('#{parent}', #{}_id)"
          end
        end
        to.split("/").each do |resource|
          result = "#{result}.all(\"#{resource}\")"
        end
        result
      end

      def get_list
        "#{restangular}.getList()"
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
faalis-2.0.0.rc6 lib/faalis/generators/fields/relation.rb
faalis-2.0.0.rc5 lib/faalis/generators/fields/relation.rb
faalis-2.0.0.rc4 lib/faalis/generators/fields/relation.rb
faalis-2.0.0.rc3 lib/faalis/generators/fields/relation.rb
faalis-2.0.0.rc2 lib/faalis/generators/fields/relation.rb
faalis-1.0.0 lib/faalis/generators/fields/relation.rb
faalis-1.0.0.alpha4 lib/faalis/generators/fields/relation.rb
faalis-1.0.0.alpha3 lib/faalis/generators/fields/relation.rb
faalis-1.0.0.alpha2 lib/faalis/generators/fields/relation.rb
faalis-1.0.0.alpha1 lib/faalis/generators/fields/relation.rb
faalis-1.0.0.alpha0 lib/faalis/generators/fields/relation.rb
faalis-0.26.3 lib/faalis/generators/fields/relation.rb
faalis-0.26.2 lib/faalis/generators/fields/relation.rb
faalis-0.26.1 lib/faalis/generators/fields/relation.rb
faalis-0.26.0 lib/faalis/generators/fields/relation.rb
faalis-0.25.1 lib/faalis/generators/fields/relation.rb
faalis-0.25.0 lib/faalis/generators/fields/relation.rb
faalis-0.24.4 lib/faalis/generators/fields/relation.rb
faalis-0.24.3 lib/faalis/generators/fields/relation.rb
faalis-0.24.2 lib/faalis/generators/fields/relation.rb