admidat_query 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/admitad.rb +118 -0
- metadata +43 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d7e314b2cb5b5aba795bb7e9df0e880491f131c58fb9ffa644076661e701e9bf
|
4
|
+
data.tar.gz: d775c952e60f4f330144488f3c089d2d603af47a8990cd81c573b95ed73f3ace
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: afce5bb6173bbb771478335ad60444868c485cd881df36e9e55a8736117d466d2f0ef812769d3051bbbce6090df84afa162ae659cf70a7fa0309c76e9ceaccbe
|
7
|
+
data.tar.gz: 012657161accbc1b26ac948d4a03cd45d1de89bda7fefc7d6b320845780b233ecf202d2667ed59aca836e1ad7666ba46d0310ccec5389174238b2504f78d1e3c
|
data/lib/admitad.rb
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "admitad/version"
|
4
|
+
|
5
|
+
module Admitad
|
6
|
+
class Error < StandardError; end
|
7
|
+
# frozen_string_literal: true
|
8
|
+
# Rails cache
|
9
|
+
# Singeltone
|
10
|
+
require 'http'
|
11
|
+
require 'uri'
|
12
|
+
require 'net/http'
|
13
|
+
require 'json'
|
14
|
+
|
15
|
+
Admitad.config do |c|
|
16
|
+
c.client_id = '9Oo9LsDIaQhqCUtVkbSFIPfSmXQ7mQ'
|
17
|
+
c.client_secret = '0cD5yQEVDAA8hK4NSqDVJF7VUHHU5A'
|
18
|
+
c.scope = ''
|
19
|
+
end
|
20
|
+
|
21
|
+
def create_json(request)
|
22
|
+
raw_json = JSON.generate(request)
|
23
|
+
raw_json = JSON.parse raw_json.gsub('=>', ':')
|
24
|
+
JSON(raw_json)
|
25
|
+
end
|
26
|
+
|
27
|
+
def autorisation_admitad
|
28
|
+
cookies[:code] = params[:code] unless params[:code].nil?
|
29
|
+
url = URI("https://api.admitad.com/token/?state=7c232ff20e64432fbe071228c0779f&redirect_uri=http%3A%2F%2F127.0.0.1:3000%2F&response_type=code&client_id=9Oo9LsDIaQhqCUtVkbSFIPfSmXQ7mQ&client_secret=0cD5yQEVDAA8hK4NSqDVJF7VUHHU5A&code=#{cookies[:code]}&grant_type=authorization_code")
|
30
|
+
|
31
|
+
https = Net::HTTP.new(url.host, url.port)
|
32
|
+
https.use_ssl = true
|
33
|
+
|
34
|
+
request = Net::HTTP::Post.new(url)
|
35
|
+
request['Authorization'] =
|
36
|
+
'Basic OU9vOUxzRElhUWhxQ1V0VmtiU0ZJUGZTbVhRN21ROjBjRDV5UUVWREFBOGhLNE5TcURWSkY3VlVISFU1QQ=='
|
37
|
+
request['Cookie'] = 'gdpr_country=0'
|
38
|
+
|
39
|
+
request = create_json(https.request(request).read_body)
|
40
|
+
@response = request
|
41
|
+
cookies[:refresh_token] = request['refresh_token'] unless request['refresh_token'].nil?
|
42
|
+
cookies[:access_token] = request['access_token'] unless request['refresh_token'].nil?
|
43
|
+
end
|
44
|
+
|
45
|
+
def get_subid_data
|
46
|
+
url = URI('https://api.admitad.com/statistics/sub_ids/?date_start=01.01.2021&order_by=sub_id')
|
47
|
+
|
48
|
+
https = Net::HTTP.new(url.host, url.port)
|
49
|
+
https.use_ssl = true
|
50
|
+
|
51
|
+
request = Net::HTTP::Get.new(url)
|
52
|
+
request['Authorization'] = "Bearer #{cookies[:access_token]}"
|
53
|
+
request['Cookie'] = 'gdpr_country=0; user_default_language=en'
|
54
|
+
request = create_json(https.request(request).read_body)
|
55
|
+
puts "11111111111111111111111111111111111"
|
56
|
+
@subid_data = request
|
57
|
+
cookies[:subid_data] = request['results'] unless request['status_code'] == 401
|
58
|
+
end
|
59
|
+
|
60
|
+
def get_action_data
|
61
|
+
url = URI('https://api.admitad.com/statistics/actions/?date_start=14.03.2021&limit=222&order_by=date&action_type=1')
|
62
|
+
|
63
|
+
https = Net::HTTP.new(url.host, url.port)
|
64
|
+
https.use_ssl = true
|
65
|
+
|
66
|
+
request = Net::HTTP::Get.new(url)
|
67
|
+
request['Authorization'] = "Bearer #{cookies[:access_token]}"
|
68
|
+
request['Cookie'] = 'gdpr_country=0; user_default_language=en'
|
69
|
+
puts "-------------------------------"
|
70
|
+
puts https.request(request).read_body
|
71
|
+
request = create_json(https.request(request).read_body.force_encoding('utf-8'))
|
72
|
+
@action_data = request['results']
|
73
|
+
end
|
74
|
+
def rec_user_actions
|
75
|
+
sub_id = cookies[:subid_data]
|
76
|
+
sub_id.each do |client|
|
77
|
+
next if client['subid'] == ''
|
78
|
+
begin
|
79
|
+
@client = User.find(client['subid']) if User.find(client['subid']).present?
|
80
|
+
transaction_params = params.permit(:total).merge(user_id: client['subid'], offer_id: 1, status: 0)
|
81
|
+
@transaction = Transaction.find_by(transaction_params.except(:status, :total))
|
82
|
+
if @transaction.present?
|
83
|
+
@transaction.total = client['payment_sum_open']
|
84
|
+
@transaction.status = 0
|
85
|
+
@transaction.save
|
86
|
+
else
|
87
|
+
Transaction.create(transaction_params.merge(total: client['payment_sum_open']))
|
88
|
+
end
|
89
|
+
rescue ActiveRecord::RecordNotFound
|
90
|
+
next
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
def rec_user_data
|
96
|
+
sub_id = cookies[:subid_data]
|
97
|
+
sub_id.each do |client|
|
98
|
+
next if client['subid'] == ''
|
99
|
+
begin
|
100
|
+
@client = User.find(client['subid']) if User.find(client['subid']).present?
|
101
|
+
transaction_params = params.permit(:total).merge(user_id: client['subid'], offer_id: 1, status: 0)
|
102
|
+
@transaction = Transaction.find_by(transaction_params.except(:status, :total))
|
103
|
+
if @transaction.present?
|
104
|
+
@transaction.total = client['payment_sum_open']
|
105
|
+
@transaction.status = 0
|
106
|
+
@transaction.save
|
107
|
+
else
|
108
|
+
Transaction.create(transaction_params.merge(total: client['payment_sum_open']))
|
109
|
+
end
|
110
|
+
rescue ActiveRecord::RecordNotFound
|
111
|
+
next
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
|
116
|
+
|
117
|
+
|
118
|
+
end
|
metadata
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: admidat_query
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- cruelRamp
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-03-24 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: A gem whit redy qury methods
|
14
|
+
email: minery27@gmail.com
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- lib/admitad.rb
|
20
|
+
homepage:
|
21
|
+
licenses:
|
22
|
+
- MIT
|
23
|
+
metadata: {}
|
24
|
+
post_install_message:
|
25
|
+
rdoc_options: []
|
26
|
+
require_paths:
|
27
|
+
- lib
|
28
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
34
|
+
requirements:
|
35
|
+
- - ">="
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
requirements: []
|
39
|
+
rubygems_version: 3.1.2
|
40
|
+
signing_key:
|
41
|
+
specification_version: 4
|
42
|
+
summary: Hola!
|
43
|
+
test_files: []
|