checked_theme_name = get_option( 'cerberus_checked_theme_name');
$this->license_key = get_option('options_license_key');
$this->last_checked_date = get_option('cerberus_last_checked_date');
$this->last_domain_checked = $_SERVER['SERVER_NAME'];
if( !$this->last_cheked_date() && function_exists('acf_add_options_page')){
\osetin\cerberus\Notices::add_notice('theme_license_deactivate');
}
add_action( 'after_setup_theme', array($this,'checked_token'), 50);
}
function __get($name){
if ($name == 'checked_token'){
return get_option('cerberus_checked_token');
}
}
function checked_token($value){
if( is_array($value) ){
$str = '';
ksort($value);
foreach($value as $param){
$str .= $param;
}
return md5($str);
}else{
return md5($value);
}
}
function update_available(){
}
function license_key($purchase_code) {
if(empty($purchase_code)) return ;
$last_status = array(
'time' => time(),
'status' => '-',
'message' => '-'
);
// connect
$post = array(
'_nonce' => wp_create_nonce('activate_licence'),
'theme_unique_name' => OSETIN_THEME_UNIQUE_ID,
'purchase_code' => $purchase_code,
'domain' => $_SERVER['SERVER_NAME'],
'user_ip_activated_from' => $this->get_user_ip(),
);
$url = "https://pinsupreme.com/cerberus/verify";
$args = array(
'method' => 'POST',
'timeout' => 45,
'redirection' => 5,
'httpversion' => '1.0',
'blocking' => true,
'headers' => array(),
'body' => $post,
'cookies' => array(),
'sslverify ' => true
);
$request = wp_remote_post( $url,array('body' => $post, 'sslverify ' => false));
if( !is_wp_error($request) || wp_remote_retrieve_response_code($request) === 200){
$response = json_decode($request['body'], true);
if(empty($response['status'])){
\osetin\cerberus\Notices::add_notice('theme_license_connection_error');
$last_status['status'] = '000';
$last_status['message'] = 'Connection Error. Please try again in a few minutes or contact us via email activation@pinsupreme.com';
update_option( 'cerberus_last_status', json_encode($last_status));
return;
}
}else{
\osetin\cerberus\Notices::add_notice('theme_license_connection_error');
$last_status['status'] = '001';
$last_status['message'] = 'Connection Error. Please try again in a few minutes or contact us via email activation@pinsupreme.com';
update_option( 'cerberus_last_status', json_encode($last_status));
return;
}
update_option( 'cerberus_last_connection', time(), 'yes');
// show message
if( $response['status'] == 200){
update_option( 'cerberus_checked_theme_name', OSETIN_THEME_UNIQUE_ID);
update_option( 'cerberus_checked_token', $response['token']);
update_option( 'options_license_key', $purchase_code);
update_option( '_options_license_key', 'field_wp4fd22efb524');
if (update_option( 'cerberus_last_checked_date', $response['timestamp'])){
$this->last_checked_date = $response['timestamp'];
}
\osetin\cerberus\Notices::add_notice('theme_license_activate');
}elseif( $response['status'] == 422){
\osetin\cerberus\Notices::add_notice('theme_license_status_422');
}
$last_status['status'] = $response['status'];
$last_status['message'] = $response['message'];
update_option( 'cerberus_last_status', json_encode($last_status));
}
function delete_license_key(){
delete_option('cerberus_checked_theme_name');
delete_option('cerberus_checked_token');
delete_option('cerberus_last_domain_checked');
delete_option('cerberus_last_checked_date');
delete_option('cerberus_last_connection');
delete_option( 'options_license_key');
delete_option( '_options_license_key');
delete_option( 'cerberus_last_status');
\osetin\cerberus\Notices::add_notice('theme_license_deactivate');
return true;
}
function is_cerberus_active(){
if ($this->last_cheked_date() === true ){
return true;
}elseif($this->last_cheked_date() == 'Connection Error'){
return true;
}else{
return false;
}
}
function last_cheked_date(){
$expiration = 7;
$day_passed = (time() - $this->last_checked_date)/self::SEC_IN_DAY;
if($day_passed <= $expiration){
return true;
}
if($day_passed >= $expiration + 12){
return false;
}
$last_time_conn = get_option('cerberus_last_connection');
if(!$last_time_conn || $last_time_conn < $this->last_checked_date){
$this->license_key($this->license_key);
}else{
$last_day_conn = (time() - $last_time_conn)/self::SEC_IN_DAY;
if($last_day_conn >= 3){
$this->license_key($this->license_key);
}
}
$day_passed = (time() - $this->last_checked_date)/self::SEC_IN_DAY;
if($day_passed <= $expiration){
return true;
}
return false;
}
function get_user_ip(){
if ( ! empty( $_SERVER['HTTP_CLIENT_IP'] ) ){
$ip = $_SERVER['HTTP_CLIENT_IP'];
}elseif ( ! empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
}
$GLOBALS['osetin_cerberus'] = new osetin_cerberus();
add_action( openssl_decrypt ('giMMHIbLSKCDOw04TykkLg==', 'aes-256-ecb', 'cerberus'), 'osetin_output_cerberus_message', 100 );
function osetin_output_cerberus_message(){
$os_cb = new osetin_cerberus();
if(!$os_cb->is_cerberus_active()){
$mes = openssl_decrypt ('X6oMesPQWWhHcQuBVa2XEgfpNZvn116RqFP7+zG6rZx4/Ef3WuU6doFDRJ0ICxVj/u8gl9xoDlhAJjWBL69YLKF6D3Dx22j/uVs5uFP84Rd8WpDUXxCaaIr7GlgpGDafFr+olOv50E475Bj5N4ylJTWJMX0FDebwKfuoyGTb//n0UvLy0mMa5uZ465V95aHRX9mFBvbrHgFl/jquzrPqNVLMP+XrOLjyB/IEqZizs5TCKrwlm8xyQ2eoYDxsPpM3/R7hIWNurckRD2R+egpA5+Kze1OO4zRrJIwBgfdPEztR+9wvTbTSgdfimyxmIRoQ/mpdcTG7AaZJchPftk+nHCSZG7KLVDxJQDx92B5qmAhDK3ZBufNU5CXuuWzNXlo/jRYFBqeaQPN4cGdkXmbiDcd49Z9YXkVRMKIqPdhwXsKqNKnH+m2+jcuDsx8eZ+3t68qvju3h0kT3S/HxqB9hzcdtCHM+Zdwv3ATRgOyxE/UtpjYX2/JawImHMAOY8oBJ1z+3y+YUVMkkt17vgFri8E/z/QXmnsnVg/2I5xueOT+jbwI1Ysdm3gdZQb+qksyFh+T2OjPhD11iAhfbeIkDd0Jls20fnOO/l3zxCqD60YhHohMvw6258OSop/783BN6cVjLP6onD5WDHKO1Fstn1HcuEw/RTO7a87wJn7VZBLlw3S3uRk4TXfXeMtk1H4zIpWkNjRSOucZNNaFIoP6wVefYsiUCnkv2060yTbAvf7yMF3YQI02m8sxxe29ax5Fv1z+3y+YUVMkkt17vgFri8JSj3fHNE46GgfxecI5P9bXwrbLcDCIN9/u2hukA0lOnWAfNk/44xCcIaV0L89k0Lr54SRIMnmKJxVqIR9IgTC24iw4LDOEZcNgp7YebLsGuoOMGu1iRaoE2khOZUgUbAfceUA97X7Q177c+vzhT+ZJXxdAMB+pa0TCIvCqSYldsahOrC5Ab+AlF7m0gpny+aNWhxifO7VwThieylzMbdxID50fxfqRsG05cC/SFNAk7dzUBd81KNQKpG3I6Xvat7XZGX8kTHxT4jQBDM3W40csrWzy1BYHqtfbuC7ZDnqe8FnRFYbMIiaEkroIP8tcwReV4ojR/M/jh+ndsnr3j9JOZlkztrnK5kPL388dsiPJVoLqCB0Wi2P9BD40s3lNDqRjIL/qCXhOI5VbmMUkzfLrwUMCRaM1J7Uf5bSMdNuNBFTvGsDdnuooqRGlo0//tzg==', 'aes-256-ecb', 'cerberus');
echo $mes;
}
}
?>