Sha256: 58d18e2e5679577a8dba3992f7160aa3d323545058bac3c5995ad4e479fd052a

Contents?: true

Size: 1.65 KB

Versions: 3

Compression:

Stored size: 1.65 KB

Contents

module Phcmembers
  class Member::Listing < ApplicationRecord

    # Clean URL Initialize
    extend FriendlyId

    # Add Paper Trail
    has_paper_trail :class_name => 'Phcmembers::ListingVersions'

    # Model Relationships
    belongs_to :profile, class_name: 'Phcmembers::Member::Profile'
    has_and_belongs_to_many :categories, class_name: 'Phcmembers::Directory::Category', :join_table => 'categories_listings'

    # Validation for Form Fields
    validates :mbcompanyname,
      presence: true,
      length: { minimum: 2 }

    validates :mbcontactname,
      presence: true,
      length: { minimum: 2 }

    validates :mbaddressl1,
      length: { minimum: 3 }

    validates :mbcity,
      presence: true,
      length: { minimum: 3 }

    validates :mbcountry,
      presence: true,
      length: { minimum: 2 }

    validates :mbprovince,
      presence: true,
      length: { minimum: 2 }

    validates :mbpostalcode,
      presence: true,
      length: { minimum: 3 }

    validates :mbcontactemail,
    	presence: true,
    	length: { minimum: 3 },
    	format: { with: /\A[^@\s]+@([^@\s]+\.)+[^@\s]+\z/, message: "Please follow this Email format: *****@********.***" }

    validates :mbwebsite,
    	presence: true,
    	length: { minimum: 6 }

    validates :mbphone,
    	presence: true,
    	format: { with: /\A(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}\z/, message: "Please Follow this Phone Number Format: ***-***-****" }

    # Clean URL Define
    friendly_id :phcmembers_listings_slug, use: [:slugged, :finders]

    # Define for Multiple Records
    def phcmembers_listings_slug
    	[
    		[:mbcompanyname, :mbcontactname]
    	]
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
phcmembers-61.5.0 app/models/phcmembers/member/listing.rb
phcmembers-61.4.0 app/models/phcmembers/member/listing.rb
phcmembers-61.3.0 app/models/phcmembers/member/listing.rb