PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 2.16.1
GiveWP – Donation Plugin and Fundraising Platform v2.16.1
4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 All 253 releases
← All changes | src/Log/LogModel.php +223 -245 4.16.72.16.1 View file →
@@ -8,282 +8,260 @@
8 8 /**
9 9 * Class LogModel
10 10 * @package Give\Log
11 11 *
12 - * @since 2.19.6 added debug
12 + * @method error( string $message, string $source, array $context = [] )
13 + * @method warning( string $message, string $source, array $context = [] )
14 + * @method notice( string $message, string $source, array $context = [] )
15 + * @method success( string $message, string $source, array $context = [] )
16 + * @method info( string $message, string $source, array $context = [] )
17 + * @method http( string $message, string $source, array $context = [] )
18 + *
13 19 * @since 2.10.0
14 - *
15 - * @method error(string $message, string $source, array $context = [])
16 - * @method warning(string $message, string $source, array $context = [])
17 - * @method notice(string $message, string $source, array $context = [])
18 - * @method success(string $message, string $source, array $context = [])
19 - * @method info(string $message, string $source, array $context = [])
20 - * @method http(string $message, string $source, array $context = [])
21 - * @method debug(string $message, string $source, array $context = [])
22 20 */
23 -class LogModel
24 -{
25 - /**
26 - * @var string
27 - */
28 - private $type;
21 +class LogModel {
22 + /**
23 + * @var string
24 + */
25 + private $type;
29 26
30 - /**
31 - * @var string
32 - */
33 - private $message;
27 + /**
28 + * @var string
29 + */
30 + private $message;
34 31
35 - /**
36 - * @var string
37 - */
38 - private $category;
32 + /**
33 + * @var string
34 + */
35 + private $category;
39 36
40 - /**
41 - * @var string
42 - */
43 - private $source;
37 + /**
38 + * @var string
39 + */
40 + private $source;
44 41
45 - /**
46 - * @var array
47 - */
48 - private $context;
42 + /**
43 + * @var array
44 + */
45 + private $context;
49 46
50 - /**
51 - * @var int|null
52 - */
53 - private $id;
47 + /**
48 + * @var int|null
49 + */
50 + private $id;
54 51
55 - /**
56 - * @var string
57 - */
58 - private $date;
52 + /**
53 + * @var string
54 + */
55 + private $date;
59 56
60 - /**
61 - * LogModel constructor.
62 - *
63 - * @param string $type
64 - * @param string $message
65 - * @param string $category
66 - * @param string $source
67 - * @param array $context
68 - * @param int|null $logId
69 - * @param string $date
70 - */
71 - public function __construct($type, $message, $category, $source, $context, $logId, $date)
72 - {
73 - $this->setType($type);
74 - $this->setDate($date);
75 - $this->category = $category;
76 - $this->source = $source;
77 - $this->context = $context;
78 - $this->message = $message;
79 - $this->id = $logId;
80 - }
57 + /**
58 + * LogModel constructor.
59 + *
60 + * @param string $type
61 + * @param string $message
62 + * @param string $category
63 + * @param string $source
64 + * @param array $context
65 + * @param int|null $logId
66 + * @param string $date
67 + */
68 + public function __construct( $type, $message, $category, $source, $context, $logId, $date ) {
69 + $this->setType( $type );
70 + $this->setDate( $date );
71 + $this->category = $category;
72 + $this->source = $source;
73 + $this->context = $context;
74 + $this->message = $message;
75 + $this->id = $logId;
76 + }
81 77
82 - /**
83 - * Set log type
84 - * If log type is not supported, it will fallback to NOTICE type
85 - *
86 - * @param string $type
87 - */
88 - private function setType($type)
89 - {
90 - $this->type = in_array($type, LogType::getAll(), true)
91 - ? $type
92 - : LogType::getDefault();
93 - }
78 + /**
79 + * Set log type
80 + * If log type is not supported, it will fallback to NOTICE type
81 + *
82 + * @param string $type
83 + */
84 + private function setType( $type ) {
85 + $this->type = in_array( $type, LogType::getAll(), true )
86 + ? $type
87 + : LogType::getDefault();
88 + }
94 89
95 - /**
96 - * Set log message
97 - * If not defined, fallback to default value
98 - *
99 - * @param string|null $message
100 - */
101 - private function setMessage($message)
102 - {
103 - $this->message = is_null($message)
104 - ? esc_html__('Something went wrong', 'give')
105 - : $message;
106 - }
90 + /**
91 + * Set log message
92 + * If not defined, fallback to default value
93 + *
94 + * @param string|null $message
95 + */
96 + private function setMessage( $message ) {
97 + $this->message = is_null( $message )
98 + ? esc_html__( 'Something went wrong', 'give' )
99 + : $message;
100 + }
107 101
108 - /**
109 - * Set log date
110 - *
111 - * @param string $date
112 - */
113 - private function setDate($date)
114 - {
115 - $this->date = $this->isValidateDate($date)
116 - ? $date
117 - : date('Y-m-d H:i:s');
118 - }
102 + /**
103 + * Set log date
104 + *
105 + * @param string $date
106 + */
107 + private function setDate( $date ) {
108 + $this->date = $this->isValidateDate( $date )
109 + ? $date
110 + : date( 'Y-m-d H:i:s' );
111 + }
119 112
120 - /**
121 - * Set log source
122 - * If not defined, fallback to default value
123 - *
124 - * @param string|null $source
125 - */
126 - private function setSource($source)
127 - {
128 - $this->source = is_null($source)
129 - ? esc_html__('Give Core', 'give')
130 - : $source;
131 - }
113 + /**
114 + * Set log source
115 + * If not defined, fallback to default value
116 + *
117 + * @param string|null $source
118 + */
119 + private function setSource( $source ) {
120 + $this->source = is_null( $source )
121 + ? esc_html__( 'Give Core', 'give' )
122 + : $source;
123 + }
132 124
133 - /**
134 - * Helper method to check if given string is a valid date
135 - *
136 - * @param string $date
137 - * @param string $format
138 - *
139 - * @return bool
140 - */
141 - public function isValidateDate($date, $format = 'Y-m-d H:i:s')
142 - {
143 - $dateTime = DateTime::createFromFormat($format, $date);
125 + /**
126 + * Helper method to check if given string is a valid date
127 + *
128 + * @param string $date
129 + * @param string $format
130 + *
131 + * @return bool
132 + */
133 + public function isValidateDate( $date, $format = 'Y-m-d H:i:s' ) {
134 + $dateTime = DateTime::createFromFormat( $format, $date );
135 + return $dateTime && $dateTime->format( $format ) === $date;
136 + }
144 137
145 - return $dateTime && $dateTime->format($format) === $date;
146 - }
138 + /**
139 + * @return int
140 + */
141 + public function getId() {
142 + return $this->id;
143 + }
147 144
148 - /**
149 - * @return int
150 - */
151 - public function getId()
152 - {
153 - return $this->id;
154 - }
145 + /**
146 + * @return string
147 + */
148 + public function getType() {
149 + return $this->type;
150 + }
155 151
156 - /**
157 - * @return string
158 - */
159 - public function getType()
160 - {
161 - return $this->type;
162 - }
152 + /**
153 + * @return string
154 + */
155 + public function getCategory() {
156 + return $this->category;
157 + }
163 158
164 - /**
165 - * @return string
166 - */
167 - public function getCategory()
168 - {
169 - return $this->category;
170 - }
159 + /**
160 + * @return string
161 + */
162 + public function getSource() {
163 + return $this->source;
164 + }
171 165
172 - /**
173 - * @return string
174 - */
175 - public function getSource()
176 - {
177 - return $this->source;
178 - }
166 + /**
167 + * @return string
168 + */
169 + public function getMessage() {
170 + return $this->message;
171 + }
179 172
180 - /**
181 - * @return string
182 - */
183 - public function getMessage()
184 - {
185 - return $this->message;
186 - }
173 + /**
174 + * @return array
175 + */
176 + public function getContext() {
177 + return $this->context;
178 + }
187 179
188 - /**
189 - * @return array
190 - */
191 - public function getContext()
192 - {
193 - return $this->context;
194 - }
180 + /**
181 + * @return string
182 + */
183 + public function getDate() {
184 + return $this->date;
185 + }
195 186
196 - /**
197 - * @return string
198 - */
199 - public function getDate()
200 - {
201 - return $this->date;
202 - }
187 + /**
188 + * Get context data
189 + *
190 + * @param bool $jsonEncode
191 + *
192 + * @return string|array
193 + */
194 + public function getData( $jsonEncode = false ) {
195 + $data = [
196 + 'message' => $this->getMessage(),
197 + 'context' => $this->getContext(),
198 + ];
203 199
204 - /**
205 - * Get context data
206 - *
207 - * @param bool $jsonEncode
208 - *
209 - * @return string|array
210 - */
211 - public function getData($jsonEncode = false)
212 - {
213 - $data = [
214 - 'message' => $this->getMessage(),
215 - 'context' => $this->getContext(),
216 - ];
200 + if ( $jsonEncode ) {
201 + return json_encode( $data );
202 + }
217 203
218 - if ($jsonEncode) {
219 - return json_encode($data);
220 - }
204 + return $data;
205 + }
221 206
222 - return $data;
223 - }
207 + /**
208 + * @param string $key
209 + * @param mixed $value
210 + */
211 + private function addContext( $key, $value ) {
212 + if ( is_array( $value ) || is_object( $value ) ) {
213 + $value = print_r( $value, true );
214 + }
215 + $this->context[ $key ] = $value;
216 + }
224 217
225 - /**
226 - * @param string $key
227 - * @param mixed $value
228 - */
229 - private function addContext($key, $value)
230 - {
231 - if (is_array($value) || is_object($value)) {
232 - $value = print_r($value, true);
233 - }
234 - $this->context[$key] = $value;
235 - }
218 + /**
219 + * Add supplemental information to existing log.
220 + * Supplemental data will be added as a context with a key prefixed with the current timestamp.
221 + *
222 + * @param string $key
223 + * @param string $value
224 + */
225 + public function addSupplemental( $key, $value ) {
226 + $contextName = sprintf( '[%s] %s', date( 'Y-m-d H:i:s' ), $key );
227 + $this->addContext( $contextName, $value );
228 + }
236 229
237 - /**
238 - * Add supplemental information to existing log.
239 - * Supplemental data will be added as a context with a key prefixed with the current timestamp.
240 - *
241 - * @param string $key
242 - * @param string $value
243 - */
244 - public function addSupplemental($key, $value)
245 - {
246 - $contextName = sprintf('[%s] %s', date('Y-m-d H:i:s'), $key);
247 - $this->addContext($contextName, $value);
248 - }
230 + /**
231 + * @param string $type
232 + * @param array $args
233 + */
234 + public function __call( $type, $args ) {
235 + list ( $message, $source, $context ) = array_pad( $args, 3, null );
249 236
250 - /**
251 - * @param string $type
252 - * @param array $args
253 - */
254 - public function __call($type, $args)
255 - {
256 - list ($message, $source, $context) = array_pad($args, 3, null);
237 + $this->setType( $type );
238 + $this->setMessage( $message );
239 + $this->setSource( $source );
257 240
258 - $this->setType($type);
259 - $this->setMessage($message);
260 - $this->setSource($source);
241 + // Set additional context
242 + if ( is_array( $context ) ) {
243 + foreach ( $context as $key => $value ) {
244 + $this->addContext( $key, $value );
245 + }
246 + }
261 247
262 - // Set additional context
263 - if (is_array($context)) {
264 - foreach ($context as $key => $value) {
265 - $this->addContext($key, $value);
266 - }
267 - }
248 + $this->save();
249 + }
268 250
269 - $this->save();
270 - }
251 + /**
252 + * Save log record
253 + */
254 + public function save() {
255 + /**
256 + * var LogRepository $repository
257 + */
258 + $repository = give( LogRepository::class );
271 259
272 - /**
273 - * Save log record
274 - */
275 - public function save()
276 - {
277 - /**
278 - * var LogRepository $repository
279 - */
280 - $repository = give(LogRepository::class);
281 -
282 - if ($this->getId()) {
283 - $this->date = date('Y-m-d H:i:s');
284 - $repository->updateLog($this);
285 - } else {
286 - $this->id = $repository->insertLog($this);
287 - }
288 - }
260 + if ( $this->getId() ) {
261 + $this->date = date( 'Y-m-d H:i:s' );
262 + $repository->updateLog( $this );
263 + } else {
264 + $this->id = $repository->insertLog( $this );
265 + }
266 + }
289 267 }