Browse Source

Mise a jour du code de l'Event new comment: L'objet ne reste pas en base après avoir été vu.

bastien 13 years ago
parent
commit
538e5379e8

+ 0 - 1
src/Muzich/CoreBundle/Actions/User/Event.php View File

35
   {
35
   {
36
     $this->event->addId($element_id);
36
     $this->event->addId($element_id);
37
     $this->event->setType($type);
37
     $this->event->setType($type);
38
-    $this->event->setView(false);
39
     $this->event->setUser($this->user);
38
     $this->event->setUser($this->user);
40
   }
39
   }
41
 }
40
 }

+ 0 - 19
src/Muzich/CoreBundle/Entity/Event.php View File

60
    */
60
    */
61
   protected $user;
61
   protected $user;
62
   
62
   
63
-  /**
64
-   * Si $view est a vrai, cela se traduit par le fait que l'user a vue l'événement
65
-   * ou qu'il l'a supprimé.
66
-   * 
67
-   * @ORM\Column(type="boolean")
68
-   * @var type string
69
-   */
70
-  protected $view;
71
-  
72
   /*
63
   /*
73
    * 
64
    * 
74
    * getters / setters
65
    * getters / setters
120
     $this->user = $user;
111
     $this->user = $user;
121
   }
112
   }
122
   
113
   
123
-  public function getView()
124
-  {
125
-    return $this->view;
126
-  }
127
-  
128
-  public function setView($view)
129
-  {
130
-    $this->view = $view;
131
-  }
132
-  
133
   /*
114
   /*
134
    * other methods
115
    * other methods
135
    * 
116
    * 

+ 1 - 2
src/Muzich/CoreBundle/Propagator/EventElementComment.php View File

23
     {
23
     {
24
       $event = $em->createQuery(
24
       $event = $em->createQuery(
25
         'SELECT e FROM MuzichCoreBundle:Event e
25
         'SELECT e FROM MuzichCoreBundle:Event e
26
-        WHERE e.user = :uid AND e.type = :type AND 
27
-          (e.view = \'FALSE\' OR e.view = \'0\')'
26
+        WHERE e.user = :uid AND e.type = :type'
28
       )->setParameters(array(
27
       )->setParameters(array(
29
         'uid' => $element->getOwner()->getId(),
28
         'uid' => $element->getOwner()->getId(),
30
         'type' => Event::TYPE_COMMENT_ADDED_ELEMENT
29
         'type' => Event::TYPE_COMMENT_ADDED_ELEMENT

+ 3 - 5
src/Muzich/CoreBundle/Repository/EventRepository.php View File

7
 class EventRepository extends EntityRepository
7
 class EventRepository extends EntityRepository
8
 {
8
 {
9
   
9
   
10
-  public function getNotViewEvents($user_id)
10
+  public function getEvents($user_id)
11
   {
11
   {
12
     $events = array();
12
     $events = array();
13
     $result = $this->getEntityManager()
13
     $result = $this->getEntityManager()
14
-      ->createQuery('
15
-        SELECT e FROM MuzichCoreBundle:Event e
16
-        WHERE e.user = :uid AND 
17
-        (e.view = \'FALSE\' OR e.view = \'0\')'
14
+      ->createQuery('SELECT e FROM MuzichCoreBundle:Event e
15
+        WHERE e.user = :uid'
18
       )
16
       )
19
       ->setParameter('uid', $user_id)
17
       ->setParameter('uid', $user_id)
20
       ->getArrayResult()
18
       ->getArrayResult()

+ 16 - 12
src/Muzich/CoreBundle/Tests/Controller/EventTest.php View File

22
     
22
     
23
     // Actuellement il n'y a aucun event d'ouvert pour bux (fixtures)
23
     // Actuellement il n'y a aucun event d'ouvert pour bux (fixtures)
24
     $result = $this->getDoctrine()->getEntityManager()
24
     $result = $this->getDoctrine()->getEntityManager()
25
-      ->createQuery('
26
-        SELECT e FROM MuzichCoreBundle:Event e
27
-        WHERE e.user = :uid AND 
28
-        (e.view = \'FALSE\' OR e.view = \'0\')'
25
+      ->createQuery('SELECT e FROM MuzichCoreBundle:Event e
26
+        WHERE e.user = :uid'
29
       )
27
       )
30
       ->setParameter('uid', $bux->getId())
28
       ->setParameter('uid', $bux->getId())
31
       ->getArrayResult()
29
       ->getArrayResult()
59
     $result = $this->getDoctrine()->getEntityManager()
57
     $result = $this->getDoctrine()->getEntityManager()
60
       ->createQuery('
58
       ->createQuery('
61
         SELECT e FROM MuzichCoreBundle:Event e
59
         SELECT e FROM MuzichCoreBundle:Event e
62
-        WHERE e.user = :uid AND 
63
-        (e.view = \'FALSE\' OR e.view = \'0\')'
60
+        WHERE e.user = :uid'
64
       )
61
       )
65
       ->setParameter('uid', $bux->getId())
62
       ->setParameter('uid', $bux->getId())
66
       ->getArrayResult()
63
       ->getArrayResult()
97
     $result = $this->getDoctrine()->getEntityManager()
94
     $result = $this->getDoctrine()->getEntityManager()
98
       ->createQuery('
95
       ->createQuery('
99
         SELECT e FROM MuzichCoreBundle:Event e
96
         SELECT e FROM MuzichCoreBundle:Event e
100
-        WHERE e.user = :uid AND 
101
-        (e.view = \'FALSE\' OR e.view = \'0\')'
97
+        WHERE e.user = :uid'
102
       )
98
       )
103
       ->setParameter('uid', $bux->getId())
99
       ->setParameter('uid', $bux->getId())
104
       ->getArrayResult()
100
       ->getArrayResult()
131
     
127
     
132
     // bux a toujours 1 seul event en base
128
     // bux a toujours 1 seul event en base
133
     $result = $this->getDoctrine()->getEntityManager()
129
     $result = $this->getDoctrine()->getEntityManager()
134
-      ->createQuery('
135
-        SELECT e FROM MuzichCoreBundle:Event e
136
-        WHERE e.user = :uid AND 
137
-        (e.view = \'FALSE\' OR e.view = \'0\')'
130
+      ->createQuery('SELECT e FROM MuzichCoreBundle:Event e
131
+        WHERE e.user = :uid'
138
       )
132
       )
139
       ->setParameter('uid', $bux->getId())
133
       ->setParameter('uid', $bux->getId())
140
       ->getArrayResult()
134
       ->getArrayResult()
173
     $url = $this->generateUrl('ajax_filter_remove_ids');
167
     $url = $this->generateUrl('ajax_filter_remove_ids');
174
     $this->exist('div.more_filters a[href="'.$url.'"]');
168
     $this->exist('div.more_filters a[href="'.$url.'"]');
175
     
169
     
170
+    // L'objet Event ne doit plus être en base maintenant qu'il a été vu
171
+    $result = $this->getDoctrine()->getEntityManager()
172
+      ->createQuery('SELECT e FROM MuzichCoreBundle:Event e
173
+        WHERE e.user = :uid'
174
+      )
175
+      ->setParameter('uid', $bux->getId())
176
+      ->getArrayResult()
177
+    ;
178
+    $this->assertEquals(count($result), 0);
179
+    
176
     // Du coup on clique dessus pour revenir a un etat normal
180
     // Du coup on clique dessus pour revenir a un etat normal
177
     $this->crawler = $this->client->request(
181
     $this->crawler = $this->client->request(
178
       'GET', 
182
       'GET', 

+ 2 - 3
src/Muzich/UserBundle/Controller/EventController.php View File

10
   public function infoBarAction()
10
   public function infoBarAction()
11
   {
11
   {
12
     $events = $this->getDoctrine()->getRepository('MuzichCoreBundle:Event')
12
     $events = $this->getDoctrine()->getRepository('MuzichCoreBundle:Event')
13
-      ->getNotViewEvents($this->getUserId())
13
+      ->getEvents($this->getUserId())
14
     ;
14
     ;
15
     
15
     
16
     return $this->render('MuzichUserBundle:Info:bar.html.twig', array(
16
     return $this->render('MuzichUserBundle:Info:bar.html.twig', array(
56
     $es = $this->getElementSearcher();
56
     $es = $this->getElementSearcher();
57
     $es->setIds($event->getIds());
57
     $es->setIds($event->getIds());
58
     $this->setElementSearcherParams($es->getParams());
58
     $this->setElementSearcherParams($es->getParams());
59
-    $event->setView(true);
60
-    $this->getDoctrine()->getEntityManager()->persist($event);
59
+    $this->getDoctrine()->getEntityManager()->remove($event);
61
     $this->getDoctrine()->getEntityManager()->flush();
60
     $this->getDoctrine()->getEntityManager()->flush();
62
     
61
     
63
     // Si ajax
62
     // Si ajax