File Manager
<script id="cp_feedback_html<?php print esc_attr($plugin_slug); ?>" type="text/template">
<div title="QUICK FEEDBACK">
<div style="padding:10px;">
<style type="text/css">
.cp-feedback-reason-block { margin-top:8px; }
</style>
<h3><strong>If you have a moment, please let us know why you are deactivating:</strong></h3>
<form id="cp_feedback_form{{plugin_slug}}">
<div class="cp-feedback-reason-block">
<label>
<input type="radio" name="answer" value="cpm-no-map">
It is displayed a gray square istead the map.<br />
</label>
<div id="cp_feedback_no_map" style="margin-left:25px;display:none;padding:10px;border:1px dotted gray;color:#660000">
<p>Go to the <a href="<?php print esc_attr(admin_url( 'options-general.php?page=codepeople-post-map.php' )); ?>">settings page of the plugin</a> and enter an API Key to be used with your website's domain.</p>
<p>
With the API Key you should activate the following APIs:<br>
- Maps JavaScript API<br>
- Geocoding API<br>
</p>
<p style="font-style:italic;"><a href="https://console.cloud.google.com/google/maps-apis" target="_blank">Google Maps APIs</a></p>
</div>
</div>
<div class="cp-feedback-reason-block">
<label>
<input type="radio" name="answer" value="cpm-api-key-but-no-map">
I've entered the API Key but the map is not shown.<br />
</label>
<div id="cp_feedback_api_key_but_no_map" style="margin-left:25px;display:none;padding:10px;border:1px dotted gray;color:#660000">
<p>
There are multiple possible reasons:<br>
- The map's shortcode has not been inserted in the page's content: [codepeople-post-map].<br>
- There are not points in the page. Open the page for edition and define at least one point in it.<br>
- You have defined an API Key, and entered it into the settings page of the plugin, but you have not enabled the required APIs: Maps JavaScript AP, Geocoding API.<br>
- You've reached the limit of daily or monthly access to the Google APIs for you plan.
</p>
</div>
</div>
<div class="cp-feedback-reason-block">
<label>
<input type="radio" name="answer" value="temporary-deactivation"> It's a temporary deactivation. I'm just debugging an issue.<br />
</label>
</div>
<div class="cp-feedback-reason-block">
<label>
<input type="radio" name="answer" value="better-plugin"> I found a better plugin.<br />
</label>
<div id="cp_feedback_otherplugin" style="margin-left:25px;display:none;">
<input type="text" name="otherplugin" placeholder="What's the plugin name?" style="width:100%">
</div>
</div>
<div class="cp-feedback-reason-block">
<label>
<input type="radio" name="answer" value="other"> Other.<br />
</label>
<div id="cp_feedback_other" style="margin-left:25px;display:none;font-weight:bold;">
Kindly tell us the reason so we can improve.<br />
<input type="text" name="otherinfo" style="width:100%">
</div>
</div>
<div id="cp_feedback_anonymous" style="display:none;margin-top:30px;text-align:right">
<input type="checkbox" name="cp_feedback_anonymous" value="yes"> Anonymous feedback
</div>
</form>
</div>
</div>
</script>
<script type="text/javascript">
jQuery(window).on(
'load',
function()
{
var $ = jQuery,
plugin_slug = '<?php print esc_js($plugin_slug); ?>',
support_link = '<?php print esc_js($support_link); ?>',
full_support_link = '<?php print esc_js($full_support_link); ?>';
$('[data-slug="'+plugin_slug+'"] .deactivate a').
on(
'click',
function(evt)
{
evt.preventDefault()
evt.stopPropagation();
// Define events
$(document).on(
'change',
'[id="cp_feedback_form'+plugin_slug+'"] [name="answer"]',
function()
{
var field = $(this),
value = field.val(),
form = field.closest('form');
$("#cp_feedback_deactivatebtn:visible").val('Submit & Deactivate');
$("#cp_feedback_deactivatebtn:visible").html('<span class="ui-button-text">Submit & Deactivate</span>');
form.find("#cp_feedback_anonymous").show();
form.find("#cp_feedback_other,#cp_feedback_otherplugin,#cp_feedback_no_map,#cp_feedback_api_key_but_no_map").hide();
switch(value)
{
case 'other':
form.find("#cp_feedback_other").show();
break;
case 'better-plugin':
form.find("#cp_feedback_otherplugin").show();
break;
case 'cpm-no-map':
form.find("#cp_feedback_no_map").show();
break;
case 'cpm-api-key-but-no-map':
form.find("#cp_feedback_api_key_but_no_map").show();
break;
}
}
);
var url_redirect = $('[data-slug="'+plugin_slug+'"] .deactivate a').attr('href'),
html = $('[id="cp_feedback_html'+plugin_slug+'"]').html();
html = html.replace(/\{\{plugin_slug\}\}/g, plugin_slug)
.replace(/\{\{support_link\}\}/g, full_support_link)
.replace(/\{\{support_link_text\}\}/g, support_link);
$(html).dialog(
{
width:'600',
dialogClass: 'wp-dialog',
modal: true,
close: function(event, ui)
{
$(this).dialog("close");
$(this).remove();
},
closeOnEscape: true,
buttons: [
{
id: 'cp_feedback_deactivatebtn',
text: "Skip & Deactivate",
click: function()
{
var form = $('[id="cp_feedback_form'+plugin_slug+'"]'),
answer = form.find("input[name='answer']:checked").val();
if (answer == undefined || answer == '')
{
window.location.href = url_redirect;
}
else
{
var data = {
'action': 'cp_feedback',
'feedback_plugin': plugin_slug
};
$.each(form.serializeArray(), function(i,v){data[v['name']] = v['value'];});
if(ajaxurl) // WordPress global variable with the AJAX URL
{
$.post(
ajaxurl,
data,
function(response)
{
window.location.href = url_redirect;
}
);
}
}
}
},
{
text: "We can help: Support Service",
click: function()
{
window.open(support_link);
$(this).dialog("close");
}
},
{
text: "Cancel",
"class": 'button button-primary button-close',
click: function()
{
$(this).dialog("close");
}
}
]
}
); // End dialog
}
); // End onclick deactivate btn
}
); // End onload window
</script>
File Manager Version 1.0, Coded By Lucas
Email: hehe@yahoo.com