diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php index a37a3b33..295bd91e 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php @@ -310,8 +310,10 @@ $color->setColor(); if($curentuser!="anon.") { - // Préférence header + // Préférence $preference=$curentuser->getPreference(); + + // Préférence header if(array_key_exists("fgheader",$preference)) { $fgheader=($preference["fgheader"][0]=="true"); $session->set("fgheader", $fgheader); diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Repository/PageRepository.php b/src/ninegate-1.0/src/Cadoles/PortalBundle/Repository/PageRepository.php index 49eebe6c..56263a80 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Repository/PageRepository.php +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Repository/PageRepository.php @@ -227,6 +227,14 @@ class PageRepository extends EntityRepository return (int) $first->getRowOrder() > (int) $second->getRowOrder() ? 1 : -1; }); + // Afficher par défaut la pagebookmarké par l'utilisateur en préférence + if($user&&!isset($id)) { + $preference=$user->getPreference(); + if(array_key_exists("pagebookmark",$preference)) { + $id=$preference["pagebookmark"][0]; + } + } + // On récupère la page à afficher $entity=false; if(isset($id)) { @@ -258,7 +266,7 @@ class PageRepository extends EntityRepository // ou On récupère la premier page profilée comme page d'accueil if(!$entity) { - $pages->rewind(); + $pages->rewind(); if($pages->current()) { $id=$pages->current()->getId(); $entity = $this->find($id); diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/pages.html.twig b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/pages.html.twig index 063b097f..8affb318 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/pages.html.twig +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/pages.html.twig @@ -97,6 +97,7 @@ + @@ -450,6 +451,7 @@ $("#menuupdate").hide(); $("#menushare").hide(); $("#menudelete").hide(); + $("#menubookmark").hide(); $("#menuwidgetuser").hide(); $("#menuwidgetgroup").hide(); @@ -459,6 +461,10 @@ $("#menudelete").show(); } + {% if app.user %} + $("#menubookmark").show(); + {% endif %} + // Si page de type widget on affiche la selection des widgets à insérer if($("#page-"+id).data('category')==2&&canupdate) { if(usage=="user") $("#menuwidgetuser").show(); @@ -516,6 +522,24 @@ } } + function bookmarkPage() { + {% if app.user %} + if($("#page-"+idpage).length) { + if (confirm("Êtes-vous sûr de vouloir placer cette page comme page d'accueil du portail ?")) { + $.ajax({ + method: "POST", + url: "{{ path('cadoles_core_user_preference') }}", + data: { + id:0, + key:'pagebookmark', + value: idpage + } + }); + } + } + {% endif %} + } + // Création d'un widget selectionné function selWidget(idwidgettype) { var url="{{ path('cadoles_portal_user_pagewidget_widget_sumbit',{idpage:'yy',idwidgettype:'xx'})}}";