PluginProbe
Tracking Code Manager / 2.3.0
Tracking Code Manager v2.3.0
2.8.0 2.7.0 trunk 1.11.8 1.11.9 1.12.0 1.12.1 1.12.2 1.12.3 1.4 1.5 2.0.0 2.0.1 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.2.0 All 29 releases
← All changes | includes/classes/utils/Logger.php +89 -83 2.0.12.3.0 View file →
@@ -1,83 +1,89 @@
1 -<?php
2 -
3 -// Exit if accessed directly
4 -if ( ! defined( 'ABSPATH' ) ) exit;
5 -
6 -class TCMP_Logger {
7 - private $name;
8 - private $context=array();
9 -
10 - public function __construct($name='TCMP') {
11 - if($name=='') $name='TCMP';
12 - $this->name=$name;
13 - }
14 -
15 - public function pushContext($context) {
16 - array_push($this->context, $context);
17 - }
18 - public function popContext() {
19 - array_pop($this->context);
20 - }
21 -
22 - public function fatal($message, $v1=NULL, $v2=NULL, $v3=NULL, $v4=NULL, $v5=NULL, $v6=NULL) {
23 - $what=$this->write('[FATAL]', $message, $v1, $v2, $v3, $v4, $v5, $v6);
24 - die($what);
25 - }
26 - public function debug($message, $v1=NULL, $v2=NULL, $v3=NULL, $v4=NULL, $v5=NULL, $v6=NULL) {
27 - $this->write('[DEBUG]', $message, $v1, $v2, $v3, $v4, $v5, $v6);
28 - }
29 - public function info($message, $v1=NULL, $v2=NULL, $v3=NULL, $v4=NULL, $v5=NULL, $v6=NULL) {
30 - $this->write('[INFO] ', $message, $v1, $v2, $v3, $v4, $v5, $v6);
31 - }
32 - public function error($message, $v1=NULL, $v2=NULL, $v3=NULL, $v4=NULL, $v5=NULL, $v6=NULL) {
33 - $this->write('[ERROR]', $message, $v1, $v2, $v3, $v4, $v5, $v6);
34 - }
35 - private function dump($v) {
36 - if(is_array($v) && count($v)==0) {
37 - $v='[]';
38 - }
39 - if($v!=NULL) {
40 - if(is_array($v) || is_object($v)) {
41 - $v=print_r($v, TRUE);
42 - }
43 - }
44 - if(is_bool($v)) {
45 - $v=($v ? 'TRUE' : 'FALSE');
46 - }
47 - return $v;
48 - }
49 - private function write($verbosity, $message, $v1=NULL, $v2=NULL, $v3=NULL, $v4=NULL, $v5=NULL, $v6=NULL) {
50 - global $tcmp;
51 -
52 - $text=sprintf($message
53 - , $this->dump($v1)
54 - , $this->dump($v2)
55 - , $this->dump($v3)
56 - , $this->dump($v4)
57 - , $this->dump($v5)
58 - , $this->dump($v6));
59 - $message=date("d/m/Y H:i:s")." ".$verbosity." ";
60 - if(count($this->context)>0) {
61 - $message.='{'.$this->context[count($this->context)-1].'} ';
62 - }
63 - $message="\n".$message.$text;
64 - if(!$tcmp->Options->isLoggerEnable()) {
65 - return $message;
66 - }
67 -
68 - $hasErrors=false;
69 - $filename=TCMP_PLUGIN_DIR."logs/".$this->name."_".date("Ym").".txt";
70 - if (!$handle = fopen($filename, 'a')) {
71 - $hasErrors=true;
72 - }
73 -
74 - if(!$hasErrors && fwrite($handle, $message)===FALSE) {
75 - $hasErrors=true;
76 - }
77 -
78 - if(!$hasErrors) {
79 - fclose($handle);
80 - }
81 - return $message;
82 - }
83 -}
1 +<?php
2 +
3 +// Exit if accessed directly
4 +if ( ! defined( 'ABSPATH' ) ) {
5 + exit;
6 +}
7 +
8 +class TCMP_Logger {
9 + private $name;
10 + private $context = array();
11 +
12 + public function __construct( $name = 'TCMP' ) {
13 + if ( '' == $name ) {
14 + $name = 'TCMP';
15 + }
16 + $this->name = $name;
17 + }
18 +
19 + public function pushContext( $context ) {
20 + array_push( $this->context, $context );
21 + }
22 + public function popContext() {
23 + array_pop( $this->context );
24 + }
25 +
26 + public function fatal( $message, $v1 = null, $v2 = null, $v3 = null, $v4 = null, $v5 = null, $v6 = null ) {
27 + $what = $this->write( '[FATAL]', $message, $v1, $v2, $v3, $v4, $v5, $v6 );
28 + die( $what );
29 + }
30 + public function debug( $message, $v1 = null, $v2 = null, $v3 = null, $v4 = null, $v5 = null, $v6 = null ) {
31 + $this->write( '[DEBUG]', $message, $v1, $v2, $v3, $v4, $v5, $v6 );
32 + }
33 + public function info( $message, $v1 = null, $v2 = null, $v3 = null, $v4 = null, $v5 = null, $v6 = null ) {
34 + $this->write( '[INFO] ', $message, $v1, $v2, $v3, $v4, $v5, $v6 );
35 + }
36 + public function error( $message, $v1 = null, $v2 = null, $v3 = null, $v4 = null, $v5 = null, $v6 = null ) {
37 + $this->write( '[ERROR]', $message, $v1, $v2, $v3, $v4, $v5, $v6 );
38 + }
39 + private function dump( $v ) {
40 + if ( is_array( $v ) && 0 == count( $v ) ) {
41 + $v = '[]';
42 + }
43 + if ( null != $v ) {
44 + if ( is_array( $v ) || is_object( $v ) ) {
45 + $v = print_r( $v, true );
46 + }
47 + }
48 + if ( is_bool( $v ) ) {
49 + $v = ( $v ? 'TRUE' : 'FALSE' );
50 + }
51 + return $v;
52 + }
53 + private function write( $verbosity, $message, $v1 = null, $v2 = null, $v3 = null, $v4 = null, $v5 = null, $v6 = null ) {
54 + global $tcmp;
55 +
56 + $text = sprintf(
57 + $message,
58 + $this->dump( $v1 ),
59 + $this->dump( $v2 ),
60 + $this->dump( $v3 ),
61 + $this->dump( $v4 ),
62 + $this->dump( $v5 ),
63 + $this->dump( $v6 )
64 + );
65 + $message = date( 'd/m/Y H:i:s' ) . ' ' . $verbosity . ' ';
66 + if ( count( $this->context ) > 0 ) {
67 + $message .= '{' . $this->context[ count( $this->context ) - 1 ] . '} ';
68 + }
69 + $message = "\n" . $message . $text;
70 + if ( ! $tcmp->options->isLoggerEnable() ) {
71 + return $message;
72 + }
73 +
74 + $hasErrors = false;
75 + $filename = TCMP_PLUGIN_DIR . 'logs/' . $this->name . '_' . date( 'Ym' ) . '.txt';
76 + if ( ! $handle = fopen( $filename, 'a' ) ) {
77 + $hasErrors = true;
78 + }
79 +
80 + if ( ! $hasErrors && fwrite( $handle, $message ) === false ) {
81 + $hasErrors = true;
82 + }
83 +
84 + if ( ! $hasErrors ) {
85 + fclose( $handle );
86 + }
87 + return $message;
88 + }
89 +}