dhatu 0.1.9 → 0.1.10
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/app/controllers/dhatu/section_types_controller.rb +77 -0
- data/app/controllers/dhatu/sections_controller.rb +1 -1
- data/app/models/dhatu/category.rb +4 -0
- data/app/models/dhatu/section.rb +2 -5
- data/app/models/dhatu/section_type.rb +78 -0
- data/app/views/dhatu/blog_posts/_form.html.erb +1 -1
- data/app/views/dhatu/prices/_form.html.erb +1 -1
- data/app/views/dhatu/prices/_row.html.erb +4 -6
- data/app/views/dhatu/prices/index.html.erb +3 -3
- data/app/views/dhatu/section_types/_form.html.erb +20 -0
- data/app/views/dhatu/section_types/_index.html.erb +48 -0
- data/app/views/dhatu/section_types/_row.html.erb +20 -0
- data/app/views/dhatu/section_types/_show.html.erb +41 -0
- data/app/views/dhatu/section_types/index.html.erb +43 -0
- data/app/views/dhatu/sections/_form.html.erb +38 -32
- data/app/views/dhatu/sections/_index.html.erb +9 -9
- data/app/views/dhatu/sections/_row.html.erb +16 -17
- data/app/views/dhatu/sections/index.html.erb +1 -10
- data/app/views/dhatu/services/_form.html.erb +1 -1
- data/config/routes.rb +2 -0
- data/lib/dhatu/version.rb +1 -1
- data/lib/tasks/dhatu/data.rake +3 -3
- data/lib/tasks/dhatu/master_data.rake +4 -2
- data/spec/dummy/spec/factories/section.rb +1 -3
- data/spec/dummy/spec/factories/section_type.rb +6 -0
- metadata +10 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b44d66d46f512e9310e9b7ee907df3e6611179f7
|
4
|
+
data.tar.gz: b785eb69e6d6d2178cb6bfcb4fa64c0b51ee1978
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76b6e80ed6f7665296fcd71553ce4857cd2f99b3cc4c23d45f0596be1587b90546156eb6bb2eae42f9a7a276d4d6e883129693052dc60d5da5b94b0389544942
|
7
|
+
data.tar.gz: ebfa076bd05c6ffecada3221aca343c93deecba065124c4ab8b87c44fc0da2883f913bd34802600d89a678002795116b18434ed72e46c1d03546dca23a728663
|
@@ -0,0 +1,77 @@
|
|
1
|
+
module Dhatu
|
2
|
+
class SectionTypesController < ResourceController
|
3
|
+
|
4
|
+
before_action :require_super_admin
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def get_resource
|
9
|
+
@r_object = @resource_options[:class].find_by_id(params[:id])
|
10
|
+
end
|
11
|
+
|
12
|
+
def get_collections
|
13
|
+
@relation = SectionType.where("")
|
14
|
+
|
15
|
+
parse_filters
|
16
|
+
apply_filters
|
17
|
+
|
18
|
+
@section_types = @r_objects = @relation.page(@current_page).per(@per_page)
|
19
|
+
|
20
|
+
return true
|
21
|
+
end
|
22
|
+
|
23
|
+
def apply_filters
|
24
|
+
@relation = @relation.search(@query) if @query
|
25
|
+
|
26
|
+
@order_by = "created_at desc" unless @order_by
|
27
|
+
@relation = @relation.order(@order_by)
|
28
|
+
end
|
29
|
+
|
30
|
+
def configure_filter_settings
|
31
|
+
@filter_settings = {
|
32
|
+
string_filters: [
|
33
|
+
{ filter_name: :query }
|
34
|
+
],
|
35
|
+
boolean_filters: [],
|
36
|
+
reference_filters: [],
|
37
|
+
variable_filters: [],
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
41
|
+
def configure_filter_ui_settings
|
42
|
+
@filter_ui_settings = {}
|
43
|
+
end
|
44
|
+
|
45
|
+
def resource_controller_configuration
|
46
|
+
{
|
47
|
+
page_title: "Section Types",
|
48
|
+
js_view_path: "/kuppayam/workflows/parrot",
|
49
|
+
view_path: "/dhatu/section_types",
|
50
|
+
show_modal_after_create: false,
|
51
|
+
show_modal_after_update: false,
|
52
|
+
collection_name: :section_types,
|
53
|
+
item_name: :section_type,
|
54
|
+
class: Dhatu::SectionType
|
55
|
+
}
|
56
|
+
end
|
57
|
+
|
58
|
+
def breadcrumbs_configuration
|
59
|
+
{
|
60
|
+
heading: "Manage Section Types",
|
61
|
+
icon: "fa-reorder",
|
62
|
+
description: "Listing all Section Types",
|
63
|
+
links: [{name: "Home", link: breadcrumb_home_path, icon: 'fa-home'},
|
64
|
+
{name: "Manage Section Types", link: section_types_path, icon: 'fa-reorder', active: true}]
|
65
|
+
}
|
66
|
+
end
|
67
|
+
|
68
|
+
def permitted_params
|
69
|
+
params.require("dhatu/section_type").permit(:name, :code)
|
70
|
+
end
|
71
|
+
|
72
|
+
def set_navs
|
73
|
+
set_nav("dhatu/section_types")
|
74
|
+
end
|
75
|
+
|
76
|
+
end
|
77
|
+
end
|
@@ -4,7 +4,7 @@ module Dhatu
|
|
4
4
|
private
|
5
5
|
|
6
6
|
def permitted_params
|
7
|
-
params.require("dhatu/section").permit(:
|
7
|
+
params.require("dhatu/section").permit(:section_type_id, :title, :sub_title, :short_description, :long_description, :button_one_text, :button_two_text, :button_one_link, :button_two_link, :category_id)
|
8
8
|
end
|
9
9
|
|
10
10
|
def get_collections
|
@@ -100,6 +100,10 @@ class Dhatu::Category < Dhatu::ApplicationRecord
|
|
100
100
|
self.name
|
101
101
|
end
|
102
102
|
|
103
|
+
def to_param
|
104
|
+
"#{id}-#{name.parameterize[0..32]}"
|
105
|
+
end
|
106
|
+
|
103
107
|
def display_category_type
|
104
108
|
self.category_type.try(:demodulize).try(:pluralize).try(:titleize)
|
105
109
|
end
|
data/app/models/dhatu/section.rb
CHANGED
@@ -17,7 +17,7 @@ class Dhatu::Section < Dhatu::ApplicationRecord
|
|
17
17
|
validates :button_two_link, length: {maximum: 512}, allow_blank: true
|
18
18
|
|
19
19
|
# Associations
|
20
|
-
belongs_to :
|
20
|
+
belongs_to :section_type, :class_name => "Dhatu::SectionType"
|
21
21
|
has_one :cover_image, :as => :imageable, :dependent => :destroy, :class_name => "Image::CoverImage"
|
22
22
|
has_many :gallery_images, :as => :imageable, :dependent => :destroy, :class_name => "Image::GalleryImage"
|
23
23
|
|
@@ -36,10 +36,7 @@ class Dhatu::Section < Dhatu::ApplicationRecord
|
|
36
36
|
|
37
37
|
scope :upcoming, lambda { where("created_at >= ?", Time.now) }
|
38
38
|
scope :past, lambda { where("created_at < ?", Time.now) }
|
39
|
-
|
40
|
-
def find_by_section_type(st)
|
41
|
-
self.where("section_type = ?", st).published.first
|
42
|
-
end
|
39
|
+
scope :find_by_section_type, lambda {|section_code| joins(:section_type).where("code = ?", section_code) }
|
43
40
|
|
44
41
|
# ------------------
|
45
42
|
# Instance variables
|
@@ -0,0 +1,78 @@
|
|
1
|
+
class Dhatu::SectionType < Dhatu::ApplicationRecord
|
2
|
+
|
3
|
+
# Set Table Name
|
4
|
+
self.table_name = "section_types"
|
5
|
+
|
6
|
+
# Validations
|
7
|
+
validates :name, presence: true, length: {minimum: 3, maximum: 64}
|
8
|
+
validates :code, presence: true, length: {minimum: 3, maximum: 64}
|
9
|
+
|
10
|
+
# ------------------
|
11
|
+
# Class Methods
|
12
|
+
# ------------------
|
13
|
+
|
14
|
+
scope :search, lambda {|query| where("LOWER(name) LIKE LOWER('%#{query}%') OR\
|
15
|
+
LOWER(code) LIKE LOWER('%#{query}%')")}
|
16
|
+
|
17
|
+
scope :upcoming, lambda { where("created_at >= ?", Time.now) }
|
18
|
+
scope :past, lambda { where("created_at < ?", Time.now) }
|
19
|
+
|
20
|
+
# Associations
|
21
|
+
has_many :sections, :class_name => "Dhatu::Section"
|
22
|
+
|
23
|
+
# ------------------
|
24
|
+
# Class variables
|
25
|
+
# ------------------
|
26
|
+
|
27
|
+
def self.save_row_data(hsh)
|
28
|
+
# Initializing error hash for displaying all errors altogether
|
29
|
+
error_object = Kuppayam::Importer::ErrorHash.new
|
30
|
+
|
31
|
+
return error_object if hsh[:name].blank?
|
32
|
+
|
33
|
+
section_type = Dhatu::SectionType.find_by_name(hsh[:name]) || Dhatu::SectionType.new
|
34
|
+
section_type.name = hsh[:name]
|
35
|
+
section_type.code = hsh[:code]
|
36
|
+
|
37
|
+
if section_type.valid?
|
38
|
+
begin
|
39
|
+
section_type.save!
|
40
|
+
rescue Exception => e
|
41
|
+
summary = "uncaught #{e} exception while handling connection: #{e.message}"
|
42
|
+
details = "Stack trace: #{e.backtrace.map {|l| " #{l}\n"}.join}"
|
43
|
+
error_object.errors << { summary: summary, details: details }
|
44
|
+
end
|
45
|
+
else
|
46
|
+
summary = "Error while saving section_type: #{section_type.name}"
|
47
|
+
details = "Error! #{section_type.errors.full_messages.to_sentence}"
|
48
|
+
error_object.errors << { summary: summary, details: details }
|
49
|
+
end
|
50
|
+
return error_object
|
51
|
+
end
|
52
|
+
|
53
|
+
# ------------------
|
54
|
+
# Instance variables
|
55
|
+
# ------------------
|
56
|
+
|
57
|
+
# Generic Methods
|
58
|
+
# ---------------
|
59
|
+
def to_param
|
60
|
+
"#{id}-#{name.parameterize[0..32]}"
|
61
|
+
end
|
62
|
+
|
63
|
+
def display_name
|
64
|
+
"#{name_was}"
|
65
|
+
end
|
66
|
+
|
67
|
+
# Permission Methods
|
68
|
+
# ------------------
|
69
|
+
|
70
|
+
def can_be_edited?
|
71
|
+
true
|
72
|
+
end
|
73
|
+
|
74
|
+
def can_be_deleted?
|
75
|
+
true
|
76
|
+
end
|
77
|
+
|
78
|
+
end
|
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
<div class="row">
|
16
16
|
<div class="col-md-6 pr-20">
|
17
|
-
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::BlogPost").published.select("id, name").order("name ASC").all, editable: true, assoc_display_method: :name} %>
|
17
|
+
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::BlogPost").published.select("id, name").order("priority ASC, name ASC").all, editable: true, assoc_display_method: :name} %>
|
18
18
|
<%= theme_form_assoc_group(@blog_post, :category_id, label: "Choose Category", form_style: "top-bottom", **options) %>
|
19
19
|
</div>
|
20
20
|
<div class="col-md-6 pl-20">
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<%= theme_form_field(@price, :sub_title, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
18
18
|
</div>
|
19
19
|
<div class="col-md-6">
|
20
|
-
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::Price").published.select("id, name").order("name ASC").all, editable: true, assoc_display_method: :name} %>
|
20
|
+
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::Price").published.select("id, name").order("priority ASC, name ASC").all, editable: true, assoc_display_method: :name} %>
|
21
21
|
<%= theme_form_assoc_group(@price, :category_id, label: "Choose Category", form_style: "top-bottom", **options) %>
|
22
22
|
</div>
|
23
23
|
</div>
|
@@ -1,24 +1,22 @@
|
|
1
1
|
<tr id="tr_price_<%= price.id %>">
|
2
|
-
|
3
2
|
<th scope="row" style="text-align: center;">
|
4
3
|
<%= serial_number(i) %>
|
5
4
|
</th>
|
6
5
|
|
7
6
|
<td class="display-link">
|
8
7
|
<%= link_to price.title, price_path(price), remote: true %><br>
|
9
|
-
<%= link_to price.category.try(:display_name), price_path(price), remote: true %>
|
8
|
+
<%= link_to price.category.try(:display_name), price_path(price), remote: true, style: "color:darkred" %>
|
10
9
|
</td>
|
11
10
|
|
12
11
|
<td class="hidden-sm hidden-xs"><%= price.price %></td>
|
13
|
-
|
12
|
+
<td class="hidden-sm hidden-xs"><%= price.priority %></td>
|
14
13
|
<td class="hidden-sm hidden-xs"><%= display_publishable_status(price) %></td>
|
15
14
|
|
16
15
|
<% if display_manage_links? %>
|
17
|
-
<td class="action-links hidden-sm hidden-xs" style="width:
|
16
|
+
<td class="action-links hidden-sm hidden-xs" style="width:15%"><%= display_publishable_links(price) %></td>
|
18
17
|
|
19
|
-
<td class="action-links hidden-sm hidden-xs" style="width:
|
18
|
+
<td class="action-links hidden-sm hidden-xs" style="width:15%">
|
20
19
|
<%= display_manage_links(price, @current_user) %>
|
21
20
|
</td>
|
22
21
|
<% end %>
|
23
|
-
|
24
22
|
</tr>
|
@@ -35,12 +35,12 @@
|
|
35
35
|
<div id="div_price_action_buttons">
|
36
36
|
<div class="row">
|
37
37
|
<div class="col-sm-6">
|
38
|
-
<%= theme_button('Add a Price', 'plus', dhatu.new_price_path(), classes: "pull-left mr-10", btn_type: "success") if @current_user.has_create_permission?(Dhatu::Price) %>
|
38
|
+
<%= theme_button('Add a Price', 'plus', dhatu.new_price_path(ct: params[:ct]), classes: "pull-left mr-10", btn_type: "success") if @current_user.has_create_permission?(Dhatu::Price) %>
|
39
39
|
|
40
|
-
<%= theme_button('Refresh', 'refresh', dhatu.prices_path(
|
40
|
+
<%= theme_button('Refresh', 'refresh', dhatu.prices_path(ct: params[:ct]), classes: "pull-left mr-10", btn_type: "white") %>
|
41
41
|
</div>
|
42
42
|
<div class="col-sm-6">
|
43
|
-
<%= search_form_kuppayam(Dhatu::Price, dhatu.prices_path(
|
43
|
+
<%= search_form_kuppayam(Dhatu::Price, dhatu.prices_path(ct: params[:ct]), text: @filters[:query]) %>
|
44
44
|
</div>
|
45
45
|
</div>
|
46
46
|
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<%= form_for([@section_type], :html => {:id=>"form_section_type", :class=>"mb-0 form-horizontal", :role => "form", :method => (@section_type.new_record? ? :post : :put), :remote=>true}) do |f| %>
|
2
|
+
|
3
|
+
<div id="section_type_form_error">
|
4
|
+
<%= @section_type.errors[:base].to_sentence %>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="form-inputs mb-30 mt-30">
|
8
|
+
<%= theme_form_field(@section_type, :name, label: "Name") %>
|
9
|
+
<%= theme_form_field(@section_type, :code, label: "Code") %>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<div>
|
13
|
+
<%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
|
14
|
+
<%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeGenericModal();", class: "pull-right ml-10 btn btn-white" %>
|
15
|
+
</div>
|
16
|
+
<%= clear_tag(10) %>
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<% end %>
|
20
|
+
|
@@ -0,0 +1,48 @@
|
|
1
|
+
<div class="table-responsive">
|
2
|
+
<table class="table table-hover members-table middle-align">
|
3
|
+
<thead>
|
4
|
+
<tr>
|
5
|
+
<th style="text-align: center;width:60px">#</th>
|
6
|
+
<th>Name</th>
|
7
|
+
<th>Code</th>
|
8
|
+
<% if display_manage_links? %>
|
9
|
+
<th style="text-align: center;">Actions</th>
|
10
|
+
<% end %>
|
11
|
+
</tr>
|
12
|
+
</thead>
|
13
|
+
<tbody>
|
14
|
+
<% @section_types.each_with_index do |section_type, i| %>
|
15
|
+
|
16
|
+
<tr id="tr_section_type_<%= section_type.id %>">
|
17
|
+
|
18
|
+
<th scope="row" style="text-align: center;">
|
19
|
+
<% if i < 0 %>
|
20
|
+
<i class="fa fa-check text-success"></i>
|
21
|
+
<% else %>
|
22
|
+
<%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
|
23
|
+
<% end %>
|
24
|
+
</th>
|
25
|
+
|
26
|
+
<td class="section_type-name"><%= link_to section_type.display_name, section_type_path(section_type), remote: true %></td>
|
27
|
+
|
28
|
+
<td class="section_type-name"><%= link_to section_type.code, section_type_path(section_type), remote: true %></td>
|
29
|
+
|
30
|
+
<% if display_manage_links? %>
|
31
|
+
|
32
|
+
<td class="action-links hidden-sm hidden-xs" style="width:10%">
|
33
|
+
<%= display_manage_links(section_type, @current_user) %>
|
34
|
+
</td>
|
35
|
+
<% end %>
|
36
|
+
</tr>
|
37
|
+
|
38
|
+
<% end %>
|
39
|
+
</tbody>
|
40
|
+
</table>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div class="row">
|
44
|
+
<div class="col-sm-12">
|
45
|
+
<%= paginate_kuppayam(@section_types) %>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<tr id="tr_section_type_<%= section_type.id %>">
|
2
|
+
|
3
|
+
<th scope="row" style="text-align: center;">
|
4
|
+
<% if i < 0 %>
|
5
|
+
<i class="fa fa-check text-success"></i>
|
6
|
+
<% else %>
|
7
|
+
<%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
|
8
|
+
<% end %>
|
9
|
+
</th>
|
10
|
+
|
11
|
+
<td class="section_type-name"><%= link_to section_type.display_name, section_type_path(section_type), remote: true %></td>
|
12
|
+
|
13
|
+
<td class="section_type-name"><%= link_to section_type.code, section_type_path(section_type), remote: true %></td>
|
14
|
+
|
15
|
+
<% if display_manage_links? %>
|
16
|
+
<td class="action-links hidden-sm hidden-xs" style="width:10%">
|
17
|
+
<%= display_manage_links(section_type, @current_user) %>
|
18
|
+
</td>
|
19
|
+
<% end %>
|
20
|
+
</tr>
|
@@ -0,0 +1,41 @@
|
|
1
|
+
<div id="div_blog_post_show">
|
2
|
+
|
3
|
+
<div class="row">
|
4
|
+
|
5
|
+
<div class="col-md-9 col-sm-12 col-xs-12" style="border-right:1px solid #f1f1f1;">
|
6
|
+
<%= theme_panel_heading(@section_type.display_name) %>
|
7
|
+
<%= theme_panel_sub_heading(@section_type.code, "#") %>
|
8
|
+
<%= clear_tag(10) %>
|
9
|
+
<div class="table-responsive mb-50">
|
10
|
+
<table class="table table-striped table-condensed table-bordered">
|
11
|
+
<tbody>
|
12
|
+
<tr>
|
13
|
+
<th>Name</th><td><%= @section_type.name %></td>
|
14
|
+
</tr>
|
15
|
+
<tr>
|
16
|
+
<th>Code</th><td><%= @section_type.code %></td>
|
17
|
+
</tr>
|
18
|
+
<tr>
|
19
|
+
<th>Created At</th><td><%= @section_type.created_at.strftime("%m/%d/%Y - %H:%M:%S") if @section_type.created_at %></td>
|
20
|
+
</tr>
|
21
|
+
<tr>
|
22
|
+
<th>Updated At</th><td><%= @section_type.updated_at.strftime("%m/%d/%Y - %H:%M:%S") if @section_type.updated_at %></td>
|
23
|
+
</tr>
|
24
|
+
|
25
|
+
</tbody>
|
26
|
+
</table>
|
27
|
+
</div>
|
28
|
+
<%= clear_tag(10) %>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
<% if display_manage_links? %>
|
32
|
+
<div class="col-md-3 col-sm-12 col-xs-12">
|
33
|
+
<%= display_manage_buttons(@section_type) %>
|
34
|
+
</div>
|
35
|
+
<% end %>
|
36
|
+
</div>
|
37
|
+
|
38
|
+
<%= clear_tag(30) %>
|
39
|
+
<%= link_to "Close", "#", onclick: "closeGenericModal();", class: "btn btn-primary pull-right" %>
|
40
|
+
<%= clear_tag(10) %>
|
41
|
+
</div>
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<div class="row">
|
2
|
+
|
3
|
+
<div class="col-md-12">
|
4
|
+
|
5
|
+
<ul class="nav nav-tabs">
|
6
|
+
</ul>
|
7
|
+
<div class="tab-content">
|
8
|
+
<div class="tab-pane active">
|
9
|
+
|
10
|
+
<div id="div_section_type_action_buttons">
|
11
|
+
<div class="row">
|
12
|
+
<div class="col-md-6">
|
13
|
+
|
14
|
+
<%= theme_button('Add a Section Type', 'plus', new_section_type_path(), classes: "pull-left mr-10", btn_type: "success") if @current_user.has_create_permission?(Dhatu::SectionType) %>
|
15
|
+
|
16
|
+
<%= theme_button('Refresh', 'refresh', section_types_path(), classes: "pull-left mr-10", btn_type: "white") %>
|
17
|
+
|
18
|
+
</div>
|
19
|
+
<div class="col-md-6">
|
20
|
+
<%= search_form_kuppayam(Dhatu::SectionType, section_types_path, text: @filters[:query]) %>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
<%= clear_tag(10) %>
|
25
|
+
|
26
|
+
<div id="div_section_type_index">
|
27
|
+
<%= render :partial=>"dhatu/section_types/index" %>
|
28
|
+
</div>
|
29
|
+
<%= clear_tag(10) %>
|
30
|
+
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
|
34
|
+
</div>
|
35
|
+
|
36
|
+
</div>
|
37
|
+
|
38
|
+
<script type="text/javascript">
|
39
|
+
$('body').on('change', '#inp_name', function() {
|
40
|
+
var sectionCode = $(this).val().replace(/ /g, '_').toUpperCase().slice(0, 63);
|
41
|
+
$('#inp_code').val(sectionCode);
|
42
|
+
});
|
43
|
+
</script>
|
@@ -8,50 +8,56 @@
|
|
8
8
|
<%= @section.errors[:base].to_sentence %>
|
9
9
|
</div>
|
10
10
|
|
11
|
-
<div class="form-inputs
|
12
|
-
|
13
|
-
<% if @section.new_record? || @current_user.super_admin? %>
|
14
|
-
|
15
|
-
<%= theme_form_field(@section, :section_type, form_style: "top-bottom", html_options: { placeholder: ""}) %>
|
16
|
-
|
17
|
-
<% else %>
|
18
|
-
|
19
|
-
<%= theme_form_field(@section, :section_type, form_style: "top-bottom", html_options: { placeholder: "", readonly: true}) %>
|
20
|
-
|
21
|
-
<% end %>
|
22
|
-
|
23
|
-
<%= theme_form_field(@section, :title, form_style: "top-bottom", html_options: { placeholder: ""}) %>
|
24
|
-
|
25
|
-
<%= theme_form_field(@section, :sub_title, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
26
|
-
|
27
|
-
<%= theme_form_field(@section, :short_description, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
28
|
-
|
29
|
-
<%= theme_form_field(@section, :long_description, required: true, html_options: {type: :textarea, class: "form-control wysihtml5", "data-stylesheet-url": "assets/wysiwyg-color.css"}, form_style: "top-bottom") %>
|
11
|
+
<div class="form-inputs">
|
30
12
|
|
31
13
|
<div class="row">
|
32
|
-
<div class="col-md-
|
33
|
-
<%= theme_form_field(@section, :
|
14
|
+
<div class="col-md-8 pr-20">
|
15
|
+
<%= theme_form_field(@section, :title, form_style: "top-bottom", html_options: { placeholder: ""}) %>
|
16
|
+
<%= theme_form_field(@section, :sub_title, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
17
|
+
<%= theme_form_field(@section, :short_description, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
34
18
|
</div>
|
35
19
|
<div class="col-md-4 pl-20">
|
36
|
-
|
20
|
+
<div class="row">
|
21
|
+
<div class="col-md-12">
|
22
|
+
<% options = {assoc_collection: Dhatu::SectionType.select("id, name").order("name ASC").all, editable: true, assoc_display_method: :name} %>
|
23
|
+
<%= theme_form_assoc_group(@section, :section_type_id, label: "Type", form_style: "top-bottom", **options) %>
|
24
|
+
</div>
|
25
|
+
</div>
|
26
|
+
<div class="row">
|
27
|
+
<div class="col-md-6 pr-20">
|
28
|
+
<%= theme_form_field(@section, :button_one_text, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
29
|
+
</div>
|
30
|
+
<div class="col-md-6 pl-20">
|
31
|
+
<%= theme_form_field(@section, :button_one_link, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div class="row">
|
36
|
+
<div class="col-md-6 pr-20">
|
37
|
+
<%= theme_form_field(@section, :button_two_text, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
38
|
+
</div>
|
39
|
+
<div class="col-md-6 pl-20">
|
40
|
+
<%= theme_form_field(@section, :button_two_link, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
|
37
44
|
</div>
|
38
45
|
</div>
|
39
|
-
|
46
|
+
|
40
47
|
<div class="row">
|
41
|
-
<div class="col-md-
|
42
|
-
<%= theme_form_field(@section, :
|
43
|
-
</div>
|
44
|
-
<div class="col-md-4 pl-20">
|
45
|
-
<%= theme_form_field(@section, :button_two_link, required: false, form_style: "top-bottom", html_options: { placeholder: "" }) %>
|
48
|
+
<div class="col-md-12 pr-20">
|
49
|
+
<%= theme_form_field(@section, :long_description, required: true, html_options: {type: :textarea, class: "form-control wysihtml5", "data-stylesheet-url": "assets/wysiwyg-color.css"}, form_style: "top-bottom") %>
|
46
50
|
</div>
|
47
51
|
</div>
|
48
|
-
|
52
|
+
|
49
53
|
</div>
|
50
54
|
|
51
|
-
<div>
|
52
|
-
|
55
|
+
<div class="row">
|
56
|
+
<div class="col-md-12 pr-20">
|
57
|
+
<%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
|
53
58
|
|
54
|
-
|
59
|
+
<%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeLargeModal();", class: "pull-right btn btn-white" %>
|
60
|
+
</div>
|
55
61
|
</div>
|
56
62
|
|
57
63
|
<%= clear_tag %>
|
@@ -1,11 +1,11 @@
|
|
1
1
|
<div class="table-responsive">
|
2
|
-
<table class="table table-hover members-table middle-align">
|
2
|
+
<table class="table table-hover table-condensed members-table middle-align">
|
3
3
|
<thead>
|
4
4
|
<tr>
|
5
5
|
<th style="text-align: center;width:5%">#</th>
|
6
|
-
<th style="text-align: center;width:100px"><i class="fa fa-photo"></i></th>
|
7
|
-
<th
|
8
|
-
<th>
|
6
|
+
<!-- <th style="text-align: center;width:100px"><i class="fa fa-photo"></i></th> -->
|
7
|
+
<th>Title</th>
|
8
|
+
<th style="width:200px">Type</th>
|
9
9
|
<th style="width:100px;" class="hidden-sm hidden-xs">Status</th>
|
10
10
|
<% if display_manage_links? %>
|
11
11
|
<th style="text-align: center;" colspan="2" class="hidden-sm hidden-xs">Actions</th>
|
@@ -22,14 +22,14 @@
|
|
22
22
|
<%= serial_number(i) %>
|
23
23
|
</th>
|
24
24
|
|
25
|
-
<td class="display-image">
|
26
|
-
|
27
|
-
</td>
|
28
|
-
|
29
|
-
<td class="display-link"><%= link_to section.section_type, section_path(section), remote: true %></td>
|
25
|
+
<!-- <td class="display-image">
|
26
|
+
<%#= display_thumbnail_small(section) %>
|
27
|
+
</td> -->
|
30
28
|
|
31
29
|
<td class="display-link"><%= link_to section.title, section_path(section), remote: true %></td>
|
32
30
|
|
31
|
+
<td class="display-link"><%= link_to section.section_type.try(:name), section_path(section), remote: true %></td>
|
32
|
+
|
33
33
|
<td class="hidden-sm hidden-xs"><%= display_publishable_status(section) %></td>
|
34
34
|
|
35
35
|
<% if display_manage_links? %>
|
@@ -1,25 +1,24 @@
|
|
1
1
|
<tr id="tr_section_<%= section.id %>">
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
<th scope="row" style="text-align: center;">
|
4
|
+
<%= serial_number(i) %>
|
5
|
+
</th>
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
<!-- <td class="display-image">
|
8
|
+
<%#= display_thumbnail_small(section) %>
|
9
|
+
</td> -->
|
10
10
|
|
11
|
-
|
11
|
+
<td class="display-link"><%= link_to section.title, section_path(section), remote: true %></td>
|
12
12
|
|
13
|
-
|
13
|
+
<td class="display-link"><%= link_to section.section_type.try(:name), section_path(section), remote: true %></td>
|
14
14
|
|
15
|
-
|
15
|
+
<td class="hidden-sm hidden-xs"><%= display_publishable_status(section) %></td>
|
16
16
|
|
17
|
-
|
18
|
-
|
17
|
+
<% if display_manage_links? %>
|
18
|
+
<td class="action-links hidden-sm hidden-xs" style="width:10%"><%= display_publishable_links(section) %></td>
|
19
19
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
</tr>
|
20
|
+
<td class="action-links hidden-sm hidden-xs" style="width:10%">
|
21
|
+
<%= display_manage_links(section, @current_user) %>
|
22
|
+
</td>
|
23
|
+
<% end %>
|
24
|
+
</tr>
|
@@ -41,13 +41,4 @@
|
|
41
41
|
|
42
42
|
</div>
|
43
43
|
|
44
|
-
</div>
|
45
|
-
|
46
|
-
<script type="text/javascript">
|
47
|
-
$('body').on('change', '#inp_section_type', function() {
|
48
|
-
var sectionType = $(this).val().replace(/ /g, '_').toUpperCase().slice(0, 63);
|
49
|
-
$('#inp_section_type').val(sectionType);
|
50
|
-
});
|
51
|
-
</script>
|
52
|
-
|
53
|
-
|
44
|
+
</div>
|
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
<div class="row">
|
16
16
|
<div class="col-md-4 pr-20">
|
17
|
-
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::Service").published.select("id, name").order("name ASC").all, editable: true, assoc_display_method: :name} %>
|
17
|
+
<% options = {assoc_collection: Dhatu::Category.filter_by_category_type("Dhatu::Service").published.select("id, name").order("priority ASC, name ASC").all, editable: true, assoc_display_method: :name} %>
|
18
18
|
<%= theme_form_assoc_group(@service, :category_id, label: "Choose Category", form_style: "top-bottom", **options) %>
|
19
19
|
</div>
|
20
20
|
<div class="col-md-4 pl-20">
|
data/config/routes.rb
CHANGED
data/lib/dhatu/version.rb
CHANGED
data/lib/tasks/dhatu/data.rake
CHANGED
@@ -25,7 +25,7 @@ namespace 'dhatu' do
|
|
25
25
|
puts " "
|
26
26
|
end
|
27
27
|
|
28
|
-
["Feature"].each do |cls_name|
|
28
|
+
["Feature", "Dhatu::SectionType"].each do |cls_name|
|
29
29
|
name = cls_name.underscore.pluralize
|
30
30
|
desc "Import #{cls_name.pluralize}"
|
31
31
|
task name => :environment do
|
@@ -49,7 +49,7 @@ namespace 'dhatu' do
|
|
49
49
|
desc "Import all dummy data in sequence"
|
50
50
|
task 'all' => :environment do
|
51
51
|
|
52
|
-
import_list = ["features"]
|
52
|
+
import_list = ["features", "section_types"]
|
53
53
|
|
54
54
|
import_list.each do |item|
|
55
55
|
print "Loading #{item.split(':').last.titleize} \t".yellow
|
@@ -65,7 +65,7 @@ namespace 'dhatu' do
|
|
65
65
|
puts " "
|
66
66
|
end
|
67
67
|
|
68
|
-
["Feature"].each do |cls_name|
|
68
|
+
["Feature", "Dhatu::SectionType"].each do |cls_name|
|
69
69
|
name = cls_name.underscore.pluralize
|
70
70
|
desc "Load Dummy #{cls_name.pluralize}"
|
71
71
|
task name => :environment do
|
@@ -25,7 +25,7 @@ namespace 'dhatu' do
|
|
25
25
|
puts " "
|
26
26
|
end
|
27
27
|
|
28
|
-
["Feature"].each do |cls_name|
|
28
|
+
["Feature", "Dhatu::SectionType"].each do |cls_name|
|
29
29
|
name = cls_name.underscore.pluralize
|
30
30
|
desc "Import #{cls_name.pluralize}"
|
31
31
|
task name => :environment do
|
@@ -35,7 +35,9 @@ namespace 'dhatu' do
|
|
35
35
|
destroy_all = false
|
36
36
|
destroy_all = true if ["true", "t","1","yes","y"].include?(ENV["destroy_all"].to_s.downcase.strip)
|
37
37
|
|
38
|
-
path =
|
38
|
+
path = Rails.root.join('db', 'master_data', "#{cls_name.constantize.table_name}.csv")
|
39
|
+
path = Dhatu::Engine.root.join('db', 'master_data', "#{cls_name.constantize.table_name}.csv") unless File.exists?(path)
|
40
|
+
|
39
41
|
cls_name.constantize.destroy_all if destroy_all
|
40
42
|
cls_name.constantize.import_data_file(path, true, verbose)
|
41
43
|
# puts "Importing Completed".green if verbose
|
@@ -1,7 +1,6 @@
|
|
1
1
|
FactoryGirl.define do
|
2
2
|
|
3
3
|
factory :unpublished_section, class: Dhatu::Section do
|
4
|
-
|
5
4
|
title "Section Title"
|
6
5
|
sub_title "Section Sub Title"
|
7
6
|
|
@@ -14,8 +13,7 @@ FactoryGirl.define do
|
|
14
13
|
button_one_link "www.domain.com/link_one"
|
15
14
|
button_two_link "www.domain.com/link_two"
|
16
15
|
|
17
|
-
association :
|
18
|
-
|
16
|
+
association :section_type, factory: :section_type
|
19
17
|
end
|
20
18
|
|
21
19
|
factory :published_section, parent: :unpublished_section do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dhatu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kpvarma
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-12-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -419,6 +419,7 @@ files:
|
|
419
419
|
- app/controllers/dhatu/offers_controller.rb
|
420
420
|
- app/controllers/dhatu/prices_controller.rb
|
421
421
|
- app/controllers/dhatu/resource_controller.rb
|
422
|
+
- app/controllers/dhatu/section_types_controller.rb
|
422
423
|
- app/controllers/dhatu/sections_controller.rb
|
423
424
|
- app/controllers/dhatu/services_controller.rb
|
424
425
|
- app/controllers/dhatu/team_members_controller.rb
|
@@ -435,6 +436,7 @@ files:
|
|
435
436
|
- app/models/dhatu/offer.rb
|
436
437
|
- app/models/dhatu/price.rb
|
437
438
|
- app/models/dhatu/section.rb
|
439
|
+
- app/models/dhatu/section_type.rb
|
438
440
|
- app/models/dhatu/service.rb
|
439
441
|
- app/models/dhatu/team_member.rb
|
440
442
|
- app/models/dhatu/testimonial.rb
|
@@ -477,6 +479,11 @@ files:
|
|
477
479
|
- app/views/dhatu/prices/_row.html.erb
|
478
480
|
- app/views/dhatu/prices/_show.html.erb
|
479
481
|
- app/views/dhatu/prices/index.html.erb
|
482
|
+
- app/views/dhatu/section_types/_form.html.erb
|
483
|
+
- app/views/dhatu/section_types/_index.html.erb
|
484
|
+
- app/views/dhatu/section_types/_row.html.erb
|
485
|
+
- app/views/dhatu/section_types/_show.html.erb
|
486
|
+
- app/views/dhatu/section_types/index.html.erb
|
480
487
|
- app/views/dhatu/sections/_form.html.erb
|
481
488
|
- app/views/dhatu/sections/_index.html.erb
|
482
489
|
- app/views/dhatu/sections/_row.html.erb
|
@@ -525,6 +532,7 @@ files:
|
|
525
532
|
- spec/dummy/spec/factories/section.rb
|
526
533
|
- spec/dummy/spec/factories/section_cover_image.rb
|
527
534
|
- spec/dummy/spec/factories/section_gallery_image.rb
|
535
|
+
- spec/dummy/spec/factories/section_type.rb
|
528
536
|
- spec/dummy/spec/factories/team_member.rb
|
529
537
|
- spec/dummy/spec/factories/test.jpg
|
530
538
|
- spec/dummy/spec/factories/testimonial.rb
|