![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/gositeme.com/public_html/wp-content/plugins/whmpress/admin/ |
<?php
/**
* @package Admin
* @todo Visual composer plugin integration
* @since 1.3.0
*/
if (!defined('WHMP_VERSION')) {
header('Status: 403 Forbidden');
header('HTTP/1.1 403 Forbidden');
exit();
}
//add_shortcode_param( 'whmpress_icon', 'whmpress_vc_icon', WHMP_PLUGIN_URL.'/admin/js/new_vc_param.js' );
vc_add_shortcode_param('whmpress_icon', 'whmpress_vc_icon', WHMP_PLUGIN_URL . '/admin/js/new_vc_param.js');
function whmpress_vc_icon($settings, $value)
{
//$dependency = vc_generate_dependencies_attributes( $settings );
$pattern = '/\.(icon-(?:\w+(?:-)?)+):before\s+{\s*content:\s*"(.+)";\s+}/';
//read_local_file
$w = new WHMPress;
$fa_icons = $w->font_awesome_icons();
#file_put_contents("D:\abc.txt", $value."\n", FILE_APPEND);
$icons = "";
foreach ($fa_icons as $icon) {
$icons .= "<i data-id='whmp_vc_" . esc_attr($settings['param_name']) . "' class='fa $icon'></i>";
}
return '<div class="my_param_block">' . '<style>.whmpress_select_window i {' . 'display:inline-block;height:40px;min-width:40px;text-align:center;padding:5px;vertical-align:middle;border:1px solid #ddd;margin:2px;cursor:pointer;box-sizing:content-box' . '}
.whmpress_select_window i:hover {background:#000000;color:#FFFFFF}
</style>' . '<div class="whmp_icon_preview" style="display: inline-block;
margin-right: 10px;
height: 60px;
width: 90px;
text-align: center;
background: #FAFAFA;
font-size: 60px;
padding: 15px 0;
margin-bottom: 10px;
border: 1px solid #DDD;
float: left;
box-sizing: content-box;"></div>' . '<input
style="width: 230px; margin-right: 10px; vertical-align: top; float: left; margin-bottom: 10px" name="' . esc_attr($settings['param_name']) . '"
id="whmp_vc_' . esc_attr($settings['param_name']) . '" class="wpb_vc_param_value wpb-textinput ' . esc_attr($settings['param_name']) . ' textfield ' . esc_attr($settings['type']) . '_field" type="text" value="' . esc_attr($value) . '" />
<div class="whmpress_select_window" style="font-size: 40px; width: 100%; padding: 8px;
box-sizing: border-box;
-moz-box-sizing: border-box;
background: #FAFAFA;
height: 250px;
overflow-y: scroll;
border: 1px solid #DDD;
clear: both">' . $icons . '</div>' . '</div>';
}
add_action('vc_before_init', 'WHMPress_integrateWithVC');
function WHMPress_integrateWithVC()
{
$WHMPress = new WHMPress;
$Products = whmp_get_products(true);
$Products = array_reverse($Products, true);
$Products["-- Select Product/Service --"] = "0";
$Products = array_reverse($Products, true);
//$Slabs = whmp_get_slabs(true);
$BillingCycles["Default"] = "";
$BillingCycles["Monthly/One Time"] = "monthly";
$BillingCycles["Quarterly"] = "quarterly";
$BillingCycles["Semi Annually"] = "semiannually";
$BillingCycles["Annually"] = "annually";
$BillingCycles["Biennially"] = "biennially";
$BillingCycles["Triennially"] = "triennially";
$YesNo["Default"] = "";
$YesNo["Yes"] = "yes";
$YesNo["No"] = "no";
$NoYes["Default"] = "";
$NoYes["No"] = "no";
$NoYes["Yes"] = "yes";
$ProductTypes = $WHMPress->get_product_types(true);
$Currencies = $WHMPress->get_currencies(true);
global $whmp_shortcodes_list;
global $donot_use;
foreach ($donot_use as $du) {
unset($whmp_shortcodes_list[$du]);
}
global $donot_include_editors;
if (!defined('WHCOM_VERSION')) {
$donot_include_editors[] = 'whmpress_domain_search_ajax_extended';
}
foreach ($whmp_shortcodes_list as $shortcode => $ff) {
## If current shortcode is skipped for Editor integration.
## in includes/shortcodes.php
if (is_array($donot_include_editors) && in_array($shortcode, $donot_include_editors)) {
continue;
}
$Files = $WHMPress->get_template_files($shortcode);
$FilesList = $ImagesList = [];
$FilesList["Default"] = "";
$ImagesList["Default"] = "";
if (get_option("load_sytle_orders") == "author" || get_option("load_sytle_orders") == "whmpress") {
if (isset($Files["html"]) && is_array($Files["html"])) {
foreach ($Files["html"] as $name => $filename) {
$FilesList["Template: " . $name] = $filename;
}
}
} else {
$AllTemplateFiles = $WHMPress->get_all_template_files($shortcode);
foreach ($AllTemplateFiles as $FILE) {
$FilesList[$FILE['description']] = $FILE['file_path'];
}
}
if ($Files !== false) {
/*foreach ( $Files["html"] as $k => $v ) {
//if( strtolower($k)<>"default" ) $FilesList[$k] = $v;
if ( strtolower( $k ) == "default" ) {
unset( $Files["html"][ $k ] );
} else {
$FilesList[ $k ] = $v;
}
}*/
foreach ($Files["images"] as $k => $v) {
$ImagesList[$k] = $v;
}
}
$short_params = $WHMPress->get_shortcode_parameters($shortcode);
$params = [];
$ten = 1000;
foreach ($short_params as $key => $spm) {
$array = [];
## Skip vc_type = "label" in VC.
if (isset($spm["vc_type"]) && $spm["vc_type"] == "label") {
continue;
}
if (is_array($spm)) {
$params_name = $key;
} else {
$params_name = $spm;
}
if ($params_name == "html_template") {
if(isset($Files["html"]) && sizeof($Files["html"]) > 0 ){
$show = true;
}else{
$show = false;
}
#if ($show) reset($Files["html"]);
#if ($show && sizeof($Files["html"]=="1") && ( strtolower(key($Files["html"]))=="default" ) ) $show = false;
/*if ( $shortcode == "whmpress_pricing_table" ) {
show_array($FilesList); die;
}*/
if ($show) {
$array["type"] = "dropdown";
$array["heading"] = "Select template file";
$array["param_name"] = "html_template";
$array["value"] = $FilesList;
$array["description"] = "Select HTML template file";
}
} elseif ($params_name == "image") {
if (isset($Files["images"]) && (sizeof($Files["images"]) > 0)){
$show = true;
}else{
$show = false;
}
if ($show) {
if (strtolower(@$spm["hide_if_template_file"]) <> "yes") {
$array["type"] = "dropdown";
$array["heading"] = "Select image";
$array["param_name"] = "image";
$array["value"] = $ImagesList;
}
}
} elseif ($params_name == "html_id") {
$show = true;
if (isset($Files["html"]) && sizeof($Files["html"]) > 0 && isset($spm["hide_if_template_file"]) && strtolower($spm["hide_if_template_file"]) == "yes") {
$show = false;
}
@$spm["hide_in_vc"] = array_key_exists("hide_in_vc", $spm) ? @$spm["hide_in_vc"] : "";
if (strtolower(@$spm["hide_in_vc"]) == "yes") {
$show = false;
}
if ($show) {
$array["type"] = "textfield";
$array["heading"] = "HTML id";
$array["param_name"] = "html_id";
$array["value"] = "";
$array["description"] = "HTML id for container";
}
} elseif (is_array($spm)) {
//==if value index exist in array then assign value otherwise not
@$spm["value"] = array_key_exists("value", $spm) ? @$spm["value"] : "";
if (!isset($spm["type"])) {
$spm["type"] = "textbox";
}
if ($key == "vc_options") {
//NOTE:this is being added to avoid duplicate shortcode that occurs with @refrence for announcement
// when $_TITLE veriable is used
$vc_shortcode_title = $spm["title"];
$_TITLE = @$spm["title"];
} else {
$show = true;
if (isset($Files["html"]) && sizeof($Files["html"]) > 0 && isset($spm["hide_if_template_file"]) && strtolower($spm["hide_if_template_file"]) == "yes") {
$show = false;
}
if (isset($spm["hide_in_vc"]) && strtolower($spm["hide_in_vc"]) == "yes") {
$show = false;
}
if (!isset($spm["vc_type"])) {
$spm["vc_type"] = "textfield";
}
if ($show && isset($spm["vc_type"])) {
if ($spm["vc_type"] == "whmpress_icon") {
$array["param_name"] = $params_name;
$array["type"] = "whmpress_icon";
$array["value"] = @$spm["value"];
} elseif ($spm["vc_type"] == "noyes") {
$array["type"] = "dropdown";
$array["value"] = $NoYes;
} elseif ($spm["vc_type"] == "checkbox") {
$array["type"] = "checkbox";
if (isset($spm["value"])) {
$array["value"] = $spm["value"];
}
} elseif ($spm["vc_type"] == "yesno") {
$array["type"] = "dropdown";
$array["value"] = $YesNo;
} elseif ($spm["vc_type"] == "imagelist") {
$array["type"] = "dropdown";
$array["value"] = $ImagesList;
} elseif ($spm["vc_type"] == "templatelist") {
$array["type"] = "dropdown";
$array["value"] = $FilesList;
} elseif ($spm["vc_type"] == "productids") {
$array["type"] = "dropdown";
$array["value"] = $Products;
} /*elseif ($spm["vc_type"] == "pricing_slabs") {
$array["type"] = "dropdown";
$array["value"] = $Slabs;
}*/ elseif ($spm["vc_type"] == "currencies") {
$array["type"] = "dropdown";
$array["value"] = $Currencies;
} else {
$array["type"] = $spm["vc_type"];
if ($array["type"] == "") {
$array["type"] = "textfield";
}
if (@$spm["value"] == "currency_codes") {
$array["value"] = $Currencies;
} elseif (@$spm["value"] == "product_ids") {
$array["value"] = $Products;
} elseif (@$spm["value"] == "billing_cycle") {
$array["value"] = $BillingCycles;
} else {
$array["value"] = @$spm["value"];
}
}
$array['heading'] = array_key_exists("heading", $spm) ? @$spm["heading"] : "";
if ($array["heading"] == "") {
$array["heading"] = ucwords(str_replace("_", " ", $key));
}
$array["param_name"] = $key;
if (isset($spm["description"])) {
$array["description"] = $spm["description"];
}
// If admin_label is provided then it will pass to vc_map.
if (isset($spm["admin_label"])) {
$array["admin_label"] = $spm["admin_label"];
}
if (isset($spm["group"])) {
$array["group"] = $spm["group"];
}
if (isset($spm["dependency"])) {
$array["dependency"] = $spm["dependency"];
}
if (isset($spm["weight"])) {
$array["weight"] = $spm["weight"];
}
}
}
} else {
$array["type"] = "textbox";
$array["heading"] = ucwords(str_replace("_", " ", $spm));
$array["param_name"] = $spm;
$array["value"] = "";
}
if (!isset($array["type"])) {
$array["type"] = "textbox";
}
/*if (isset($array["description"]))
$array["description"] .= " ($ten)";
else
$array["description"] = $ten;*/
/*if ( ! isset( $array["weight"] ) || empty( $array["weight"] ) ) {
$array["weight"] = $ten -= 10;
}*/
//if (!isset($array["admin_label"])) $array["admin_label"] = false;
if (sizeof($array) > 0 && isset($array["heading"])) {
$params[] = $array;
}
}
//== Set if condition >> PHP 7.4 warning
if($Files) {
if (is_array($Files["custom_fields"])) {
foreach ($Files["custom_fields"] as $custom_field) {
foreach ($custom_field as $k => &$cs) {
if (is_null($cs)) {
unset($custom_field[$k]);
} elseif ($WHMPress->is_json(str_replace("'", '"', $cs))) {
$cs = json_decode(str_replace("'", '"', $cs), true);
}
}
if (isset($custom_field["type"]) && $custom_field["type"] == "dropdown" && isset($custom_field["value"]) && !is_array($custom_field["value"])) {
$custom_field["value"] = explode(",", $custom_field["value"]);
$custom_field["value"] = array_map('trim', $custom_field["value"]);
}
$custom_field = array_filter($custom_field);
if (!isset($custom_field["admin_label"])) {
$custom_field["admin_label"] = false;
}
$params[] = $custom_field;
/*if ($shortcode=="whmpress_domain_price") {
echo "<pre>";
print_r ($custom_field)."<br />";
echo "</pre>";
}*/
}
}
}
#file_put_contents("D:\abc.txt", print_r($params,true)."\n", FILE_APPEND);
//if (!isset($params["default"])) $params["default"] = "";
$args = array(
"name" => $vc_shortcode_title,
"description" => "", // will get from array
"base" => $shortcode, //'vc_row', //$shortcode,
"category" => "WHMPress",
"icon" => WHMP_ADMIN_URL . "/images/logo32.png",
"params" => $params,
);
//show_array($args);
vc_map($args);
#break;
}
}