初始化6.2.2

Signed-off-by: HITSword <admin@huayizhiyun.com>
This commit is contained in:
HITSword
2020-04-16 16:26:24 +08:00
commit 26e6687c3f
1630 changed files with 144200 additions and 0 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+515
View File
@@ -0,0 +1,515 @@
/*!
// ****************************
// ********** USAGE **********
// ****************************
RsTooltips(
true, // initialize the tooltip mode?
['add_layer', 'change_slides'] // array of tooltips to show and in what order
);
*/
(function() {
var data,
shell,
bodies,
tipList,
toolTip,
tipText,
section,
linkButton,
totalSteps,
currentTip,
currentStep,
currentData,
currentTarget,
toolTipWidth,
rightToolbar;
var defaults = [
'back',
'slides',
'add_slide',
'global_layers',
'slide_order',
'add_layer',
'add_layer_text',
'add_layer_image',
'add_layer_button',
'add_layer_shape',
'add_layer_video',
'add_layer_audio',
'add_layer_object',
'add_layer_row',
'add_layer_group',
'add_layer_layerlibrary',
'add_layer_importlayer',
'edit_layer_name',
'duplicate_layer',
'copy_layer',
'paste_layer',
'delete_layer',
'lock_layers',
'unlock_layers',
'hide_highlight_boxes',
'show_hide_selected',
'set_all_visible',
'change_layer_order',
'layer_selections',
'undo_redo',
'device_switcher',
'help_mode',
'tooltip_button',
'quick_style',
'slider_settings',
'slider_navigation',
'slide_settings',
'layer_settings',
'shortcode',
'layout_type',
'layout_sizing',
'breakpoints',
'module_content',
'auto_rotate',
'lazy_loading',
'progress_bar',
'navigation_arrows',
'navigation_bullets',
'navigation_tabs',
'navigation_thumbs',
'slide_background',
'slide_animation',
'background_filter',
'slide_duration',
'slide_link',
'edit_text',
'font_size',
'font_family',
'font_color',
'layer_position',
'layer_animations',
'layer_hover',
'responsive_behavior',
'timeline_preview',
'save_module',
'preview_module'
];
function getData() {
jQuery('<link rel="stylesheet" type="text/css" href="' + RVS.ENV.plugin_url + 'admin/assets/css/tooltip.css" />').appendTo(jQuery('head'));
RVS.F.ajaxRequest('get_tooltips', {}, function(response) {
if(response.success) {
try {
data = JSON.stringify(response.data);
data = JSON.parse(data);
}
catch(e) {
data = false;
}
if(data) init();
else console.log('tooltip ajax error');
}
else {
console.log('tooltip ajax error');
}
});
}
function clonePreviewSave() {
jQuery(this).clone().addClass('tooltip-save-preview').insertAfter(toolTip);
}
function openToolTips() {
jQuery(shell).appendTo(jQuery('#rb_tlw'));
jQuery('.rs-tooltip-btn').not('.tooltip-link').on('click.tooltips', btnClick);
jQuery('.rs-tooltip-check').on('click.tooltips', cancelTips);
jQuery('#rs-tooltip-close').on('click.tooltips', exitTips);
toolTip = jQuery('#rs-tooltip');
tipText = jQuery('.tooltip-text');
section = jQuery('.tooltip-section');
toolTipWidth = toolTip.outerWidth();
linkButton = jQuery('.tooltip-link').on('click.tooltips', openLink);
rightToolbar = jQuery('#the_right_toolbar_inner');
tipList = window.RsTooltipList || defaults;
totalSteps = tipList.length;
currentStep = 0;
bodies = jQuery('body');
RVS.WIN.on('keydown.tooltips', keyShortcut).on('resize.tooltips', runStep);
jQuery('.rs-save-preview').each(clonePreviewSave);
runStep();
}
function openLink() {
window.open(this.dataset.href);
}
function closeToolTips() {
jQuery('.tooltip-hide-target').removeClass('tooltip-hide-target');
jQuery('.tip-clone').remove();
jQuery('.rs-tooltip-btn').off('.tooltips');
jQuery('.rs-tooltip-check').off('.tooltips');
jQuery('#rs-tooltip-close').off('.tooltips');
jQuery('#rs-tooltip').remove();
jQuery('.tooltip-save-preview').remove();
jQuery('body').removeClass('rb-tooltips-active');
RVS.WIN.off('.tooltips');
linkButton.off('.tooltips');
bodies = null;
toolTip = null;
tipText = null;
section = null;
currentTip = null;
linkButton = null;
rightToolbar = null;
currentTarget = null;
}
function cleanup() {
cancelAnimationFrame(displayStep);
}
function exitTips() {
cleanup();
closeToolTips();
}
function cancelTips() {
RVS.F.ajaxRequest('set_tooltip_preference', false, false, true, true);
exitTips();
}
function btnClick() {
if(this.id === 'rs-tooltip-next') {
currentStep++;
runStep();
}
else {
exitTips();
}
}
function nextButton() {
var btn = jQuery('#rs-tooltip-next');
if(!btn.is(':visible')) btn = jQuery('#rs-tooltip-gotit');
btn.click();
}
function runStep() {
cleanup();
currentTip = currentData.tooltips[tipList[currentStep]];
tipText.html(currentTip.text);
/*
if(currentTip.section) section.html(currentTip.section).show();
else section.hide();
*/
/*
if(currentTip.link) linkButton.attr('data-href', currentTip.link).text(currentTip.linkText).show();
else linkButton.hide();
*/
if(currentStep < totalSteps - 1) toolTip.removeClass('tooltip-gotit');
else toolTip.addClass('tooltip-gotit');
if(currentTip.trigger) {
let triggers = currentTip.trigger,
len = triggers.length;
for(let i = 0; i < len; i++) {
let trigger = jQuery(triggers[i]);
if(trigger.length) {
jQuery(trigger).first().click();
}
else {
console.log('tooltip trigger does not exist');
nextButton();
return;
}
}
}
currentTarget = jQuery(currentTip.target).first();
if(!currentTarget.length) {
console.log('tooltip target does not exist');
nextButton();
return;
}
rightToolbar.scrollTop(0);
if(currentTip.scrollTo) {
let scrollTo = jQuery(currentTip.scrollTo).filter(':visible');
rightToolbar.scrollTop(scrollTo.offset().top - 50);
requestAnimationFrame(displayStep);
}
requestAnimationFrame(displayStep);
}
function displayStep() {
jQuery('.tooltip-hide-target').removeClass('tooltip-hide-target');
jQuery('.tip-clone').remove();
var offset = currentTarget.offset(),
position,
placer;
toolTip.removeClass(function(i, clas) {return (clas.match (/(^|\s)tip-\S+/g) || []).join(' ');});
toolTip.addClass('tip-' + currentTip.alignment);
if(currentTip.margin) toolTip.css('margin', currentTip.margin);
else toolTip.css('margin', 0);
var padding = currentTarget.css('padding'),
paddingLeft = Math.round(parseInt(currentTarget.css('padding-left'), 10) * 0.25);
cloned = currentTarget.clone();
cloned.find('input[type="radio"]').each(function() {this.name = this.name + '-tooltip';});
cloned.addClass('tip-clone').css({top: offset.top, left: offset.left, padding: padding}).insertBefore(toolTip);
if(currentTip.cssClass) cloned.addClass(currentTip.cssClass);
if(currentTip.elementcss) {
let css = currentTip.elementcss.split(';'),
len = css.length;
for(let i = 0; i < len; i++) {
let style = css[i].split(':');
cloned.css(jQuery.trim(style[0]), jQuery.trim(style[1]));
}
}
if(currentTip.placer) {
placer = jQuery(currentTip.placer).first();
if(placer.length) {
offset = placer.offset();
}
else {
console.log('tooltip placer does not exist');
nextButton();
return;
}
}
var noFocus = currentTip.focus === 'none';
if(!currentTip.focus || noFocus) {
if(!noFocus) cloned.addClass('tip-focussed');
if(!placer) placer = currentTarget;
}
else {
let clas = currentTip.focusClass || 'tip-focussed';
focussed = cloned.find(currentTip.focus).first().addClass(clas);
if(!focussed.length) {
console.log('tooltip focus does not exist');
nextButton();
return;
}
if(!placer) {
placer = focussed;
offset = placer.offset();
}
}
position = getPosition(placer, currentTip.alignment);
toolTip.css({left: offset.left + position.x - paddingLeft, top: offset.top + position.y});
currentTarget.addClass('tooltip-hide-target');
bodies.addClass('rb-tooltips-active');
if(!currentTip.hidePrevSave) bodies.removeClass('tooltip-hide-preview-save');
else bodies.addClass('tooltip-hide-preview-save');
}
function getPosition(target, align) {
var xx,
yy;
switch(align) {
case 'top':
case 'bottom':
xx = (Math.round(target.outerWidth() * 0.5) - Math.round(toolTipWidth * 0.5));
break;
case 'left':
case 'right':
yy = -(Math.round(toolTip.outerHeight() * 0.5) - Math.round(target.outerHeight() * 0.5));
break;
case 'bottom-left':
case 'top-left':
case 'right-top':
xx = -toolTip.width();
break;
case 'bottom-right':
case 'top-right':
xx = target.outerWidth();
break;
}
switch(align) {
case 'top':
case 'right-top':
yy = -(target.outerHeight() + toolTip.height());
break;
case 'top-left':
case 'top-right':
yy = 0;
break;
case 'bottom':
case 'bottom-left':
case 'bottom-right':
yy = target.outerHeight();
break;
case 'left':
xx = -toolTipWidth;
break;
case 'right':
xx = target.outerWidth();
break;
}
return {x: xx, y: yy};
}
function keyShortcut(e) {
if(e.keyCode === 13) nextButton();
}
function init() {
currentData = jQuery.extend(true, {}, data);
shell =
'<div id="rs-tooltip">' +
'<div id="rs-tooltip-top">' +
'<span class="rs-tooltip-text"><span class="tooltip-section"></span><span class="tooltip-text"></span></span>' +
'<span class="rs-tooltip-btn tooltip-link" data-href="tooltip-link"></span><span id="rs-tooltip-next" class="rs-tooltip-btn"><i class="material-icons">redo</i>' + currentData.translations.next_tip + '<span class="rs-tooltip-return-icon"></span></span><span id="rs-tooltip-gotit" class="rs-tooltip-btn"><i class="material-icons">thumb_up</i>' + currentData.translations.got_it +'</span>' +
'</div>' +
'<div id="rs-tooltip-bottom"><div><span class="rs-tooltip-check"></span>' + currentData.translations.hide_tips + '</div></div>' +
'<span id="rs-tooltip-close"><i class="material-icons">close</i></span>' +
'</div>';
var btn = jQuery('.tooltip_wrap'),
defs = btn.data('tooltip-definitions');
if(defs) {
jQuery.extend(true, currentData.tooltips, defs);
btn.removeData('tooltip-definitions');
}
jQuery(document).on('start-tooltips', openToolTips);
btn.data('scriptready', true);
openToolTips();
}
getData();
})();