phcmembers 3.0.1 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/app/assets/stylesheets/phcmembers/_custom.scss +38 -0
  4. data/app/controllers/phcmembers/application_controller.rb +6 -1
  5. data/app/controllers/phcmembers/directory/categories_controller.rb +15 -16
  6. data/app/controllers/phcmembers/directory/categorylistings_controller.rb +20 -0
  7. data/app/controllers/phcmembers/member/addresses_controller.rb +75 -0
  8. data/app/controllers/phcmembers/member/listings_controller.rb +77 -0
  9. data/app/controllers/phcmembers/member/profiles_controller.rb +68 -0
  10. data/app/helpers/phcmembers/directory/categories_helper.rb +4 -0
  11. data/app/helpers/phcmembers/directory/categorylistings_helper.rb +4 -0
  12. data/app/helpers/phcmembers/member/listings_helper.rb +4 -0
  13. data/app/models/phcmembers/connections.rb +7 -0
  14. data/app/models/phcmembers/directory/category.rb +4 -9
  15. data/app/models/phcmembers/directory/categorylisting.rb +12 -0
  16. data/app/models/phcmembers/member.rb +7 -0
  17. data/app/models/phcmembers/member/address.rb +11 -0
  18. data/app/models/phcmembers/member/listing.rb +13 -0
  19. data/app/models/phcmembers/{members/main.rb → member/profile.rb} +3 -3
  20. data/app/views/layouts/phcmembers/application.html.erb +1 -1
  21. data/app/views/layouts/phcmembers/directory/directory_all.html.erb +1 -1
  22. data/app/views/layouts/phcmembers/members/members_all.html.erb +1 -1
  23. data/app/views/phcmembers/directory/categories/_form.html.erb +2 -2
  24. data/app/views/phcmembers/directory/categories/components/_category_audits.html.erb +6 -19
  25. data/app/views/phcmembers/directory/categories/components/_category_list.html.erb +3 -3
  26. data/app/views/phcmembers/directory/categories/components/_category_main.html.erb +18 -11
  27. data/app/views/phcmembers/directory/categories/edit.html.erb +20 -19
  28. data/app/views/phcmembers/directory/categories/index.html.erb +13 -17
  29. data/app/views/phcmembers/directory/categories/new.html.erb +19 -18
  30. data/app/views/phcmembers/directory/categories/show.html.erb +8 -14
  31. data/app/views/phcmembers/directory/categorylistings/index.html.erb +63 -0
  32. data/app/views/phcmembers/directory/categorylistings/show.html.erb +4 -0
  33. data/app/views/phcmembers/{members/contacts → member/addresses}/_form.html.erb +5 -5
  34. data/app/views/phcmembers/member/addresses/components/_address_address.html.erb +29 -0
  35. data/app/views/phcmembers/member/addresses/components/_address_audits.html.erb +12 -0
  36. data/app/views/phcmembers/member/addresses/components/_address_main.html.erb +31 -0
  37. data/app/views/phcmembers/member/addresses/edit.html.erb +47 -0
  38. data/app/views/phcmembers/member/addresses/index.html.erb +78 -0
  39. data/app/views/phcmembers/member/addresses/new.html.erb +47 -0
  40. data/app/views/phcmembers/member/addresses/show.html.erb +29 -0
  41. data/app/views/phcmembers/{members/businesses → member/listings}/_form.html.erb +11 -4
  42. data/app/views/phcmembers/member/listings/components/_listing_address.html.erb +48 -0
  43. data/app/views/phcmembers/member/listings/components/_listing_audits.html.erb +12 -0
  44. data/app/views/phcmembers/member/listings/components/_listing_main.html.erb +31 -0
  45. data/app/views/phcmembers/member/listings/edit.html.erb +47 -0
  46. data/app/views/phcmembers/member/listings/index.html.erb +78 -0
  47. data/app/views/phcmembers/member/listings/new.html.erb +47 -0
  48. data/app/views/phcmembers/member/listings/show.html.erb +29 -0
  49. data/app/views/phcmembers/{members/mains → member/profiles}/_form.html.erb +6 -8
  50. data/app/views/phcmembers/member/profiles/components/_profile_main.html.erb +44 -0
  51. data/app/views/phcmembers/member/profiles/components/_profile_sidebar.html.erb +28 -0
  52. data/app/views/phcmembers/member/profiles/edit.html.erb +46 -0
  53. data/app/views/phcmembers/member/profiles/index.html.erb +71 -0
  54. data/app/views/phcmembers/member/profiles/new.html.erb +45 -0
  55. data/app/views/phcmembers/member/profiles/show.html.erb +35 -0
  56. data/config/routes.rb +9 -15
  57. data/db/migrate/20160724220339_create_phcmembers_member_profiles.rb +16 -0
  58. data/db/migrate/{20160706184249_create_phcmembers_members_contacts.rb → 20160725153306_create_phcmembers_member_addresses.rb} +4 -4
  59. data/db/migrate/{20160706184708_create_phcmembers_directory_categories.rb → 20160725182257_create_phcmembers_directory_categories.rb} +0 -2
  60. data/db/migrate/{20160706184011_create_phcmembers_members_businesses.rb → 20160727024006_create_phcmembers_member_listings.rb} +5 -9
  61. data/db/migrate/20160727042756_create_phcmembers_directory_categorylistings.rb +10 -0
  62. data/lib/phcmembers/version.rb +1 -1
  63. metadata +45 -50
  64. data/app/controllers/phcmembers/directory/listings_controller.rb +0 -71
  65. data/app/controllers/phcmembers/members/businesses_controller.rb +0 -83
  66. data/app/controllers/phcmembers/members/contacts_controller.rb +0 -83
  67. data/app/controllers/phcmembers/members/mains_controller.rb +0 -70
  68. data/app/models/phcmembers/directory/listing.rb +0 -20
  69. data/app/models/phcmembers/members.rb +0 -7
  70. data/app/models/phcmembers/members/business.rb +0 -44
  71. data/app/models/phcmembers/members/contact.rb +0 -34
  72. data/app/views/phcmembers/directory/listings/_form.html.erb +0 -15
  73. data/app/views/phcmembers/directory/listings/_formpatch.html.erb +0 -15
  74. data/app/views/phcmembers/directory/listings/components/_listing_audits.html.erb +0 -25
  75. data/app/views/phcmembers/directory/listings/components/_listing_list.html.erb +0 -48
  76. data/app/views/phcmembers/directory/listings/components/_listing_main.html.erb +0 -21
  77. data/app/views/phcmembers/directory/listings/edit.html.erb +0 -45
  78. data/app/views/phcmembers/directory/listings/index.html.erb +0 -73
  79. data/app/views/phcmembers/directory/listings/new.html.erb +0 -45
  80. data/app/views/phcmembers/directory/listings/show.html.erb +0 -34
  81. data/app/views/phcmembers/members/businesses/_formpatch.html.erb +0 -65
  82. data/app/views/phcmembers/members/businesses/components/_business_address.html.erb +0 -48
  83. data/app/views/phcmembers/members/businesses/components/_business_audits.html.erb +0 -25
  84. data/app/views/phcmembers/members/businesses/components/_business_main.html.erb +0 -21
  85. data/app/views/phcmembers/members/businesses/edit.html.erb +0 -46
  86. data/app/views/phcmembers/members/businesses/index.html.erb +0 -76
  87. data/app/views/phcmembers/members/businesses/new.html.erb +0 -47
  88. data/app/views/phcmembers/members/businesses/show.html.erb +0 -35
  89. data/app/views/phcmembers/members/contacts/_formpatch.html.erb +0 -38
  90. data/app/views/phcmembers/members/contacts/components/_contact_address.html.erb +0 -29
  91. data/app/views/phcmembers/members/contacts/components/_contact_audits.html.erb +0 -25
  92. data/app/views/phcmembers/members/contacts/components/_contact_main.html.erb +0 -21
  93. data/app/views/phcmembers/members/contacts/edit.html.erb +0 -46
  94. data/app/views/phcmembers/members/contacts/index.html.erb +0 -75
  95. data/app/views/phcmembers/members/contacts/new.html.erb +0 -46
  96. data/app/views/phcmembers/members/contacts/show.html.erb +0 -35
  97. data/app/views/phcmembers/members/mains/components/_profile_main.html.erb +0 -48
  98. data/app/views/phcmembers/members/mains/components/_profile_sidebar.html.erb +0 -67
  99. data/app/views/phcmembers/members/mains/edit.html.erb +0 -45
  100. data/app/views/phcmembers/members/mains/index.html.erb +0 -69
  101. data/app/views/phcmembers/members/mains/new.html.erb +0 -45
  102. data/app/views/phcmembers/members/mains/show.html.erb +0 -39
  103. data/db/migrate/20160706184353_create_phcmembers_members_mains.rb +0 -22
  104. data/db/migrate/20160706184527_create_phcmembers_directory_listings.rb +0 -15
