1: <?php
2: /*************************************************************************************/
3: /* */
4: /* Thelia */
5: /* */
6: /* Copyright (c) OpenStudio */
7: /* email : info@thelia.net */
8: /* web : http://www.thelia.net */
9: /* */
10: /* This program is free software; you can redistribute it and/or modify */
11: /* it under the terms of the GNU General Public License as published by */
12: /* the Free Software Foundation; either version 3 of the License */
13: /* */
14: /* This program is distributed in the hope that it will be useful, */
15: /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
16: /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
17: /* GNU General Public License for more details. */
18: /* */
19: /* You should have received a copy of the GNU General Public License */
20: /* along with this program. If not, see <http://www.gnu.org/licenses/>. */
21: /* */
22: /*************************************************************************************/
23:
24: namespace Thelia\Tpex\Event;
25:
26: use Symfony\Component\EventDispatcher\Event;
27: use Symfony\Component\HttpFoundation\Request;
28:
29: class TpexEvent extends Event
30: {
31: /**
32: * the current content parsing by Tpex
33: * @var string
34: */
35: protected $content;
36:
37: protected $request;
38:
39: /**
40: *
41: * @param string $content the text parsing by Tpex
42: */
43: public function __construct($content, Request $request)
44: {
45: $this->content = $content;
46: $this->request = $request;
47: }
48:
49: /**
50: *
51: * @return string $content
52: */
53: public function getContent()
54: {
55: return $this->content;
56: }
57:
58: /**
59: *
60: * set the content. This don't stop propagation, pther EventListener can modify the content
61: *
62: * @param string $content
63: */
64: public function setContent($content)
65: {
66: if (empty($content)) {
67: throw new \InvalidArgumentException("content can not be empty");
68: }
69:
70: $this->content = $content;
71: }
72: }
73: