You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
6.4 KiB

(function() {
jQuery( document ).on( 'tinymce-editor-setup', function( event, editor ) {
editor.addButton( 'wp_statistic_tc_button', {
text: '',
tooltip: editor.getLang('wp_statistic_tinymce_plugin.insert'),
icon: 'icon-statistic dashicons-chart-pie',
onclick: function() {
editor.windowManager.open({
title: editor.getLang('wp_statistic_tinymce_plugin.insert'),
minWidth: 500,
minHeight: 480,
body: [
{
type: 'listbox',
name: 'stat',
label: editor.getLang('wp_statistic_tinymce_plugin.stat'),
'values': [
{text: editor.getLang('wp_statistic_tinymce_plugin.usersonline'), value: 'usersonline'},
{text: editor.getLang('wp_statistic_tinymce_plugin.visits'), value: 'visits'},
{text: editor.getLang('wp_statistic_tinymce_plugin.visitors'), value: 'visitors'},
{text: editor.getLang('wp_statistic_tinymce_plugin.pagevisits'), value: 'pagevisits'},
{text: editor.getLang('wp_statistic_tinymce_plugin.searches'), value: 'searches'},
{text: editor.getLang('wp_statistic_tinymce_plugin.postcount'), value: 'postcount'},
{text: editor.getLang('wp_statistic_tinymce_plugin.pagecount'), value: 'pagecount'},
{text: editor.getLang('wp_statistic_tinymce_plugin.commentcount'), value: 'commentcount'},
{text: editor.getLang('wp_statistic_tinymce_plugin.spamcount'), value: 'spamcount'},
{text: editor.getLang('wp_statistic_tinymce_plugin.usercount'), value: 'usercount'},
{text: editor.getLang('wp_statistic_tinymce_plugin.postaverage'), value: 'postaverage'},
{text: editor.getLang('wp_statistic_tinymce_plugin.commentaverage'), value: 'commentaverage'},
{text: editor.getLang('wp_statistic_tinymce_plugin.useraverage'), value: 'useraverage'},
{text: editor.getLang('wp_statistic_tinymce_plugin.lpd'), value: 'lpd'},
{text: editor.getLang('wp_statistic_tinymce_plugin.referrer'), value: 'referrer'},
]
},
{
type : 'container',
html : '<div class="wp-statistic-mce-desc">' + editor.getLang('wp_statistic_tinymce_plugin.help_stat') + ' </div>'
},
{
type: 'listbox',
name: 'time',
label: editor.getLang('wp_statistic_tinymce_plugin.time'),
'values': [
{text: editor.getLang('wp_statistic_tinymce_plugin.se'), value: '0'},
{text: editor.getLang('wp_statistic_tinymce_plugin.today'), value: 'today'},
{text: editor.getLang('wp_statistic_tinymce_plugin.yesterday'), value: 'yesterday'},
{text: editor.getLang('wp_statistic_tinymce_plugin.week'), value: 'week'},
{text: editor.getLang('wp_statistic_tinymce_plugin.month'), value: 'month'},
{text: editor.getLang('wp_statistic_tinymce_plugin.year'), value: 'year'},
{text: editor.getLang('wp_statistic_tinymce_plugin.total'), value: 'total'}
]
},
{
type : 'container',
html : '<div class="wp-statistic-mce-desc">' + editor.getLang('wp_statistic_tinymce_plugin.help_time') + '</div>'
},
{
type: 'textbox',
name: 'provider',
label: editor.getLang('wp_statistic_tinymce_plugin.provider'),
},
{
type : 'container',
html : '<div class="wp-statistic-mce-desc">' + editor.getLang('wp_statistic_tinymce_plugin.help_provider') + '</div>'
},
{
type: 'textbox',
name: 'format',
label: editor.getLang('wp_statistic_tinymce_plugin.format'),
},
{
type : 'container',
html : '<div class="wp-statistic-mce-desc">' + editor.getLang('wp_statistic_tinymce_plugin.help_format') + '</div>'
},
{
type: 'textbox',
name: 'id',
label: editor.getLang('wp_statistic_tinymce_plugin.id'),
},
{
type : 'container',
html : '<div class="wp-statistic-mce-desc">' + editor.getLang('wp_statistic_tinymce_plugin.help_id') + '</div>'
},
],
onsubmit: function( e ) {
var wp_statistice_shortcode = '[wpstatistics stat=' + e.data.stat;
if(e.data.time !=='0') {wp_statistice_shortcode +=' time=' + e.data.time;}
var wp_statistic_type = ["provider", "format", "id"];
wp_statistic_type.forEach(function(entry) {
if(e.data[entry] !=='') {
wp_statistice_shortcode +=' ' + entry + '=' + e.data[entry];
}
});
wp_statistice_shortcode +=']';
editor.insertContent(wp_statistice_shortcode);
}
});
}
});
});
})();