phcdevworks_core_modules 0.2.0 → 2.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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/phcdevworks_core_modules/marketing/optimizations.coffee +3 -0
  3. data/app/assets/javascripts/phcdevworks_core_modules/post/categories.coffee +3 -0
  4. data/app/assets/stylesheets/phcdevworks_core_modules/marketing/optimizations.scss +3 -0
  5. data/app/assets/stylesheets/phcdevworks_core_modules/post/categories.scss +3 -0
  6. data/app/assets/stylesheets/scaffolds.scss +65 -0
  7. data/app/controllers/phcdevworks_core_modules/marketing/optimizations_controller.rb +81 -0
  8. data/app/controllers/phcdevworks_core_modules/post/categories_controller.rb +81 -0
  9. data/app/helpers/phcdevworks_core_modules/marketing/optimizations_helper.rb +4 -0
  10. data/app/helpers/phcdevworks_core_modules/{modules → post}/categories_helper.rb +1 -1
  11. data/app/models/phcdevworks_core_modules/core_category_versions.rb +1 -1
  12. data/app/models/phcdevworks_core_modules/core_optimization_versions.rb +5 -0
  13. data/app/models/phcdevworks_core_modules/marketing.rb +7 -0
  14. data/app/models/phcdevworks_core_modules/marketing/optimization.rb +39 -0
  15. data/app/models/phcdevworks_core_modules/post.rb +7 -0
  16. data/app/models/phcdevworks_core_modules/post/category.rb +36 -0
  17. data/app/views/layouts/phcdevworks_core_modules/components/backend/navigation/_top_menu.html.erb +1 -1
  18. data/app/views/layouts/phcdevworks_core_modules/components/backend/sidebars/_side_menu.html.erb +75 -80
  19. data/app/views/phcdevworks_core_modules/marketing/optimizations/_form.html.erb +87 -0
  20. data/app/views/phcdevworks_core_modules/marketing/optimizations/edit.html.erb +47 -0
  21. data/app/views/phcdevworks_core_modules/marketing/optimizations/index.html.erb +88 -0
  22. data/app/views/phcdevworks_core_modules/marketing/optimizations/new.html.erb +47 -0
  23. data/app/views/phcdevworks_core_modules/marketing/optimizations/show.html.erb +49 -0
  24. data/app/views/phcdevworks_core_modules/{modules → post}/categories/_form.html.erb +5 -5
  25. data/app/views/phcdevworks_core_modules/{modules → post}/categories/edit.html.erb +2 -2
  26. data/app/views/phcdevworks_core_modules/{modules → post}/categories/index.html.erb +7 -7
  27. data/app/views/phcdevworks_core_modules/{modules → post}/categories/new.html.erb +2 -2
  28. data/app/views/phcdevworks_core_modules/post/categories/show.html.erb +9 -0
  29. data/config/routes.rb +11 -6
  30. data/db/migrate/20170517064427_create_phcdevworks_core_modules_category_versions.rb +17 -0
  31. data/db/migrate/20200705223718_create_phcdevworks_core_modules_marketing_optimizations.rb +25 -0
  32. data/db/migrate/{20170517064427_create_phcdevworks_core_category_versions.rb → 20200705225433_create_phcdevworks_core_modules_optimization_versions.rb} +17 -17
  33. data/db/migrate/20200706091346_create_phcdevworks_core_modules_categories_optimizations.rb +10 -0
  34. data/db/migrate/{20200629113153_create_phcdevworks_core_modules_modules_categories.rb → 20200706094820_create_phcdevworks_core_modules_post_categories.rb} +2 -2
  35. data/lib/phcdevworks_core_modules/engine.rb +1 -1
  36. data/lib/phcdevworks_core_modules/version.rb +1 -1
  37. metadata +34 -15
  38. data/app/controllers/phcdevworks_core_modules/modules/categories_controller.rb +0 -81
  39. data/app/models/phcdevworks_core_modules/modules/category.rb +0 -27
  40. data/app/views/phcdevworks_core_modules/modules/categories/show.html.erb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1eb1210caeeb2a8049d4adba865c7c47bba3437fe4db5ea9680b182addffcd3c
