my_referrer 0.2.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4424171db74a7af27c8b291befb9321b018a64e79130a2923a1434d161ed5a87
4
- data.tar.gz: 2d8750f07dd5919bf41d2cf1da9f07081e5a56c7f02bd0cf5e3622bbb32c51b5
3
+ metadata.gz: 0f748dfe31e6cfbe4e32d2b03530eb6938274d8e36b6a25e01f964bb27c41a7f
4
+ data.tar.gz: dc42d5ff44e210697084b9f3311f1a3e808e2ce33c3d97839a929e3e3d4001c5
5
5
  SHA512:
6
- metadata.gz: 8cbfe061f82c3ce40782dde8fd4dc6cd9e079627f66056497d547355a3052048086db097ae2e133278ddec006da1962544360f8da078f7a6862aadfb2573eea2
7
- data.tar.gz: 8524b3d7d0bc08373e996630da4ec8681ea2b0b2e6d5caac758067803ceb80963c31f928dc6478faedc0f2f08272974f2651e8d227ffb23fe565ca61000ef63b
6
+ metadata.gz: af3543fc0c65048babc804c107064abec1c4838f0bcdaad83eb33b27f3113ef98bb8be750ebe45375658ea17b1017a9922068a876fdc86a8de1e9d88365b23df
7
+ data.tar.gz: 2371189f86472a3c36819166f5fffcf2782dbfae825254c4a3077f5fc63adc2fe0402b7a02a735baaec52a06dacbef733ffd925f302087d189cfc812905ae7c5
data/README.md CHANGED
@@ -1,10 +1,13 @@
1
1
  # MyReferrer
2
2
 
3
+ Outbound referrer hidden link gem for monolith projects.
4
+
3
5
  ## Installation
4
6
 
5
7
  Add this line to your application's Gemfile:
6
8
 
7
9
  ```ruby
10
+ gem 'gon'
8
11
  gem 'my_referrer'
9
12
  ```
10
13
 
@@ -39,4 +42,79 @@ For rails 3:
39
42
  ...
