Commit 3d1f34b7 by Mykhailo Makohin

some progress

parent a66442e8
...@@ -22,7 +22,7 @@ ActiveAdmin.register Project do ...@@ -22,7 +22,7 @@ ActiveAdmin.register Project do
def create def create
@project = Project.new(project_params) @project = Project.new(project_params)
if @project.save if @project.save
create_project_partials ProjectPartialsService.new(@project).set_project_partials
redirect_to admin_project_path(@project) redirect_to admin_project_path(@project)
else else
render :new render :new
...@@ -33,9 +33,10 @@ ActiveAdmin.register Project do ...@@ -33,9 +33,10 @@ ActiveAdmin.register Project do
scoped_collection.friendly.find(params[:id]) scoped_collection.friendly.find(params[:id])
end end
def create_project_partials def sort
[@project.short_description, @project.description].each_with_index {|val, index| params[:project_partials].each_with_index do |id, index|
ProjectPartial.create(title: val, position: index, project_id: @project.id)} ProjectPartialsService.where(id: id).update_all(position: index + 1)
end
end end
def project_params def project_params
...@@ -260,5 +261,10 @@ ActiveAdmin.register Project do ...@@ -260,5 +261,10 @@ ActiveAdmin.register Project do
end end
end end
end end
sidebar "Projects", only: :show do
attributes_table_for project.project_partials do
end
end
end end
...@@ -18,7 +18,7 @@ jQuery(document).ready(function($){ ...@@ -18,7 +18,7 @@ jQuery(document).ready(function($){
// initPlaceOfCubes(); // initPlaceOfCubes();
// initGallerySlider(); // initGallerySlider();
mobilePartners(); //mobilePartners();
// initTip(); // initTip();
// initMap(); // initMap();
topTip(); topTip();
...@@ -167,24 +167,24 @@ function initMap() { ...@@ -167,24 +167,24 @@ function initMap() {
// } // }
// } // }
function mobilePartners() { // function mobilePartners() {
var checkWidth = $(window).width(); // var checkWidth = $(window).width();
if (window.matchMedia("(min-width: 768px)").matches) { // if (window.matchMedia("(min-width: 768px)").matches) {
$("#owl-demo").trigger('destroy.owl.carousel'); // $("#owl-demo").trigger('destroy.owl.carousel');
$("#owl-demo").removeClass('owl-carousel'); // $("#owl-demo").removeClass('owl-carousel');
} else { // } else {
$("#owl-demo").addClass('owl-carousel'); // $("#owl-demo").addClass('owl-carousel');
$("#owl-demo").owlCarousel({ // //$("#owl-demo").owlCarousel({
items: 1, // items: 1,
loop: true // loop: true
}); // });
} // }
} // }
$(window).resize(function() { $(window).resize(function() {
mobilePartners(); // mobilePartners();
// initTooltipster(); // initTooltipster();
//initDraggable(); //initDraggable();
}); });
......
...@@ -15,7 +15,7 @@ class Project < ApplicationRecord ...@@ -15,7 +15,7 @@ class Project < ApplicationRecord
enum types: [:program, :project] enum types: [:program, :project]
enum status: [:in_progress, :implemented] enum status: [:in_progress, :implemented]
has_many :project_partials has_many :project_partials, dependent: :destroy
has_many :project_galeries, inverse_of: :project, dependent: :destroy has_many :project_galeries, inverse_of: :project, dependent: :destroy
has_many :project_qoutes, inverse_of: :project, dependent: :destroy has_many :project_qoutes, inverse_of: :project, dependent: :destroy
has_many :project_photos, inverse_of: :project, dependent: :destroy has_many :project_photos, inverse_of: :project, dependent: :destroy
......
module ProjectPartialService
class << self
def create(params)
ProjectPartial.new()
end
end
end
class ProjectPartialsService
def initialize(project)
@project = project
end
def params_project_partial
[{title: 'description', position: 0},
{title: 'galery', position: 1},
{title: 'quote', position: 2},
{title: 'video', position: 3},
{title: 'photos', position: 4},
{title: 'links', position: 5},
{title: 'documents', position: 6}]
end
def set_project_partials
@project.project_partials.create(params_project_partial)
end
end
Rails.application.routes.draw do Rails.application.routes.draw do
scope "(:locale)", locale: /en|uk/ do scope "(:locale)", locale: /en|uk/ do
mount Ckeditor::Engine => '/ckeditor' mount Ckeditor::Engine => '/ckeditor'
root 'home#index' root 'home#index'
ActiveAdmin.routes(self) ActiveAdmin.routes(self)
patch '/projects/warm', to: 'admin/projects#sort'
resources :users resources :users
resources :projects, only: [:show] resources :projects, only: [:show]
resources :project_partials do
collection do
patch :sort
end
end
end end
devise_for :users, controllers: {omniauth_callbacks: "users/omniauth_callbacks", devise_for :users, controllers: {omniauth_callbacks: "users/omniauth_callbacks",
registrations: "users"} registrations: "users"}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment