suite
This commit is contained in:
parent
e4c6b8f768
commit
bd72e6a621
@ -12,6 +12,17 @@ class Admin::IWebsitesController < ApplicationController
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def preview
|
||||||
|
@i_website = IWebsite.where(:token => params[:id]).first
|
||||||
|
|
||||||
|
@i_tasks = @i_website.i_tasks
|
||||||
|
|
||||||
|
#render :template => "admin/i_tasks/index"
|
||||||
|
|
||||||
|
@preview = true
|
||||||
|
params[:no_detail]= true
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
def index
|
def index
|
||||||
@i_websites = IWebsite.joins(:p_customer).order("p_customers.name ASC, p_customers.id ASC, i_websites.name ASC").all
|
@i_websites = IWebsite.joins(:p_customer).order("p_customers.name ASC, p_customers.id ASC, i_websites.name ASC").all
|
||||||
|
@ -8,4 +8,16 @@ class IWebsite < ActiveRecord::Base
|
|||||||
self.name.to_s+(" - "+self.url.to_s if self.url?).to_s+(" - "+self.prov_url.to_s if self.prov_url?).to_s
|
self.name.to_s+(" - "+self.url.to_s if self.url?).to_s+(" - "+self.prov_url.to_s if self.prov_url?).to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
|
before_save do
|
||||||
|
self.verify
|
||||||
|
end
|
||||||
|
def verify(size=16)
|
||||||
|
if !self.token
|
||||||
|
s = ""
|
||||||
|
size.times { s << (i = Kernel.rand(62); i += ((i < 10) ? 48 : ((i < 36) ? 55 : 61 ))).chr }
|
||||||
|
self.token = s
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
@ -5,15 +5,24 @@
|
|||||||
%tr
|
%tr
|
||||||
|
|
||||||
%td{:style => (params[:no_detail] ? "width:30px;" : "width:150px;")}
|
%td{:style => (params[:no_detail] ? "width:30px;" : "width:150px;")}
|
||||||
-if i_task.done
|
-if @preview
|
||||||
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:done => false}), :remote => true, :method => :put do
|
-if i_task.done
|
||||||
.big_icon.done
|
.big_icon.done
|
||||||
=ic :check
|
=ic :check
|
||||||
-else
|
-else
|
||||||
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:done => true}), :remote => true, :method => :put do
|
|
||||||
.big_icon.undone
|
.big_icon.undone
|
||||||
=ic :check
|
=ic :check
|
||||||
|
|
||||||
|
-else
|
||||||
|
-if i_task.done
|
||||||
|
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:done => false}), :remote => true, :method => :put do
|
||||||
|
.big_icon.done
|
||||||
|
=ic :check
|
||||||
|
-else
|
||||||
|
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:done => true}), :remote => true, :method => :put do
|
||||||
|
.big_icon.undone
|
||||||
|
=ic :check
|
||||||
|
|
||||||
-if !params[:no_detail]
|
-if !params[:no_detail]
|
||||||
-if i_task.urgent
|
-if i_task.urgent
|
||||||
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:urgent => false}), :remote => true, :method => :put do
|
=link_to admin_i_task_path(:id => i_task.id, :i_task => {:urgent => false}), :remote => true, :method => :put do
|
||||||
|
@ -63,9 +63,15 @@
|
|||||||
.i_task_project
|
.i_task_project
|
||||||
.right
|
.right
|
||||||
=@i_task_project.admin.name if @i_task_project.admin
|
=@i_task_project.admin.name if @i_task_project.admin
|
||||||
|
|
||||||
|
=link_to ic(:globe), "/p/#{@i_task_project.token}", :target => "_blank"
|
||||||
|
|
||||||
|
|
||||||
=@i_task_project.name
|
=@i_task_project.name
|
||||||
|
|
||||||
=link_to ic(:times), params.merge(:i_task_project_id => "")
|
=link_to ic(:times), params.merge(:i_task_project_id => "")
|
||||||
|
|
||||||
|
|
||||||
:scss
|
:scss
|
||||||
.tasks_menu{
|
.tasks_menu{
|
||||||
a{
|
a{
|
||||||
|
113
app/views/admin/i_tasks/preview.html.haml
Normal file
113
app/views/admin/i_tasks/preview.html.haml
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
.qi_header
|
||||||
|
%h1 To do
|
||||||
|
|
||||||
|
|
||||||
|
.qi_row
|
||||||
|
|
||||||
|
-if params[:i_previ_id]
|
||||||
|
-@i_tasks = ITask.where(:i_previ_id => params[:i_previ_id], :done => false).all
|
||||||
|
|
||||||
|
-elsif params[:archive]
|
||||||
|
-@i_tasks = ITask.where(:done => true).all
|
||||||
|
|
||||||
|
-elsif params[:urgent]
|
||||||
|
-@i_tasks = ITask.where(:urgent => true, :done => false).all
|
||||||
|
-elsif params[:no]
|
||||||
|
-@i_tasks = ITask.where(:done => false, :i_previ_id => nil).all
|
||||||
|
|
||||||
|
-else
|
||||||
|
-params[:all] = true
|
||||||
|
-@i_tasks = ITask.where(:done => false).all
|
||||||
|
|
||||||
|
-if params[:i_task_project_id] and params[:i_task_project_id].to_s != ""
|
||||||
|
-@i_task_project = IWebsite.where(:id => params[:i_task_project_id]).first
|
||||||
|
-@i_tasks = @i_tasks.where(:i_website_id => params[:i_task_project_id]).all
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
:scss
|
||||||
|
.i_task_project{
|
||||||
|
background:white;
|
||||||
|
font-weight:bold;
|
||||||
|
padding:10px 20px;
|
||||||
|
margin-top:10px;
|
||||||
|
}
|
||||||
|
.tasks_menu
|
||||||
|
=link_to admin_i_tasks_path(:no => 1, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:no]) do
|
||||||
|
Non planifiées
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:all => 1, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:all]) do
|
||||||
|
Toutes les tâches
|
||||||
|
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:urgent => 1, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:urgent]) do
|
||||||
|
=ic :"free-code-camp"
|
||||||
|
Urgent
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:i_previ_id => 1, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:i_previ_id].to_s == "1") do
|
||||||
|
=ic :star
|
||||||
|
Aujourd'hui
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:i_previ_id => 2, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:i_previ_id].to_s == "2") do
|
||||||
|
=ic :"arrow-right"
|
||||||
|
Rapidement
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:i_previ_id => 3, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:i_previ_id].to_s == "3") do
|
||||||
|
=ic :history
|
||||||
|
Un jour
|
||||||
|
|
||||||
|
=link_to admin_i_tasks_path(:archive => 1, :i_task_project_id => params[:i_task_project_id]), :class => ("active" if params[:archive]) do
|
||||||
|
Journal
|
||||||
|
|
||||||
|
-if @i_task_project
|
||||||
|
.i_task_project
|
||||||
|
.right
|
||||||
|
=@i_task_project.admin.name if @i_task_project.admin
|
||||||
|
|
||||||
|
=link_to ic(:globe), "/p/#{@i_task_project.token}", :target => "_blank"
|
||||||
|
|
||||||
|
|
||||||
|
=@i_task_project.name
|
||||||
|
|
||||||
|
=link_to ic(:times), params.merge(:i_task_project_id => "")
|
||||||
|
|
||||||
|
|
||||||
|
:scss
|
||||||
|
.tasks_menu{
|
||||||
|
a{
|
||||||
|
display:inline-block;
|
||||||
|
padding:4px 8px;
|
||||||
|
|
||||||
|
&:hover,&.active{
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#i_task_form
|
||||||
|
|
||||||
|
|
||||||
|
#new_i_task_form=render :partial => "admin/i_tasks/form", :locals => {:new_var => true}
|
||||||
|
|
||||||
|
.row
|
||||||
|
#i_tasks_results= render :partial => "admin/i_tasks/results"
|
||||||
|
|
||||||
|
.projects
|
||||||
|
%strong Projets avec des tâches en cours :
|
||||||
|
%br
|
||||||
|
-ITask.where(:done => false).where("i_website_id is not NULL").group(:i_website_id).map {|i| [i.i_website_id, i.i_website.name]}.sort.each do |iw|
|
||||||
|
=link_to iw[1],admin_i_tasks_path(:i_task_project_id => iw[0]), :class => "project"
|
||||||
|
|
||||||
|
:scss
|
||||||
|
.projects{
|
||||||
|
margin-bottom:100px;
|
||||||
|
.project{
|
||||||
|
display:inline-block;
|
||||||
|
padding:5px 8px;
|
||||||
|
margin:5px;
|
||||||
|
background:white;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
83
app/views/admin/i_websites/preview.html.haml
Normal file
83
app/views/admin/i_websites/preview.html.haml
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
.qi_header
|
||||||
|
%h1=@i_website.name
|
||||||
|
|
||||||
|
|
||||||
|
.qi_row
|
||||||
|
|
||||||
|
-if params[:i_previ_id]
|
||||||
|
-@i_tasks = ITask.where(:i_previ_id => params[:i_previ_id], :done => false).all
|
||||||
|
|
||||||
|
-elsif params[:archive]
|
||||||
|
-@i_tasks = ITask.where(:done => true).all
|
||||||
|
|
||||||
|
-elsif params[:urgent]
|
||||||
|
-@i_tasks = ITask.where(:urgent => true, :done => false).all
|
||||||
|
-elsif params[:no]
|
||||||
|
-@i_tasks = ITask.where(:done => false, :i_previ_id => nil).all
|
||||||
|
|
||||||
|
-else
|
||||||
|
-params[:all] = true
|
||||||
|
-@i_tasks = ITask.where(:done => false).all
|
||||||
|
|
||||||
|
-if params[:i_task_project_id] and params[:i_task_project_id].to_s != ""
|
||||||
|
-@i_task_project = IWebsite.where(:id => params[:i_task_project_id]).first
|
||||||
|
-@i_tasks = @i_tasks.where(:i_website_id => params[:i_task_project_id]).all
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
:scss
|
||||||
|
.i_task_project{
|
||||||
|
background:white;
|
||||||
|
font-weight:bold;
|
||||||
|
padding:10px 20px;
|
||||||
|
margin-top:10px;
|
||||||
|
}
|
||||||
|
.tasks_menu
|
||||||
|
=link_to url_for(:no => 1), :class => ("active" if params[:no]) do
|
||||||
|
Non planifiées
|
||||||
|
|
||||||
|
=link_to url_for(:all => 1), :class => ("active" if params[:all]) do
|
||||||
|
Toutes les tâches
|
||||||
|
|
||||||
|
|
||||||
|
-if false
|
||||||
|
=link_to url_for(:urgent => 1), :class => ("active" if params[:urgent]) do
|
||||||
|
=ic :"free-code-camp"
|
||||||
|
Urgent
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
=link_to url_for(:archive => 1), :class => ("active" if params[:archive]) do
|
||||||
|
Journal
|
||||||
|
|
||||||
|
-if @i_task_project
|
||||||
|
.i_task_project
|
||||||
|
.right
|
||||||
|
=@i_task_project.admin.name if @i_task_project.admin
|
||||||
|
|
||||||
|
=link_to ic(:globe), "/p/#{@i_task_project.token}", :target => "_blank"
|
||||||
|
|
||||||
|
|
||||||
|
=@i_task_project.name
|
||||||
|
|
||||||
|
=link_to ic(:times), params.merge(:i_task_project_id => "")
|
||||||
|
|
||||||
|
|
||||||
|
:scss
|
||||||
|
.tasks_menu{
|
||||||
|
a{
|
||||||
|
display:inline-block;
|
||||||
|
padding:4px 8px;
|
||||||
|
|
||||||
|
&:hover,&.active{
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.row
|
||||||
|
#i_tasks_results= render :partial => "admin/i_tasks/results"
|
||||||
|
|
@ -19,78 +19,79 @@
|
|||||||
|
|
||||||
|
|
||||||
%body.admin
|
%body.admin
|
||||||
#right_bar
|
-if !@preview
|
||||||
.element
|
#right_bar
|
||||||
=link_to "/" do
|
|
||||||
.cat#big_cat_clients
|
|
||||||
=ic :"home"
|
|
||||||
|
|
||||||
.element
|
|
||||||
=link_to admin_p_customers_path do
|
|
||||||
.cat#big_cat_clients
|
|
||||||
=ic :"address-book-o"
|
|
||||||
Clients
|
|
||||||
|
|
||||||
.element
|
|
||||||
=link_to admin_p_customer_sheets_path do
|
|
||||||
.cat#big_cat_ventes
|
|
||||||
=ic :"shopping-cart"
|
|
||||||
Offres
|
|
||||||
|
|
||||||
|
|
||||||
.element
|
|
||||||
=link_to admin_i_websites_path do
|
|
||||||
.cat#big_cat_web
|
|
||||||
=ic :"globe"
|
|
||||||
Sites
|
|
||||||
.element
|
|
||||||
=link_to admin_p_documents_path do
|
|
||||||
.cat#big_cat_documents
|
|
||||||
=ic :"file-text-o"
|
|
||||||
Documents
|
|
||||||
.element
|
|
||||||
=link_to admin_p_payments_path do
|
|
||||||
.cat#big_cat_paiements
|
|
||||||
=ic :"eur"
|
|
||||||
Paiements
|
|
||||||
|
|
||||||
-if false
|
|
||||||
.element
|
.element
|
||||||
=link_to admin_p_stats_path do
|
=link_to "/" do
|
||||||
.cat#big_cat_charts
|
.cat#big_cat_clients
|
||||||
=ic :"bar-chart"
|
=ic :"home"
|
||||||
Stats
|
|
||||||
|
|
||||||
.bottom
|
|
||||||
.element
|
.element
|
||||||
=link_to admin_admins_path do
|
=link_to admin_p_customers_path do
|
||||||
.cat#big_cat_preferences
|
.cat#big_cat_clients
|
||||||
=ic :"cog"
|
=ic :"address-book-o"
|
||||||
|
Clients
|
||||||
|
|
||||||
|
.element
|
||||||
|
=link_to admin_p_customer_sheets_path do
|
||||||
|
.cat#big_cat_ventes
|
||||||
|
=ic :"shopping-cart"
|
||||||
|
Offres
|
||||||
|
|
||||||
|
|
||||||
|
.element
|
||||||
|
=link_to admin_i_websites_path do
|
||||||
|
.cat#big_cat_web
|
||||||
|
=ic :"globe"
|
||||||
|
Sites
|
||||||
|
.element
|
||||||
|
=link_to admin_p_documents_path do
|
||||||
|
.cat#big_cat_documents
|
||||||
|
=ic :"file-text-o"
|
||||||
|
Documents
|
||||||
|
.element
|
||||||
|
=link_to admin_p_payments_path do
|
||||||
|
.cat#big_cat_paiements
|
||||||
|
=ic :"eur"
|
||||||
|
Paiements
|
||||||
|
|
||||||
|
-if false
|
||||||
|
.element
|
||||||
|
=link_to admin_p_stats_path do
|
||||||
|
.cat#big_cat_charts
|
||||||
|
=ic :"bar-chart"
|
||||||
|
Stats
|
||||||
|
|
||||||
|
.bottom
|
||||||
|
.element
|
||||||
|
=link_to admin_admins_path do
|
||||||
|
.cat#big_cat_preferences
|
||||||
|
=ic :"cog"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-if @admin_space
|
-if @admin_space
|
||||||
%script
|
%script
|
||||||
=raw '$("#big_cat_'+@admin_space.to_s+'").addClass("active");'
|
=raw '$("#big_cat_'+@admin_space.to_s+'").addClass("active");'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%nav#admin_nav.navbar.navbar-default.navbar-inverse{role: "navigation"}
|
%nav#admin_nav.navbar.navbar-default.navbar-inverse{role: "navigation"}
|
||||||
.container-fluid
|
.container-fluid
|
||||||
|
|
||||||
.navbar-header
|
.navbar-header
|
||||||
%button.navbar-toggle{"data-target" => "#bs-example-navbar-collapse-1", "data-toggle" => "collapse", type: "button"}
|
%button.navbar-toggle{"data-target" => "#bs-example-navbar-collapse-1", "data-toggle" => "collapse", type: "button"}
|
||||||
%span.sr-only Toggle navigation
|
%span.sr-only Toggle navigation
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
|
|
||||||
|
|
||||||
#bs-example-navbar-collapse-1.collapse.navbar-collapse
|
#bs-example-navbar-collapse-1.collapse.navbar-collapse
|
||||||
%ul.nav.navbar-nav
|
%ul.nav.navbar-nav
|
||||||
-if @admin_space
|
-if @admin_space
|
||||||
=render :partial => "admin/admin_spaces/#{@admin_space.to_s}"
|
=render :partial => "admin/admin_spaces/#{@admin_space.to_s}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -98,23 +99,27 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
%ul.nav.navbar-nav.navbar-right
|
%ul.nav.navbar-nav.navbar-right
|
||||||
%li.dropdown
|
%li.dropdown
|
||||||
%a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
|
%a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
|
||||||
=current_admin.firstname
|
=current_admin.firstname
|
||||||
=current_admin.name
|
=current_admin.name
|
||||||
%b.caret
|
%b.caret
|
||||||
|
|
||||||
%ul.dropdown-menu
|
%ul.dropdown-menu
|
||||||
%li= link_to "Gestion des admins", admin_admins_path
|
%li= link_to "Gestion des admins", admin_admins_path
|
||||||
%li.divider
|
%li.divider
|
||||||
%li=link_to "Se déconnecter", admin_admin_auth_path(1), method: :delete
|
%li=link_to "Se déconnecter", admin_admin_auth_path(1), method: :delete
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-else
|
||||||
|
#right_bar
|
||||||
|
=image_tag("/logo-olwen-technology.png", :style => "margin:10px auto;width:50%;display:block;")
|
||||||
|
|
||||||
|
|
||||||
= yield
|
= yield
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ Rails.application.routes.draw do
|
|||||||
get "sitemap.:f" => "public/seo#sitemap"
|
get "sitemap.:f" => "public/seo#sitemap"
|
||||||
|
|
||||||
|
|
||||||
|
get "p/:id" => "admin/i_websites#preview"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
10
db/migrate/20191112110616_add_token_to_i_websites.rb
Normal file
10
db/migrate/20191112110616_add_token_to_i_websites.rb
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
class AddTokenToIWebsites < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
add_column :i_websites, :token, :string
|
||||||
|
|
||||||
|
IWebsite.all.each do |iw|
|
||||||
|
iw.save
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
@ -11,7 +11,7 @@
|
|||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 20190722161039) do
|
ActiveRecord::Schema.define(version: 20191112110616) do
|
||||||
|
|
||||||
create_table "admin_admin_roles", force: :cascade do |t|
|
create_table "admin_admin_roles", force: :cascade do |t|
|
||||||
t.integer "admin_id", limit: 4
|
t.integer "admin_id", limit: 4
|
||||||
@ -464,6 +464,7 @@ ActiveRecord::Schema.define(version: 20190722161039) do
|
|||||||
t.datetime "updated_at", null: false
|
t.datetime "updated_at", null: false
|
||||||
t.integer "admin_id", limit: 4
|
t.integer "admin_id", limit: 4
|
||||||
t.string "state", limit: 255
|
t.string "state", limit: 255
|
||||||
|
t.string "token", limit: 255
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "image_contents", force: :cascade do |t|
|
create_table "image_contents", force: :cascade do |t|
|
||||||
|
BIN
public/logo-olwen-technology.png
Normal file
BIN
public/logo-olwen-technology.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
Loading…
x
Reference in New Issue
Block a user