zoho_hub 0.1.29 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -2
- data/.rspec +1 -0
- data/.rubocop.yml +4 -0
- data/.ruby-version +1 -1
- data/.travis.yml +5 -2
- data/README.md +91 -7
- data/bin/console +5 -6
- data/bin/read +44 -0
- data/bin/setup +0 -2
- data/bin/zoho_hub +62 -0
- data/cache/.git_keep +0 -0
- data/lib/zoho_hub/auth.rb +37 -47
- data/lib/zoho_hub/base_record.rb +122 -0
- data/lib/zoho_hub/configuration.rb +3 -4
- data/lib/zoho_hub/connection.rb +10 -17
- data/lib/zoho_hub/{records → deprecated_and_only_for_reference_records}/account.rb +0 -0
- data/lib/zoho_hub/{records → deprecated_and_only_for_reference_records}/campaign.rb +0 -0
- data/lib/zoho_hub/{records → deprecated_and_only_for_reference_records}/contact.rb +2 -4
- data/lib/zoho_hub/deprecated_and_only_for_reference_records/funder.rb +9 -0
- data/lib/zoho_hub/{records → deprecated_and_only_for_reference_records}/potential.rb +1 -14
- data/lib/zoho_hub/deprecated_and_only_for_reference_records/product.rb +9 -0
- data/lib/zoho_hub/deprecated_and_only_for_reference_records/quote.rb +34 -0
- data/lib/zoho_hub/errors.rb +0 -3
- data/lib/zoho_hub/module_builder.rb +61 -0
- data/lib/zoho_hub/oauth_callback_server.rb +26 -0
- data/lib/zoho_hub/response.rb +1 -7
- data/lib/zoho_hub/settings/field.rb +33 -0
- data/lib/zoho_hub/settings/module.rb +49 -0
- data/lib/zoho_hub/string_utils.rb +34 -0
- data/lib/zoho_hub/version.rb +1 -1
- data/lib/zoho_hub/views/variables.erb +72 -0
- data/lib/zoho_hub/with_attributes.rb +74 -0
- data/lib/zoho_hub/with_connection.rb +36 -0
- data/lib/zoho_hub.rb +20 -21
- data/zoho_hub.gemspec +21 -17
- metadata +104 -80
- data/lib/zoho_hub/records/adverse_criteria.rb +0 -43
- data/lib/zoho_hub/records/attachment.rb +0 -104
- data/lib/zoho_hub/records/base_record.rb +0 -189
- data/lib/zoho_hub/records/credit_score.rb +0 -36
- data/lib/zoho_hub/records/product.rb +0 -35
- data/lib/zoho_hub/records/quote.rb +0 -42
- data/lib/zoho_hub/records/vendor.rb +0 -34
@@ -1,36 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'zoho_hub/records/base_record'
|
4
|
-
|
5
|
-
module ZohoHub
|
6
|
-
class CreditScore < BaseRecord
|
7
|
-
request_path 'Credit_Scores'
|
8
|
-
|
9
|
-
attributes :id, :account_id, :credit_data_source, :credit_score_band
|
10
|
-
attributes :score_description, :credit_score_number, :credit_limit, :currency
|
11
|
-
|
12
|
-
attribute_translation(
|
13
|
-
id: :id,
|
14
|
-
credit_score_number: :Name
|
15
|
-
)
|
16
|
-
|
17
|
-
def initialize(params)
|
18
|
-
attributes.each do |attr|
|
19
|
-
zoho_key = attr_to_zoho_key(attr)
|
20
|
-
|
21
|
-
send("#{attr}=", params[zoho_key] || params[attr])
|
22
|
-
end
|
23
|
-
|
24
|
-
# Setup values as they come from the Zoho API if needed
|
25
|
-
@account_id ||= params.dig(:Account_Name, :id)
|
26
|
-
end
|
27
|
-
|
28
|
-
def to_params
|
29
|
-
params = super
|
30
|
-
|
31
|
-
params[:Account_Name] = { id: @account_id } if @account_id
|
32
|
-
|
33
|
-
params
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module ZohoHub
|
4
|
-
class Product < BaseRecord
|
5
|
-
attributes :id, :description, :vendor_id, :owner_id, :active, :name
|
6
|
-
|
7
|
-
attribute_translation(
|
8
|
-
id: :id,
|
9
|
-
active: :Product_Active,
|
10
|
-
name: :Product_Name
|
11
|
-
)
|
12
|
-
|
13
|
-
def initialize(params)
|
14
|
-
puts Rainbow(params).magenta
|
15
|
-
|
16
|
-
attributes.each do |attr|
|
17
|
-
zoho_key = attr_to_zoho_key(attr)
|
18
|
-
|
19
|
-
send("#{attr}=", params[zoho_key] || params[attr])
|
20
|
-
end
|
21
|
-
|
22
|
-
@owner_id ||= params.dig(:Owner, :id)
|
23
|
-
@vendor_id ||= params.dig(:Vendor_Name, :id)
|
24
|
-
end
|
25
|
-
|
26
|
-
def to_params
|
27
|
-
params = super
|
28
|
-
|
29
|
-
params[:Owner] = { id: @owner_id } if @owner_id
|
30
|
-
params[:Vendor_Name] = { id: @vendor_id } if @vendor_id
|
31
|
-
|
32
|
-
params
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
@@ -1,42 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'zoho_hub/records/base_record'
|
4
|
-
|
5
|
-
module ZohoHub
|
6
|
-
class Quote < BaseRecord
|
7
|
-
attributes :id, :stage, :subject, :potential_id, :owner_id, :product_id, :account_id, :extra_info
|
8
|
-
|
9
|
-
attribute_translation(
|
10
|
-
id: :id,
|
11
|
-
stage: :Quote_Stage
|
12
|
-
)
|
13
|
-
|
14
|
-
def initialize(params)
|
15
|
-
attributes.each do |attr|
|
16
|
-
zoho_key = attr_to_zoho_key(attr)
|
17
|
-
send("#{attr}=", params[zoho_key] || params[attr])
|
18
|
-
end
|
19
|
-
|
20
|
-
@potential_id ||= params.dig(:Deal_Name, :id)
|
21
|
-
@account_id ||= params.dig(:Account_Name, :id)
|
22
|
-
@owner_id ||= params.dig(:Owner, :id)
|
23
|
-
|
24
|
-
# The Quote has an array of products but we only care about one
|
25
|
-
if params.dig(:Product_Details)
|
26
|
-
product = params.dig(:Product_Details).first
|
27
|
-
@product_id = product.dig(:id)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
def to_params
|
32
|
-
params = super
|
33
|
-
|
34
|
-
params[:Deal_Name] = { id: @potential_id } if @potential_id
|
35
|
-
params[:Account_Name] = { id: @account_id } if @account_id
|
36
|
-
params[:Owner] = { id: @owner_id } if @owner_id
|
37
|
-
params[:Product_Details] = [{ product: { id: @product_id }, quantity: 1 }] if @product_id
|
38
|
-
|
39
|
-
params
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module ZohoHub
|
4
|
-
class Vendor < BaseRecord
|
5
|
-
attributes :id, :email, :description, :vendor_name, :website, :owner_id, :phone, :currency
|
6
|
-
attributes :company_reg_no
|
7
|
-
|
8
|
-
attribute_translation(
|
9
|
-
id: :id
|
10
|
-
)
|
11
|
-
|
12
|
-
DEFAULTS = {
|
13
|
-
currency: 'GBP'
|
14
|
-
}.freeze
|
15
|
-
|
16
|
-
def initialize(params)
|
17
|
-
attributes.each do |attr|
|
18
|
-
zoho_key = attr_to_zoho_key(attr)
|
19
|
-
|
20
|
-
send("#{attr}=", params[zoho_key] || params[attr] || DEFAULTS[attr])
|
21
|
-
end
|
22
|
-
|
23
|
-
@owner_id ||= params.dig(:Owner, :id)
|
24
|
-
end
|
25
|
-
|
26
|
-
def to_params
|
27
|
-
params = super
|
28
|
-
|
29
|
-
params[:Owner] = { id: @owner_id } if @owner_id
|
30
|
-
|
31
|
-
params
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|