Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
fusiondirectory
fusiondirectory
Commits
4d1154f4
Verified
Commit
4d1154f4
authored
11 months ago
by
dockx thibault
Browse files
Options
Download
Patches
Plain Diff
(phpSetup)
Remove the mail to method and related variables.
parent
a37c6ac3
dev
6342-update-the-locales-for-1-5
6344-template-issue-when-creating-a-template-with-empty-password-error-message-should-not-be-seen
6365-core-locking-mechanism-is-not-changing-the-mail-ressource-it-does-lock-the-mail-account
6365-core-when-lock-mechanism-is-trigger-the-user-should-not-be-editable-if-not-unlock
6378-orcid-test-method-is-wrong-and-break-orcid-saving
core-php8
master
fusiondirectory-1.5
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
include/php_setup.inc
+49
-76
include/php_setup.inc
with
49 additions
and
76 deletions
+49
-76
include/php_setup.inc
+
49
−
76
View file @
4d1154f4
...
...
@@ -45,11 +45,11 @@ function htmlunescape (string $html): string
function
html_trace
(
$errstr
=
""
)
{
static
$hideArgs
=
[
'LDAP/init'
=>
[
3
],
'userinfo/loginUser'
=>
[
1
],
'change_password'
=>
[
1
],
'cred_decrypt'
=>
[
0
,
1
],
'LDAP/__construct'
=>
[
1
],
'LDAP/init'
=>
[
3
],
'userinfo/loginUser'
=>
[
1
],
'change_password'
=>
[
1
],
'cred_decrypt'
=>
[
0
,
1
],
'LDAP/__construct'
=>
[
1
],
];
if
(
!
function_exists
(
'debug_backtrace'
))
{
return
[
''
,
''
];
...
...
@@ -58,24 +58,24 @@ function html_trace ($errstr = "")
$loc
=
''
;
if
(
isset
(
$trace
[
0
][
'file'
]))
{
$loc
=
' - '
.
_
(
'File'
)
.
': '
.
$trace
[
0
][
'file'
];
$loc
=
' - '
.
_
(
'File'
)
.
': '
.
$trace
[
0
][
'file'
];
if
(
isset
(
$trace
[
0
][
'line'
]))
{
$loc
.
=
' ('
.
_
(
'Line'
)
.
' '
.
$trace
[
0
][
'line'
]
.
')'
;
$loc
.
=
' ('
.
_
(
'Line'
)
.
' '
.
$trace
[
0
][
'line'
]
.
')'
;
}
}
$return_html
=
'<table width="100%" style="background-color:#402005;color:white;border:2px solid red;border-spacing:0;border-collapse:collapse;">'
.
'<tr><td colspan="3">'
.
'<h1 style="color:white">'
.
htmlescape
(
_
(
'PHP error'
)
.
' "'
.
$errstr
.
'"'
.
$loc
)
.
'</h1>'
.
'</td></tr>'
;
$return_mailto
=
rawurlencode
(
'=== Trace ==='
);
$return_html
=
'<table width="100%" style="background-color:#402005;color:white;border:2px solid red;border-spacing:0;border-collapse:collapse;">'
.
'<tr><td colspan="3">'
.
'<h1 style="color:white">'
.
htmlescape
(
_
(
'PHP error'
)
.
' "'
.
$errstr
.
'"'
.
$loc
)
.
'</h1>'
.
'</td></tr>'
;
$return_mailto
=
rawurlencode
(
'=== Trace ==='
);
/* Generate trace history */
for
(
$index
=
1
,
$c
=
count
(
$trace
);
$index
<
$c
;
$index
++
)
{
$ct
=
$trace
[
$index
];
$loc
=
''
;
$func
=
''
;
if
(
isset
(
$ct
[
'class'
]))
{
$loc
.
=
_
(
'class'
)
.
' '
.
$ct
[
'class'
];
$loc
.
=
_
(
'class'
)
.
' '
.
$ct
[
'class'
];
$func
.
=
$ct
[
'class'
];
if
(
isset
(
$ct
[
'function'
]))
{
$loc
.
=
' / '
;
...
...
@@ -83,7 +83,7 @@ function html_trace ($errstr = "")
}
}
if
(
isset
(
$ct
[
'function'
]))
{
$loc
.
=
_
(
'function'
)
.
' '
.
$ct
[
'function'
];
$loc
.
=
_
(
'function'
)
.
' '
.
$ct
[
'function'
];
$func
.
=
$ct
[
'function'
];
}
if
(
isset
(
$ct
[
'type'
]))
{
...
...
@@ -110,8 +110,7 @@ function html_trace ($errstr = "")
}
else
{
$hideArgsIndexes
=
[];
}
$f
=
function
(
$index
,
$arg
)
use
(
&
$f
,
$hideArgsIndexes
)
{
$f
=
function
(
$index
,
$arg
)
use
(
&
$f
,
$hideArgsIndexes
)
{
static
$i
=
0
;
if
((
$i
==
0
)
&&
in_array
(
$index
,
$hideArgsIndexes
))
{
return
'***'
;
...
...
@@ -120,17 +119,17 @@ function html_trace ($errstr = "")
return
'…'
;
}
if
(
is_object
(
$arg
))
{
return
'CLASS: '
.
get_class
(
$arg
);
return
'CLASS: '
.
get_class
(
$arg
);
}
elseif
(
is_array
(
$arg
))
{
/* Avoid converting array to string errors */
$i
++
;
$ret
=
'array('
.
implode
(
','
,
array_map
(
$f
,
array_keys
(
$arg
),
$arg
))
.
')'
;
$ret
=
'array('
.
implode
(
','
,
array_map
(
$f
,
array_keys
(
$arg
),
$arg
))
.
')'
;
$i
--
;
return
$ret
;
}
else
{
if
(
strlen
(
"
$arg
"
)
>
512
)
{
$arg
=
substr
(
"
$arg
"
,
0
,
512
)
.
"…"
;
$arg
=
substr
(
"
$arg
"
,
0
,
512
)
.
"…"
;
}
return
'"'
.
htmlescape
(
"
$arg
"
)
.
'"'
;
return
'"'
.
htmlescape
(
"
$arg
"
)
.
'"'
;
}
};
$args
=
implode
(
','
,
array_map
(
$f
,
array_keys
(
$ct
[
'args'
]),
$ct
[
'args'
]));
...
...
@@ -148,23 +147,23 @@ function html_trace ($errstr = "")
}
else
{
$line
=
''
;
}
$color
=
(
$index
&
1
)
?
'#404040'
:
'606060'
;
$return_html
.
=
"<tr style='background-color:
$color
'><td style='padding-left:20px' width=
\"
30%
\"
>"
.
htmlescape
(
_
(
"Trace"
)
.
"[
$index
]:
$loc
"
)
.
'</td>'
;
$return_html
.
=
"<td>"
.
htmlescape
(
_
(
"File"
)
.
":
$file
("
.
_
(
'Line'
)
.
"
$line
)"
)
.
'</td><td width="10%">'
.
htmlescape
(
_
(
"Type"
)
.
":
$type
"
)
.
'</td></tr>'
;
$return_html
.
=
"<tr style='background-color:
$color
'><td colspan=3 style='padding-left:20px;'>"
.
htmlescape
(
_
(
"Arguments"
)
.
":
$args
"
)
.
'</td></tr>'
;
$color
=
(
$index
&
1
)
?
'#404040'
:
'606060'
;
$return_html
.
=
"<tr style='background-color:
$color
'><td style='padding-left:20px' width=
\"
30%
\"
>"
.
htmlescape
(
_
(
"Trace"
)
.
"[
$index
]:
$loc
"
)
.
'</td>'
;
$return_html
.
=
"<td>"
.
htmlescape
(
_
(
"File"
)
.
":
$file
("
.
_
(
'Line'
)
.
"
$line
)"
)
.
'</td><td width="10%">'
.
htmlescape
(
_
(
"Type"
)
.
":
$type
"
)
.
'</td></tr>'
;
$return_html
.
=
"<tr style='background-color:
$color
'><td colspan=3 style='padding-left:20px;'>"
.
htmlescape
(
_
(
"Arguments"
)
.
":
$args
"
)
.
'</td></tr>'
;
/* Add trace part to mailto body */
$return_mailto
.
=
rawurlencode
(
"
\n
Trace["
.
$index
.
"]:"
.
$loc
.
"
\n
File : "
.
$file
.
"
\n
Line : "
.
$line
.
"
\n
Type : "
.
$type
.
"
\n
"
.
$args
.
"
\n
"
);
"
\n
Trace["
.
$index
.
"]:"
.
$loc
.
"
\n
File : "
.
$file
.
"
\n
Line : "
.
$line
.
"
\n
Type : "
.
$type
.
"
\n
"
.
$args
.
"
\n
"
);
}
$return_html
.
=
"</table>"
;
$return_mailto
.
=
rawurlencode
(
"=== /Trace ==="
);
$return_html
.
=
"</table>"
;
$return_mailto
.
=
rawurlencode
(
"=== /Trace ==="
);
return
[
$return_html
,
$return_mailto
];
}
...
...
@@ -182,7 +181,7 @@ function html_trace ($errstr = "")
*/
function
gosaRaiseError
(
$errno
,
$errstr
,
$errfile
,
$errline
)
{
global
$error_collector
,
$config
,
$error_collector_mailto
;
global
$error_collector
,
$config
,
$error_collector_mailto
;
// To avoid recursion - restore original error handler.
restore_error_handler
();
...
...
@@ -207,7 +206,7 @@ function gosaRaiseError ($errno, $errstr, $errfile, $errline)
/* Send all errors to logging class, except "Ldap : No such object" messages*/
if
(
class_exists
(
'logging'
)
&&
!
preg_match
(
'/No such object/'
,
$errstr
))
{
logging
::
log
(
'error'
,
'php'
,
$errfile
,
[],
'Type:'
.
$errno
.
', Message:'
.
$errstr
.
', File:'
.
$errfile
.
', Line: '
.
$errline
);
logging
::
log
(
'error'
,
'php'
,
$errfile
,
[],
'Type:'
.
$errno
.
', Message:'
.
$errstr
.
', File:'
.
$errfile
.
', Line: '
.
$errline
);
}
/* Error messages are hidden in FusionDirectory, so we only send them to the logging class and abort here */
...
...
@@ -219,39 +218,19 @@ function gosaRaiseError ($errno, $errstr, $errfile, $errline)
/* Create header as needed */
if
(
$error_collector
==
""
)
{
/* Mailto body header */
$version
=
FD_VERSION
;
$error_collector_mailto
.
=
rawurlencode
(
"Oups. Seems like you've catched some kind of bug inside FusionDirectory/PHP. You may want to help "
.
"us to improve the software stability. If so, please provide some more information below."
.
"
\n\n
"
.
"*** FusionDirectory bug report ***"
.
"
\n
FusionDirectory Version:
$version
"
.
"
\n\n
"
.
"Please describe what you did to produce this error as detailed as possible."
.
"
\n\n
"
.
"*** PHP error information ***
\n\n
"
);
$error_collector
=
'
<div class="error">
<table width="100%">
<tr>
<td>
<img src="geticon.php?context=status&icon=dialog-warning&size=16" alt="" class="center"/>
<strong style="font-size:14px">'
.
htmlescape
(
_
(
'Generating this page caused the PHP interpreter to raise some errors!'
))
.
'
<strong style="font-size:14px">'
.
htmlescape
(
_
(
'Generating this page caused the PHP interpreter to raise some errors!'
))
.
'
</strong>
</td>
<td align=right>
<a href="mailto:bugs@fusiondirectory.org?subject=FusionDirectory%20bugreport&body=%BUGBODY%">
<img src="geticon.php?context=applications&icon=internet-mail&size=16" title="'
.
htmlescape
(
_
(
'Send bug report to the FusionDirectory Team'
))
.
'" class="center" alt="'
.
htmlescape
(
_
(
'Mail icon'
))
.
'"> '
.
htmlescape
(
_
(
'Send bug report'
))
.
'
</a>
</td>
<td align="right">
<button onClick="$(\'errorbox\').toggle();">'
.
htmlescape
(
_
(
'Toggle information'
))
.
'
<button onClick="$(\'errorbox\').toggle();">'
.
htmlescape
(
_
(
'Toggle information'
))
.
'
</button>
</td>
</tr>
...
...
@@ -260,14 +239,8 @@ function gosaRaiseError ($errno, $errstr, $errfile, $errline)
<div id="errorbox" style="position:absolute; z-index:150; display: none;">'
;
}
/* Create error header */
$error_collector_mailto
.
=
rawurlencode
(
"=== Error ===
\n
"
);
$error_collector_mailto
.
=
rawurlencode
(
"PHP error:
$errstr
(
$errfile
, line
$errline
)
\n
"
);
$error_collector_mailto
.
=
rawurlencode
(
"=== /Error ===
\n\n
"
);
list
(
$html_trace
,
$mailto_trace
)
=
html_trace
(
$errstr
);
$error_collector
.
=
$html_trace
;
$error_collector_mailto
.
=
$mailto_trace
;
$error_collector
.
=
$html_trace
;
/* Flush in case of fatal errors */
if
(
preg_match
(
'/^fatal/i'
,
$errstr
)
||
(
PHP_ERROR_FATAL
==
'TRUE'
))
{
...
...
@@ -276,7 +249,7 @@ function gosaRaiseError ($errno, $errstr, $errfile, $errline)
if
(
PHP_ERROR_FATAL
==
'TRUE'
)
{
$error_collector
=
str_replace
(
'display: none;'
,
''
,
$error_collector
);
}
echo
$error_collector
.
"</div>"
;
echo
$error_collector
.
"</div>"
;
flush
();
exit
;
}
...
...
@@ -292,7 +265,7 @@ function gosaRaiseError ($errno, $errstr, $errfile, $errline)
function
fusiondirectoryExceptionHandler
(
Throwable
$throwable
)
{
try
{
logging
::
log
(
'error'
,
'fatal'
,
''
,
[],
'Uncaught '
.
get_class
(
$throwable
)
.
': '
.
$throwable
->
getMessage
());
logging
::
log
(
'error'
,
'fatal'
,
''
,
[],
'Uncaught '
.
get_class
(
$throwable
)
.
': '
.
$throwable
->
getMessage
());
}
catch
(
Throwable
$t
)
{
/* Ignore exceptions/errors here */
}
...
...
@@ -306,7 +279,7 @@ function fusiondirectoryExceptionHandler (Throwable $throwable)
}
}
catch
(
Throwable
$t
)
{
/* Minimal display if exceptions happens when building the pretty one */
echo
'Uncaught '
.
get_class
(
$throwable
)
.
': '
.
$throwable
->
getMessage
();
echo
'Uncaught '
.
get_class
(
$throwable
)
.
': '
.
$throwable
->
getMessage
();
}
exit
(
255
);
...
...
@@ -321,7 +294,7 @@ function dummy_error_handler ()
/* Bail out for incompatible/old PHP versions */
if
(
!
version_compare
(
phpversion
(),
PHP_MIN_VERSION
,
">="
))
{
echo
"PHP version needs to be "
.
PHP_MIN_VERSION
.
" or above to run FusionDirectory. Aborted."
;
echo
"PHP version needs to be "
.
PHP_MIN_VERSION
.
" or above to run FusionDirectory. Aborted."
;
exit
();
}
...
...
@@ -330,7 +303,7 @@ date_default_timezone_set("GMT");
/* Get base dir for reference */
$BASE_DIR
=
dirname
(
dirname
(
__FILE__
));
$ROOT_DIR
=
$BASE_DIR
.
"/html"
;
$ROOT_DIR
=
$BASE_DIR
.
"/html"
;
error_reporting
(
E_ALL
|
E_STRICT
);
/* Register error handler */
...
...
@@ -341,18 +314,18 @@ set_error_handler('gosaRaiseError', E_WARNING | E_NOTICE | E_USER_ERROR | E_USER
set_exception_handler
(
'fusiondirectoryExceptionHandler'
);
$variables_order
=
'ES'
;
ini_set
(
'track_vars'
,
'1'
);
ini_set
(
'display_errors'
,
'1'
);
ini_set
(
'report_memleaks'
,
'1'
);
ini_set
(
'include_path'
,
".:
$BASE_DIR
/include:"
.
PHP_DIR
.
':'
.
PEAR_DIR
);
ini_set
(
'track_vars'
,
'1'
);
ini_set
(
'display_errors'
,
'1'
);
ini_set
(
'report_memleaks'
,
'1'
);
ini_set
(
'include_path'
,
".:
$BASE_DIR
/include:"
.
PHP_DIR
.
':'
.
PEAR_DIR
);
/* Do smarty setup */
require
(
SMARTY
);
$smarty
=
new
Smarty
;
$smarty
->
setTemplateDir
(
$BASE_DIR
.
'/ihtml/'
);
$smarty
->
caching
=
Smarty
::
CACHING_OFF
;
$smarty
->
setTemplateDir
(
$BASE_DIR
.
'/ihtml/'
);
$smarty
->
caching
=
Smarty
::
CACHING_OFF
;
$smarty
->
assign
(
'css_files'
,
[]);
$smarty
->
assign
(
'js_files'
,
[]);
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets