JsonCodec.php in N1ED - Visual editor as CKEditor plugin with Bootstrap support 8.2
File
src/Flmngr/FileUploaderServer/lib/JsonCodec.php
View source
<?php
namespace Drupal\n1ed\Flmngr\FileUploaderServer\lib;
use Exception;
class JsonCodec {
protected $actions;
public function __construct($actions) {
$this->actions = $actions;
}
public function fromJson($json) {
$jsonObj = json_decode($json, FALSE);
if ($jsonObj === NULL) {
throw new Exception('Unable to parse JSON');
}
if (!isset($jsonObj->action)) {
throw new Exception('"Unable to detect action in JSON"');
}
$action = $this->actions
->getAction($jsonObj->action);
if ($action === NULL) {
throw new Exception("JSON action is incorrect: " . $action);
}
return $jsonObj;
}
public function toJson($resp) {
return JsonCodec::staticToJson($resp);
}
public static function staticToJson($resp) {
$json = json_encode($resp);
$json = str_replace('\\u0000*\\u0000', '', $json);
$json = str_replace('\\u0000', '', $json);
return $json;
}
public static function s_toJson($resp) {
$json = json_encode($resp);
$json = str_replace('\\u0000*\\u0000', '', $json);
$json = str_replace('\\u0000', '', $json);
return $json;
}
}
Classes
Name |
Description |
JsonCodec |
JSON coder/decoder.
Converting objects to JSON and back with fixing some common encoding errors. |