This commit is contained in:
afornerot 2019-04-17 11:59:05 +02:00
parent ffad0f1b43
commit 4e345a7d4c
26 changed files with 144 additions and 73 deletions

View File

@ -16,6 +16,7 @@ TRUNCATE TABLE sidebar;
INSERT IGNORE INTO `sidebar` (`id`, `parent_id`, `roworder`, `label`, `path`, `fonticon`, `permission`, `appactivate`) VALUES INSERT IGNORE INTO `sidebar` (`id`, `parent_id`, `roworder`, `label`, `path`, `fonticon`, `permission`, `appactivate`) VALUES
(1000, NULL, 1000, 'CONFIGURATION', '', 'fa-gear', 'ROLE_ADMIN', ''), (1000, NULL, 1000, 'CONFIGURATION', '', 'fa-gear', 'ROLE_ADMIN', ''),
(1010, 1000, 1010, 'Générale', 'cadoles_core_config_commun', 'fa-table', 'ROLE_ADMIN', ''), (1010, 1000, 1010, 'Générale', 'cadoles_core_config_commun', 'fa-table', 'ROLE_ADMIN', ''),
(1020, 1000, 1020, 'Thème', 'cadoles_core_config_theme', 'fa-paint-brush', 'ROLE_ADMIN,ROLE_MODO', ''),
(1200, NULL, 1200, 'ORGANISATION', NULL, 'fa-sitemap', 'ROLE_ADMIN,ROLE_MODO', ''), (1200, NULL, 1200, 'ORGANISATION', NULL, 'fa-sitemap', 'ROLE_ADMIN,ROLE_MODO', ''),
(1210, 1200, 1210, 'Listes Blanche', 'cadoles_core_config_whitelist', 'fa-tasks', 'ROLE_ADMIN', ''), (1210, 1200, 1210, 'Listes Blanche', 'cadoles_core_config_whitelist', 'fa-tasks', 'ROLE_ADMIN', ''),
(1220, 1200, 1220, 'Niveau 01', 'cadoles_core_config_niveau01', 'fa-building', 'ROLE_ADMIN', ''), (1220, 1200, 1220, 'Niveau 01', 'cadoles_core_config_niveau01', 'fa-building', 'ROLE_ADMIN', ''),
@ -28,8 +29,9 @@ INSERT IGNORE INTO `sidebar` (`id`, `parent_id`, `roworder`, `label`, `path`, `f
(1520, 1500, 1520, 'Items', 'cadoles_portal_config_item', 'fa-desktop', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'), (1520, 1500, 1520, 'Items', 'cadoles_portal_config_item', 'fa-desktop', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(1530, 1500, 1530, 'Annonces', 'cadoles_portal_config_alert', 'fa-bell', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'), (1530, 1500, 1530, 'Annonces', 'cadoles_portal_config_alert', 'fa-bell', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(1540, 1500, 1540, 'Calendriers', 'cadoles_portal_config_calendar', 'fa-calendar', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'), (1540, 1500, 1540, 'Calendriers', 'cadoles_portal_config_calendar', 'fa-calendar', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(1550, 1500, 1550, 'Chartes', 'cadoles_portal_config_notice', 'fa-info', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'), (1550, 1500, 1550, 'Blogs', 'cadoles_portal_config_blog', 'fa-paper-plane', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(1560, 1500, 1560, 'Icônes', 'cadoles_portal_config_icon', 'fa-bug', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'), (1560, 1500, 1560, 'Chartes', 'cadoles_portal_config_notice', 'fa-info', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(1570, 1500, 1570, 'Icônes', 'cadoles_portal_config_icon', 'fa-bug', 'ROLE_ADMIN,ROLE_MODO', 'portal_activate'),
(7000, NULL, 7000, 'CRON', NULL, 'fa-bolt', 'ROLE_ADMIN', 'cron_activate'), (7000, NULL, 7000, 'CRON', NULL, 'fa-bolt', 'ROLE_ADMIN', 'cron_activate'),
@ -44,6 +46,8 @@ INSERT IGNORE INTO `config` (`order`, `visible`, `changeable`, `required`, `type
('002', 1, 0, 1, 'string', 'version', '1.0.0', '', 'Version de l\'application'), ('002', 1, 0, 1, 'string', 'version', '1.0.0', '', 'Version de l\'application'),
('003', 1, 1, 0, 'string', 'subappname', 'Portail', '', 'Le sous titre de votre site'), ('003', 1, 1, 0, 'string', 'subappname', 'Portail', '', 'Le sous titre de votre site'),
('004', 1, 1, 1, 'logo', 'logo', 'uploads/logo/logo.png', '', 'Le logo de votre site'), ('004', 1, 1, 1, 'logo', 'logo', 'uploads/logo/logo.png', '', 'Le logo de votre site'),
('005', 1, 0, 0, 'theme', 'theme', '', '', 'Le theme de votre site'),
('040', 1, 1, 1, 'boolean', 'fgheader', '1', '', 'Utiliser une image en bannière du site'), ('040', 1, 1, 1, 'boolean', 'fgheader', '1', '', 'Utiliser une image en bannière du site'),
('041', 1, 1, 1, 'header', 'header', 'uploads/header/header.png', 'fgheader', 'Image en bannière du site'), ('041', 1, 1, 1, 'header', 'header', 'uploads/header/header.png', 'fgheader', 'Image en bannière du site'),

View File

@ -1,7 +1,7 @@
{% set logo = "" %} {% set logo = "" %}
{% set fgheader = "" %} {% set fgheader = "" %}
{% set header = "header.png" %} {% set header = "" %}
{% set heightheader = "" %} {% set heightheader = "" %}
{% set colormain = "2e3131" %} {% set colormain = "2e3131" %}

View File

@ -1,6 +1,3 @@
name: Black name: Black
author: Arnaud Fornerot author: Arnaud Fornerot
version: 1.0 version: 1.0
forcelogo: false
forceheader: true
color: 1e824c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -1,7 +1,7 @@
{% set logo = "" %} {% set logo = "" %}
{% set fgheader = "" %} {% set fgheader = "" %}
{% set header = "header.jpg" %} {% set header = "" %}
{% set heightheader = "" %} {% set heightheader = "" %}
{% set colormain = "6c7a89" %} {% set colormain = "6c7a89" %}

View File

@ -1,6 +1,3 @@
name: Gray name: Gray
author: Arnaud Fornerot author: Arnaud Fornerot
version: 1.0 version: 1.0
forcelogo: false
forceheader: true
color: 6c7a89

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -1,7 +1,7 @@
{% set logo = "" %} {% set logo = "" %}
{% set fgheader = "" %} {% set fgheader = "" %}
{% set header = "header.png" %} {% set header = "" %}
{% set heightheader = "" %} {% set heightheader = "" %}
{% set colormain = "1e824c" %} {% set colormain = "1e824c" %}

View File

@ -1,6 +1,3 @@
name: Green name: Green
author: Arnaud Fornerot author: Arnaud Fornerot
version: 1.0 version: 1.0
forcelogo: false
forceheader: true
color: 1e824c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -1,7 +1,7 @@
{% set logo = "" %} {% set logo = "" %}
{% set fgheader = "" %} {% set fgheader = "" %}
{% set header = "header.jpg" %} {% set header = "" %}
{% set heightheader = "" %} {% set heightheader = "" %}
{% set colormain = "f15a22" %} {% set colormain = "f15a22" %}

View File

@ -1,6 +1,3 @@
name: Orange name: Orange
author: Arnaud Fornerot author: Arnaud Fornerot
version: 1.0 version: 1.0
forcelogo: false
forceheader: true
color: 6c7a89

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -1,7 +1,7 @@
{% set logo = "" %} {% set logo = "" %}
{% set fgheader = "" %} {% set fgheader = "" %}
{% set header = "header.jpg" %} {% set header = "" %}
{% set heightheader = "" %} {% set heightheader = "" %}
{% set colormain = "f7ca18" %} {% set colormain = "f7ca18" %}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -67,7 +67,9 @@
.herotitle img, .herotitle img,
.avatar, .avatar,
.pagemenu, .pagemenu,
.grid .grid-preview .caption .grid .grid-preview .caption,
.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary,
.btn-primary
{ {
background-color: #{{ color['main'] }} background-color: #{{ color['main'] }}
} }
@ -82,7 +84,9 @@
.pagination>.active>span:focus, .pagination>.active>span:focus,
.pagination>.active>span:hover, .pagination>.active>span:hover,
.page-header, .page-header,
.sidebar ul li .sidebar ul li,
.bootstrap-switch.bootstrap-switch-focused,
.btn-primary
{ {
border-color: #{{ color['main'] }} border-color: #{{ color['main'] }}
} }
@ -101,16 +105,26 @@
.nav>li>a:hover, .nav>li>a:hover,
.nav .open>a, .nav .open>a:focus, .nav .open>a:hover, .nav .open>a, .nav .open>a:focus, .nav .open>a:hover,
.sidebar ul li a.active, .sidebar ul li a.active,
.navbar-top-links li.active a .navbar-top-links li.active a,
.nav-pills>li.active>a,
.nav-pills>li.active>a:hover,
.nav-pills>li.active>a:focus,
.btn-primary:hover
{ {
background-color: #{{ color['dark'] }} background-color: #{{ color['dark'] }}
} }
.btn-primary:hover
{
border-color: #{{ color['dark'] }}
}
.form-control:focus .form-control:focus
{ {
border-color: #{{ color['light'] }} border-color: #{{ color['light'] }}
} }
.form-control:focus { .form-control:focus,
.bootstrap-switch.bootstrap-switch-focused {
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba({{ color['lightrgb']['r'] }},{{ color['lightrgb']['g'] }},{{ color['lightrgb']['b'] }},.6) box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba({{ color['lightrgb']['r'] }},{{ color['lightrgb']['g'] }},{{ color['lightrgb']['b'] }},.6)
} }

View File

@ -85,7 +85,7 @@
</button> </button>
<a class="navbar-brand" href="{{ path("cadoles_core_home") }}"> <a class="navbar-brand" href="{{ path("cadoles_core_home") }}">
<img id="logo" src="/{{ alias }}/logo) }}"> <img id="logo" src="/{{ alias }}/{{ logo }}">
{{ app.session.get('appname') }} {{ app.session.get('appname') }}
</a> </a>
</div> </div>

View File

@ -30,9 +30,11 @@ class BlogController extends Controller
public function ajaxlistAction(Request $request,$access="config") public function ajaxlistAction(Request $request,$access="config")
{ {
// S'assurer que c'est un appel ajax // S'assurer que c'est un appel ajax
/*
if (!$request->isXmlHttpRequest()) { if (!$request->isXmlHttpRequest()) {
return new JsonResponse(array('message' => 'Interdit'), 400); return new JsonResponse(array('message' => 'Interdit'), 400);
} }
*/
$em = $this->getDoctrine()->getManager(); $em = $this->getDoctrine()->getManager();
@ -41,17 +43,30 @@ class BlogController extends Controller
$search= $request->query->get('search'); $search= $request->query->get('search');
$draw= $request->query->get('draw'); $draw= $request->query->get('draw');
$order= $request->query->get('order'); $order= $request->query->get('order');
$alluser= $request->query->get('alluser');
// Query de base // Query de base
$qbase=$em->createQueryBuilder() $qbase=$em->createQueryBuilder()->from($this->labelentity,'table');
->from($this->labelentity,'table') $qsearch=$em->createQueryBuilder()->from($this->labelentity,'table');
->leftJoin('CadolesCoreBundle:User','user','WITH','table.user=user')
->addSelect('user');
$qsearch=$qbase->where('table.id LIKE :value') if($alluser=="false") {
->orWhere('table.name LIKE :value') $qbase->where("table.user is null");
->orWhere('user.username LIKE :value') $qsearch->where("table.user is null");
->setParameter("value", "%".$search["value"]."%"); }
else {
$qbase->from('CadolesCoreBundle:User','user')
->where("table.user=user");
$qsearch->from('CadolesCoreBundle:User','user')
->where("table.user=user");
}
if($alluser=="false")
$qsearch->andwhere('table.id LIKE :value OR table.name LIKE :value');
else
$qsearch->andWhere('table.id LIKE :value OR table.name LIKE :value OR user.username LIKE :value') ;
$qsearch->setParameter("value", "%".$search["value"]."%");
// Nombre total d'enregistrement // Nombre total d'enregistrement
$total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult(); $total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult();
@ -75,12 +90,13 @@ class BlogController extends Controller
$qb->orderBy('table.name',$order[0]["dir"]); $qb->orderBy('table.name',$order[0]["dir"]);
break; break;
case 2 : case 2 :
$qb->orderBy('user.username',$order[0]["dir"]); if($alluser=="true") $qb->orderBy('user.username',$order[0]["dir"]);
break; break;
} }
// Execution de la requete d'affichage // Execution de la requete d'affichage
$datas=$qb->setFirstResult($start)->setMaxResults($length)->getQuery()->getResult(); $datas=$qb->setFirstResult($start)->setMaxResults($length)->getQuery()->getResult();
//dump($qsearch->getQuery()->getSql());
// Construction du tableau de retour // Construction du tableau de retour
$output = array( $output = array(

View File

@ -40,17 +40,30 @@ class CalendarController extends Controller
$search= $request->query->get('search'); $search= $request->query->get('search');
$draw= $request->query->get('draw'); $draw= $request->query->get('draw');
$order= $request->query->get('order'); $order= $request->query->get('order');
$alluser= $request->query->get('alluser');
// Query de base // Query de base
$qbase=$em->createQueryBuilder() $qbase=$em->createQueryBuilder()->from($this->labelentity,'table');
->from($this->labelentity,'table') $qsearch=$em->createQueryBuilder()->from($this->labelentity,'table');
->leftJoin('CadolesCoreBundle:User','user','WITH','table.user=user')
->addSelect('user');
$qsearch=$qbase->where('table.id LIKE :value') if($alluser=="false") {
->orWhere('table.name LIKE :value') $qbase->where("table.user is null");
->orWhere('user.username LIKE :value') $qsearch->where("table.user is null");
->setParameter("value", "%".$search["value"]."%"); }
else {
$qbase->from('CadolesCoreBundle:User','user')
->where("table.user=user");
$qsearch->from('CadolesCoreBundle:User','user')
->where("table.user=user");
}
if($alluser=="false")
$qsearch->andwhere('table.id LIKE :value OR table.name LIKE :value');
else
$qsearch->andWhere('table.id LIKE :value OR table.name LIKE :value OR user.username LIKE :value') ;
$qsearch->setParameter("value", "%".$search["value"]."%");
// Nombre total d'enregistrement // Nombre total d'enregistrement
$total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult(); $total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult();
@ -74,7 +87,7 @@ class CalendarController extends Controller
$qb->orderBy('table.name',$order[0]["dir"]); $qb->orderBy('table.name',$order[0]["dir"]);
break; break;
case 2 : case 2 :
$qb->orderBy('user.username',$order[0]["dir"]); if($alluser=="true") $qb->orderBy('user.username',$order[0]["dir"]);
break; break;
} }

View File

@ -49,20 +49,26 @@ class PageController extends Controller
// Query de base // Query de base
$qbase=$em->createQueryBuilder()->from($this->labelentity,'table'); $qbase=$em->createQueryBuilder()->from($this->labelentity,'table');
$qsearch=$em->createQueryBuilder()->from($this->labelentity,'table');
if($alluser=="false") { if($alluser=="false") {
dump("pouet"); $qbase->where("table.user is null");
$qbase->where('table.user IS NOT NULL'); $qsearch->where("table.user is null");
} }
else else {
$qbase->from('CadolesCoreBundle:User','user') $qbase->from('CadolesCoreBundle:User','user')
->where("table.user=user"); ->where("table.user=user");
$qsearch=$qbase->where('table.id LIKE :value') $qsearch->from('CadolesCoreBundle:User','user')
->orWhere('table.name LIKE :value') ->where("table.user=user");
->setParameter("value", "%".$search["value"]."%"); }
if($alluser=="true") $qsearch->orWhere('user.username LIKE :value') ; if($alluser=="false")
$qsearch->andwhere('table.id LIKE :value OR table.name LIKE :value');
else
$qsearch->andWhere('table.id LIKE :value OR table.name LIKE :value OR user.username LIKE :value') ;
$qsearch->setParameter("value", "%".$search["value"]."%");
// Nombre total d'enregistrement // Nombre total d'enregistrement
$total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult(); $total = $qbase->select('COUNT(table)')->getQuery()->getSingleScalarResult();
@ -71,9 +77,9 @@ class PageController extends Controller
// Nombre d'enregistrement filtré // Nombre d'enregistrement filtré
if($search["value"]=="") if($search["value"]=="")
$totalf = $total; $totalf = $total;
else { else
$totalf= $qsearch->select('COUNT(table)')->getQuery()->getSingleScalarResult(); $totalf= $qsearch->select('COUNT(table)')->getQuery()->getSingleScalarResult();
}
// Parcours des Enregistrement // Parcours des Enregistrement
if($search["value"]=="") if($search["value"]=="")
@ -90,13 +96,12 @@ class PageController extends Controller
$qb->orderBy('table.name',$order[0]["dir"]); $qb->orderBy('table.name',$order[0]["dir"]);
break; break;
case 4 : case 4 :
//$qb->orderBy('user.username',$order[0]["dir"]); if($alluser=="true") $qb->orderBy('user.username',$order[0]["dir"]);
break; break;
} }
// Execution de la requete d'affichage // Execution de la requete d'affichage
$datas=$qb->setFirstResult($start)->setMaxResults($length)->getQuery()->getResult(); $datas=$qb->setFirstResult($start)->setMaxResults($length)->getQuery()->getResult();
dump($datas);
// Construction du tableau de retour // Construction du tableau de retour
$output = array( $output = array(

View File

@ -8,6 +8,10 @@
<p> <p>
<a href="{{ path('cadoles_portal_config_blog_submit') }}" class="btn btn-success">Ajouter un Blog</a> <a href="{{ path('cadoles_portal_config_blog_submit') }}" class="btn btn-success">Ajouter un Blog</a>
<span class="pull-right">
<label for="alluser" class="control-label">Afficher les utilisateurs</label>
<input id="alluser" name="alluser" type="checkbox" class="switch" onChange="switchalluser();">
</span>
</p> </p>
<div class="panel panel-primary"> <div class="panel panel-primary">
@ -33,14 +37,21 @@
{% block localjavascript %} {% block localjavascript %}
$(document).ready(function() { $(document).ready(function() {
$('#dataTables').DataTable({ table=$('#dataTables').DataTable({
columnDefs: [ { "targets": 'no-sort', "orderable": false } ], columnDefs: [ { "targets": 'no-sort', "orderable": false } ],
responsive: true, responsive: true,
iDisplayLength: 100, iDisplayLength: 100,
order: [[ 1, "asc" ]], order: [[ 1, "asc" ]],
processing: true, processing: true,
serverSide: true, serverSide: true,
ajax: "{{ path('cadoles_portal_config_blog_ajax_list') }}", ajax: {
"url": "{{ path('cadoles_portal_config_blog_ajax_list') }}",
"data": function ( d ) {
return $.extend( {}, d, {
"alluser": $('#alluser').bootstrapSwitch('state')
});
}
},
drawCallback: function(settings) { drawCallback: function(settings) {
$("a[data-method='delete']").click(function(){ $("a[data-method='delete']").click(function(){
if( !confirm('Êtes-vous sûr de vouloir supprimer ce calendrier ?')) { if( !confirm('Êtes-vous sûr de vouloir supprimer ce calendrier ?')) {
@ -50,7 +61,11 @@
} }
}); });
$(".switch").bootstrapSwitch();
}); });
function switchalluser() {
table.ajax.reload()
}
{% endblock %} {% endblock %}

View File

@ -8,6 +8,11 @@
<p> <p>
<a href="{{ path('cadoles_portal_config_calendar_submit') }}" class="btn btn-success">Ajouter un Calendrier</a> <a href="{{ path('cadoles_portal_config_calendar_submit') }}" class="btn btn-success">Ajouter un Calendrier</a>
<span class="pull-right">
<label for="alluser" class="control-label">Afficher les utilisateurs</label>
<input id="alluser" name="alluser" type="checkbox" class="switch" onChange="switchalluser();">
</span>
</p> </p>
<div class="panel panel-primary"> <div class="panel panel-primary">
@ -33,14 +38,21 @@
{% block localjavascript %} {% block localjavascript %}
$(document).ready(function() { $(document).ready(function() {
$('#dataTables').DataTable({ table = $('#dataTables').DataTable({
columnDefs: [ { "targets": 'no-sort', "orderable": false } ], columnDefs: [ { "targets": 'no-sort', "orderable": false } ],
responsive: true, responsive: true,
iDisplayLength: 100, iDisplayLength: 100,
order: [[ 1, "asc" ]], order: [[ 1, "asc" ]],
processing: true, processing: true,
serverSide: true, serverSide: true,
ajax: "{{ path('cadoles_portal_config_calendar_ajax_list') }}", ajax: {
"url": "{{ path('cadoles_portal_config_calendar_ajax_list') }}",
"data": function ( d ) {
return $.extend( {}, d, {
"alluser": $('#alluser').bootstrapSwitch('state')
});
}
},
drawCallback: function(settings) { drawCallback: function(settings) {
$("a[data-method='delete']").click(function(){ $("a[data-method='delete']").click(function(){
if( !confirm('Êtes-vous sûr de vouloir supprimer ce calendrier ?')) { if( !confirm('Êtes-vous sûr de vouloir supprimer ce calendrier ?')) {
@ -50,7 +62,11 @@
} }
}); });
$(".switch").bootstrapSwitch();
}); });
function switchalluser() {
table.ajax.reload()
}
{% endblock %} {% endblock %}

View File

@ -1,7 +1,7 @@
dico dico
> voir pour ne pas rendre writer ldap obligatoire > voir pour ne pas rendre writer ldap obligatoire
> famille cadoles user visible alors que activer cadoles user non visible (car pas de writer ldap) > famille cadoles user visible alors que activer cadoles user non visible (car pas de writer ldap)
> refaire un point sur le dico
> Rendre l'alias paramétrage par genconfig > Rendre l'alias paramétrage par genconfig
@ -16,13 +16,13 @@ dico
> Calendrier output / input > Calendrier output / input
> Déplacement de widget vers une autre page du meme user > Déplacement de widget vers une autre page du meme user
> Annonces dans pages spécifique > Annonces dans pages spécifique
> upload image sur ckeditor
> widget ToDo > widget ToDo
> widget Titre - Séparateur
> widget rss > widget rss
> widget opened/closed > widget opened/closed
> Parametre canshare > Parametre canshare
> Parametre opentovisitor > Parametre opentovisitor
> Theme > Theme - Reste à mettre un look associé au theme - Voir pour que les themes de base ne force pas le header
> sur menu pills (dans blog et calendrier ) revoir le style du active

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 KiB

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB