From e1870633c14bee6eb52b8e244ebf8ce1b7725c97 Mon Sep 17 00:00:00 2001
From: gloas <gloas@afi-sa.fr>
Date: Thu, 31 Jan 2019 14:11:56 +0100
Subject: [PATCH] dev #64573 rating input

---
 library/ZendAfi/Form/Review.php               | 23 ++++++++-
 .../View/Helper/ListeNotices/Abstract.php     |  1 +
 .../Intonation/Assets/css/intonation.css      | 50 +++++++++++++++++++
 3 files changed, 72 insertions(+), 2 deletions(-)

diff --git a/library/ZendAfi/Form/Review.php b/library/ZendAfi/Form/Review.php
index 40901a8259c..e2be78522d3 100644
--- a/library/ZendAfi/Form/Review.php
+++ b/library/ZendAfi/Form/Review.php
@@ -24,11 +24,30 @@ class ZendAfi_Form_Review extends ZendAfi_Form {
   public function init() {
     parent::init();
 
+    $id = 'review_' . uniqid();
+
+    Class_ScriptLoader::getInstance()
+      ->addJQueryReady(sprintf('
+$("#%1$s input[name=note]:checked").parent().addClass("checked");
+$("#%1$s input[name=note]").click(function() {
+  $("#%1$s input[name=note]").parent().removeClass("checked");
+  if (!$(this).is("checked"))
+    return $(this).parent().addClass("checked");
+});',
+                               $id));
+
     $this
 
-      ->addElement('text',
+      ->setAttrib('id', $id)
+
+      ->addElement('radio',
                    'note',
-                   ['label' => $this->_('Note')])
+                   ['label' => $this->_('Note'),
+                    'multiOptions' => ['5' => '',
+                                       '4' => '',
+                                       '3' => '',
+                                       '2' => '',
+                                       '1' => '']])
 
       ->addElement('text',
                    'entete',
diff --git a/library/ZendAfi/View/Helper/ListeNotices/Abstract.php b/library/ZendAfi/View/Helper/ListeNotices/Abstract.php
index 79595eabf9c..4a819081868 100644
--- a/library/ZendAfi/View/Helper/ListeNotices/Abstract.php
+++ b/library/ZendAfi/View/Helper/ListeNotices/Abstract.php
@@ -78,6 +78,7 @@ abstract class ZendAfi_View_Helper_ListeNotices_Abstract extends ZendAfi_View_He
 
   public function loadScript(){
     Class_ScriptLoader::getInstance()
+      ->addOPACScript('recherche')
       ->addInlineScript("var resumeAjaxBaseUrl='".$this->view->url(['controller' => 'noticeajax', 'action' => 'resumenotice'],null,true)."';")
       ->addOPACScript('liste_notices_mur')
       ->addJQueryReady("scrollToSelectedNoticeInResult(); vignetteHover($('.resultat_recherche .liste_mur .notice[data-id]'));");
diff --git a/library/templates/Intonation/Assets/css/intonation.css b/library/templates/Intonation/Assets/css/intonation.css
index 4500d4d4e40..7a3765b7c94 100644
--- a/library/templates/Intonation/Assets/css/intonation.css
+++ b/library/templates/Intonation/Assets/css/intonation.css
@@ -299,4 +299,54 @@ pre {
 
 textarea {
     width: 100%;
+}
+
+label[for=note] ~ div {
+    display: flex;
+    flex-direction: row-reverse;
+    overflow: hidden;
+}
+
+input[name="note"] {
+    display: none;
+}
+
+label.multi-element-label {
+    color: var(--orange);
+    display: inline-block;
+    flex: auto;
+    font-size: 1.25em;
+    font-weight: 200;
+    margin: 0;
+    padding: 0 3px 0 0;
+    transition: all .2s;
+}
+
+label.multi-element-label:hover {
+    cursor: pointer;
+    color: var(--teal);
+    font-weight: 900;
+}
+
+label.multi-element-label:hover ~ label {
+    font-weight: 900;
+    color: var(--teal);
+}
+
+label.multi-element-label:before {
+    content: '\f005';
+    font-family: "Font Awesome 5 Free";
+}
+
+label.multi-element-label.checked,
+label.multi-element-label.checked ~ label {
+    font-weight: 900;
+}
+
+label.multi-element-label + br {
+    display: none;
+}
+
+.card .boutons .bouton.back {
+    display: none;
 }
\ No newline at end of file
-- 
GitLab