/var/www/vhosts/ihelp.ro/ajutam.ro/wp-content/plugins/essential-grid/includes
Edit: /var/www/vhosts/ihelp.ro/ajutam.ro/wp-content/plugins/essential-grid/includes/rightclick.class.php (5552B)
* @link http://www.themepunch.com/essential/
* @copyright 2021 ThemePunch
*/
if( !defined( 'ABSPATH') ) exit();
class Essential_Grid_Rightclick
{
/**
* right click option name
*/
const ESG_RIGHTCLICK_OPTION = 'tp_eg_rightclick';
/**
* @var array default option values
*/
private $_defaults = array(
'rightclick-enabled' => 'false',
'rightclick-show-custom-msg' => 'false',
'rightclick-custom-msg-text' => '',
'rightclick-custom-msg-once' => 'false',
'rightclick-dev-tools' => 'true',
'rightclick-view-source' => 'true',
);
protected static $instance = null;
/**
* @return Essential_Grid_Rightclick
*/
public static function get_instance()
{
if ( is_null( static::$instance ) ) {
static::$instance = new Essential_Grid_Rightclick();
}
return static::$instance;
}
protected function __construct()
{
$this->addActions();
}
/**
* add actions
*/
protected function addActions()
{
//skip if disabled or admin
if (!$this->isEnabled() || is_admin()) return;
//skip if it is builder page
$builders = array(
'elementor-preview' => '',
'siteorigin_panels_live_editor' => '',
'preview_id' => '',
'fl_builder' => '',
'et_fb' => '',
);
$is_builder = count(array_intersect_key($_GET, $builders));
if ($is_builder) return;
add_action('wp_head', array($this, 'outputJs'));
}
/**
* get options defaults
* @return array
*/
public function getDefaults()
{
return $this->_defaults;
}
/**
* get options
* @return array
*/
public function getOptions()
{
$options = get_option(self::ESG_RIGHTCLICK_OPTION, array());
if (!is_array($options)) return $this->_defaults;
return array_merge($this->_defaults, $options);
}
/**
* save options
* @param array $options
* @return bool
*/
public function saveOptions($options)
{
return update_option(self::ESG_RIGHTCLICK_OPTION, $options);
}
/**
* is rightclick enabled
* @return bool
*/
public function isEnabled()
{
$options = $this->getOptions();
return $options['rightclick-enabled'] === 'true';
}
public function outputJs()
{
$options = $this->getOptions();
$styles = '';
$onkeydown = '';
$onrightclick = 'document.ondragstart = document.oncontextmenu = function () { return false; }';
//check for onkeydown handler
if ($options['rightclick-dev-tools'] === 'true' || $options['rightclick-view-source'] === 'true') {
$onkeydown = "\r\n" . 'document.onkeydown = function(e) {';
if ($options['rightclick-view-source'] === 'true') {
$onkeydown .= 'if (e.ctrlKey && e.keyCode === 85) return false;';
}
if ($options['rightclick-dev-tools'] === 'true') {
$onkeydown .= 'if (e.keyCode === 123) return false; if (event.ctrlKey && event.shiftKey && (e.keyCode === 67 || e.keyCode === 73 || e.keyCode === 74)) return false;';
}
$onkeydown .= 'return true; }';
}
//custom message
if ($options['rightclick-show-custom-msg'] === 'true' && !empty($options['rightclick-custom-msg-text'])) {
wp_enqueue_script('tp-tools');
$styles = '' . "\r\n";
$vars = sprintf(
'var tp_eg_rightclick_count = 0, tp_eg_rightclick_msg_once = %s, tp_eg_rightclick_msg_txt = "%s";',
$options['rightclick-custom-msg-once'],
esc_attr($options['rightclick-custom-msg-text'])
);
$onrightclick = <<
');
jQuery('#eg-toolbox-wrapper').append('