Skip to content
Snippets Groups Projects
Commit 269b746d authored by tbrehm's avatar tbrehm
Browse files

Merged revision 2308 from stable branch.

parent 59433e2b
No related branches found
No related tags found
No related merge requests found
...@@ -322,6 +322,7 @@ class tform_actions { ...@@ -322,6 +322,7 @@ class tform_actions {
} }
$this->onAfterDelete(); $this->onAfterDelete();
$app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_after_delete',$this);
} }
//header("Location: ".$liste["file"]."?PHPSESSID=".$_SESSION["s"]["id"]); //header("Location: ".$liste["file"]."?PHPSESSID=".$_SESSION["s"]["id"]);
......
...@@ -55,6 +55,72 @@ if($token == '' or $secret == '' or $token != $secret) { ...@@ -55,6 +55,72 @@ if($token == '' or $secret == '' or $token != $secret) {
} }
$out['type'] = $type; $out['type'] = $type;
echo json_encode($out); function __json_encode($data) {
if( is_array($data) || is_object($data) ) {
$islist = is_array($data) && ( empty($data) || array_keys($data) === range(0,count($data)-1) );
if( $islist ) {
$json = '[' . implode(',', array_map('__json_encode', $data) ) . ']';
} else {
$items = Array();
foreach( $data as $key => $value ) {
$items[] = __json_encode("$key") . ':' . __json_encode($value);
}
$json = '{' . implode(',', $items) . '}';
}
} elseif( is_string($data) ) {
# Escape non-printable or Non-ASCII characters.
# I also put the \\ character first, as suggested in comments on the 'addcslashes' page.
$string = '"' . addcslashes($data, "\\\"\n\r\t/" . chr(8) . chr(12)) . '"';
$json = '';
$len = strlen($string);
# Convert UTF-8 to Hexadecimal Codepoints.
for( $i = 0; $i < $len; $i++ ) {
$char = $string[$i];
$c1 = ord($char);
# Single byte;
if( $c1 <128 ) {
$json .= ($c1 > 31) ? $char : sprintf("\\u%04x", $c1);
continue;
}
# Double byte
$c2 = ord($string[++$i]);
if ( ($c1 & 32) === 0 ) {
$json .= sprintf("\\u%04x", ($c1 - 192) * 64 + $c2 - 128);
continue;
}
# Triple
$c3 = ord($string[++$i]);
if( ($c1 & 16) === 0 ) {
$json .= sprintf("\\u%04x", (($c1 - 224) <<12) + (($c2 - 128) << 6) + ($c3 - 128));
continue;
}
# Quadruple
$c4 = ord($string[++$i]);
if( ($c1 & 8 ) === 0 ) {
$u = (($c1 & 15) << 2) + (($c2>>4) & 3) - 1;
$w1 = (54<<10) + ($u<<6) + (($c2 & 15) << 2) + (($c3>>4) & 3);
$w2 = (55<<10) + (($c3 & 15)<<6) + ($c4-128);
$json .= sprintf("\\u%04x\\u%04x", $w1, $w2);
}
}
} else {
# int, floats, bools, null
$json = strtolower(var_export( $data, true ));
}
return $json;
}
if(function_exists('json_encode')) { // PHP >= 5.2
echo json_encode($out);
} else { // PHP < 5.2
echo __json_encode($out);
}
exit; exit;
?> ?>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment