phcdevworks_core_modules 6.3.0 → 7.1.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 +4 -4
- data/README.md +0 -28
- data/Rakefile +5 -29
- data/app/assets/config/phcdevworks_core_modules_manifest.js +2 -1
- data/app/assets/javascripts/phcdevworks_core_modules/{marketing/optimizations.coffee → affiliate/links.coffee} +0 -0
- data/app/assets/stylesheets/phcdevworks_core_modules/affiliate/links.scss +3 -0
- data/app/assets/stylesheets/phcdevworks_core_modules/application.scss +0 -2
- data/app/controllers/phcdevworks_core_modules/affiliate/links_controller.rb +81 -0
- data/app/controllers/phcdevworks_core_modules/marketing/optimizations_controller.rb +1 -1
- data/app/helpers/phcdevworks_core_modules/affiliate/links_helper.rb +4 -0
- data/app/models/phcdevworks_core_modules/affiliate.rb +7 -0
- data/app/models/phcdevworks_core_modules/affiliate/link.rb +27 -0
- data/app/models/phcdevworks_core_modules/affiliate_link_versions.rb +5 -0
- data/app/models/phcdevworks_core_modules/marketing/optimization.rb +1 -7
- data/app/views/layouts/phcdevworks_core_modules/application.html.erb +14 -19
- data/app/views/layouts/phcdevworks_core_modules/components/backend/sidebars/_side_menu.html.erb +21 -4
- data/app/views/phcdevworks_core_modules/affiliate/links/_form.html.erb +27 -0
- data/app/views/phcdevworks_core_modules/affiliate/links/edit.html.erb +47 -0
- data/app/views/phcdevworks_core_modules/affiliate/links/index.html.erb +86 -0
- data/app/views/phcdevworks_core_modules/affiliate/links/new.html.erb +47 -0
- data/app/views/phcdevworks_core_modules/affiliate/links/show.html.erb +24 -0
- data/app/views/phcdevworks_core_modules/marketing/optimizations/index.html.erb +3 -3
- data/config/routes.rb +7 -2
- data/db/migrate/20210207051304_create_phcdevworks_core_modules_affiliate_link_versions.rb +18 -0
- data/db/migrate/20210208130113_create_phcdevworks_core_modules_affiliate_links.rb +18 -0
- data/lib/phcdevworks_core_modules.rb +2 -1
- data/lib/phcdevworks_core_modules/engine.rb +44 -34
- data/lib/phcdevworks_core_modules/version.rb +1 -1
- metadata +115 -36
- data/app/assets/javascripts/phcdevworks_core_modules/application.js +0 -2
- data/app/assets/javascripts/phcdevworks_core_modules/post/categories.coffee +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fa0c83f9c48f79ffb394c95854696e6da4311d4a1be67600255a1be0ad0454c6
|
|
4
|
+
data.tar.gz: 02125c3a9958784f819746434e21465616fc589b60ef7e18422773c557d10e2b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a1d19b6a0d249794c0964dbe27915b9520f134764ad35d22e4eaad4d57305f5bfc25b48e9a6952d87b80bb03ab9f47bb518832c24cd742279c66ac1bbdf3876f
|
|
7
|
+
data.tar.gz: 152bd62135c727345012b8e0719d78a5542fe729070c8d87aa1543b40b6ad0aa806ed43736dba90766194912f708a84eff08ef86f6f576e007bc05b4f62d1d0e
|
data/README.md
CHANGED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# PhcdevworksCoreModules
|
|
2
|
-
Short description and motivation.
|
|
3
|
-
|
|
4
|
-
## Usage
|
|
5
|
-
How to use my plugin.
|
|
6
|
-
|
|
7
|
-
## Installation
|
|
8
|
-
Add this line to your application's Gemfile:
|
|
9
|
-
|
|
10
|
-
```ruby
|
|
11
|
-
gem 'phcdevworks_core_modules'
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
And then execute:
|
|
15
|
-
```bash
|
|
16
|
-
$ bundle
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Or install it yourself as:
|
|
20
|
-
```bash
|
|
21
|
-
$ gem install phcdevworks_core_modules
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Contributing
|
|
25
|
-
Contribution directions go here.
|
|
26
|
-
|
|
27
|
-
## License
|
|
28
|
-
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/Rakefile
CHANGED
|
@@ -1,32 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
require 'bundler/setup'
|
|
3
|
-
rescue LoadError
|
|
4
|
-
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
|
5
|
-
end
|
|
1
|
+
require "bundler/setup"
|
|
6
2
|
|
|
7
|
-
|
|
3
|
+
APP_RAKEFILE = File.expand_path("spec/test_app/Rakefile", __dir__)
|
|
4
|
+
load "rails/tasks/engine.rake"
|
|
8
5
|
|
|
9
|
-
|
|
10
|
-
rdoc.rdoc_dir = 'rdoc'
|
|
11
|
-
rdoc.title = 'PhcdevworksCoreModules'
|
|
12
|
-
rdoc.options << '--line-numbers'
|
|
13
|
-
rdoc.rdoc_files.include('README.md')
|
|
14
|
-
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
15
|
-
end
|
|
6
|
+
load "rails/tasks/statistics.rake"
|
|
16
7
|
|
|
17
|
-
|
|
18
|
-
load 'rails/tasks/engine.rake'
|
|
19
|
-
|
|
20
|
-
load 'rails/tasks/statistics.rake'
|
|
21
|
-
|
|
22
|
-
require 'bundler/gem_tasks'
|
|
23
|
-
|
|
24
|
-
require 'rake/testtask'
|
|
25
|
-
|
|
26
|
-
Rake::TestTask.new(:test) do |t|
|
|
27
|
-
t.libs << 'test'
|
|
28
|
-
t.pattern = 'test/**/*_test.rb'
|
|
29
|
-
t.verbose = false
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
task default: :test
|
|
8
|
+
require "bundler/gem_tasks"
|
|
File without changes
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
require_dependency "phcdevworks_core_modules/application_controller"
|
|
2
|
+
|
|
3
|
+
module PhcdevworksCoreModules
|
|
4
|
+
class Affiliate::LinksController < ApplicationController
|
|
5
|
+
|
|
6
|
+
# Filters & Security
|
|
7
|
+
#include PhcdevworksCore::PhcpluginsHelper
|
|
8
|
+
before_action :authenticate_user!
|
|
9
|
+
before_action :set_paper_trail_whodunnit
|
|
10
|
+
before_action :set_affiliate_link, only: [:show, :edit, :update, :destroy]
|
|
11
|
+
|
|
12
|
+
# GET /affiliate/links
|
|
13
|
+
def index
|
|
14
|
+
@affiliate_links = Affiliate::Link.order('affiliate_link_name ASC')
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# GET /affiliate/links/1
|
|
18
|
+
def show
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# GET /affiliate/links/new
|
|
22
|
+
def new
|
|
23
|
+
@affiliate_link = Affiliate::Link.new
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# GET /affiliate/links/1/edit
|
|
27
|
+
def edit
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# POST /affiliate/links
|
|
31
|
+
def create
|
|
32
|
+
@affiliate_link = Affiliate::Link.new(affiliate_link_params)
|
|
33
|
+
@affiliate_link.user_id = current_user.id
|
|
34
|
+
@affiliate_link.org_id = current_user.org_id
|
|
35
|
+
respond_to do |format|
|
|
36
|
+
if @affiliate_link.save
|
|
37
|
+
format.html { redirect_to affiliate_links_path, :flash => { :success => 'Affilate Link has been Added.' }}
|
|
38
|
+
format.json { render :show, status: :created, location: @affiliate_link }
|
|
39
|
+
else
|
|
40
|
+
format.html { render :new }
|
|
41
|
+
format.json { render json: @affiliate_link.errors, status: :unprocessable_entity }
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# PATCH/PUT /affiliate/links/1
|
|
47
|
+
def update
|
|
48
|
+
respond_to do |format|
|
|
49
|
+
if @affiliate_link.update(affiliate_link_params)
|
|
50
|
+
format.html { redirect_to affiliate_links_path, :flash => { :notice => 'Affiliate Link has been Updated.' }}
|
|
51
|
+
format.json { render :show, status: :ok, location: @affiliate_link }
|
|
52
|
+
else
|
|
53
|
+
format.html { render :edit }
|
|
54
|
+
format.json { render json: @affiliate_link.errors, status: :unprocessable_entity }
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# DELETE /affiliate/links/1
|
|
60
|
+
def destroy
|
|
61
|
+
@affiliate_link.destroy
|
|
62
|
+
respond_to do |format|
|
|
63
|
+
format.html { redirect_to affiliate_links_path, :flash => { :error => 'Affiliate Link and Post Connections have all been Removed.' }}
|
|
64
|
+
format.json { head :no_content }
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
private
|
|
69
|
+
|
|
70
|
+
# Common Callbacks
|
|
71
|
+
def set_affiliate_link
|
|
72
|
+
@affiliate_link = Affiliate::Link.find(params[:id])
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Whitelist
|
|
76
|
+
def affiliate_link_params
|
|
77
|
+
params.require(:affiliate_link).permit(:affiliate_link_name, :affiliate_link_button_text, :affiliate_link_url, :affiliate_link_original_url, :slug, :user_id, :org_id)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
end
|
|
81
|
+
end
|
|
@@ -47,7 +47,7 @@ module PhcdevworksCoreModules
|
|
|
47
47
|
def update
|
|
48
48
|
respond_to do |format|
|
|
49
49
|
if @marketing_optimization.update(marketing_optimization_params)
|
|
50
|
-
format.html { redirect_to marketing_optimizations_path, :flash => { :notice => '
|
|
50
|
+
format.html { redirect_to marketing_optimizations_path, :flash => { :notice => 'SEO Attributes has been Updated.' }}
|
|
51
51
|
format.json { render :show, status: :ok, location: @marketing_optimization }
|
|
52
52
|
else
|
|
53
53
|
format.html { render :edit }
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
module PhcdevworksCoreModules
|
|
2
|
+
class Affiliate::Link < ApplicationRecord
|
|
3
|
+
|
|
4
|
+
# Clean URL Initialize
|
|
5
|
+
extend FriendlyId
|
|
6
|
+
|
|
7
|
+
# Paper Trail Initialize
|
|
8
|
+
has_paper_trail versions: {class_name: "PhcdevworksCoreModules::AffiliateLinkVersions"}
|
|
9
|
+
|
|
10
|
+
# Relationships for Local
|
|
11
|
+
belongs_to :user, class_name: "PhcdevworksAccounts::User"
|
|
12
|
+
|
|
13
|
+
if defined?phcdevworks_press
|
|
14
|
+
has_many :posts, class_name: "PhcdevworksPress::Article::Post"
|
|
15
|
+
has_many :posts, class_name: "PhcdevworksPress::Review::Post"
|
|
16
|
+
has_many :posts, class_name: "PhcdevworksPress::List::Post"
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# Clean URL Define
|
|
20
|
+
friendly_id :affiliate_link_nice_urls, use: [:slugged, :finders]
|
|
21
|
+
|
|
22
|
+
def affiliate_link_nice_urls
|
|
23
|
+
[:affiliate_link_name]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -9,7 +9,7 @@ module PhcdevworksCoreModules
|
|
|
9
9
|
has_one_attached :marketing_optimization_og_image
|
|
10
10
|
|
|
11
11
|
# Paper Trail Initialize
|
|
12
|
-
has_paper_trail :class_name
|
|
12
|
+
has_paper_trail versions: {class_name: "PhcdevworksCoreModules::MarketingOptimizationVersions"}
|
|
13
13
|
|
|
14
14
|
# Relationships for Local
|
|
15
15
|
belongs_to :user, class_name: "PhcdevworksAccounts::User"
|
|
@@ -43,12 +43,6 @@ module PhcdevworksCoreModules
|
|
|
43
43
|
validates :marketing_optimization_page_title,
|
|
44
44
|
presence: true
|
|
45
45
|
|
|
46
|
-
validates :marketing_optimization_og_title,
|
|
47
|
-
presence: true
|
|
48
|
-
|
|
49
|
-
validates :marketing_optimization_twitter_title,
|
|
50
|
-
presence: true
|
|
51
|
-
|
|
52
46
|
# Clean URL Define
|
|
53
47
|
friendly_id :marketing_optimization_nice_urls, use: [:slugged, :finders]
|
|
54
48
|
|
|
@@ -3,30 +3,29 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
|
|
5
5
|
<!-- SEO System -->
|
|
6
|
-
<% phc_seo_title "PHCDevworks
|
|
7
|
-
<% phc_seo_description "
|
|
6
|
+
<% phc_seo_title "PHCDevworks Core Modules" %>
|
|
7
|
+
<% phc_seo_description "Ruby on Rails 6 core plugin for PHCDevworks plugins with common modules to handle functions universally handle common functions." %>
|
|
8
8
|
<!-- SEO System -->
|
|
9
|
-
|
|
9
|
+
|
|
10
10
|
<!-- SEO and Site Description -->
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
<meta name="
|
|
14
|
-
|
|
15
|
-
<link rel="canonical" href="http://phcdevworks.com">
|
|
11
|
+
<meta charset="utf-8">
|
|
12
|
+
<title><%= yield(:phc_seo_title) %></title>
|
|
13
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
|
14
|
+
<meta name="description" content="<%= yield(:phc_seo_description) %>">
|
|
16
15
|
<!-- SEO and Site Description -->
|
|
17
|
-
|
|
16
|
+
|
|
18
17
|
<!-- Rails Security Tags -->
|
|
19
18
|
<%= csrf_meta_tags %>
|
|
20
19
|
<%= csp_meta_tag %>
|
|
21
20
|
<!-- Rails Security Tags -->
|
|
22
|
-
|
|
21
|
+
|
|
23
22
|
<!-- CSS Styles -->
|
|
24
|
-
<%= stylesheet_link_tag "
|
|
23
|
+
<%= stylesheet_link_tag "phcthemes_admin_panel_pack_coloradmin", media: "all" %>
|
|
25
24
|
<!-- CSS Styles -->
|
|
26
|
-
|
|
27
|
-
<!--
|
|
28
|
-
|
|
29
|
-
<!--
|
|
25
|
+
|
|
26
|
+
<!-- JavaScript -->
|
|
27
|
+
<%= javascript_include_tag "phcthemes_admin_panel_pack_coloradmin" %>
|
|
28
|
+
<!-- JavaScript -->
|
|
30
29
|
|
|
31
30
|
</head>
|
|
32
31
|
<body>
|
|
@@ -63,10 +62,6 @@
|
|
|
63
62
|
</div>
|
|
64
63
|
<!-- Page Container -->
|
|
65
64
|
|
|
66
|
-
<!-- JavaScript -->
|
|
67
|
-
<%= javascript_include_tag "phcdevworks_core_modules/application", "data-turbolinks-track": "reload" %>
|
|
68
|
-
<!-- JavaScript -->
|
|
69
|
-
|
|
70
65
|
<!-- JavaScript CKEditor -->
|
|
71
66
|
<script>ClassicEditor
|
|
72
67
|
.create( document.querySelector( '.editor' ), {
|
data/app/views/layouts/phcdevworks_core_modules/components/backend/sidebars/_side_menu.html.erb
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<% end %>
|
|
26
26
|
</li>
|
|
27
27
|
<li>
|
|
28
|
-
<%= link_to phcdevworks_accounts.destroy_user_session_path do %>
|
|
28
|
+
<%= link_to phcdevworks_accounts.destroy_user_session_path, method: :delete do %>
|
|
29
29
|
<i class="fad fa-sign-out-alt"></i> Logout
|
|
30
30
|
<% end %>
|
|
31
31
|
</li>
|
|
@@ -234,7 +234,7 @@
|
|
|
234
234
|
|
|
235
235
|
<% if defined?phcdevworks_core_modules %>
|
|
236
236
|
<!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Core Modules -->
|
|
237
|
-
<li class="nav-header">
|
|
237
|
+
<li class="nav-header">Categories</li>
|
|
238
238
|
<li class="has-sub">
|
|
239
239
|
<a href="javascript:;">
|
|
240
240
|
<b class="caret"></b>
|
|
@@ -246,11 +246,28 @@
|
|
|
246
246
|
<li class="<%= phc_menu_active_controller("phcdevworks_core_modules/post/categories#new") %>"><%= link_to("New Category", phcdevworks_core_modules.new_post_category_path) %></li>
|
|
247
247
|
</ul>
|
|
248
248
|
</li>
|
|
249
|
+
<!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Core Modules -->
|
|
250
|
+
<% end %>
|
|
251
|
+
|
|
252
|
+
<% if defined?phcdevworks_core_modules %>
|
|
253
|
+
<!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Core Modules -->
|
|
254
|
+
<li class="nav-header">Marketing</li>
|
|
255
|
+
<li class="has-sub">
|
|
256
|
+
<a href="javascript:;">
|
|
257
|
+
<b class="caret"></b>
|
|
258
|
+
<i class="fad fa-link"></i>
|
|
259
|
+
<span>Affiliate Links</span>
|
|
260
|
+
</a>
|
|
261
|
+
<ul class="sub-menu">
|
|
262
|
+
<li class="<%= phc_menu_active_controller("phcdevworks_core_modules/affiliate/links") %>"><%= link_to("Affiliate Link Index", phcdevworks_core_modules.affiliate_links_path) %></li>
|
|
263
|
+
<li class="<%= phc_menu_active_controller("phcdevworks_core_modules/affiliate/links#new") %>"><%= link_to("New Affiliate Link", phcdevworks_core_modules.new_affiliate_link_path) %></li>
|
|
264
|
+
</ul>
|
|
265
|
+
</li>
|
|
249
266
|
<li class="has-sub">
|
|
250
267
|
<a href="javascript:;">
|
|
251
268
|
<b class="caret"></b>
|
|
252
269
|
<i class="fad fa-analytics"></i>
|
|
253
|
-
<span>
|
|
270
|
+
<span>Search Optimization</span>
|
|
254
271
|
</a>
|
|
255
272
|
<ul class="sub-menu">
|
|
256
273
|
<li class="<%= phc_menu_active_controller("phcdevworks_core_modules/marketing/optimizations") %>"><%= link_to("SEO Data Index", phcdevworks_core_modules.marketing_optimizations_path) %></li>
|
|
@@ -270,7 +287,7 @@
|
|
|
270
287
|
<span>Admin</span>
|
|
271
288
|
</a>
|
|
272
289
|
<ul class="sub-menu">
|
|
273
|
-
<li class="<%= phc_menu_active_controller("phcdevworks_accounts/admin/users") %>"><%= link_to "User List", phcdevworks_accounts.
|
|
290
|
+
<li class="<%= phc_menu_active_controller("phcdevworks_accounts/admin/users") %>"><%= link_to "User List", phcdevworks_accounts.admin_users_all_path %></li>
|
|
274
291
|
</ul>
|
|
275
292
|
</li>
|
|
276
293
|
<!-- -PHC- Sidebar - Sidebar Navigation - PHCAccounts Admin Options -->
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<%= form_with(model: affiliate_link) do |form| %>
|
|
2
|
+
|
|
3
|
+
<div class="form-group">
|
|
4
|
+
<%= form.label :affiliate_link_name, "Link Name" %>
|
|
5
|
+
<%= form.text_field :affiliate_link_name, class: "form-control" %>
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<div class="form-group">
|
|
9
|
+
<%= form.label :affiliate_link_button_text, "Button Text" %>
|
|
10
|
+
<%= form.text_field :affiliate_link_button_text, class: "form-control" %>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
<div class="form-group">
|
|
14
|
+
<%= form.label :affiliate_link_url, "Affiliate Link" %>
|
|
15
|
+
<%= form.text_field :affiliate_link_url, class: "form-control" %>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div class="form-group">
|
|
19
|
+
<%= form.label :affiliate_link_original_url, "Original URL" %>
|
|
20
|
+
<%= form.text_field :affiliate_link_original_url, class: "form-control" %>
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
<div class="actions">
|
|
24
|
+
<%= form.submit class: "btn btn-primary" %>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<% end %>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
2
|
+
<% phc_title "Affiliate Manager" %>
|
|
3
|
+
<% phc_title_tagline "Update Affiliate Link" %>
|
|
4
|
+
<% phc_breadcrumb_one yield(:phc_title_tagline) %>
|
|
5
|
+
<% phc_breadcrumb_two link_to "Affiliate Link Index", phcdevworks_core_modules.affiliate_links_path %>
|
|
6
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
7
|
+
|
|
8
|
+
<!-- Page Bradcrumbs -->
|
|
9
|
+
<ol class="breadcrumb pull-right">
|
|
10
|
+
<li class="breadcrumb-item"><%= yield(:phc_breadcrumb_one) %></li>
|
|
11
|
+
<li class="breadcrumb-item active"><%= yield(:phc_breadcrumb_two) %></li>
|
|
12
|
+
</ol>
|
|
13
|
+
<!-- Page Bradcrumbs -->
|
|
14
|
+
|
|
15
|
+
<!-- Page Header -->
|
|
16
|
+
<h2 class="page-header"><%= yield(:phc_title) %></h2>
|
|
17
|
+
<!-- Page Header -->
|
|
18
|
+
|
|
19
|
+
<!-- Page Content -->
|
|
20
|
+
<div class="row">
|
|
21
|
+
<div class="col-lg-12">
|
|
22
|
+
|
|
23
|
+
<!-- Panel -->
|
|
24
|
+
<div class="panel panel-inverse">
|
|
25
|
+
|
|
26
|
+
<!-- Panel - Heading -->
|
|
27
|
+
<div class="panel-heading">
|
|
28
|
+
<h4 class="panel-title"><%= yield(:phc_title) %></h4>
|
|
29
|
+
</div>
|
|
30
|
+
<!-- Panel - Heading -->
|
|
31
|
+
|
|
32
|
+
<!-- Panel - Body -->
|
|
33
|
+
<div class="panel-body">
|
|
34
|
+
|
|
35
|
+
<!-- Edit Form -->
|
|
36
|
+
<%= render 'form', affiliate_link: @affiliate_link %>
|
|
37
|
+
<!-- Edit Form -->
|
|
38
|
+
|
|
39
|
+
</div>
|
|
40
|
+
<!-- Panel - Body -->
|
|
41
|
+
|
|
42
|
+
</div>
|
|
43
|
+
<!-- Panel -->
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
<!-- Page Content -->
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
2
|
+
<% phc_title "Marketing Manager" %>
|
|
3
|
+
<% phc_title_tagline "Affiliate Links" %>
|
|
4
|
+
<% phc_breadcrumb_one yield(:phc_title_tagline) %>
|
|
5
|
+
<% phc_breadcrumb_two link_to "Affiliate Link Index", phcdevworks_core_modules.affiliate_links_path %>
|
|
6
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
7
|
+
|
|
8
|
+
<!-- Page Bradcrumbs -->
|
|
9
|
+
<ol class="breadcrumb pull-right">
|
|
10
|
+
<li class="breadcrumb-item"><%= yield(:phc_breadcrumb_one) %></li>
|
|
11
|
+
<li class="breadcrumb-item active"><%= yield(:phc_breadcrumb_two) %></li>
|
|
12
|
+
</ol>
|
|
13
|
+
<!-- Page Bradcrumbs -->
|
|
14
|
+
|
|
15
|
+
<!-- Page Header -->
|
|
16
|
+
<h2 class="page-header"><%= yield(:phc_title) %></h2>
|
|
17
|
+
<!-- Page Header -->
|
|
18
|
+
|
|
19
|
+
<!-- Page Content -->
|
|
20
|
+
<div class="row">
|
|
21
|
+
<div class="col-lg-12">
|
|
22
|
+
|
|
23
|
+
<!-- Panel -->
|
|
24
|
+
<div class="panel panel-inverse">
|
|
25
|
+
|
|
26
|
+
<!-- Panel - Heading -->
|
|
27
|
+
<div class="panel-heading">
|
|
28
|
+
<h4 class="panel-title"><%= yield(:phc_title) %> - <%= yield(:phc_title_tagline) %></h4>
|
|
29
|
+
</div>
|
|
30
|
+
<!-- Panel - Heading -->
|
|
31
|
+
|
|
32
|
+
<!-- Panel - Body -->
|
|
33
|
+
<div class="panel-body">
|
|
34
|
+
|
|
35
|
+
<!-- Index - Table -->
|
|
36
|
+
<div class="table-responsive">
|
|
37
|
+
<table class="table table-striped table-bordered">
|
|
38
|
+
|
|
39
|
+
<thead>
|
|
40
|
+
<tr>
|
|
41
|
+
<th>Link Name</th>
|
|
42
|
+
<th>Button Text</th>
|
|
43
|
+
<th>Affiliate URL</th>
|
|
44
|
+
<th>Original URL</th>
|
|
45
|
+
<th></th>
|
|
46
|
+
</tr>
|
|
47
|
+
</thead>
|
|
48
|
+
|
|
49
|
+
<tbody>
|
|
50
|
+
<% @affiliate_links.each do |affiliate_link| %>
|
|
51
|
+
<tr>
|
|
52
|
+
<td><%= affiliate_link.affiliate_link_name %></td>
|
|
53
|
+
<td><%= affiliate_link.affiliate_link_button_text %></td>
|
|
54
|
+
<td><%= affiliate_link.affiliate_link_url %></td>
|
|
55
|
+
<td><%= affiliate_link.affiliate_link_original_url %></td>
|
|
56
|
+
<td>
|
|
57
|
+
<div class="btn-group d-flex" role="group">
|
|
58
|
+
<%= link_to "Link Details", affiliate_link, class: "btn btn-purple btn-xs" %>
|
|
59
|
+
<%= link_to "Update Link", edit_affiliate_link_path(affiliate_link), class: "btn btn-primary btn-xs" %>
|
|
60
|
+
<%= link_to "Remove", affiliate_link, method: :delete, data: { confirm: "Are you sure? This action cannot be reversed." }, class: "btn btn-danger btn-xs" %>
|
|
61
|
+
</div>
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
<% end %>
|
|
65
|
+
</tbody>
|
|
66
|
+
|
|
67
|
+
</table>
|
|
68
|
+
</div>
|
|
69
|
+
<!-- Index - Table -->
|
|
70
|
+
|
|
71
|
+
<!-- New Button -->
|
|
72
|
+
<%= link_to phcdevworks_core_modules.new_affiliate_link_path, class: "btn btn-primary btn-sm" do %>
|
|
73
|
+
<i class="fad fa-plus-circle"></i>
|
|
74
|
+
Add a New Affiliate Link
|
|
75
|
+
<% end %>
|
|
76
|
+
<!-- New Button -->
|
|
77
|
+
|
|
78
|
+
</div>
|
|
79
|
+
<!-- Panel - Body -->
|
|
80
|
+
|
|
81
|
+
</div>
|
|
82
|
+
<!-- Panel -->
|
|
83
|
+
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
<!-- Page Content -->
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
2
|
+
<% phc_title "Affiliate Manager" %>
|
|
3
|
+
<% phc_title_tagline "New Affiliate Link" %>
|
|
4
|
+
<% phc_breadcrumb_one yield(:phc_title_tagline) %>
|
|
5
|
+
<% phc_breadcrumb_two link_to "Affiliate Link Index", phcdevworks_core_modules.affiliate_links_path %>
|
|
6
|
+
<!-- PHCTitleSEO Title Variables -->
|
|
7
|
+
|
|
8
|
+
<!-- Page Bradcrumbs -->
|
|
9
|
+
<ol class="breadcrumb pull-right">
|
|
10
|
+
<li class="breadcrumb-item"><%= yield(:phc_breadcrumb_one) %></li>
|
|
11
|
+
<li class="breadcrumb-item active"><%= yield(:phc_breadcrumb_two) %></li>
|
|
12
|
+
</ol>
|
|
13
|
+
<!-- Page Bradcrumbs -->
|
|
14
|
+
|
|
15
|
+
<!-- Page Header -->
|
|
16
|
+
<h2 class="page-header"><%= yield(:phc_title) %></h2>
|
|
17
|
+
<!-- Page Header -->
|
|
18
|
+
|
|
19
|
+
<!-- Page Content -->
|
|
20
|
+
<div class="row">
|
|
21
|
+
<div class="col-lg-12">
|
|
22
|
+
|
|
23
|
+
<!-- Panel -->
|
|
24
|
+
<div class="panel panel-inverse">
|
|
25
|
+
|
|
26
|
+
<!-- Panel - Heading -->
|
|
27
|
+
<div class="panel-heading">
|
|
28
|
+
<h4 class="panel-title"><%= yield(:phc_title) %></h4>
|
|
29
|
+
</div>
|
|
30
|
+
<!-- Panel - Heading -->
|
|
31
|
+
|
|
32
|
+
<!-- Panel - Body -->
|
|
33
|
+
<div class="panel-body">
|
|
34
|
+
|
|
35
|
+
<!-- Edit Form -->
|
|
36
|
+
<%= render 'form', affiliate_link: @affiliate_link %>
|
|
37
|
+
<!-- Edit Form -->
|
|
38
|
+
|
|
39
|
+
</div>
|
|
40
|
+
<!-- Panel - Body -->
|
|
41
|
+
|
|
42
|
+
</div>
|
|
43
|
+
<!-- Panel -->
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
<!-- Page Content -->
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<p id="notice"><%= notice %></p>
|
|
2
|
+
|
|
3
|
+
<p>
|
|
4
|
+
<strong>Affiliate link name:</strong>
|
|
5
|
+
<%= @affiliate_link.affiliate_link_name %>
|
|
6
|
+
</p>
|
|
7
|
+
|
|
8
|
+
<p>
|
|
9
|
+
<strong>Affiliate link button text:</strong>
|
|
10
|
+
<%= @affiliate_link.affiliate_link_button_text %>
|
|
11
|
+
</p>
|
|
12
|
+
|
|
13
|
+
<p>
|
|
14
|
+
<strong>Affiliate link url:</strong>
|
|
15
|
+
<%= @affiliate_link.affiliate_link_url %>
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
<p>
|
|
19
|
+
<strong>Affiliate link original url:</strong>
|
|
20
|
+
<%= @affiliate_link.affiliate_link_original_url %>
|
|
21
|
+
</p>
|
|
22
|
+
|
|
23
|
+
<%= link_to 'Edit', edit_affiliate_link_path(@affiliate_link) %> |
|
|
24
|
+
<%= link_to 'Back', affiliate_links_path %>
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
<div class="panel panel-inverse">
|
|
25
25
|
|
|
26
26
|
<!-- Panel - Heading -->
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
<div class="panel-heading">
|
|
28
|
+
<h4 class="panel-title"><%= yield(:phc_title) %> - <%= yield(:phc_title_tagline) %></h4>
|
|
29
|
+
</div>
|
|
30
30
|
<!-- Panel - Heading -->
|
|
31
31
|
|
|
32
32
|
<!-- Panel - Body -->
|
data/config/routes.rb
CHANGED
|
@@ -4,12 +4,17 @@ PhcdevworksCoreModules::Engine.routes.draw do
|
|
|
4
4
|
namespace :post do
|
|
5
5
|
resources :categories, class_name: 'Post::Category'
|
|
6
6
|
end
|
|
7
|
-
|
|
7
|
+
|
|
8
8
|
# Routes for Marketing
|
|
9
9
|
namespace :marketing do
|
|
10
10
|
resources :optimizations, class_name: 'Marketing::Optimization'
|
|
11
11
|
end
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
# Routes for Affiliate
|
|
14
|
+
namespace :affiliate do
|
|
15
|
+
resources :links, class_name: 'Affiliate::Link'
|
|
16
|
+
end
|
|
17
|
+
|
|
13
18
|
# Mount Routes
|
|
14
19
|
mount PhcdevworksAccounts::Engine, :at => '/'
|
|
15
20
|
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
class CreatePhcdevworksCoreModulesAffiliateLinkVersions < ActiveRecord::Migration[6.1]
|
|
2
|
+
TEXT_BYTES = 1_073_741_823
|
|
3
|
+
def change
|
|
4
|
+
create_table :phcdevworks_core_modules_affiliate_link_versions do |t|
|
|
5
|
+
|
|
6
|
+
t.string :item_type, {:null=>false}
|
|
7
|
+
t.integer :item_id, null: false
|
|
8
|
+
t.string :event, null: false
|
|
9
|
+
t.string :whodunnit
|
|
10
|
+
t.text :object, limit: TEXT_BYTES
|
|
11
|
+
t.datetime :created_at
|
|
12
|
+
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
add_index :phcdevworks_core_modules_affiliate_link_versions, %i(item_type item_id), :name => 'affiliate_link_versions'
|
|
16
|
+
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
class CreatePhcdevworksCoreModulesAffiliateLinks < ActiveRecord::Migration[6.1]
|
|
2
|
+
def change
|
|
3
|
+
create_table :phcdevworks_core_modules_affiliate_links do |t|
|
|
4
|
+
|
|
5
|
+
t.string :affiliate_link_name
|
|
6
|
+
t.string :affiliate_link_button_text
|
|
7
|
+
t.string :affiliate_link_url
|
|
8
|
+
t.string :affiliate_link_original_url
|
|
9
|
+
|
|
10
|
+
t.string :slug
|
|
11
|
+
t.string :user_id
|
|
12
|
+
t.string :org_id
|
|
13
|
+
|
|
14
|
+
t.timestamps
|
|
15
|
+
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -1,36 +1,46 @@
|
|
|
1
1
|
module PhcdevworksCoreModules
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
2
|
+
class Engine < ::Rails::Engine
|
|
3
|
+
|
|
4
|
+
# Load Main Dependencies
|
|
5
|
+
require "jbuilder"
|
|
6
|
+
require "paper_trail"
|
|
7
|
+
require "friendly_id"
|
|
8
|
+
|
|
9
|
+
# Load Theme Dependencies
|
|
10
|
+
require "phcthemes_admin_panel_pack"
|
|
11
|
+
require "phcthemes_web_theme_pack"
|
|
12
|
+
|
|
13
|
+
# Load Helper Dependencies
|
|
14
|
+
require "phcdevworks_core"
|
|
15
|
+
require "phcdevworks_active_menus"
|
|
16
|
+
require "phcdevworks_notifications"
|
|
17
|
+
require "phcdevworks_titleseo"
|
|
18
|
+
|
|
19
|
+
# Load Upload Dependencies
|
|
20
|
+
require "aws-sdk-s3"
|
|
21
|
+
require "google-cloud-storage"
|
|
22
|
+
require "mini_magick"
|
|
23
|
+
|
|
24
|
+
# Frontend Dependencies
|
|
25
|
+
require "wicked"
|
|
26
|
+
require "gravtastic"
|
|
27
|
+
require "friendly_id"
|
|
28
|
+
|
|
29
|
+
# Mailer Dependencies
|
|
30
|
+
require "mail_form"
|
|
31
|
+
|
|
32
|
+
# Load User Accounts
|
|
33
|
+
require "phcdevworks_accounts"
|
|
34
|
+
|
|
35
|
+
# Engine Namespace
|
|
36
|
+
isolate_namespace PhcdevworksCoreModules
|
|
37
|
+
|
|
38
|
+
# Rspec Generators
|
|
39
|
+
config.generators do |g|
|
|
40
|
+
g.test_framework :rspec
|
|
41
|
+
g.fixture_replacement :factory_bot
|
|
42
|
+
g.factory_bot dir: 'spec/factories'
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
end
|
|
36
46
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: phcdevworks_core_modules
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 7.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- PHCDevworks
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-03-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|
|
@@ -16,132 +16,126 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '6.
|
|
20
|
-
- - ">="
|
|
21
|
-
- !ruby/object:Gem::Version
|
|
22
|
-
version: 6.0.3.4
|
|
19
|
+
version: '6.1'
|
|
23
20
|
type: :runtime
|
|
24
21
|
prerelease: false
|
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
23
|
requirements:
|
|
27
24
|
- - "~>"
|
|
28
25
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: '6.
|
|
30
|
-
- - ">="
|
|
31
|
-
- !ruby/object:Gem::Version
|
|
32
|
-
version: 6.0.3.4
|
|
26
|
+
version: '6.1'
|
|
33
27
|
- !ruby/object:Gem::Dependency
|
|
34
28
|
name: jbuilder
|
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
|
36
30
|
requirements:
|
|
37
31
|
- - "~>"
|
|
38
32
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '2.
|
|
33
|
+
version: '2.11'
|
|
40
34
|
type: :runtime
|
|
41
35
|
prerelease: false
|
|
42
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
43
37
|
requirements:
|
|
44
38
|
- - "~>"
|
|
45
39
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '2.
|
|
40
|
+
version: '2.11'
|
|
47
41
|
- !ruby/object:Gem::Dependency
|
|
48
42
|
name: paper_trail
|
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
|
50
44
|
requirements:
|
|
51
45
|
- - "~>"
|
|
52
46
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '11.
|
|
47
|
+
version: '11.1'
|
|
54
48
|
type: :runtime
|
|
55
49
|
prerelease: false
|
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
51
|
requirements:
|
|
58
52
|
- - "~>"
|
|
59
53
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: '11.
|
|
54
|
+
version: '11.1'
|
|
61
55
|
- !ruby/object:Gem::Dependency
|
|
62
56
|
name: phcthemes_admin_panel_pack
|
|
63
57
|
requirement: !ruby/object:Gem::Requirement
|
|
64
58
|
requirements:
|
|
65
59
|
- - "~>"
|
|
66
60
|
- !ruby/object:Gem::Version
|
|
67
|
-
version: '
|
|
61
|
+
version: '4.0'
|
|
68
62
|
type: :runtime
|
|
69
63
|
prerelease: false
|
|
70
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
71
65
|
requirements:
|
|
72
66
|
- - "~>"
|
|
73
67
|
- !ruby/object:Gem::Version
|
|
74
|
-
version: '
|
|
68
|
+
version: '4.0'
|
|
75
69
|
- !ruby/object:Gem::Dependency
|
|
76
70
|
name: phcthemes_web_theme_pack
|
|
77
71
|
requirement: !ruby/object:Gem::Requirement
|
|
78
72
|
requirements:
|
|
79
73
|
- - "~>"
|
|
80
74
|
- !ruby/object:Gem::Version
|
|
81
|
-
version: '
|
|
75
|
+
version: '4.0'
|
|
82
76
|
type: :runtime
|
|
83
77
|
prerelease: false
|
|
84
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
85
79
|
requirements:
|
|
86
80
|
- - "~>"
|
|
87
81
|
- !ruby/object:Gem::Version
|
|
88
|
-
version: '
|
|
82
|
+
version: '4.0'
|
|
89
83
|
- !ruby/object:Gem::Dependency
|
|
90
84
|
name: phcdevworks_active_menus
|
|
91
85
|
requirement: !ruby/object:Gem::Requirement
|
|
92
86
|
requirements:
|
|
93
87
|
- - "~>"
|
|
94
88
|
- !ruby/object:Gem::Version
|
|
95
|
-
version: '2.
|
|
89
|
+
version: '2.2'
|
|
96
90
|
type: :runtime
|
|
97
91
|
prerelease: false
|
|
98
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
99
93
|
requirements:
|
|
100
94
|
- - "~>"
|
|
101
95
|
- !ruby/object:Gem::Version
|
|
102
|
-
version: '2.
|
|
96
|
+
version: '2.2'
|
|
103
97
|
- !ruby/object:Gem::Dependency
|
|
104
98
|
name: phcdevworks_core
|
|
105
99
|
requirement: !ruby/object:Gem::Requirement
|
|
106
100
|
requirements:
|
|
107
101
|
- - "~>"
|
|
108
102
|
- !ruby/object:Gem::Version
|
|
109
|
-
version: '2.
|
|
103
|
+
version: '2.2'
|
|
110
104
|
type: :runtime
|
|
111
105
|
prerelease: false
|
|
112
106
|
version_requirements: !ruby/object:Gem::Requirement
|
|
113
107
|
requirements:
|
|
114
108
|
- - "~>"
|
|
115
109
|
- !ruby/object:Gem::Version
|
|
116
|
-
version: '2.
|
|
110
|
+
version: '2.2'
|
|
117
111
|
- !ruby/object:Gem::Dependency
|
|
118
112
|
name: phcdevworks_notifications
|
|
119
113
|
requirement: !ruby/object:Gem::Requirement
|
|
120
114
|
requirements:
|
|
121
115
|
- - "~>"
|
|
122
116
|
- !ruby/object:Gem::Version
|
|
123
|
-
version: '2.
|
|
117
|
+
version: '2.2'
|
|
124
118
|
type: :runtime
|
|
125
119
|
prerelease: false
|
|
126
120
|
version_requirements: !ruby/object:Gem::Requirement
|
|
127
121
|
requirements:
|
|
128
122
|
- - "~>"
|
|
129
123
|
- !ruby/object:Gem::Version
|
|
130
|
-
version: '2.
|
|
124
|
+
version: '2.2'
|
|
131
125
|
- !ruby/object:Gem::Dependency
|
|
132
126
|
name: phcdevworks_titleseo
|
|
133
127
|
requirement: !ruby/object:Gem::Requirement
|
|
134
128
|
requirements:
|
|
135
129
|
- - "~>"
|
|
136
130
|
- !ruby/object:Gem::Version
|
|
137
|
-
version: '3.
|
|
131
|
+
version: '3.2'
|
|
138
132
|
type: :runtime
|
|
139
133
|
prerelease: false
|
|
140
134
|
version_requirements: !ruby/object:Gem::Requirement
|
|
141
135
|
requirements:
|
|
142
136
|
- - "~>"
|
|
143
137
|
- !ruby/object:Gem::Version
|
|
144
|
-
version: '3.
|
|
138
|
+
version: '3.2'
|
|
145
139
|
- !ruby/object:Gem::Dependency
|
|
146
140
|
name: wicked
|
|
147
141
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -184,34 +178,48 @@ dependencies:
|
|
|
184
178
|
- - "~>"
|
|
185
179
|
- !ruby/object:Gem::Version
|
|
186
180
|
version: '3.2'
|
|
181
|
+
- !ruby/object:Gem::Dependency
|
|
182
|
+
name: mail_form
|
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
|
184
|
+
requirements:
|
|
185
|
+
- - "~>"
|
|
186
|
+
- !ruby/object:Gem::Version
|
|
187
|
+
version: '1.9'
|
|
188
|
+
type: :runtime
|
|
189
|
+
prerelease: false
|
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
191
|
+
requirements:
|
|
192
|
+
- - "~>"
|
|
193
|
+
- !ruby/object:Gem::Version
|
|
194
|
+
version: '1.9'
|
|
187
195
|
- !ruby/object:Gem::Dependency
|
|
188
196
|
name: aws-sdk-s3
|
|
189
197
|
requirement: !ruby/object:Gem::Requirement
|
|
190
198
|
requirements:
|
|
191
199
|
- - "~>"
|
|
192
200
|
- !ruby/object:Gem::Version
|
|
193
|
-
version: '1.
|
|
201
|
+
version: '1.89'
|
|
194
202
|
type: :runtime
|
|
195
203
|
prerelease: false
|
|
196
204
|
version_requirements: !ruby/object:Gem::Requirement
|
|
197
205
|
requirements:
|
|
198
206
|
- - "~>"
|
|
199
207
|
- !ruby/object:Gem::Version
|
|
200
|
-
version: '1.
|
|
208
|
+
version: '1.89'
|
|
201
209
|
- !ruby/object:Gem::Dependency
|
|
202
210
|
name: google-cloud-storage
|
|
203
211
|
requirement: !ruby/object:Gem::Requirement
|
|
204
212
|
requirements:
|
|
205
213
|
- - "~>"
|
|
206
214
|
- !ruby/object:Gem::Version
|
|
207
|
-
version: '1.
|
|
215
|
+
version: '1.30'
|
|
208
216
|
type: :runtime
|
|
209
217
|
prerelease: false
|
|
210
218
|
version_requirements: !ruby/object:Gem::Requirement
|
|
211
219
|
requirements:
|
|
212
220
|
- - "~>"
|
|
213
221
|
- !ruby/object:Gem::Version
|
|
214
|
-
version: '1.
|
|
222
|
+
version: '1.30'
|
|
215
223
|
- !ruby/object:Gem::Dependency
|
|
216
224
|
name: mini_magick
|
|
217
225
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -232,14 +240,70 @@ dependencies:
|
|
|
232
240
|
requirements:
|
|
233
241
|
- - "~>"
|
|
234
242
|
- !ruby/object:Gem::Version
|
|
235
|
-
version: '
|
|
243
|
+
version: '3.0'
|
|
236
244
|
type: :runtime
|
|
237
245
|
prerelease: false
|
|
238
246
|
version_requirements: !ruby/object:Gem::Requirement
|
|
239
247
|
requirements:
|
|
240
248
|
- - "~>"
|
|
241
249
|
- !ruby/object:Gem::Version
|
|
242
|
-
version: '
|
|
250
|
+
version: '3.0'
|
|
251
|
+
- !ruby/object:Gem::Dependency
|
|
252
|
+
name: factory_bot_rails
|
|
253
|
+
requirement: !ruby/object:Gem::Requirement
|
|
254
|
+
requirements:
|
|
255
|
+
- - "~>"
|
|
256
|
+
- !ruby/object:Gem::Version
|
|
257
|
+
version: '6.1'
|
|
258
|
+
type: :development
|
|
259
|
+
prerelease: false
|
|
260
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
261
|
+
requirements:
|
|
262
|
+
- - "~>"
|
|
263
|
+
- !ruby/object:Gem::Version
|
|
264
|
+
version: '6.1'
|
|
265
|
+
- !ruby/object:Gem::Dependency
|
|
266
|
+
name: rspec-rails
|
|
267
|
+
requirement: !ruby/object:Gem::Requirement
|
|
268
|
+
requirements:
|
|
269
|
+
- - "~>"
|
|
270
|
+
- !ruby/object:Gem::Version
|
|
271
|
+
version: '4.1'
|
|
272
|
+
type: :development
|
|
273
|
+
prerelease: false
|
|
274
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
275
|
+
requirements:
|
|
276
|
+
- - "~>"
|
|
277
|
+
- !ruby/object:Gem::Version
|
|
278
|
+
version: '4.1'
|
|
279
|
+
- !ruby/object:Gem::Dependency
|
|
280
|
+
name: spring
|
|
281
|
+
requirement: !ruby/object:Gem::Requirement
|
|
282
|
+
requirements:
|
|
283
|
+
- - "~>"
|
|
284
|
+
- !ruby/object:Gem::Version
|
|
285
|
+
version: '2.1'
|
|
286
|
+
type: :development
|
|
287
|
+
prerelease: false
|
|
288
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
289
|
+
requirements:
|
|
290
|
+
- - "~>"
|
|
291
|
+
- !ruby/object:Gem::Version
|
|
292
|
+
version: '2.1'
|
|
293
|
+
- !ruby/object:Gem::Dependency
|
|
294
|
+
name: spring-commands-rspec
|
|
295
|
+
requirement: !ruby/object:Gem::Requirement
|
|
296
|
+
requirements:
|
|
297
|
+
- - "~>"
|
|
298
|
+
- !ruby/object:Gem::Version
|
|
299
|
+
version: '1.0'
|
|
300
|
+
type: :development
|
|
301
|
+
prerelease: false
|
|
302
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
303
|
+
requirements:
|
|
304
|
+
- - "~>"
|
|
305
|
+
- !ruby/object:Gem::Version
|
|
306
|
+
version: '1.0'
|
|
243
307
|
- !ruby/object:Gem::Dependency
|
|
244
308
|
name: sqlite3
|
|
245
309
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -265,21 +329,25 @@ files:
|
|
|
265
329
|
- README.md
|
|
266
330
|
- Rakefile
|
|
267
331
|
- app/assets/config/phcdevworks_core_modules_manifest.js
|
|
268
|
-
- app/assets/javascripts/phcdevworks_core_modules/
|
|
269
|
-
- app/assets/
|
|
270
|
-
- app/assets/javascripts/phcdevworks_core_modules/post/categories.coffee
|
|
332
|
+
- app/assets/javascripts/phcdevworks_core_modules/affiliate/links.coffee
|
|
333
|
+
- app/assets/stylesheets/phcdevworks_core_modules/affiliate/links.scss
|
|
271
334
|
- app/assets/stylesheets/phcdevworks_core_modules/application.scss
|
|
272
335
|
- app/assets/stylesheets/phcdevworks_core_modules/marketing/optimizations.scss
|
|
273
336
|
- app/assets/stylesheets/phcdevworks_core_modules/post/categories.scss
|
|
274
337
|
- app/assets/stylesheets/scaffolds.scss
|
|
338
|
+
- app/controllers/phcdevworks_core_modules/affiliate/links_controller.rb
|
|
275
339
|
- app/controllers/phcdevworks_core_modules/application_controller.rb
|
|
276
340
|
- app/controllers/phcdevworks_core_modules/marketing/optimizations_controller.rb
|
|
277
341
|
- app/controllers/phcdevworks_core_modules/post/categories_controller.rb
|
|
342
|
+
- app/helpers/phcdevworks_core_modules/affiliate/links_helper.rb
|
|
278
343
|
- app/helpers/phcdevworks_core_modules/application_helper.rb
|
|
279
344
|
- app/helpers/phcdevworks_core_modules/marketing/optimizations_helper.rb
|
|
280
345
|
- app/helpers/phcdevworks_core_modules/post/categories_helper.rb
|
|
281
346
|
- app/jobs/phcdevworks_core_modules/application_job.rb
|
|
282
347
|
- app/mailers/phcdevworks_core_modules/application_mailer.rb
|
|
348
|
+
- app/models/phcdevworks_core_modules/affiliate.rb
|
|
349
|
+
- app/models/phcdevworks_core_modules/affiliate/link.rb
|
|
350
|
+
- app/models/phcdevworks_core_modules/affiliate_link_versions.rb
|
|
283
351
|
- app/models/phcdevworks_core_modules/application_record.rb
|
|
284
352
|
- app/models/phcdevworks_core_modules/marketing.rb
|
|
285
353
|
- app/models/phcdevworks_core_modules/marketing/optimization.rb
|
|
@@ -292,6 +360,11 @@ files:
|
|
|
292
360
|
- app/views/layouts/phcdevworks_core_modules/components/backend/footer/_footer.html.erb
|
|
293
361
|
- app/views/layouts/phcdevworks_core_modules/components/backend/navigation/_top_menu.html.erb
|
|
294
362
|
- app/views/layouts/phcdevworks_core_modules/components/backend/sidebars/_side_menu.html.erb
|
|
363
|
+
- app/views/phcdevworks_core_modules/affiliate/links/_form.html.erb
|
|
364
|
+
- app/views/phcdevworks_core_modules/affiliate/links/edit.html.erb
|
|
365
|
+
- app/views/phcdevworks_core_modules/affiliate/links/index.html.erb
|
|
366
|
+
- app/views/phcdevworks_core_modules/affiliate/links/new.html.erb
|
|
367
|
+
- app/views/phcdevworks_core_modules/affiliate/links/show.html.erb
|
|
295
368
|
- app/views/phcdevworks_core_modules/marketing/optimizations/_form.html.erb
|
|
296
369
|
- app/views/phcdevworks_core_modules/marketing/optimizations/edit.html.erb
|
|
297
370
|
- app/views/phcdevworks_core_modules/marketing/optimizations/index.html.erb
|
|
@@ -308,6 +381,8 @@ files:
|
|
|
308
381
|
- db/migrate/20200705225433_create_phcdevworks_core_modules_marketing_optimization_versions.rb
|
|
309
382
|
- db/migrate/20200706094820_create_phcdevworks_core_modules_post_categories.rb
|
|
310
383
|
- db/migrate/20201012225709_remove_phcdevworks_core_modules_post_categories.rb
|
|
384
|
+
- db/migrate/20210207051304_create_phcdevworks_core_modules_affiliate_link_versions.rb
|
|
385
|
+
- db/migrate/20210208130113_create_phcdevworks_core_modules_affiliate_links.rb
|
|
311
386
|
- lib/phcdevworks_core_modules.rb
|
|
312
387
|
- lib/phcdevworks_core_modules/engine.rb
|
|
313
388
|
- lib/phcdevworks_core_modules/version.rb
|
|
@@ -315,7 +390,11 @@ files:
|
|
|
315
390
|
homepage: https://phcdevworks.com/
|
|
316
391
|
licenses:
|
|
317
392
|
- MIT
|
|
318
|
-
metadata:
|
|
393
|
+
metadata:
|
|
394
|
+
allowed_push_host: https://rubygems.org/
|
|
395
|
+
homepage_uri: https://phcdevworks.com/
|
|
396
|
+
source_code_uri: https://github.com/phcdevworks/phcdevworks_core_modules
|
|
397
|
+
changelog_uri: https://github.com/phcdevworks/phcdevworks_core_modules/releases
|
|
319
398
|
post_install_message:
|
|
320
399
|
rdoc_options: []
|
|
321
400
|
require_paths:
|