You are here

JsonCodec.php in N1ED - Visual editor as CKEditor plugin with Bootstrap support 7

File

vendor/edsdk/file-uploader-server-php/src/lib/JsonCodec.php
View source
<?php

/**
 * File Uploader Server package
 * Developer: N1ED
 * Website: https://n1ed.com/
 * License: GNU General Public License Version 3 or later
 **/
namespace EdSDK\FileUploaderServer\lib;

use Exception;
class JsonCodec {
  protected $m_actions;
  public function __construct($actions) {
    $this->m_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->m_actions
      ->getAction($jsonObj->action);
    if ($action === null) {
      throw new Exception("JSON action is incorrect: " . $action);
    }
    return $jsonObj;
  }
  public function toJson($resp) {
    return JsonCodec::s_toJson($resp);
  }
  public static function s_toJson($resp) {
    $json = json_encode($resp);
    $json = str_replace('\\u0000*\\u0000', '', $json);
    $json = str_replace('\\u0000', '', $json);
    return $json;
  }

}

Classes

Namesort descending Description
JsonCodec