|
@@ -12,6 +12,7 @@ use Muzich\CoreBundle\Managers\CommentsManager;
|
12
|
12
|
use Muzich\CoreBundle\Entity\ElementTagsProposition;
|
13
|
13
|
use Muzich\CoreBundle\Managers\EventArchiveManager;
|
14
|
14
|
use Muzich\CoreBundle\Entity\EventArchive;
|
|
15
|
+use Muzich\CoreBundle\Security\Context as SecurityContext;
|
15
|
16
|
|
16
|
17
|
/**
|
17
|
18
|
* Propagateur d'événement concernant les éléments
|
|
@@ -102,12 +103,16 @@ class EventElement extends EventPropagator
|
102
|
103
|
*
|
103
|
104
|
* @param Element $element
|
104
|
105
|
*/
|
105
|
|
- public function addedToFavorites(Element $element)
|
|
106
|
+ public function addedToFavorites(Element $element, User $added_by_user)
|
106
|
107
|
{
|
107
|
108
|
$ur = new UserReputation($element->getOwner());
|
108
|
|
- $ur->addPoints(
|
109
|
|
- $this->container->getParameter('reputation_element_favorite_value')
|
110
|
|
- );
|
|
109
|
+ $security_context = new SecurityContext($added_by_user);
|
|
110
|
+ if (!$security_context->actionIsAffectedBy(SecurityContext::AFFECT_NO_SCORING, SecurityContext::ACTION_ELEMENT_ADD_TO_FAVORITES))
|
|
111
|
+ {
|
|
112
|
+ $ur->addPoints(
|
|
113
|
+ $this->container->getParameter('reputation_element_favorite_value')
|
|
114
|
+ );
|
|
115
|
+ }
|
111
|
116
|
|
112
|
117
|
$uea = new UserEventAction($element->getOwner(), $this->container);
|
113
|
118
|
$event = $uea->proceed(Event::TYPE_FAV_ADDED_ELEMENT, $element->getId());
|
|
@@ -119,12 +124,16 @@ class EventElement extends EventPropagator
|
119
|
124
|
*
|
120
|
125
|
* @param Element $element
|
121
|
126
|
*/
|
122
|
|
- public function removedFromFavorites(Element $element)
|
|
127
|
+ public function removedFromFavorites(Element $element, User $removed_by_user)
|
123
|
128
|
{
|
124
|
129
|
$ur = new UserReputation($element->getOwner());
|
125
|
|
- $ur->removePoints(
|
126
|
|
- $this->container->getParameter('reputation_element_favorite_value')
|
127
|
|
- );
|
|
130
|
+ $security_context = new SecurityContext($removed_by_user);
|
|
131
|
+ if (!$security_context->actionIsAffectedBy(SecurityContext::AFFECT_NO_SCORING, SecurityContext::ACTION_ELEMENT_ADD_TO_FAVORITES))
|
|
132
|
+ {
|
|
133
|
+ $ur->removePoints(
|
|
134
|
+ $this->container->getParameter('reputation_element_favorite_value')
|
|
135
|
+ );
|
|
136
|
+ }
|
128
|
137
|
}
|
129
|
138
|
|
130
|
139
|
/**
|