Sha256: a04cf21fd9692e1efbca85ded22ca736c3d05f9089f8ed874005ac46e53993ce

Contents?: true

Size: 628 Bytes

Versions: 3

Compression:

Stored size: 628 Bytes

Contents

module CiviCrm
  module Actions
    module Create
      module ClassMethods
        def create(attrs = {})
          params = {'entity' => entity_class_name, 'action' => 'create'}
          response = CiviCrm::Client.request(:post, params.merge(attrs))

          if response == 1
            Resource.build_from(attrs, params)
          elsif response.first.nil?
            raise Error, "Couldn't create #{entity_class_name}"
          else
            Resource.build_from(response.first, params)
          end
        end
      end

      def self.included(base)
        base.extend(ClassMethods)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
civicrm-1.3.7 lib/civicrm/actions/create.rb
civicrm-1.3.6 lib/civicrm/actions/create.rb
civicrm-1.3.5 lib/civicrm/actions/create.rb