40
43
  ```
41
44
 
42
- ## Usage
45
+ ## Usage
46
+
47
+ Load you`r data in application controller:
48
+
49
+ ```ruby
50
+ gon.referrer = MyReferrer.referrer(request)
51
+ gon.referrer_urls = ['example.com', 'someshit.ru']
52
+ ```
53
+
54
+ Or use custom referrer moderation.
55
+
56
+ Example:
57
+ ```ruby
58
+ require 'uri'
59
+
60
+ before_action :get_session_referrer
61
+ before_action :referrer_urls
62
+
63
+ ...
64
+
65
+ def get_session_referrer
66
+ unless request.referrer.nil?
67
+ if gon.referrer.nil? && URI(request.referrer).host != "mirpokera.com"
68
+ s_referrer = URI(request.referrer).host
69
+ s_referrer_host = s_referrer.split(".")
70
+ if s_referrer.eql?("www.yandex.ru") || s_referrer.eql?("yandex.ru")
71
+ session['referrer'] = "seyr"
72
+ elsif s_referrer.eql?("www.google.ru") || s_referrer.eql?("google.ru")
73
+ session['referrer'] = "segr"
74
+ elsif s_referrer.include?("google")
75
+ session['referrer'] = "seg"
76
+ elsif s_referrer.include?("yandex")
77
+ session['referrer'] = "sey"
78
+ else
79
+ session['referrer'] = s_referrer.split("www.").pop
80
+ end
81
+ end
82
+ else
83
+ session['referrer'] = "drt"
84
+ end
85
+ gon.referrer = session['referrer']
86
+ end
87
+
88
+ def referrer_urls
89
+ gon.referrer_urls = Array.new()
90
+ SourceLink.all.each{|sl| gon.referrer_urls.push(sl.link)}
91
+ end
92
+
93
+ ...
94
+
95
+ ```
96
+
97
+ It's my realization:
98
+ ```ruby
99
+ if request.referrer.present? && @my_referrer.nil?
100
+ @my_referrer = URI(request.referrer).host
101
+ .split('www.')
102
+ .pop
103
+ .split('/').shift
104
+ else
105
+ @my_referrer = 'drt'
106
+ end
107
+ @my_referrer
108
+
109
+ ```
110
+ ## License
111
+
112
+ The MIT License
113
+
114
+ ## Contributing
115
+
116
+ 1. Fork it ( https://github.com/sOM2H/my_referrer/fork )
117
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
118
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
119
+ 4. Push to the branch (`git push origin my-new-feature`)
120
+ 5. Create a new Pull Request
@@ -0,0 +1,3 @@
1
+ module MyScrollUp
2
+ class Engine < ::Rails::Engine; end
3
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MyReferrer
4
- VERSION = '0.2.2'.freeze
4
+ VERSION = '1.0.0'.freeze
5
5
  end
data/lib/my_referrer.rb CHANGED
@@ -1,21 +1,17 @@
1
1
  require 'my_referrer/version'
2
+ require 'my_referrer/engine'
2
3
  require 'uri'
3
4
 
4
5
  module MyReferrer
5
- def self.init(request, standart = 'drt')
6
+ def self.referrer(request)
6
7
  if request.referrer.present? && @my_referrer.nil?
7
8
  @my_referrer = URI(request.referrer).host
8
9
  .split('www.')
9
10
  .pop
10
11
  .split('/').shift
11
12
  else
12
- @my_referrer = standart
13
+ @my_referrer = 'drt'
13
14
  end
15
+ @my_referrer
14
16
  end
15
-
16
- def self.load_urls(gon, arr)
17
- gon.referrer = @my_referrer
18
- gon.referrer_urls = arr
19
- gon
20
- end
21
- end
17
+ end
data/my_referrer.gemspec CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
9
9
  spec.authors = ["Mikhail Melnyk"]
10
10
  spec.email = ["m1kh41l.melnyk@gmail.com"]
11
11
 
12
- spec.summary = %q{Write a short summary, because Rubygems requires one.}
13
- spec.description = %q{Write a longer description or delete this line.}
12
+ spec.summary = %q{Outbound referrer hidden link gem for monolith projects.}
13
+ spec.description = %q{Outbound referrer hidden link gem for monolith projects.}
14
14
  spec.homepage = "https://github.com/sOM2H/my_referrer"
15
15
  spec.license = "MIT"
16
16
 
@@ -19,8 +19,6 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_dependency "gon", "~> 6.2.1"
23
-
24
22
  spec.add_development_dependency "bundler", "~> 1.11"
25
23
  spec.add_development_dependency "rake", "~> 10.0"
26
24
  spec.add_development_dependency "rspec", "~> 3.0"
@@ -6,6 +6,11 @@ $( document ).ready(function() {
6
6
  window.open(e.target+"?srv="+gon.referrer);
7
7
  event.preventDefault();
8
8
  }
9
+ var link2 = e.target.parentNode.toString()
10
+ if( link2.includes(url.toString())){
11
+ window.open(e.target.parentNode+"?srv="+gon.referrer);
12
+ event.preventDefault();
13
+ }
9
14
  });
10
15
  });
11
16
  });
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: my_referrer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mikhail Melnyk
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-04-18 00:00:00.000000000 Z
11
+ date: 2019-05-05 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: gon
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 6.2.1
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: 6.2.1
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: bundler
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -66,7 +52,7 @@ dependencies:
66
52
  - - "~>"
67
53
  - !ruby/object:Gem::Version
68
54
  version: '3.0'
69
- description: Write a longer description or delete this line.
55
+ description: Outbound referrer hidden link gem for monolith projects.
70
56
  email:
71
57
  - m1kh41l.melnyk@gmail.com
72
58
  executables: []
@@ -84,6 +70,7 @@ files:
84
70
  - bin/console
85
71
  - bin/setup
86
72
  - lib/my_referrer.rb
73
+ - lib/my_referrer/engine.rb
87
74
  - lib/my_referrer/version.rb
88
75
  - my_referrer.gemspec
89
76
  - vendor/assets/javascripts/my_referrer.js
@@ -107,8 +94,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
94
  version: '0'
108
95
  requirements: []
109
96
  rubyforge_project:
110
- rubygems_version: 2.7.6
97
+ rubygems_version: 2.7.7
111
98
  signing_key:
112
99
  specification_version: 4
113
- summary: Write a short summary, because Rubygems requires one.
100
+ summary: Outbound referrer hidden link gem for monolith projects.
114
101
  test_files: []