hello
Server : Apache System : Linux webm006.cluster103.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : chryzalihi ( 621211) PHP Version : 8.3.31 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl Directory : /home/chryzalihi/www/wp-content/languages/themes/the/ |
background.min.css 0000644 00000002432 15242601363 0010162 0 ustar 00 .bloglo-background-wrapper .actions {
-js-display: flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-top: 12px;
}
.bloglo-background-wrapper .actions .button {
margin-top: 0;
}
.bloglo-background-wrapper .actions .advanced-settings {
-js-display: flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-left: auto;
text-decoration: none;
color: #555d66;
}
.bloglo-background-wrapper .actions .advanced-settings.up span.dashicons {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.bloglo-background-wrapper .actions .advanced-settings:hover {
color: #0085ba;
}
.bloglo-background-wrapper .actions .advanced-settings.hidden {
display: none;
}
.bloglo-background-wrapper .actions .background-image-upload-remove-button {
margin-right: 6px;
}
.bloglo-background-wrapper .background-image {
margin-top: 12px;
margin-bottom: 24px;
}
.bloglo-background-wrapper .background-repeat {
margin-bottom: 6px;
}
.bloglo-background-wrapper .more-settings.up {
color: #0085ba;
}
.bloglo-background-wrapper h4 {
margin-bottom: 12px;
}
background.scss 0000644 00000001627 15242601363 0007570 0 ustar 00 /*****************************************/
/* Customizer background control style
/*****************************************/
.bloglo-background-wrapper {
.actions {
display: flex;
align-items: center;
margin-top: 12px;
.button {
margin-top: 0;
}
.advanced-settings {
display: flex;
align-items: center;
margin-left: auto;
text-decoration: none;
color: #555d66;
&.up {
span.dashicons {
transform: rotate(180deg);
}
}
&:hover {
color: #0085ba;
}
&.hidden {
display: none;
}
}
.background-image-upload-remove-button {
margin-right: 6px;
}
}
.background-image {
margin-top: 12px;
margin-bottom: 24px;
}
.background-repeat {
margin-bottom: 6px;
}
.more-settings.up {
color: #0085ba;
}
h4 {
margin-bottom: 12px;
}
}
class-bloglo-customizer-control-background.php 0000644 00000022207 15242601363 0015640 0 ustar 00 <?php
/**
* Bloglo Customizer custom background control class.
*
* @package Bloglo
* @author Peregrine Themes
* @since 1.0.0
*/
/**
* Do not allow direct script access.
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! class_exists( 'Bloglo_Customizer_Control_Background' ) ) :
/**
* Bloglo Customizer custom background control class.
*/
class Bloglo_Customizer_Control_Background extends Bloglo_Customizer_Control {
/**
* The control type.
*
* @var string
*/
public $type = 'bloglo-background';
/**
* Show advanced settings.
*
* @since 1.0.0
* @var boolean
*/
public $advanced = true;
/**
* Media upload strings.
*
* @since 1.0.0
* @var boolean
*/
public $strings = array();
/**
* Set the default typography options.
*
* @since 1.0.0
* @param WP_Customize_Manager $manager Customizer bootstrap instance.
* @param string $id Control ID.
* @param array $args Default parent's arguments.
*/
public function __construct( $manager, $id, $args = array() ) {
parent::__construct( $manager, $id, $args );
$default_strings = array(
'placeholder' => __( 'No image selected', 'bloglo' ),
'less' => __( 'Less Settings', 'bloglo' ),
'more' => __( 'Advanced', 'bloglo' ),
'select_image' => __( 'Select Image', 'bloglo' ),
'use_image' => __( 'Use This Image', 'bloglo' ),
);
$strings = isset( $args['strings'] ) ? $args['strings'] : array();
$this->strings = wp_parse_args( $strings, $default_strings );
}
/**
* Refresh the parameters passed to the JavaScript via JSON.
*
* @see WP_Customize_Control::to_json()
*/
public function to_json() {
parent::to_json();
$this->json['advanced'] = $this->advanced;
$this->json['l10n'] = $this->strings;
}
/**
* An Underscore (JS) template for this control's content (but not its container).
*
* Class variables for this control class are available in the `data` JS object;
* export custom variables by overriding {@see WP_Customize_Control::to_json()}.
*
* @see WP_Customize_Control::print_template()
*/
protected function content_template() {
?>
<div class="bloglo-background-wrapper bloglo-control-wrapper">
<# if ( data.label ) { #>
<div class="bloglo-control-heading customize-control-title bloglo-field">
<span>{{{ data.label }}}</span>
<# if ( data.description ) { #>
<i class="bloglo-info-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-help-circle">
<circle cx="12" cy="12" r="10"></circle>
<path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
<line x1="12" y1="17" x2="12" y2="17"></line>
</svg>
<span class="bloglo-tooltip">{{{ data.description }}}</span>
</i>
<# } #>
</div>
<# } #>
<!-- Background Image -->
<div class="background-image">
<div class="attachment-media-view background-image-upload">
<# if ( data.value['background-image'] ) { #>
<div class="thumbnail thumbnail-image"><img src="{{ data.value['background-image'] }}" alt="" /></div>
<# } else { #>
<div class="placeholder"><?php esc_html_e( 'No image selected', 'bloglo' ); ?></div>
<# } #>
<div class="actions">
<button class="button background-image-upload-remove-button<# if ( ! data.value['background-image'] ) { #> hidden<# } #>"><?php esc_html_e( 'Remove', 'bloglo' ); ?></button>
<button type="button" class="button background-image-upload-button">{{{ data.l10n.select_image }}}</button>
<# if ( data.advanced ) { #>
<a href="#" class="advanced-settings<# if ( ! data.value['background-image'] ) { #> hidden<# } #>">
<span class="message"><?php esc_html_e( 'Advanced', 'bloglo' ); ?></span>
<span class="dashicons dashicons-arrow-down"></span>
</a>
<# } #>
</div>
</div>
</div>
<# if ( data.advanced ) { #>
<!-- Background Advanced -->
<div class="background-image-advanced">
<!-- Background Repeat -->
<div class="background-repeat">
<select {{{ data.inputAttrs }}}>
<option value="no-repeat"<# if ( 'no-repeat' === data.value['background-repeat'] ) { #> selected <# } #>><?php esc_html_e( 'No Repeat', 'bloglo' ); ?></option>
<option value="repeat"<# if ( 'repeat' === data.value['background-repeat'] ) { #> selected <# } #>><?php esc_html_e( 'Repeat All', 'bloglo' ); ?></option>
<option value="repeat-x"<# if ( 'repeat-x' === data.value['background-repeat'] ) { #> selected <# } #>><?php esc_html_e( 'Repeat Horizontally', 'bloglo' ); ?></option>
<option value="repeat-y"<# if ( 'repeat-y' === data.value['background-repeat'] ) { #> selected <# } #>><?php esc_html_e( 'Repeat Vertically', 'bloglo' ); ?></option>
</select>
</div>
<!-- Background Position -->
<div class="background-position">
<h4><?php esc_html_e( 'Background Position', 'bloglo' ); ?></h4>
<div class="bloglo-range-wrapper">
<span><?php esc_html_e( 'Horizontal', 'bloglo' ); ?></span>
<div class="bloglo-control-wrap">
<input
type="range"
data-key="background-position-x"
value="{{ data.value['background-position-x'] }}"
min="0"
max="100"
step="1" />
<input
type="number"
class="bloglo-range-input"
value="{{ data.value['background-position-x'] }}" />
<span class="bloglo-range-unit">%</span>
</div>
</div>
<div class="bloglo-range-wrapper">
<span><?php esc_html_e( 'Vertical', 'bloglo' ); ?></span>
<div class="bloglo-control-wrap">
<input
type="range"
data-key="background-position-y"
value="{{ data.value['background-position-y'] }}"
min="0"
max="100"
step="1" />
<input
type="number"
class="bloglo-range-input"
value="{{ data.value['background-position-y'] }}" />
<span class="bloglo-range-unit">%</span>
</div>
</div>
</div>
<!-- Background Size -->
<div class="background-size">
<h4><?php esc_html_e( 'Background Size', 'bloglo' ); ?></h4>
<div class="buttonset">
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="cover" name="_customize-bg-{{{ data.id }}}-size" id="{{ data.id }}cover" <# if ( 'cover' === data.value['background-size'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}cover"><?php esc_html_e( 'Cover', 'bloglo' ); ?></label>
</input>
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="contain" name="_customize-bg-{{{ data.id }}}-size" id="{{ data.id }}contain" <# if ( 'contain' === data.value['background-size'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}contain"><?php esc_html_e( 'Contain', 'bloglo' ); ?></label>
</input>
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="auto" name="_customize-bg-{{{ data.id }}}-size" id="{{ data.id }}auto" <# if ( 'auto' === data.value['background-size'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}auto"><?php esc_html_e( 'Auto', 'bloglo' ); ?></label>
</input>
</div>
</div>
<!-- Background Attachment -->
<div class="background-attachment">
<h4><?php esc_html_e( 'Background Attachment', 'bloglo' ); ?></h4>
<div class="buttonset">
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="inherit" name="_customize-bg-{{{ data.id }}}-attachment" id="{{ data.id }}inherit" <# if ( 'inherit' === data.value['background-attachment'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}inherit"><?php esc_html_e( 'Inherit', 'bloglo' ); ?></label>
</input>
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="scroll" name="_customize-bg-{{{ data.id }}}-attachment" id="{{ data.id }}scroll" <# if ( 'scroll' === data.value['background-attachment'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}scroll"><?php esc_html_e( 'Scroll', 'bloglo' ); ?></label>
</input>
<input {{{ data.inputAttrs }}} class="switch-input screen-reader-text" type="radio" value="fixed" name="_customize-bg-{{{ data.id }}}-attachment" id="{{ data.id }}fixed" <# if ( 'fixed' === data.value['background-attachment'] ) { #> checked="checked" <# } #>>
<label class="switch-label" for="{{ data.id }}fixed"><?php esc_html_e( 'Fixed', 'bloglo' ); ?></label>
</input>
</div>
</div>
<!-- Background Image ID -->
<input type="hidden" value="{{ data.value['background-image-id'] }}" class="background-image-id" />
</div>
<# } #>
<?php
}
}
endif;
background.css 0000644 00000002643 15242601363 0007404 0 ustar 00 /*****************************************/
/* Customizer background control style
/*****************************************/
.bloglo-background-wrapper .actions {
-js-display: flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-top: 12px;
}
.bloglo-background-wrapper .actions .button {
margin-top: 0;
}
.bloglo-background-wrapper .actions .advanced-settings {
-js-display: flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-left: auto;
text-decoration: none;
color: #555d66;
}
.bloglo-background-wrapper .actions .advanced-settings.up span.dashicons {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.bloglo-background-wrapper .actions .advanced-settings:hover {
color: #0085ba;
}
.bloglo-background-wrapper .actions .advanced-settings.hidden {
display: none;
}
.bloglo-background-wrapper .actions .background-image-upload-remove-button {
margin-right: 6px;
}
.bloglo-background-wrapper .background-image {
margin-top: 12px;
margin-bottom: 24px;
}
.bloglo-background-wrapper .background-repeat {
margin-bottom: 6px;
}
.bloglo-background-wrapper .more-settings.up {
color: #0085ba;
}
.bloglo-background-wrapper h4 {
margin-bottom: 12px;
}
background.min.js 0000644 00000033066 15242601363 0010015 0 ustar 00 !(function ($) {
wp.customize.controlConstructor["bloglo-background"] =
wp.customize.Control.extend({
ready: function () {
"use strict";
var range,
range_input,
bloglo_range_input_number_timeout,
control = this,
value = control.setting._value;
control.container.find(".background-image-advanced").hide(),
control.container.on(
"change",
".background-repeat select",
function () {
control.saveValue("background-repeat", $(this).val());
}
),
control.container.on(
"change click",
".background-size input",
function () {
control.saveValue("background-size", $(this).val());
}
),
control.container.on(
"change click",
".background-attachment input",
function () {
control.saveValue("background-attachment", $(this).val());
}
),
control.container.on(
"click",
".background-image-upload-button",
function (e) {
var image = wp
.media({
multiple: !1,
title: control.params.l10n.select_image,
button: { text: control.params.l10n.use_image },
})
.open()
.on("select", function () {
var previewImage,
imageUrl,
imageID,
preview,
removeButton,
uploadedImageJSON = image
.state()
.get("selection")
.first()
.toJSON();
(previewImage = _.isUndefined(uploadedImageJSON.sizes)
? uploadedImageJSON.url
: _.isUndefined(uploadedImageJSON.sizes.medium)
? _.isUndefined(uploadedImageJSON.sizes.thumbnail)
? _.isUndefined(uploadedImageJSON.sizes.full)
? uploadedImageJSON.url
: uploadedImageJSON.sizes.full.url
: uploadedImageJSON.sizes.thumbnail.url
: uploadedImageJSON.sizes.medium.url),
(imageUrl = uploadedImageJSON.url),
(imageID = uploadedImageJSON.id),
uploadedImageJSON.width,
uploadedImageJSON.height,
"" !== imageUrl &&
(control.container
.find(".background-image-advanced")
.show(),
control.container
.find(".advanced-settings")
.removeClass("hidden")
.addClass("up")),
control.saveValue("background-image", imageUrl),
control.saveValue("background-image-id", imageID),
(preview = control.container.find(
".placeholder, .thumbnail"
)),
(removeButton = control.container.find(
".background-image-upload-remove-button"
)),
preview.length &&
preview
.removeClass()
.addClass("thumbnail thumbnail-image")
.html('<img src="' + previewImage + '" alt="" />'),
removeButton.length && removeButton.show();
});
e.preventDefault();
}
),
control.container.on(
"click",
".background-image-upload-remove-button",
function (e) {
var preview, removeButton;
e.preventDefault(),
control.saveValue("background-image", ""),
control.saveValue("background-image-id", ""),
(preview = control.container.find(".placeholder, .thumbnail")),
(removeButton = control.container.find(
".background-image-upload-remove-button"
)),
control.container.find(".background-image-advanced").hide(),
control.container
.find(".advanced-settings")
.addClass("hidden")
.removeClass("up"),
preview.length &&
preview
.removeClass()
.addClass("placeholder")
.html(control.params.l10n.placeholder),
removeButton.length && removeButton.hide();
}
),
control.container.on("click", ".advanced-settings", function (e) {
$(this).toggleClass("up"),
control.container.find(".background-image-advanced").toggle();
}),
control.container
.find("input.bloglo-range-input")
.on("change keyup", function () {
control.autocorrect_range_input_number(
$(this),
1e3,
bloglo_range_input_number_timeout
);
})
.on("focusout", function () {
control.autocorrect_range_input_number(
$(this),
0,
bloglo_range_input_number_timeout
);
}),
control.container
.find("input[type=range]")
.on("mousedown", function () {
(range = $(this)),
(range_input = range.parent().children(".bloglo-range-input")),
(value = range.attr("value")),
range_input.val(value),
range.mousemove(function () {
(value = range.attr("value")),
range_input.val(value),
clearTimeout(bloglo_range_input_number_timeout),
(bloglo_range_input_number_timeout = setTimeout(
function () {
control.saveValue(range.data("key"), value);
},
25
));
});
});
},
saveValue: function (property, value) {
var val = this.setting.get();
value !== (val = val || {})[property] &&
(((val = JSON.parse(JSON.stringify(val)))[property] = value),
this.setting.set(val));
},
autocorrect_range_input_number: function (input_number, timeout) {
var range_input = input_number,
range = range_input.parent().find('input[type="range"]'),
value = parseFloat(range_input.val()),
reset = parseFloat(
range.find(".bloglo-reset-range").attr("data-reset_value")
),
step = parseFloat(range_input.attr("step")),
min = parseFloat(range_input.attr("min")),
max = parseFloat(range_input.attr("max"));
clearTimeout(timeout),
(timeout = setTimeout(function () {
if (isNaN(value)) {
return (
range_input.val(reset), void range.val(reset).trigger("change")
);
}
1 <= step &&
0 != value % 1 &&
((value = Math.round(value)),
range_input.val(value),
range.val(value).trigger("change")),
value > max &&
(range_input.val(max), range.val(max).trigger("change")),
value < min &&
(range_input.val(min), range.val(min).trigger("change"));
}, timeout)),
range.val(value).trigger("change"),
this.saveValue(range.data("key"), value);
},
});
})(jQuery);
!(function (e) {
wp.customize.controlConstructor["bloglo-background"] =
wp.customize.Control.extend({
ready: function () {
"use strict";
var a,
n,
t,
i = this,
r = i.setting._value;
i.container.find(".background-image-advanced").hide(),
i.container.on("change", ".background-repeat select", function () {
i.saveValue("background-repeat", e(this).val());
}),
i.container.on("change click", ".background-size input", function () {
i.saveValue("background-size", e(this).val());
}),
i.container.on(
"change click",
".background-attachment input",
function () {
i.saveValue("background-attachment", e(this).val());
}
),
i.container.on(
"click",
".background-image-upload-button",
function (e) {
var a = wp
.media({
multiple: !1,
title: i.params.l10n.select_image,
button: { text: i.params.l10n.use_image },
})
.open()
.on("select", function () {
var e,
n,
t,
r,
o,
u = a.state().get("selection").first().toJSON();
(e = _.isUndefined(u.sizes)
? u.url
: _.isUndefined(u.sizes.medium)
? _.isUndefined(u.sizes.thumbnail)
? _.isUndefined(u.sizes.full)
? u.url
: u.sizes.full.url
: u.sizes.thumbnail.url
: u.sizes.medium.url),
(n = u.url),
(t = u.id),
u.width,
u.height,
"" !== n &&
(i.container.find(".background-image-advanced").show(),
i.container
.find(".advanced-settings")
.removeClass("hidden")
.addClass("up")),
i.saveValue("background-image", n),
i.saveValue("background-image-id", t),
(r = i.container.find(".placeholder, .thumbnail")),
(o = i.container.find(
".background-image-upload-remove-button"
)),
r.length &&
r
.removeClass()
.addClass("thumbnail thumbnail-image")
.html('<img src="' + e + '" alt="" />'),
o.length && o.show();
});
e.preventDefault();
}
),
i.container.on(
"click",
".background-image-upload-remove-button",
function (e) {
var a, n;
e.preventDefault(),
i.saveValue("background-image", ""),
i.saveValue("background-image-id", ""),
(a = i.container.find(".placeholder, .thumbnail")),
(n = i.container.find(
".background-image-upload-remove-button"
)),
i.container.find(".background-image-advanced").hide(),
i.container
.find(".advanced-settings")
.addClass("hidden")
.removeClass("up"),
a.length &&
a
.removeClass()
.addClass("placeholder")
.html(i.params.l10n.placeholder),
n.length && n.hide();
}
),
i.container.on("click", ".advanced-settings", function (a) {
e(this).toggleClass("up"),
i.container.find(".background-image-advanced").toggle();
}),
i.container
.find("input.bloglo-range-input")
.on("change keyup", function () {
i.autocorrect_range_input_number(e(this), 1e3, t);
})
.on("focusout", function () {
i.autocorrect_range_input_number(e(this), 0, t);
}),
i.container.find("input[type=range]").on("mousedown", function () {
(a = e(this)),
(n = a.parent().children(".bloglo-range-input")),
(r = a.attr("value")),
n.val(r),
a.mousemove(function () {
(r = a.attr("value")),
n.val(r),
clearTimeout(t),
(t = setTimeout(function () {
i.saveValue(a.data("key"), r);
}, 25));
});
});
},
saveValue: function (e, a) {
var n = this.setting.get();
a !== (n = n || {})[e] &&
(((n = JSON.parse(JSON.stringify(n)))[e] = a), this.setting.set(n));
},
autocorrect_range_input_number: function (e, a) {
var n = e,
t = n.parent().find('input[type="range"]'),
i = parseFloat(n.val()),
r = parseFloat(
t.find(".bloglo-reset-range").attr("data-reset_value")
),
o = parseFloat(n.attr("step")),
u = parseFloat(n.attr("min")),
s = parseFloat(n.attr("max"));
clearTimeout(a),
(a = setTimeout(function () {
if (isNaN(i)) return n.val(r), void t.val(r).trigger("change");
1 <= o &&
0 != i % 1 &&
((i = Math.round(i)), n.val(i), t.val(i).trigger("change")),
i > s && (n.val(s), t.val(s).trigger("change")),
i < u && (n.val(u), t.val(u).trigger("change"));
}, a)),
t.val(i).trigger("change"),
this.saveValue(t.data("key"), i);
},
});
})(jQuery);
background.js 0000644 00000020164 15242601363 0007226 0 ustar 00 (function ($) {
wp.customize.controlConstructor["bloglo-background"] =
wp.customize.Control.extend({
ready: function () {
"use strict";
var control = this,
range,
range_input,
timer,
bloglo_range_input_number_timeout,
value = control.setting._value;
// Hide unnecessary controls.
control.container.find(".background-image-advanced").hide();
// Background-Repeat.
control.container.on(
"change",
".background-repeat select",
function () {
control.saveValue("background-repeat", $(this).val());
}
);
// Background-Size.
control.container.on(
"change click",
".background-size input",
function () {
control.saveValue("background-size", $(this).val());
}
);
// Background-Attachment.
control.container.on(
"change click",
".background-attachment input",
function () {
control.saveValue("background-attachment", $(this).val());
}
);
// Background-Image.
control.container.on(
"click",
".background-image-upload-button",
function (e) {
var image = wp
.media({
multiple: false,
title: control.params.l10n.select_image,
button: {
text: control.params.l10n.use_image,
},
})
.open()
.on("select", function () {
// This will return the selected image from the Media Uploader, the result is an object.
var uploadedImage = image.state().get("selection").first(),
uploadedImageJSON = uploadedImage.toJSON(),
previewImage,
imageUrl,
imageID,
imageWidth,
imageHeight,
preview,
removeButton;
if (!_.isUndefined(uploadedImageJSON.sizes)) {
if (!_.isUndefined(uploadedImageJSON.sizes.medium)) {
previewImage = uploadedImageJSON.sizes.medium.url;
} else if (
!_.isUndefined(uploadedImageJSON.sizes.thumbnail)
) {
previewImage = uploadedImageJSON.sizes.thumbnail.url;
} else if (!_.isUndefined(uploadedImageJSON.sizes.full)) {
previewImage = uploadedImageJSON.sizes.full.url;
} else {
previewImage = uploadedImageJSON.url;
}
} else {
previewImage = uploadedImageJSON.url;
}
imageUrl = uploadedImageJSON.url;
imageID = uploadedImageJSON.id;
imageWidth = uploadedImageJSON.width;
imageHeight = uploadedImageJSON.height;
// Show extra controls if the value has an image.
if ("" !== imageUrl) {
control.container.find(".background-image-advanced").show();
control.container
.find(".advanced-settings")
.removeClass("hidden")
.addClass("up");
}
control.saveValue("background-image", imageUrl);
control.saveValue("background-image-id", imageID);
preview = control.container.find(".placeholder, .thumbnail");
removeButton = control.container.find(
".background-image-upload-remove-button"
);
if (preview.length) {
preview
.removeClass()
.addClass("thumbnail thumbnail-image")
.html('<img src="' + previewImage + '" alt="" />');
}
if (removeButton.length) {
removeButton.show();
}
});
e.preventDefault();
}
);
control.container.on(
"click",
".background-image-upload-remove-button",
function (e) {
var preview, removeButton;
e.preventDefault();
control.saveValue("background-image", "");
control.saveValue("background-image-id", "");
preview = control.container.find(".placeholder, .thumbnail");
removeButton = control.container.find(
".background-image-upload-remove-button"
);
// Hide unnecessary controls.
control.container.find(".background-image-advanced").hide();
control.container
.find(".advanced-settings")
.addClass("hidden")
.removeClass("up");
if (preview.length) {
preview
.removeClass()
.addClass("placeholder")
.html(control.params.l10n.placeholder);
}
if (removeButton.length) {
removeButton.hide();
}
}
);
control.container.on("click", ".advanced-settings", function (e) {
$(this).toggleClass("up");
control.container.find(".background-image-advanced").toggle();
});
// Change the text value
control.container
.find("input.bloglo-range-input")
.on("change keyup", function () {
control.autocorrect_range_input_number(
$(this),
1000,
bloglo_range_input_number_timeout
);
})
.on("focusout", function () {
control.autocorrect_range_input_number(
$(this),
0,
bloglo_range_input_number_timeout
);
});
// Update the range value
control.container
.find("input[type=range]")
.on("mousedown", function () {
range = $(this);
range_input = range.parent().children(".bloglo-range-input");
value = range.attr("value");
range_input.val(value);
range.mousemove(function () {
value = range.attr("value");
range_input.val(value);
clearTimeout(bloglo_range_input_number_timeout);
bloglo_range_input_number_timeout = setTimeout(function () {
control.saveValue(range.data("key"), value);
}, 25);
});
});
},
/**
* Saves the value.
*/
saveValue: function (property, value) {
var val = this.setting.get();
val = val || {};
if (value !== val[property]) {
val = JSON.parse(JSON.stringify(val));
val[property] = value;
this.setting.set(val);
}
},
autocorrect_range_input_number: function (input_number, timeout) {
var range_input = input_number,
range = range_input.parent().find('input[type="range"]'),
value = parseFloat(range_input.val()),
reset = parseFloat(
range.find(".bloglo-reset-range").attr("data-reset_value")
),
step = parseFloat(range_input.attr("step")),
min = parseFloat(range_input.attr("min")),
max = parseFloat(range_input.attr("max"));
clearTimeout(timeout);
timeout = setTimeout(function () {
if (isNaN(value)) {
range_input.val(reset);
range.val(reset).trigger("change");
return;
}
if (1 <= step && 0 !== value % 1) {
value = Math.round(value);
range_input.val(value);
range.val(value).trigger("change");
}
if (value > max) {
range_input.val(max);
range.val(max).trigger("change");
}
if (value < min) {
range_input.val(min);
range.val(min).trigger("change");
}
}, timeout);
range.val(value).trigger("change");
this.saveValue(range.data("key"), value);
},
});
})(jQuery);