PluginProbe
LoginPress | wp-login Custom Login Page Customizer / 1.1.11
LoginPress | wp-login Custom Login Page Customizer v1.1.11
6.2.5 6.2.4 6.2.3 6.2.2 6.2.1 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.2 1.0.20 1.0.21 1.0.22 1.0.23 1.0.3 1.0.4 All 118 releases
loginpress / include / deactivate_modal.php

deactivate_modal.php in LoginPress | wp-login Custom Login Page Customizer 1.1.11, at include/deactivate_modal.php

326 lines 11.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <style>
2 .loginpress-hidden{
3
4 overflow: hidden;
5 }
6 .loginpress-popup-overlay .loginpress-internal-message{
7 margin: 3px 0 3px 22px;
8 display: none;
9 }
10 .loginpress-reason-input{
11 margin: 3px 0 3px 22px;
12 display: none;
13 }
14 .loginpress-reason-input input[type="text"]{
15
16 width: 100%;
17 display: block;
18 }
19 .loginpress-popup-overlay{
20
21 background: rgba(0,0,0, .8);
22 position: fixed;
23 top:0;
24 left: 0;
25 height: 100%;
26 width: 100%;
27 z-index: 1000;
28 overflow: auto;
29 visibility: hidden;
30 opacity: 0;
31 transition: opacity 0.3s ease-in-out;
32 display: flex;
33 justify-content: center;
34 align-items: center;
35 }
36 .loginpress-popup-overlay.loginpress-active{
37 opacity: 1;
38 visibility: visible;
39 }
40 .loginpress-serveypanel{
41 width: 600px;
42 background: #fff;
43 margin: 0 auto 0;
44 border-radius: 3px;
45 }
46 .loginpress-popup-header{
47 background: #f1f1f1;
48 padding: 20px;
49 border-bottom: 1px solid #ccc;
50 }
51 .loginpress-popup-header h2{
52 margin: 0;
53 text-transform: uppercase;
54 }
55 .loginpress-popup-body{
56 padding: 10px 20px;
57 }
58 .loginpress-popup-footer{
59 background: #f9f3f3;
60 padding: 10px 20px;
61 border-top: 1px solid #ccc;
62 }
63 .loginpress-popup-footer:after{
64
65 content:"";
66 display: table;
67 clear: both;
68 }
69 .action-btns{
70 float: right;
71 }
72 .loginpress-anonymous{
73
74 display: none;
75 }
76 .attention, .error-message {
77 color: red;
78 font-weight: 600;
79 display: none;
80 }
81 .loginpress-spinner{
82 display: none;
83 }
84 .loginpress-spinner img{
85 margin-top: 3px;
86 }
87 .loginpress-pro-message{
88 padding-left: 24px;
89 color: red;
90 font-weight: 600;
91 display: none;
92 }
93 .loginpress-popup-header{
94 background: none;
95 padding: 18px 15px;
96 -webkit-box-shadow: 0 0 8px rgba(0,0,0,.1);
97 box-shadow: 0 0 8px rgba(0,0,0,.1);
98 border: 0;
99 }
100 .loginpress-popup-body h3{
101 margin-top: 0;
102 margin-bottom: 30px;
103 font-weight: 700;
104 font-size: 15px;
105 color: #495157;
106 line-height: 1.4;
107 text-tranform: uppercase;
108 }
109 .loginpress-reason{
110 font-size: 13px;
111 color: #6d7882;
112 margin-bottom: 15px;
113 }
114 .loginpress-reason input[type="radio"]{
115 margin-right: 15px;
116 }
117 .loginpress-popup-body{
118 padding: 30px 30px 0;
119
120 }
121 .loginpress-popup-footer{
122 background: none;
123 border: 0;
124 padding: 29px 39px 39px;
125 }
126 </style>
127 <div class="loginpress-popup-overlay">
128 <div class="loginpress-serveypanel">
129 <form action="#" method="post" id="loginpress-deactivate-form">
130 <div class="loginpress-popup-header">
131 <h2><?php _e( 'Quick feedback about LoginPress', 'loginpress' ); ?></h2>
132 </div>
133 <div class="loginpress-popup-body">
134 <h3><?php _e( 'If you have a moment, please let us know why you are deactivating:', 'loginpress' ); ?></h3>
135 <ul id="loginpress-reason-list">
136 <li class="loginpress-reason loginpress-reason-pro" data-input-type="" data-input-placeholder="">
137 <label>
138 <span>
139 <input type="radio" name="loginpress-selected-reason" value="pro">
140 </span>
141 <span><?php _e( " I upgraded to LoginPress Pro", 'loginpress' ); ?></span>
142 </label>
143 <div class="loginpress-pro-message"><?php _e( 'No need to deactivate this LoginPress Core version. Pro version works as an add-on with Core version.', 'loginpress' ); ?></div>
144 </li>
145 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
146 <label>
147 <span>
148 <input type="radio" name="loginpress-selected-reason" value="1">
149 </span>
150 <span><?php _e( 'I only needed the plugin for a short period', 'loginpress' ); ?></span>
151 </label>
152 <div class="loginpress-internal-message"></div>
153 </li>
154 <li class="loginpress-reason has-input" data-input-type="textfield">
155 <label>
156 <span>
157 <input type="radio" name="loginpress-selected-reason" value="2">
158 </span>
159 <span><?php _e( 'I found a better plugin', 'loginpress' ); ?></span>
160 </label>
161 <div class="loginpress-internal-message"></div>
162 <div class="loginpress-reason-input"><span class="message error-message "><?php _e( 'Kindly tell us the Plugin name.', 'loginpress' ); ?></span><input type="text" name="better_plugin" placeholder="What's the plugin's name?"></div>
163 </li>
164 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
165 <label>
166 <span>
167 <input type="radio" name="loginpress-selected-reason" value="3">
168 </span>
169 <span><?php _e( 'The plugin broke my site', 'loginpress' ); ?></span>
170 </label>
171 <div class="loginpress-internal-message"></div>
172 </li>
173 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
174 <label>
175 <span>
176 <input type="radio" name="loginpress-selected-reason" value="4">
177 </span>
178 <span><?php _e( 'The plugin suddenly stopped working', 'loginpress' ); ?></span>
179 </label>
180 <div class="loginpress-internal-message"></div>
181 </li>
182 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
183 <label>
184 <span>
185 <input type="radio" name="loginpress-selected-reason" value="5">
186 </span>
187 <span><?php _e( 'I no longer need the plugin', 'loginpress' ); ?></span>
188 </label>
189 <div class="loginpress-internal-message"></div>
190 </li>
191 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
192 <label>
193 <span>
194 <input type="radio" name="loginpress-selected-reason" value="6">
195 </span>
196 <span><?php _e( "It's a temporary deactivation. I'm just debugging an issue.", 'loginpress' ); ?></span>
197 </label>
198 <div class="loginpress-internal-message"></div>
199 </li>
200 <li class="loginpress-reason has-input" data-input-type="textfield" >
201 <label>
202 <span>
203 <input type="radio" name="loginpress-selected-reason" value="7">
204 </span>
205 <span><?php _e( 'Other', 'loginpress' ); ?></span>
206 </label>
207 <div class="loginpress-internal-message"></div>
208 <div class="loginpress-reason-input"><span class="message error-message "><?php _e( 'Kindly tell us the reason so we can improve.', 'loginpress' ); ?></span><input type="text" name="other_reason" placeholder="Kindly tell us the reason so we can improve."></div>
209 </li>
210 </ul>
211 </div>
212 <div class="loginpress-popup-footer">
213 <label class="loginpress-anonymous"><input type="checkbox" /><?php _e( 'Anonymous feedback', 'loginpress' ); ?></label>
214 <input type="button" class="button button-secondary button-skip loginpress-popup-skip-feedback" value="<?php _e( 'Skip & Deactivate', 'loginpress'); ?>" >
215 <div class="action-btns">
216 <span class="loginpress-spinner"><img src="<?php echo admin_url( '/images/spinner.gif' ); ?>" alt=""></span>
217 <input type="submit" class="button button-secondary button-deactivate loginpress-popup-allow-deactivate" value="<?php _e( 'Submit & Deactivate', 'loginpress'); ?>" disabled="disabled">
218 <a href="#" class="button button-primary loginpress-popup-button-close"><?php _e( 'Cancel', 'loginpress' ); ?></a>
219
220 </div>
221 </div>
222 </form>
223 </div>
224 </div>
225
226
227 <script>
228 (function( $ ) {
229
230 $(function() {
231
232 var pluginSlug = 'loginpress';
233 // Code to fire when the DOM is ready.
234
235 $(document).on('click', 'tr[data-slug="' + pluginSlug + '"] .deactivate', function(e){
236 e.preventDefault();
237 $('.loginpress-popup-overlay').addClass('loginpress-active');
238 $('body').addClass('loginpress-hidden');
239 });
240 $(document).on('click', '.loginpress-popup-button-close', function () {
241 close_popup();
242 });
243 $(document).on('click', ".loginpress-serveypanel,tr[data-slug='" + pluginSlug + "'] .deactivate",function(e){
244 e.stopPropagation();
245 });
246
247 $(document).click(function(){
248 close_popup();
249 });
250 $('.loginpress-reason label').on('click', function(){
251 if($(this).find('input[type="radio"]').is(':checked')){
252 //$('.loginpress-anonymous').show();
253 $(this).next().next('.loginpress-reason-input').show().end().end().parent().siblings().find('.loginpress-reason-input').hide();
254 }
255 });
256 $('input[type="radio"][name="loginpress-selected-reason"]').on('click', function(event) {
257 $(".loginpress-popup-allow-deactivate").removeAttr('disabled');
258 $(".loginpress-popup-skip-feedback").removeAttr('disabled');
259 $('.message.error-message').hide();
260 $('.loginpress-pro-message').hide();
261 });
262
263 $('.loginpress-reason-pro label').on('click', function(){
264 if($(this).find('input[type="radio"]').is(':checked')){
265 $(this).next('.loginpress-pro-message').show().end().end().parent().siblings().find('.loginpress-reason-input').hide();
266 $(this).next('.loginpress-pro-message').show()
267 $('.loginpress-popup-allow-deactivate').attr('disabled', 'disabled');
268 $('.loginpress-popup-skip-feedback').attr('disabled', 'disabled');
269 }
270 });
271 $(document).on('submit', '#loginpress-deactivate-form', function(event) {
272 event.preventDefault();
273
274 var _reason = $('input[type="radio"][name="loginpress-selected-reason"]:checked').val();
275 var _reason_details = '';
276
277 if ( _reason == 2 ) {
278 _reason_details = $("input[type='text'][name='better_plugin']").val();
279 } else if ( _reason == 7 ) {
280 _reason_details = $("input[type='text'][name='other_reason']").val();
281 }
282
283 if ( ( _reason == 7 || _reason == 2 ) && _reason_details == '' ) {
284 $('.message.error-message').show();
285 return ;
286 }
287 $.ajax({
288 url: ajaxurl,
289 type: 'POST',
290 data: {
291 action : 'loginpress_deactivate',
292 reason : _reason,
293 reason_detail : _reason_details,
294 },
295 beforeSend: function(){
296 $(".loginpress-spinner").show();
297 $(".loginpress-popup-allow-deactivate").attr("disabled", "disabled");
298 }
299 })
300 .done(function() {
301 $(".loginpress-spinner").hide();
302 $(".loginpress-popup-allow-deactivate").removeAttr("disabled");
303 window.location.href = $("tr[data-slug='"+ pluginSlug +"'] .deactivate a").attr('href');
304 });
305
306 });
307
308 $('.loginpress-popup-skip-feedback').on('click', function(e){
309 // e.preventDefault();
310 window.location.href = $("tr[data-slug='"+ pluginSlug +"'] .deactivate a").attr('href');
311 })
312
313 function close_popup() {
314 $('.loginpress-popup-overlay').removeClass('loginpress-active');
315 $('#loginpress-deactivate-form').trigger("reset");
316 $(".loginpress-popup-allow-deactivate").attr('disabled', 'disabled');
317 $(".loginpress-reason-input").hide();
318 $('body').removeClass('loginpress-hidden');
319 $('.message.error-message').hide();
320 $('.loginpress-pro-message').hide();
321 }
322 });
323
324 })( jQuery ); // This invokes the function above and allows us to use '$' in place of 'jQuery' in our code.
325 </script>
326