Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F804555
globals.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Feb 26, 1:33 PM
Size
7 KB
Mime Type
text/x-php
Expires
Fri, Feb 28, 1:33 PM (21 h, 3 m)
Engine
blob
Format
Raw Data
Handle
577062
Attached To
rINP In-Portal
globals.php
View Options
<?php
/**
* array_merge_recursive2()
*
* Similar to array_merge_recursive but keyed-valued are always overwritten.
* Priority goes to the 2nd array.
*
* @static yes
* @param $paArray1 array
* @param $paArray2 array
* @return array
* @access public
*/
function
array_merge_recursive2
(
$paArray1
,
$paArray2
)
{
if
(!
is_array
(
$paArray1
)
or
!
is_array
(
$paArray2
))
{
return
$paArray2
;
}
foreach
(
$paArray2
AS
$sKey2
=>
$sValue2
)
{
$paArray1
[
$sKey2
]
=
array_merge_recursive2
(
getArrayValue
(
$paArray1
,
$sKey2
),
$sValue2
);
}
return
$paArray1
;
}
if
(!
function_exists
(
'print_pre'
))
{
/**
* Same as print_r, budet designed for viewing in web page
*
* @param Array $data
* @param string $label
*/
function
print_pre
(
$data
,
$label
=
''
)
{
if
(
defined
(
'DEBUG_MODE'
)
&&
DEBUG_MODE
)
{
global
$debugger
;
if
(
$label
)
$debugger
->
appendHTML
(
'<b>'
.
$label
.
'</b>'
);
$debugger
->
dumpVars
(
$data
);
}
else
{
if
(
$label
)
echo
'<b>'
,
$label
,
'</b><br>'
;
echo
'<pre>'
,
print_r
(
$data
,
true
),
'</pre>'
;
}
}
}
if
(!
function_exists
(
'getArrayValue'
))
{
/**
* Returns array value if key exists
*
* @param Array $array searchable array
* @param int $key array key
* @return string
* @access public
*/
//
function
getArrayValue
(&
$array
,
$key
)
{
$ret
=
isset
(
$array
[
$key
])
?
$array
[
$key
]
:
false
;
if
(
$ret
&&
func_num_args
()
>
2
)
{
for
(
$i
=
2
;
$i
<
func_num_args
();
$i
++)
{
$cur_key
=
func_get_arg
(
$i
);
$ret
=
getArrayValue
(
$ret
,
$cur_key
);
if
(
$ret
===
false
)
break
;
}
}
return
$ret
;
}
}
/**
* Rename key in associative array, maintaining keys order
*
* @param Array $array Associative Array
* @param mixed $old Old key name
* @param mixed $new New key name
* @access public
*/
function
array_rename_key
(&
$array
,
$old
,
$new
)
{
foreach
(
$array
as
$key
=>
$val
)
{
$new_array
[
$key
==
$old
?
$new
:
$key
]
=
$val
;
}
$array
=
$new_array
;
}
/**
* Define constant if it was not already defined before
*
* @param string $const_name
* @param string $const_value
* @access public
*/
function
safeDefine
(
$const_name
,
$const_value
)
{
if
(!
defined
(
$const_name
))
define
(
$const_name
,
$const_value
);
}
if
(
!
function_exists
(
'parse_portal_ini'
)
)
{
function
parse_portal_ini
(
$file
,
$parse_section
=
false
)
{
if
(!
file_exists
(
$file
))
return
false
;
if
(
file_exists
(
$file
)
&&
!
is_readable
(
$file
)
)
die
(
'Could Not Open Ini File'
);
$contents
=
file
(
$file
);
$retval
=
Array
();
$section
=
''
;
$ln
=
1
;
$resave
=
false
;
foreach
(
$contents
as
$line
)
{
if
(
$ln
==
1
&&
$line
!=
'<'
.
'?'
.
'php die() ?'
.
">
\n
"
)
{
$resave
=
true
;
}
$ln
++;
$line
=
trim
(
$line
);
$line
=
eregi_replace
(
';[.]*'
,
''
,
$line
);
if
(
strlen
(
$line
)
>
0
)
{
//echo $line . " - ";
if
(
eregi
(
'^[[a-z]+]$'
,
str_replace
(
' '
,
''
,
$line
)))
{
//echo 'section';
$section
=
substr
(
$line
,
1
,(
strlen
(
$line
)-
2
));
if
(
$parse_section
)
{
$retval
[
$section
]
=
array
();
}
continue
;
}
elseif
(
eregi
(
'='
,
$line
))
{
//echo 'main element';
list
(
$key
,
$val
)
=
explode
(
' = '
,
$line
);
if
(!
$parse_section
)
{
$retval
[
trim
(
$key
)]
=
str_replace
(
'"'
,
''
,
$val
);
}
else
{
$retval
[
$section
][
trim
(
$key
)]
=
str_replace
(
'"'
,
''
,
$val
);
}
}
//end if
//echo '<br />';
}
//end if
}
//end foreach
if
(
$resave
)
{
$fp
=
fopen
(
$file
,
'w'
);
reset
(
$contents
);
fwrite
(
$fp
,
'<'
.
'?'
.
'php die() ?'
.
">
\n\n
"
);
foreach
(
$contents
as
$line
)
fwrite
(
$fp
,
"$line"
);
fclose
(
$fp
);
}
return
$retval
;
}
}
if
(
!
function_exists
(
'getmicrotime'
)
)
{
function
getmicrotime
()
{
list
(
$usec
,
$sec
)
=
explode
(
" "
,
microtime
());
return
((
float
)
$usec
+
(
float
)
$sec
);
}
}
if
(
!
function_exists
(
'k4_include_once'
)
)
{
function
k4_include_once
(
$file
)
{
if
(
defined
(
'DEBUG_MODE'
)
&&
DEBUG_MODE
&&
dbg_ConstOn
(
'DBG_PROFILE_INCLUDES'
)
)
{
if
(
in_array
(
$file
,
get_required_files
())
)
return
;
global
$debugger
;
$debugger
->
IncludeLevel
++;
$before_time
=
getmicrotime
();
$before_mem
=
memory_get_usage
();
include_once
(
$file
);
$used_time
=
getmicrotime
()
-
$before_time
;
$used_mem
=
memory_get_usage
()
-
$before_mem
;
$debugger
->
IncludeLevel
--;
$debugger
->
IncludesData
[
'file'
][]
=
str_replace
(
DOC_ROOT
.
BASE_PATH
,
''
,
$file
);
$debugger
->
IncludesData
[
'mem'
][]
=
$used_mem
;
$debugger
->
IncludesData
[
'time'
][]
=
$used_time
;
$debugger
->
IncludesData
[
'level'
][]
=
$debugger
->
IncludeLevel
;
}
else
{
include_once
(
$file
);
}
}
}
/**
* Checks if string passed is serialized array
*
* @param string $string
* @return bool
*/
function
IsSerialized
(
$string
)
{
if
(
is_array
(
$string
)
)
return
false
;
return
preg_match
(
'/a:([
\d
]+):{/'
,
$string
);
}
if
(!
function_exists
(
'makepassword4'
)){
function
makepassword4
(
$length
=
10
)
{
$pass_length
=
$length
;
$p1
=
array
(
'b'
,
'c'
,
'd'
,
'f'
,
'g'
,
'h'
,
'j'
,
'k'
,
'l'
,
'm'
,
'n'
,
'p'
,
'q'
,
'r'
,
's'
,
't'
,
'v'
,
'w'
,
'x'
,
'y'
,
'z'
);
$p2
=
array
(
'a'
,
'e'
,
'i'
,
'o'
,
'u'
);
$p3
=
array
(
'1'
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
,
'7'
,
'8'
,
'9'
);
$p4
=
array
(
'('
,
'&'
,
')'
,
';'
,
'%'
);
// if you need real strong stuff
// how much elements in the array
// can be done with a array count but counting once here is faster
$s1
=
21
;
// this is the count of $p1
$s2
=
5
;
// this is the count of $p2
$s3
=
9
;
// this is the count of $p3
$s4
=
5
;
// this is the count of $p4
// possible readable combinations
$c1
=
'121'
;
// will be like 'bab'
$c2
=
'212'
;
// will be like 'aba'
$c3
=
'12'
;
// will be like 'ab'
$c4
=
'3'
;
// will be just a number '1 to 9' if you dont like number delete the 3
// $c5='4'; // uncomment to active the strong stuff
$comb
=
'4'
;
// the amount of combinations you made above (and did not comment out)
for
(
$p
=
0
;
$p
<
$pass_length
;)
{
mt_srand
((
double
)
microtime
()*
1000000
);
$strpart
=
mt_rand
(
1
,
$comb
);
// checking if the stringpart is not the same as the previous one
if
(
$strpart
<>
$previous
)
{
$pass_structure
.=
$
{
'c'
.
$strpart
};
// shortcutting the loop a bit
$p
=
$p
+
strlen
(
$
{
'c'
.
$strpart
});
}
$previous
=
$strpart
;
}
// generating the password from the structure defined in $pass_structure
for
(
$g
=
0
;
$g
<
strlen
(
$pass_structure
);
$g
++)
{
mt_srand
((
double
)
microtime
()*
1000000
);
$sel
=
substr
(
$pass_structure
,
$g
,
1
);
$pass
.=
$
{
'p'
.
$sel
}[
mt_rand
(
0
,-
1
+
$
{
's'
.
$sel
})];
}
return
$pass
;
}
}
if
(
!
function_exists
(
'unhtmlentities'
)
)
{
function
unhtmlentities
(
$string
)
{
$trans_tbl
=
get_html_translation_table
(
HTML_ENTITIES
);
$trans_tbl
=
array_flip
(
$trans_tbl
);
return
strtr
(
$string
,
$trans_tbl
);
}
}
/**
* submits $url with $post as POST
*
* @param string $url
* @param unknown_type $post
* @return unknown
*/
function
curl_post
(
$url
,
$post
)
{
$ch
=
curl_init
(
$url
);
curl_setopt
(
$ch
,
CURLOPT_POST
,
1
);
curl_setopt
(
$ch
,
CURLOPT_POSTFIELDS
,
$post
);
curl_setopt
(
$ch
,
CURLOPT_RETURNTRANSFER
,
1
);
$ret
=
curl_exec
(
$ch
);
curl_close
(
$ch
);
return
$ret
;
}
?>
Event Timeline
Log In to Comment