@@ -1,83 +0,0 @@
1
- require_dependency "phcmembers/application_controller"
2
-
3
- module Phcmembers
4
- class Members::ContactsController < ApplicationController
5
-
6
- # Filters
7
- before_action :set_paper_trail_whodunnit
8
- before_action :phc_member_mains_info
9
- before_action :set_members_contact, only: [:show, :edit, :update, :destroy]
10
- # layout 'layouts/phcmemberspro/members/members_all.html.erb'
11
-
12
- # Member Contact Index
13
- def index
14
- main = Members::Main.find(params[:main_id])
15
- @members_contacts = main.contacts.order('mcprovince ASC')
16
- end
17
-
18
- # Detailed Member Contact Information
19
- def show
20
- @versions = PaperTrail::Version.where(item_id: params[:id], item_type: 'Phcmembers::Members::Contact')
21
- main = Members::Main.find(params[:main_id])
22
- @members_contact = main.contacts.find(params[:id])
23
- end
24
-
25
- # New Contact
26
- def new
27
- main = Members::Main.find(params[:main_id])
28
- @members_contact = main.contacts.build
29
- end
30
-
31
- # Edit Contact
32
- def edit
33
- main = Members::Main.find(params[:main_id])
34
- @members_contact = main.contacts.find(params[:id])
35
- end
36
-
37
- # Create Action
38
- def create
39
- @main = Members::Main.find(params[:main_id])
40
- @members_contact = @main.contacts.create(members_contact_params)
41
- if @members_contact.save
42
- redirect_to members_main_contacts_path, notice: 'Member contact was successfully created.'
43
- else
44
- render :new
45
- end
46
- end
47
-
48
- # Update Action
49
- def update
50
- if @members_contact.update(members_contact_params)
51
- redirect_to members_main_contacts_path, notice: 'Member contact information was successfully updated.'
52
- else
53
- render :edit
54
- end
55
- end
56
-
57
- # Delete Action
58
- def destroy
59
- @main = Members::Main.find(params[:main_id])
60
- @members_contact = @main.contacts.find(params[:id])
61
- @members_contact.destroy
62
- redirect_to members_main_contacts_path, notice: 'Member contact was successfully destroyed.'
63
- end
64
-
65
- private
66
-
67
- # Get Main Member Info
68
- def phc_member_mains_info
69
- @members_main = Members::Main.find(params[:main_id])
70
- end
71
-
72
- # Common Callbacks
73
- def set_members_contact
74
- @members_contact = Members::Contact.find(params[:id])
75
- end
76
-
77
- # White List
78
- def members_contact_params
79
- params.require(:members_contact).permit(:mcaddressl1, :mcaddressl2, :mccity, :mcprovince, :mccountry, :mcpostalcode, :mctype, :main_id)
80
- end
81
-
82
- end
83
- end
@@ -1,70 +0,0 @@
1
- require_dependency "phcmembers/application_controller"
2
-
3
- module Phcmembers
4
- class Members::MainsController < ApplicationController
5
-
6
- # Filters
7
- before_action :set_paper_trail_whodunnit
8
- before_action :set_members_main, only: [:show, :edit, :update, :destroy]
9
- # layout :phcmemberspro_membersmain_layouts_resolver
10
-
11
- # Member Profile List
12
- def index
13
- @members_mains = Members::Main.all
14
- end
15
-
16
- # Detailed Member Profile
17
- def show
18
- @versions = PaperTrail::Version.where(item_id: params[:id], item_type: 'Phcmembers::Members::Main')
19
- @members_listings = Directory::Listing.where(main_id: params[:id])
20
- @members_main = Members::Main.find(params[:id])
21
- end
22
-
23
- # New Member Profile
24
- def new
25
- @members_main = Members::Main.new
26
- end
27
-
28
- # Edit Member Profile
29
- def edit
30
- end
31
-
32
- # Create Member Profile Action
33
- def create
34
- @members_main = Members::Main.new(members_main_params)
35
- if @members_main.save
36
- redirect_to members_mains_path, notice: 'Member profile has been successfully created.'
37
- else
38
- render :new
39
- end
40
- end
41
-
42
- # Update Member Profile Action
43
- def update
44
- if @members_main.update(members_main_params)
45
- redirect_to members_mains_path, notice: 'Member profile has been successfully updated.'
46
- else
47
- render :edit
48
- end
49
- end
50
-
51
- # Delete Member Profile Action
52
- def destroy
53
- @members_main.destroy
54
- redirect_to members_mains_path, notice: 'Member profile and all businesses was successfully destroyed.'
55
- end
56
-
57
- private
58
-
59
- # Common Callbacks
60
- def set_members_main
61
- @members_main = Members::Main.find(params[:id])
62
- end
63
-
64
- # White List
65
- def members_main_params
66
- params.require(:members_main).permit(:mfirstname, :mlastname, :mtitle, :memail, :mphone, :mnotes, :smfacebook, :smtwitter, :smlinkedin)
67
- end
68
-
69
- end
70
- end
@@ -1,20 +0,0 @@
1
- module Phcmembers
2
- class Directory::Listing < ActiveRecord::Base
3
-
4
- # Add Paper Trail
5
- has_paper_trail
6
-
7
- # Model Relationship
8
- belongs_to :category, class_name: 'Directory::Category'
9
- belongs_to :business, class_name: 'Members::Business'
10
-
11
- # Validation for Form Fields
12
- validates :business_id,
13
- presence: true
14
-
15
- # Validation for Form Fields
16
- validates :category_id,
17
- presence: true
18
-
19
- end
20
- end
@@ -1,7 +0,0 @@
1
- module Phcmembers
2
- module Members
3
- def self.table_name_prefix
4
- 'phcmembers_members_'
5
- end
6
- end
7
- end
@@ -1,44 +0,0 @@
1
- module Phcmembers
2
- class Members::Business < ActiveRecord::Base
3
-
4
- # Add Paper Trail
5
- has_paper_trail
6
-
7
- # Translate Country Code to Name
8
- def country_name
9
- country = ISO3166::Country[mccountry]
10
- country.translations[I18n.locale.to_s] || country.name
11
- end
12
-
13
- # Model Relationship
14
- has_many :listings, class_name: 'Directory::Listing'
15
- has_many :categories, class_name: 'Directory::Category', :through => :listings
16
- belongs_to :main, class_name: 'Members::Main'
17
-
18
- # Validation for Form Fields
19
- validates :mbcompanyname,
20
- presence: true,
21
- length: { minimum: 3 }
22
-
23
- validates :mbcontactname,
24
- presence: true,
25
- length: { minimum: 2 }
26
-
27
- validates :mbcity,
28
- presence: true,
29
- length: { minimum: 3 }
30
-
31
- validates :mbprovince,
32
- presence: true,
33
- length: { minimum: 2 }
34
-
35
- validates :mbcountry,
36
- presence: true,
37
- length: { minimum: 2 }
38
-
39
- validates :mbpostalcode,
40
- presence: true,
41
- length: { minimum: 6 }
42
-
43
- end
44
- end
@@ -1,34 +0,0 @@
1
- module Phcmembers
2
- class Members::Contact < ActiveRecord::Base
3
-
4
- # Add Paper Trail
5
- has_paper_trail
6
-
7
- # Translate Country Code to Name
8
- def country_name
9
- country = ISO3166::Country[mccountry]
10
- country.translations[I18n.locale.to_s] || country.name
11
- end
12
-
13
- # Model Relationships
14
- belongs_to :main, class_name: 'Members::Main'
15
-
16
- # Validation for Form Fields
17
- validates :mccity,
18
- presence: true,
19
- length: { minimum: 3 }
20
-
21
- validates :mcprovince,
22
- presence: true,
23
- length: { minimum: 2 }
24
-
25
- validates :mccountry,
26
- presence: true,
27
- length: { minimum: 2 }
28
-
29
- validates :mcpostalcode,
30
- presence: true,
31
- length: { minimum: 6 }
32
-
33
- end
34
- end
@@ -1,15 +0,0 @@
1
- <%= form_for([@directory_listing.category, @directory_listing], url: directory_category_listings_path) do |f| %>
2
-
3
- <!-- PHC-Notifi Render Validation -->
4
- <%= render 'phcnotifi/validations', :object => @directory_listing %>
5
-
6
- <div class="form-group field_with_errors">
7
- <label>Select a Listing</label>
8
- <%= collection_select(:directory_listing, :business_id, Phcmembers::Members::Business.order('mbcompanyname'), :id, :mbcompanyname, {}, {class: "form-control"}) %>
9
- </div>
10
-
11
- <div class="actions">
12
- <%= f.submit "Submit", class: "btn blue-hoki" %>
13
- </div>
14
-
15
- <% end %>
@@ -1,15 +0,0 @@
1
- <%= form_for([@directory_listing.category, @directory_listing], url: directory_category_listing_path, method: :patch) do |f| %>
2
-
3
- <!-- PHC-Notifi Render Validation -->
4
- <%= render 'phcnotifi/validations', :object => @directory_listing %>
5
-
6
- <div class="form-group field_with_errors">
7
- <label>Select a Listing</label>
8
- <%= collection_select(:directory_listing, :business_id, Phcmembers::Members::Business.order('mbcompanyname'), :id, :mbcompanyname, {}, {class: "form-control"}) %>
9
- </div>
10
-
11
- <div class="actions">
12
- <%= f.submit "Submit", class: "btn blue-hoki" %>
13
- </div>
14
-
15
- <% end %>
@@ -1,25 +0,0 @@
1
- <div class="scroller" style="height: 320px;" data-always-visible="1" data-rail-visible1="0" data-handle-color="#D7DCE2">
2
- <ul class="feeds">
3
- <% @versions.each do |version| %>
4
- <li>
5
- <div class="col1">
6
- <div class="cont">
7
- <div class="cont-col1">
8
- <div class="label label-sm label-success">
9
- <i class="fa fa-bell-o"></i>
10
- </div>
11
- </div>
12
- <div class="cont-col2">
13
- <div class="desc">
14
- <strong>EVENT #<%= version.id %></strong> - <i> <%= l(version.created_at, format: "%-d/%m/%Y") %> </i> - <i> <%= l(version.created_at, format: "%-d/%m/%Y") %> </i> - <%= version.event.capitalize %> - Listing Connection
15
- </div>
16
- </div>
17
- </div>
18
- </div>
19
- <div class="col2">
20
- <div class="date"> <%= l(version.created_at, format: "%H:%M %Z") %> </div>
21
- </div>
22
- </li>
23
- <% end %>
24
- </ul>
25
- </div>
@@ -1,48 +0,0 @@
1
- <p>
2
- <strong>Contact Name:</strong>
3
- <%= @directory_listing.business.mbcompanyname %>
4
- </p>
5
- <p>
6
- <strong>Company Name:</strong>
7
- <%= @directory_listing.business.mbcontactname %>
8
- </p>
9
-
10
- <p>
11
- <strong>Address Line 1:</strong>
12
- <%= @directory_listing.business.mbaddressl1 %>
13
- </p>
14
-
15
- <p>
16
- <strong>Address Line 2:</strong>
17
- <%= @directory_listing.business.mbaddressl2 %>
18
- </p>
19
-
20
- <p>
21
- <strong>City:</strong>
22
- <%= @directory_listing.business.mbcity %>
23
- </p>
24
-
25
- <p>
26
- <strong>Province:</strong>
27
- <%= @directory_listing.business.mbprovince %>
28
- </p>
29
-
30
- <p>
31
- <strong>Country:</strong>
32
- <%= @directory_listing.business.mbcountry %>
33
- </p>
34
-
35
- <p>
36
- <strong>PostalCode:</strong>
37
- <%= @directory_listing.business.mbpostalcode %>
38
- </p>
39
-
40
- <p>
41
- <strong>Phone:</strong>
42
- <%= @directory_listing.business.mbphone %>
43
- </p>
44
-
45
- <p>
46
- <strong>Email:</strong>
47
- <%= @directory_listing.business.mbcontactemail %>
48
- </p>
@@ -1,21 +0,0 @@
1
- <div class="col-md-6">
2
- <div class="card">
3
- <div class="card-header">
4
- Recent Listings for <%= @directory_category.catname %>
5
- </div>
6
- <div class="card-block">
7
- <%= render 'phcmembers/directory/listings/components/listing_list' %>
8
- </div>
9
- </div>
10
- </div>
11
-
12
- <div class="col-md-6">
13
- <div class="card">
14
- <div class="card-header">
15
- Category Change Log
16
- </div>
17
- <div class="card-block">
18
- <%= render 'phcmembers/directory/listings/components/listing_audits' %>
19
- </div>
20
- </div>
21
- </div>
@@ -1,45 +0,0 @@
1
- <!-- Title System -->
2
- <% phc_title "Directory Listings Manager" %>
3
- <% phc_title_tagline "New Listing Connection for Category" %>
4
-
5
- <!-- BreadCrumbs -->
6
- <div class="row">
7
- <div class="col-lg-12">
8
-
9
- <!-- Bread Crumb -->
10
- <ol class="breadcrumb">
11
- <li><%= link_to "Directories Home", directory_root_path %></li>
12
- <li><%= link_to "Categories List", directory_categories_path %></li>
13
- <li class="active"><%= yield(:phc_title_tagline) %></li>
14
- </ol>
15
-
16
- </div>
17
- </div>
18
-
19
- <!-- Page Title -->
20
- <div class="row">
21
- <div class="col-lg-12">
22
-
23
- <h3 class="page-title">
24
- <%= yield(:phc_title) %> </br>
25
- <small><%= yield(:phc_title_tagline) %></small>
26
- </h3>
27
-
28
- </div>
29
- </div>
30
-
31
- <!-- Main Content -->
32
- <div class="row">
33
- <div class="col-lg-12">
34
-
35
- <div class="card">
36
- <div class="card-header">
37
- <%= yield(:phc_title_tagline) %>
38
- </div>
39
- <div class="card-block">
40
- <%= render 'formpatch' %>
41
- </div>
42
- </div>
43
-
44
- </div>
45
- </div>