4
- data.tar.gz: 8ee125905db7174dedf7932b1939d6d25de1d0e9c1399850e3436d949979fb16
3
+ metadata.gz: 908084ab1bac324f935acc7efeef54a089a3d9075ea4cc89ff11efb18631f4f8
4
+ data.tar.gz: 03c8009534ec11c3902b4b050b8de1658a70790a1d8123f83b46e17728da8b2c
5
5
  SHA512:
6
- metadata.gz: 455232dcd615dbbc4454b25dd5da8736981a833a1a2671785e831a2439d05cd47ddd1c0d2abdad8c2eae4350f76afc6e41deae86e584d63f389097e075e50239
7
- data.tar.gz: 778181262503e89be98bfced571ae776e5d1a73ca58016442358cc515fa2c22b7ed6ff6a30144497fa20066ea1fd2f671219035ac7823ef382359780bb108287
6
+ metadata.gz: 379ef906193a9e52ed336055bf172cceee8d891cafb050c84e59df13033d07c2a4787a2c895389d1cfcfb9e6c5962475cc0e052a3f3cb9c2cc53c9d0834fe6fd
7
+ data.tar.gz: 24ca974763484f3df0db89d8687aa1fcf65f65947c9bb0b32064287ff9a36690ff3df8caeb083078591e96ac4fe4dd350116ee30bb3f7df085701bd9f9a68531
@@ -0,0 +1,3 @@
1
+ # Place all the behaviors and hooks related to the matching controller here.
2
+ # All this logic will automatically be available in application.js.
3
+ # You can use CoffeeScript in this file: http://coffeescript.org/
@@ -0,0 +1,3 @@
1
+ # Place all the behaviors and hooks related to the matching controller here.
2
+ # All this logic will automatically be available in application.js.
3
+ # You can use CoffeeScript in this file: http://coffeescript.org/
@@ -0,0 +1,3 @@
1
+ // Place all the styles related to the marketing::optimizations controller here.
2
+ // They will automatically be included in application.css.
3
+ // You can use Sass (SCSS) here: https://sass-lang.com/
@@ -0,0 +1,3 @@
1
+ // Place all the styles related to the post::categories controller here.
2
+ // They will automatically be included in application.css.
3
+ // You can use Sass (SCSS) here: https://sass-lang.com/
@@ -0,0 +1,65 @@
1
+ body {
2
+ background-color: #fff;
3
+ color: #333;
4
+ margin: 33px; }
5
+
6
+ body, p, ol, ul, td {
7
+ font-family: verdana, arial, helvetica, sans-serif;
8
+ font-size: 13px;
9
+ line-height: 18px; }
10
+
11
+ pre {
12
+ background-color: #eee;
13
+ padding: 10px;
14
+ font-size: 11px; }
15
+
16
+ a {
17
+ color: #000; }
18
+
19
+ a:visited {
20
+ color: #666; }
21
+
22
+ a:hover {
23
+ color: #fff;
24
+ background-color: #000; }
25
+
26
+ th {
27
+ padding-bottom: 5px; }
28
+
29
+ td {
30
+ padding: 0 5px 7px; }
31
+
32
+ div.field,
33
+ div.actions {
34
+ margin-bottom: 10px; }
35
+
36
+ #notice {
37
+ color: green; }
38
+
39
+ .field_with_errors {
40
+ padding: 2px;
41
+ background-color: red;
42
+ display: table; }
43
+
44
+ #error_explanation {
45
+ width: 450px;
46
+ border: 2px solid red;
47
+ padding: 7px 7px 0;
48
+ margin-bottom: 20px;
49
+ background-color: #f0f0f0; }
50
+
51
+ #error_explanation h2 {
52
+ text-align: left;
53
+ font-weight: bold;
54
+ padding: 5px 5px 5px 15px;
55
+ font-size: 12px;
56
+ margin: -7px -7px 0;
57
+ background-color: #c00;
58
+ color: #fff; }
59
+
60
+ #error_explanation ul li {
61
+ font-size: 12px;
62
+ list-style: square; }
63
+
64
+ label {
65
+ display: block; }
@@ -0,0 +1,81 @@
1
+ require_dependency "phcdevworks_core_modules/application_controller"
2
+
3
+ module PhcdevworksCoreModules
4
+ class Marketing::OptimizationsController < 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_marketing_optimization, only: [:show, :edit, :update, :destroy]
11
+
12
+ # GET /marketing/optimizations
13
+ def index
14
+ @marketing_optimizations = Marketing::Optimization.order('seo_title ASC')
15
+ end
16
+
17
+ # GET /marketing/optimizations/1
18
+ def show
19
+ end
20
+
21
+ # GET /marketing/optimizations/new
22
+ def new
23
+ @marketing_optimization = Marketing::Optimization.new
24
+ end
25
+
26
+ # GET /marketing/optimizations/1/edit
27
+ def edit
28
+ end
29
+
30
+ # POST /marketing/optimizations
31
+ def create
32
+ @marketing_optimization = Marketing::Optimization.new(marketing_optimization_params)
33
+ @marketing_optimization.user_id = current_user.id
34
+ @marketing_optimization.org_id = current_user.org_id
35
+ respond_to do |format|
36
+ if @marketing_optimization.save
37
+ format.html { redirect_to marketing_optimizations_path, :flash => { :success => 'SEO Attributes has been Added.' }}
38
+ format.json { render :show, status: :created, location: @marketing_optimization }
39
+ else
40
+ format.html { render :new }
41
+ format.json { render json: @marketing_optimization.errors, status: :unprocessable_entity }
42
+ end
43
+ end
44
+ end
45
+
46
+ # PATCH/PUT /marketing/optimizations/1
47
+ def update
48
+ respond_to do |format|
49
+ if @marketing_optimization.update(marketing_optimization_params)
50
+ format.html { redirect_to marketing_optimizations_path, :flash => { :notice => 'Tutorial has been Updated.' }}
51
+ format.json { render :show, status: :ok, location: @marketing_optimization }
52
+ else
53
+ format.html { render :edit }
54
+ format.json { render json: @marketing_optimization.errors, status: :unprocessable_entity }
55
+ end
56
+ end
57
+ end
58
+
59
+ # DELETE /marketing/optimizations/1
60
+ def destroy
61
+ @marketing_optimization.destroy
62
+ respond_to do |format|
63
+ format.html { redirect_to marketing_optimizations_path, :flash => { :error => 'SEO Attributes 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_marketing_optimization
72
+ @marketing_optimization = Marketing::Optimization.find(params[:id])
73
+ end
74
+
75
+ # Whitelist
76
+ def marketing_optimization_params
77
+ params.require(:marketing_optimization).permit(:seo_title, :seo_description, :seo_open_graph_post_type, :seo_open_graph_url, :seo_open_graph_title, :seo_open_graph_description, :seo_open_graph_image, :seo_twitter_post_type, :seo_twitter_url, :seo_twitter_title, :seo_twitter_description, :seo_twitter_image, :slug, :user_id, :org_id)
78
+ end
79
+
80
+ end
81
+ end
@@ -0,0 +1,81 @@
1
+ require_dependency "phcdevworks_core_modules/application_controller"
2
+
3
+ module PhcdevworksCoreModules
4
+ class Post::CategoriesController < 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_post_category, only: [:show, :edit, :update, :destroy]
11
+
12
+ # GET /post/categories
13
+ def index
14
+ @post_categories = Post::Category.order('category_name ASC')
15
+ end
16
+
17
+ # GET /post/categories/1
18
+ def show
19
+ end
20
+
21
+ # GET /post/categories/new
22
+ def new
23
+ @post_category = Post::Category.new
24
+ end
25
+
26
+ # GET /post/categories/1/edit
27
+ def edit
28
+ end
29
+
30
+ # POST /post/categories
31
+ def create
32
+ @post_category = Post::Category.new(post_category_params)
33
+ @post_category.user_id = current_user.id
34
+ @post_category.org_id = current_user.org_id
35
+ respond_to do |format|
36
+ if @post_category.save
37
+ format.html { redirect_to post_categories_path, :flash => { :success => 'Category has been Added.' }}
38
+ format.json { render :show, status: :created, location: @post_category }
39
+ else
40
+ format.html { render :new }
41
+ format.json { render json: @post_category.errors, status: :unprocessable_entity }
42
+ end
43
+ end
44
+ end
45
+
46
+ # PATCH/PUT /post/categories/1
47
+ def update
48
+ respond_to do |format|
49
+ if @post_category.update(post_category_params)
50
+ format.html { redirect_to post_categories_path, :flash => { :notice => 'Category has been Updated.' }}
51
+ format.json { render :show, status: :ok, location: @post_category }
52
+ else
53
+ format.html { render :edit }
54
+ format.json { render json: @post_category.errors, status: :unprocessable_entity }
55
+ end
56
+ end
57
+ end
58
+
59
+ # DELETE /post/categories/1
60
+ def destroy
61
+ @post_category.destroy
62
+ respond_to do |format|
63
+ format.html { redirect_to post_categories_path, :flash => { :error => 'Categories and Category 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_post_category
72
+ @post_category = Post::Category.find(params[:id])
73
+ end
74
+
75
+ # Whitelist
76
+ def post_category_params
77
+ params.require(:post_category).permit(:category_name, :slug, :user_id, :org_id)
78
+ end
79
+
80
+ end
81
+ end
@@ -0,0 +1,4 @@
1
+ module PhcdevworksCoreModules
2
+ module Marketing::OptimizationsHelper
3
+ end
4
+ end
@@ -1,4 +1,4 @@
1
1
  module PhcdevworksCoreModules
2
- module Modules::CategoriesHelper
2
+ module Post::CategoriesHelper
3
3
  end
4
4
  end
@@ -1,5 +1,5 @@
1
1
  module PhcdevworksCoreModules
2
2
  class CoreCategoryVersions < PaperTrail::Version
3
- self.table_name = :phcdevworks_core_category_versions
3
+ self.table_name = :phcdevworks_core_modules_category_versions
4
4
  end
5
5
  end
@@ -0,0 +1,5 @@
1
+ module PhcdevworksCoreModules
2
+ class CoreOptimizationVersions < PaperTrail::Version
3
+ self.table_name = :phcdevworks_core_modules_optimization_versions
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ module PhcdevworksCoreModules
2
+ module Marketing
3
+ def self.table_name_prefix
4
+ 'phcdevworks_core_modules_marketing_'
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,39 @@
1
+ module PhcdevworksCoreModules
2
+ class Marketing::Optimization < ApplicationRecord
3
+
4
+ # Clean URL Initialize
5
+ extend FriendlyId
6
+
7
+ # Image Upload
8
+ has_one_attached :seo_twitter_image
9
+ has_one_attached :seo_open_graph_image
10
+
11
+ # Paper Trail Initialize
12
+ has_paper_trail :class_name => "PhcdevworksCoreModules::CoreOptimizationVersions"
13
+
14
+ # Relationships
15
+ belongs_to :user, class_name: "PhcdevworksAccounts::User"
16
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksPress::Article::Post", :join_table => "phcdevworks_press_categories_posts", :dependent => :destroy
17
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksPortfolio::Project::Post", :join_table => "phcdevworks_portfolio_categories_posts", :dependent => :destroy
18
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksTutorials::Tutorial::Post", :join_table => "phcdevworks_tutorials_categories_posts", :dependent => :destroy
19
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksTutorials::Command::Post", :join_table => "phcdevworks_tutorials_categories_commands", :dependent => :destroy
20
+
21
+ # Form Fields Validation
22
+ validates :seo_title,
23
+ presence: true
24
+
25
+ validates :seo_open_graph_title,
26
+ presence: true
27
+
28
+ validates :seo_twitter_title,
29
+ presence: true
30
+
31
+ # Clean URL Define
32
+ friendly_id :phcdev_core_optimization_nice_urls, use: [:slugged, :finders]
33
+
34
+ def phcdev_core_optimization_nice_urls
35
+ [:seo_title].join("-")
36
+ end
37
+
38
+ end
39
+ end
@@ -0,0 +1,7 @@
1
+ module PhcdevworksCoreModules
2
+ module Post
3
+ def self.table_name_prefix
4
+ 'phcdevworks_core_modules_post_'
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,36 @@
1
+ module PhcdevworksCoreModules
2
+ class Post::Category < ApplicationRecord
3
+
4
+ # Clean URL Initialize
5
+ extend FriendlyId
6
+
7
+ # Image Upload
8
+ has_one_attached :seo_twitter_image
9
+ has_one_attached :seo_open_graph_image
10
+
11
+ # Paper Trail Initialize
12
+ has_paper_trail :class_name => "PhcdevworksCoreModules::CoreCategoryVersions"
13
+
14
+ # Relationships
15
+ belongs_to :user, class_name: "PhcdevworksAccounts::User"
16
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksPress::Article::Post", :join_table => "phcdevworks_press_categories_posts", :dependent => :destroy
17
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksPortfolio::Project::Post", :join_table => "phcdevworks_portfolio_categories_posts", :dependent => :destroy
18
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksTutorials::Tutorial::Post", :join_table => "phcdevworks_tutorials_categories_posts", :dependent => :destroy
19
+ has_and_belongs_to_many :posts, class_name: "PhcdevworksTutorials::Command::Post", :join_table => "phcdevworks_tutorials_categories_commands", :dependent => :destroy
20
+ has_and_belongs_to_many :optimizations, class_name: 'PhcdevworksCoreModules::Core::Optimization', :join_table => "phcdevworks_core_modules_categories_optimizations", :dependent => :destroy
21
+
22
+ # Form Fields Validation
23
+ validates :category_name,
24
+ presence: true,
25
+ uniqueness: true
26
+
27
+ # Clean URL Define
28
+ friendly_id :phcdev_core_category_nice_urls, use: [:slugged, :finders]
29
+
30
+ def phcdev_core_category_nice_urls
31
+ [:category_name]
32
+ end
33
+
34
+
35
+ end
36
+ end
@@ -1,7 +1,7 @@
1
1
  <!-- -PHC- Topbar - Navigation Header -->
2
2
  <div class="navbar-header">
3
3
 
4
- <%= link_to phcdevworks_core_modules.modules_categories_path, class: "navbar-brand" do %>
4
+ <%= link_to phcdevworks_core_modules.post_categories_path, class: "navbar-brand" do %>
5
5
  <strong>PHCDevworks</strong>Press
6
6
  <% end %>
7
7
 
@@ -38,33 +38,21 @@
38
38
  <!-- -PHC- Sidebar - Sidebar Navigation -->
39
39
  <ul class="nav">
40
40
 
41
- <% if defined?phcdevworks_members %>
42
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Members -->
43
- <li class="nav-header">Membership Manager</li>
44
- <li class="has-sub">
45
- <a href="javascript:;">
46
- <b class="caret"></b>
47
- <i class="fad fa-users"></i>
48
- <span>Member"s Data</span>
49
- </a>
50
- <ul class="sub-menu">
51
- <li class="<%= phc_menu_active_controller("phcdevworks_members/member/profiles") %>"><%= link_to("Profile Index", phcdevworks_members.member_profiles_path) %></li>
52
- <li class="<%= phc_menu_active_controller("phcdevworks_members/member/profiles#new") %>"><%= link_to("New Member Profile", phcdevworks_members.new_member_profile_path) %></li>
53
- </ul>
54
- </li>
55
- <li class="nav-header">Member"s Directory</li>
41
+ <% if defined?phcdevworks_press %>
42
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
43
+ <li class="nav-header">Articles & Blogging</li>
56
44
  <li class="has-sub">
57
45
  <a href="javascript:;">
58
46
  <b class="caret"></b>
59
- <i class="fad fa-list-alt"></i>
60
- <span>Member"s Directory</span>
47
+ <i class="fad fa-newspaper"></i>
48
+ <span>Article Posts</span>
61
49
  </a>
62
50
  <ul class="sub-menu">
63
- <li class="<%= phc_menu_active_controller("phcdevworks_members/directory/categories") %>"><%= link_to("Directory Index", phcdevworks_members.directory_categories_path) %></li>
64
- <li class="<%= phc_menu_active_controller("phcdevworks_members/directory/categories#new") %>"><%= link_to("New Directory Listing", phcdevworks_members.new_directory_category_path) %></li>
51
+ <li class="<%= phc_menu_active_controller("phcdevworks_press/article/posts") %>"><%= link_to("Article Index", phcdevworks_press.article_posts_path) %></li>
52
+ <li class="<%= phc_menu_active_controller("phcdevworks_press/article/posts#new") %>"><%= link_to("New Aritcle", phcdevworks_press.new_article_post_path) %></li>
65
53
  </ul>
66
54
  </li>
67
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Members -->
55
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
68
56
  <% end %>
69
57
 
70
58
  <% if defined?phcdevworks_portfolio %>
@@ -81,57 +69,104 @@
81
69
  <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts#new") %>"><%= link_to("New Project", phcdevworks_portfolio.new_project_post_path) %></li>
82
70
  </ul>
83
71
  </li>
72
+ <li class="has-sub">
73
+ <a href="javascript:;">
74
+ <b class="caret"></b>
75
+ <i class="fad fa-folders"></i>
76
+ <span>Project Types</span>
77
+ </a>
78
+ <ul class="sub-menu">
79
+ <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts") %>"><%= link_to("Project Type", phcdevworks_portfolio.project_types_path) %></li>
80
+ <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts#new") %>"><%= link_to("New Types", phcdevworks_portfolio.new_project_type_path) %></li>
81
+ </ul>
82
+ </li>
83
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
84
+ <% end %>
85
+
86
+ <% if defined?phcdevworks_tutorials %>
87
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Tutorials -->
88
+ <li class="nav-header">Tutorial Posts</li>
89
+ <li class="has-sub">
90
+ <a href="javascript:;">
91
+ <b class="caret"></b>
92
+ <i class="fad fa-chalkboard-teacher"></i>
93
+ <span>Tutorial Posts</span>
94
+ </a>
95
+ <ul class="sub-menu">
96
+ <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/posts") %>"><%= link_to "Tutorial Index", phcdevworks_tutorials.tutorial_posts_path %></li>
97
+ <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/posts#new") %>"><%= link_to "New Tutorial", phcdevworks_tutorials.new_tutorial_post_path %></li>
98
+ </ul>
99
+ </li>
100
+ <li class="nav-header">Command Lists & Items</li>
101
+ <li class="has-sub">
102
+ <a href="javascript:;">
103
+ <b class="caret"></b>
104
+ <i class="fad fa-terminal"></i>
105
+ <span>Command Lists</span>
106
+ </a>
107
+ <ul class="sub-menu">
108
+ <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/command/posts") %>"><%= link_to "List Index", phcdevworks_tutorials.command_posts_path %></li>
109
+ <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/command/posts#new") %>"><%= link_to "New List", phcdevworks_tutorials.new_command_post_path %></li>
110
+ </ul>
111
+ </li>
112
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Tutorials -->
113
+ <% end %>
114
+
115
+ <% if defined?phcdevworks_core_modules %>
116
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Core Modules -->
117
+ <li class="nav-header">Core Modules</li>
84
118
  <li class="has-sub">
85
119
  <a href="javascript:;">
86
120
  <b class="caret"></b>
87
121
  <i class="fad fa-sitemap"></i>
88
- <span>Project Categories</span>
122
+ <span>Categories</span>
89
123
  </a>
90
124
  <ul class="sub-menu">
91
- <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts") %>"><%= link_to("Project Category", phcdevworks_portfolio.project_categories_path) %></li>
92
- <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts#new") %>"><%= link_to("New Category", phcdevworks_portfolio.new_project_category_path) %></li>
125
+ <li class="<%= phc_menu_active_controller("phcdevworks_core_modules/post/categories") %>"><%= link_to("Category Index", phcdevworks_core_modules.post_categories_path) %></li>
126
+ <li class="<%= phc_menu_active_controller("phcdevworks_core_modules/post/categories#new") %>"><%= link_to("New Category", phcdevworks_core_modules.new_post_category_path) %></li>
93
127
  </ul>
94
128
  </li>
95
129
  <li class="has-sub">
96
130
  <a href="javascript:;">
97
131
  <b class="caret"></b>
98
- <i class="fad fa-folders"></i>
99
- <span>Project Types</span>
132
+ <i class="fad fa-analytics"></i>
133
+ <span>Marketing</span>
100
134
  </a>
101
135
  <ul class="sub-menu">
102
- <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts") %>"><%= link_to("Project Type", phcdevworks_portfolio.project_types_path) %></li>
103
- <li class="<%= phc_menu_active_controller("phcdevworks_portfolio/project/posts#new") %>"><%= link_to("New Types", phcdevworks_portfolio.new_project_type_path) %></li>
136
+ <li class="<%= phc_menu_active_controller("phcdevworks_core_modules/marketing/optimizations") %>"><%= link_to("SEO Data Index", phcdevworks_core_modules.marketing_optimizations_path) %></li>
137
+ <li class="<%= phc_menu_active_controller("phcdevworks_core_modules/marketing/optimizations#new") %>"><%= link_to("Add SEO Data", phcdevworks_core_modules.new_marketing_optimization_path) %></li>
104
138
  </ul>
105
139
  </li>
106
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
140
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Core Modules -->
107
141
  <% end %>
108
142
 
109
- <% if defined?phcdevworks_press %>
110
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
111
- <li class="nav-header">Articles & Blogging</li>
143
+ <% if defined?phcdevworks_members %>
144
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Members -->
145
+ <li class="nav-header">Membership Manager</li>
112
146
  <li class="has-sub">
113
147
  <a href="javascript:;">
114
148
  <b class="caret"></b>
115
- <i class="fad fa-newspaper"></i>
116
- <span>Article Posts</span>
149
+ <i class="fad fa-users"></i>
150
+ <span>Member"s Data</span>
117
151
  </a>
118
152
  <ul class="sub-menu">
119
- <li class="<%= phc_menu_active_controller("phcdevworks_press/article/posts") %>"><%= link_to("Article Index", phcdevworks_press.article_posts_path) %></li>
120
- <li class="<%= phc_menu_active_controller("phcdevworks_press/article/posts#new") %>"><%= link_to("New Aritcle", phcdevworks_press.new_article_post_path) %></li>
153
+ <li class="<%= phc_menu_active_controller("phcdevworks_members/member/profiles") %>"><%= link_to("Profile Index", phcdevworks_members.member_profiles_path) %></li>
154
+ <li class="<%= phc_menu_active_controller("phcdevworks_members/member/profiles#new") %>"><%= link_to("New Member Profile", phcdevworks_members.new_member_profile_path) %></li>
121
155
  </ul>
122
156
  </li>
157
+ <li class="nav-header">Member"s Directory</li>
123
158
  <li class="has-sub">
124
159
  <a href="javascript:;">
125
160
  <b class="caret"></b>
126
- <i class="fad fa-sitemap"></i>
127
- <span>Article Categories</span>
161
+ <i class="fad fa-list-alt"></i>
162
+ <span>Member"s Directory</span>
128
163
  </a>
129
164
  <ul class="sub-menu">
130
- <li class="<%= phc_menu_active_controller("phcdevworks_press/article/categories") %>"><%= link_to("Category Index", phcdevworks_press.article_categories_path) %></li>
131
- <li class="<%= phc_menu_active_controller("phcdevworks_press/article/categories#new") %>"><%= link_to("New Category", phcdevworks_press.new_article_category_path) %></li>
165
+ <li class="<%= phc_menu_active_controller("phcdevworks_members/modules/categories") %>"><%= link_to("Directory Index", phcdevworks_members.directory_categories_path) %></li>
166
+ <li class="<%= phc_menu_active_controller("phcdevworks_members/modules/categories#new") %>"><%= link_to("New Directory Listing", phcdevworks_members.new_directory_category_path) %></li>
132
167
  </ul>
133
168
  </li>
134
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Press -->
169
+ <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Members -->
135
170
  <% end %>
136
171
 
137
172
  <% if defined?phcdevworks_scripts %>
@@ -203,46 +238,6 @@
203
238
  <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks RealEstate -->
204
239
  <% end %>
205
240
 
206
- <% if defined?phcdevworks_tutorials %>
207
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Tutorials -->
208
- <li class="nav-header">Tutorial Posts</li>
209
- <li class="has-sub">
210
- <a href="javascript:;">
211
- <b class="caret"></b>
212
- <i class="fad fa-chalkboard-teacher"></i>
213
- <span>Tutorial Posts</span>
214
- </a>
215
- <ul class="sub-menu">
216
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/posts") %>"><%= link_to "Tutorial Index", phcdevworks_tutorials.tutorial_posts_path %></li>
217
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/posts#new") %>"><%= link_to "New Tutorial", phcdevworks_tutorials.new_tutorial_post_path %></li>
218
- </ul>
219
- </li>
220
- <li class="has-sub">
221
- <a href="javascript:;">
222
- <b class="caret"></b>
223
- <i class="fad fa-sitemap"></i>
224
- <span>Tutorial Categories</span>
225
- </a>
226
- <ul class="sub-menu">
227
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/categories") %>"><%= link_to "Category Index", phcdevworks_tutorials.tutorial_categories_path %></li>
228
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/tutorials/categories#new") %>"><%= link_to "New Category", phcdevworks_tutorials.new_tutorial_category_path %></li>
229
- </ul>
230
- </li>
231
- <li class="nav-header">Command Lists & Items</li>
232
- <li class="has-sub">
233
- <a href="javascript:;">
234
- <b class="caret"></b>
235
- <i class="fad fa-terminal"></i>
236
- <span>Command Lists</span>
237
- </a>
238
- <ul class="sub-menu">
239
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/command/posts") %>"><%= link_to "List Index", phcdevworks_tutorials.command_posts_path %></li>
240
- <li class="<%= phc_menu_active_controller("phcdevworks_tutorials/command/posts#new") %>"><%= link_to "New List", phcdevworks_tutorials.new_command_post_path %></li>
241
- </ul>
242
- </li>
243
- <!-- -PHC- Sidebar - Sidebar Navigation - PHCDevworks Tutorials -->
244
- <% end %>
245
-
246
241
  <% if current_user && current_user.admin? %>
247
242
  <!-- -PHC- Sidebar - Sidebar Navigation - PHCAccounts Admin Options -->
248
243
  <li class="nav-header">User Administration</li>