/
var
/
www
/
leolaart.com
/
www
/
wp-content
/
plugins
/
elementor
/
includes
/
widgets
/
/var/www/leolaart.com/www/wp-content/plugins/elementor/includes/widgets
mkdir
upload
Name
Size
Mode
Actions
traits/
-
0777
rm
accordion.php
20129
0666
edit
dl
rm
alert.php
13733
0666
edit
dl
rm
audio.php
7490
0666
edit
dl
rm
button.php
2847
0666
edit
dl
rm
common.php
29131
0666
edit
dl
rm
counter.php
17645
0666
edit
dl
rm
divider.php
33948
0666
edit
dl
rm
google-maps.php
6905
0666
edit
dl
rm
heading.php
10571
0666
edit
dl
rm
html.php
2546
0666
edit
dl
rm
icon-box.php
21905
0666
edit
dl
rm
icon-list.php
22777
0666
edit
dl
rm
icon.php
12908
0666
edit
dl
rm
image-box.php
18095
0666
edit
dl
rm
image-carousel.php
27414
0666
edit
dl
rm
image-gallery.php
11128
0666
edit
dl
rm
image.php
19795
0666
edit
dl
rm
inner-section.php
917
0666
edit
dl
rm
menu-anchor.php
3914
0666
edit
dl
rm
progress.php
12379
0666
edit
dl
rm
rating.php
7587
0666
edit
dl
rm
read-more.php
3247
0666
edit
dl
rm
share-buttons.php
1029
0666
edit
dl
rm
shortcode.php
3271
0666
edit
dl
rm
sidebar.php
2978
0666
edit
dl
rm
social-icons.php
16538
0666
edit
dl
rm
spacer.php
3605
0666
edit
dl
rm
star-rating.php
13514
0666
edit
dl
rm
tabs.php
16944
0666
edit
dl
rm
testimonial.php
17631
0666
edit
dl
rm
text-editor.php
12610
0666
edit
dl
rm
toggle.php
20288
0666
edit
dl
rm
video.php
35131
0666
edit
dl
rm
wordpress.php
7051
0666
edit
dl
rm
Edit:
/var/www/leolaart.com/www/wp-content/plugins/elementor/includes/widgets/progress.php
(12379B)
<?php namespace Elementor; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } use Elementor\Core\Kits\Documents\Tabs\Global_Colors; use Elementor\Core\Kits\Documents\Tabs\Global_Typography; /** * Elementor progress widget. * * Elementor widget that displays an escalating progress bar. * * @since 1.0.0 */ class Widget_Progress extends Widget_Base { /** * Get widget name. * * Retrieve progress widget name. * * @since 1.0.0 * @access public * * @return string Widget name. */ public function get_name() { return 'progress'; } /** * Get widget title. * * Retrieve progress widget title. * * @since 1.0.0 * @access public * * @return string Widget title. */ public function get_title() { return esc_html__( 'Progress Bar', 'elementor' ); } /** * Get widget icon. * * Retrieve progress widget icon. * * @since 1.0.0 * @access public * * @return string Widget icon. */ public function get_icon() { return 'eicon-skill-bar'; } /** * Get widget keywords. * * Retrieve the list of keywords the widget belongs to. * * @since 2.1.0 * @access public * * @return array Widget keywords. */ public function get_keywords() { return [ 'progress', 'bar' ]; } protected function is_dynamic_content(): bool { return false; } /** * Get style dependencies. * * Retrieve the list of style dependencies the widget requires. * * @since 3.24.0 * @access public * * @return array Widget style dependencies. */ public function get_style_depends(): array { return [ 'widget-progress' ]; } /** * Register progress widget controls. * * Adds different input fields to allow the user to change and customize the widget settings. * * @since 3.1.0 * @access protected */ protected function register_controls() { $this->start_controls_section( 'section_progress', [ 'label' => esc_html__( 'Progress Bar', 'elementor' ), ] ); $this->add_control( 'title', [ 'label' => esc_html__( 'Title', 'elementor' ), 'type' => Controls_Manager::TEXT, 'dynamic' => [ 'active' => true, ], 'placeholder' => esc_html__( 'Enter your title', 'elementor' ), 'default' => esc_html__( 'My Skill', 'elementor' ), 'label_block' => true, ] ); $this->add_control( 'title_tag', [ 'label' => esc_html__( 'Title HTML Tag', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ 'h1' => 'H1', 'h2' => 'H2', 'h3' => 'H3', 'h4' => 'H4', 'h5' => 'H5', 'h6' => 'H6', 'div' => 'div', 'span' => 'span', 'p' => 'p', ], 'default' => 'span', 'condition' => [ 'title!' => '', ], ] ); $this->add_control( 'progress_type', [ 'label' => esc_html__( 'Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ '' => esc_html__( 'Default', 'elementor' ), 'info' => esc_html__( 'Info', 'elementor' ), 'success' => esc_html__( 'Success', 'elementor' ), 'warning' => esc_html__( 'Warning', 'elementor' ), 'danger' => esc_html__( 'Danger', 'elementor' ), ], 'default' => '', 'condition' => [ 'progress_type!' => '', // a workaround to hide the control, unless it's in use (not default). ], 'separator' => 'before', ] ); $this->add_control( 'percent', [ 'label' => esc_html__( 'Percentage', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 50, 'unit' => '%', ], 'dynamic' => [ 'active' => true, ], ] ); $this->add_control( 'display_percentage', [ 'label' => esc_html__( 'Display Percentage', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Show', 'elementor' ), 'label_off' => esc_html__( 'Hide', 'elementor' ), 'return_value' => 'show', 'default' => 'show', ] ); $this->add_control( 'inner_text', [ 'label' => esc_html__( 'Inner Text', 'elementor' ), 'type' => Controls_Manager::TEXT, 'dynamic' => [ 'active' => true, ], 'placeholder' => esc_html__( 'e.g. Web Designer', 'elementor' ), 'default' => esc_html__( 'Web Designer', 'elementor' ), 'label_block' => true, ] ); $this->end_controls_section(); $this->start_controls_section( 'section_progress_style', [ 'label' => esc_html__( 'Progress Bar', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'bar_color', [ 'label' => esc_html__( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'global' => [ 'default' => Global_Colors::COLOR_PRIMARY, ], 'selectors' => [ '{{WRAPPER}} .elementor-progress-wrapper .elementor-progress-bar' => 'background-color: {{VALUE}};', ], ] ); $this->add_control( 'bar_bg_color', [ 'label' => esc_html__( 'Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .elementor-progress-wrapper' => 'background-color: {{VALUE}};', ], ] ); $this->add_control( 'bar_height', [ 'label' => esc_html__( 'Height', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'px', 'em', 'rem', 'custom' ], 'selectors' => [ '{{WRAPPER}} .elementor-progress-bar' => 'height: {{SIZE}}{{UNIT}}; line-height: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'bar_border_radius', [ 'label' => esc_html__( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'px', '%', 'em', 'rem', 'custom' ], 'selectors' => [ '{{WRAPPER}} .elementor-progress-wrapper' => 'border-radius: {{SIZE}}{{UNIT}}; overflow: hidden;', ], ] ); $this->add_control( 'inner_text_heading', [ 'label' => esc_html__( 'Inner Text', 'elementor' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'bar_inline_color', [ 'label' => esc_html__( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .elementor-progress-bar' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'bar_inner_typography', 'selector' => '{{WRAPPER}} .elementor-progress-bar', 'exclude' => [ 'line_height', ], ] ); $this->add_group_control( Group_Control_Text_Shadow::get_type(), [ 'name' => 'bar_inner_shadow', 'selector' => '{{WRAPPER}} .elementor-progress-bar', ] ); $this->end_controls_section(); $this->start_controls_section( 'section_title', [ 'label' => esc_html__( 'Title Style', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'title_color', [ 'label' => esc_html__( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .elementor-title' => 'color: {{VALUE}};', ], 'global' => [ 'default' => Global_Colors::COLOR_PRIMARY, ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'typography', 'selector' => '{{WRAPPER}} .elementor-title', 'global' => [ 'default' => Global_Typography::TYPOGRAPHY_TEXT, ], ] ); $this->add_group_control( Group_Control_Text_Shadow::get_type(), [ 'name' => 'title_shadow', 'selector' => '{{WRAPPER}} .elementor-title', ] ); $this->end_controls_section(); } /** * Render progress widget output on the frontend. * Make sure value does no exceed 100%. * * Written in PHP and used to generate the final HTML. * * @since 1.0.0 * @access protected */ protected function render() { $settings = $this->get_settings_for_display(); if ( empty( $settings['title'] ) && empty( $settings['percent']['size'] ) ) { return; } $progressbar_id = 'elementor-progress-bar-' . $this->get_id(); $progress_percentage = is_numeric( $settings['percent']['size'] ) ? $settings['percent']['size'] : '0'; if ( 100 < $progress_percentage ) { $progress_percentage = 100; } if ( ! Utils::is_empty( $settings['title'] ) ) { $this->add_render_attribute( 'title', [ 'class' => 'elementor-title', 'id' => $progressbar_id, ] ); $this->add_inline_editing_attributes( 'title' ); $this->add_render_attribute( 'wrapper', 'aria-labelledby', $progressbar_id ); } $this->add_render_attribute( 'wrapper', [ 'class' => 'elementor-progress-wrapper', 'role' => 'progressbar', 'aria-valuemin' => '0', 'aria-valuemax' => '100', 'aria-valuenow' => $progress_percentage, ] ); if ( ! empty( $settings['inner_text'] ) ) { $this->add_render_attribute( 'wrapper', 'aria-valuetext', "{$progress_percentage}% ({$settings['inner_text']})" ); } if ( ! empty( $settings['progress_type'] ) ) { $this->add_render_attribute( 'wrapper', 'class', 'progress-' . $settings['progress_type'] ); } $this->add_render_attribute( 'progress-bar', [ 'class' => 'elementor-progress-bar', 'data-max' => $progress_percentage, ] ); $this->add_render_attribute( 'inner_text', 'class', 'elementor-progress-text' ); $this->add_inline_editing_attributes( 'inner_text' ); if ( ! Utils::is_empty( $settings['title'] ) ) { ?> <<?php Utils::print_validated_html_tag( $settings['title_tag'] ); ?> <?php $this->print_render_attribute_string( 'title' ); ?>> <?php echo wp_kses_post( $settings['title'] ); ?> </<?php Utils::print_validated_html_tag( $settings['title_tag'] ); ?>> <?php } ?> <div <?php $this->print_render_attribute_string( 'wrapper' ); ?>> <div <?php $this->print_render_attribute_string( 'progress-bar' ); ?>> <span <?php $this->print_render_attribute_string( 'inner_text' ); ?>><?php echo wp_kses_post( $settings['inner_text'] ); ?></span> <?php if ( 'show' === $settings['display_percentage'] ) { ?> <span class="elementor-progress-percentage"><?php echo $progress_percentage; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>%</span> <?php } ?> </div> </div> <?php } /** * Render progress widget output in the editor. * * Written as a Backbone JavaScript template and used to generate the live preview. * * @since 2.9.0 * @access protected */ protected function content_template() { ?> <# if ( '' === settings.title && '' === settings.percent.size ) { return; } const title_tag = elementor.helpers.validateHTMLTag( settings.title_tag ); const progressbar_id = 'elementor-progress-bar-<?php echo esc_attr( $this->get_id() ); ?>'; let progress_percentage = 0; if ( ! isNaN( settings.percent.size ) ) { progress_percentage = 100 < settings.percent.size ? 100 : settings.percent.size; } if ( settings.title ) { view.addRenderAttribute( 'title', { 'class': 'elementor-title', 'id': progressbar_id, } ); view.addInlineEditingAttributes( 'title' ); view.addRenderAttribute( 'wrapper', 'aria-labelledby', progressbar_id ); } view.addRenderAttribute( 'progressWrapper', { 'class': [ 'elementor-progress-wrapper', 'progress-' + settings.progress_type ], 'role': 'progressbar', 'aria-valuemin': '0', 'aria-valuemax': '100', 'aria-valuenow': progress_percentage, } ); if ( '' !== settings.inner_text ) { view.addRenderAttribute( 'progressWrapper', 'aria-valuetext', progress_percentage + '% (' + settings.inner_text + ')' ); } view.addRenderAttribute( 'inner_text', 'class', 'elementor-progress-text' ); view.addInlineEditingAttributes( 'inner_text' ); #> <# if ( settings.title ) { #> <{{ title_tag }} {{{ view.getRenderAttributeString( 'title' ) }}}>{{ settings.title }}</{{ title_tag }}> <# } #> <div {{{ view.getRenderAttributeString( 'progressWrapper' ) }}}> <div class="elementor-progress-bar" data-max="{{ progress_percentage }}"> <span {{{ view.getRenderAttributeString( 'inner_text' ) }}}>{{ settings.inner_text }}</span> <# if ( 'show' === settings.display_percentage ) { #> <span class="elementor-progress-percentage">{{{ progress_percentage }}}%</span> <# } #> </div> </div> <?php } }
Save
cmd:
run