PluginProbe
LoginPress | wp-login Custom Login Page Customizer / 1.1.3
LoginPress | wp-login Custom Login Page Customizer v1.1.3
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.3, at include/deactivate_modal.php

289 lines 10.7 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 }
33 .loginpress-popup-overlay.loginpress-active{
34 opacity: 1;
35 visibility: visible;
36 }
37 .loginpress-serveypanel{
38 width: 600px;
39 background: #fff;
40 margin: 65px auto 0;
41 }
42 .loginpress-popup-header{
43 background: #f1f1f1;
44 padding: 20px;
45 border-bottom: 1px solid #ccc;
46 }
47 .loginpress-popup-header h2{
48 margin: 0;
49 }
50 .loginpress-popup-body{
51 padding: 10px 20px;
52 }
53 .loginpress-popup-footer{
54 background: #f9f3f3;
55 padding: 10px 20px;
56 border-top: 1px solid #ccc;
57 }
58 .loginpress-popup-footer:after{
59
60 content:"";
61 display: table;
62 clear: both;
63 }
64 .action-btns{
65 float: right;
66 }
67 .loginpress-anonymous{
68
69 display: none;
70 }
71 .attention, .error-message {
72 color: red;
73 font-weight: 600;
74 display: none;
75 }
76 .loginpress-spinner{
77 display: none;
78 }
79 .loginpress-spinner img{
80 margin-top: 3px;
81 }
82 .loginpress-pro-message{
83 padding-left: 24px;
84 color: red;
85 font-weight: 600;
86 display: none;
87 }
88
89 </style>
90 <div class="loginpress-popup-overlay">
91 <div class="loginpress-serveypanel">
92 <form action="#" method="post" id="loginpress-deactivate-form">
93 <div class="loginpress-popup-header">
94 <h2><?php _e( 'Quick feedback about LoginPress', 'loginpress' ); ?></h2>
95 </div>
96 <div class="loginpress-popup-body">
97 <h3><?php _e( 'If you have a moment, please let us know why you are deactivating:', 'loginpress' ); ?></h3>
98 <ul id="loginpress-reason-list">
99 <li class="loginpress-reason loginpress-reason-pro" data-input-type="" data-input-placeholder="">
100 <label>
101 <span>
102 <input type="radio" name="loginpress-selected-reason" value="pro">
103 </span>
104 <span><?php _e( " I upgraded to LoginPress Pro", 'loginpress' ); ?></span>
105 </label>
106 <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>
107 </li>
108 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
109 <label>
110 <span>
111 <input type="radio" name="loginpress-selected-reason" value="1">
112 </span>
113 <span><?php _e( 'I only needed the plugin for a short period', 'loginpress' ); ?></span>
114 </label>
115 <div class="loginpress-internal-message"></div>
116 </li>
117 <li class="loginpress-reason has-input" data-input-type="textfield">
118 <label>
119 <span>
120 <input type="radio" name="loginpress-selected-reason" value="2">
121 </span>
122 <span><?php _e( 'I found a better plugin', 'loginpress' ); ?></span>
123 </label>
124 <div class="loginpress-internal-message"></div>
125 <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>
126 </li>
127 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
128 <label>
129 <span>
130 <input type="radio" name="loginpress-selected-reason" value="3">
131 </span>
132 <span><?php _e( 'The plugin broke my site', 'loginpress' ); ?></span>
133 </label>
134 <div class="loginpress-internal-message"></div>
135 </li>
136 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
137 <label>
138 <span>
139 <input type="radio" name="loginpress-selected-reason" value="4">
140 </span>
141 <span><?php _e( 'The plugin suddenly stopped working', 'loginpress' ); ?></span>
142 </label>
143 <div class="loginpress-internal-message"></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="5">
149 </span>
150 <span><?php _e( 'I no longer need the plugin', 'loginpress' ); ?></span>
151 </label>
152 <div class="loginpress-internal-message"></div>
153 </li>
154 <li class="loginpress-reason" data-input-type="" data-input-placeholder="">
155 <label>
156 <span>
157 <input type="radio" name="loginpress-selected-reason" value="6">
158 </span>
159 <span><?php _e( "It's a temporary deactivation. I'm just debugging an issue.", 'loginpress' ); ?></span>
160 </label>
161 <div class="loginpress-internal-message"></div>
162 </li>
163 <li class="loginpress-reason has-input" data-input-type="textfield" >
164 <label>
165 <span>
166 <input type="radio" name="loginpress-selected-reason" value="7">
167 </span>
168 <span><?php _e( 'Other', 'loginpress' ); ?></span>
169 </label>
170 <div class="loginpress-internal-message"></div>
171 <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>
172 </li>
173 </ul>
174 </div>
175 <div class="loginpress-popup-footer">
176 <label class="loginpress-anonymous"><input type="checkbox" /><?php _e( 'Anonymous feedback', 'loginpress' ); ?></label>
177 <input type="button" class="button button-secondary button-skip loginpress-popup-skip-feedback" value="<?php _e( 'Skip & Deactivate', 'loginpress'); ?>" >
178 <div class="action-btns">
179 <span class="loginpress-spinner"><img src="<?php echo admin_url( '/images/spinner.gif' ); ?>" alt=""></span>
180 <input type="submit" class="button button-secondary button-deactivate loginpress-popup-allow-deactivate" value="<?php _e( 'Submit & Deactivate', 'loginpress'); ?>" disabled="disabled">
181 <a href="#" class="button button-primary loginpress-popup-button-close"><?php _e( 'Cancel', 'loginpress' ); ?></a>
182
183 </div>
184 </div>
185 </form>
186 </div>
187 </div>
188
189
190 <script>
191 (function( $ ) {
192
193 $(function() {
194
195 var pluginSlug = 'loginpress';
196 // Code to fire when the DOM is ready.
197
198 $(document).on('click', 'tr[data-slug="' + pluginSlug + '"] .deactivate', function(e){
199 e.preventDefault();
200 $('.loginpress-popup-overlay').addClass('loginpress-active');
201 $('body').addClass('loginpress-hidden');
202 });
203 $(document).on('click', '.loginpress-popup-button-close', function () {
204 close_popup();
205 });
206 $(document).on('click', ".loginpress-serveypanel,tr[data-slug='" + pluginSlug + "'] .deactivate",function(e){
207 e.stopPropagation();
208 });
209
210 $(document).click(function(){
211 close_popup();
212 });
213 $('.loginpress-reason label').on('click', function(){
214 if($(this).find('input[type="radio"]').is(':checked')){
215 //$('.loginpress-anonymous').show();
216 $(this).next().next('.loginpress-reason-input').show().end().end().parent().siblings().find('.loginpress-reason-input').hide();
217 }
218 });
219 $('input[type="radio"][name="loginpress-selected-reason"]').on('click', function(event) {
220 $(".loginpress-popup-allow-deactivate").removeAttr('disabled');
221 $(".loginpress-popup-skip-feedback").removeAttr('disabled');
222 $('.message.error-message').hide();
223 $('.loginpress-pro-message').hide();
224 });
225
226 $('.loginpress-reason-pro label').on('click', function(){
227 if($(this).find('input[type="radio"]').is(':checked')){
228 $(this).next('.loginpress-pro-message').show().end().end().parent().siblings().find('.loginpress-reason-input').hide();
229 $(this).next('.loginpress-pro-message').show()
230 $('.loginpress-popup-allow-deactivate').attr('disabled', 'disabled');
231 $('.loginpress-popup-skip-feedback').attr('disabled', 'disabled');
232 }
233 });
234 $(document).on('submit', '#loginpress-deactivate-form', function(event) {
235 event.preventDefault();
236
237 var _reason = $('input[type="radio"][name="loginpress-selected-reason"]:checked').val();
238 var _reason_details = '';
239
240 if ( _reason == 2 ) {
241 _reason_details = $("input[type='text'][name='better_plugin']").val();
242 } else if ( _reason == 7 ) {
243 _reason_details = $("input[type='text'][name='other_reason']").val();
244 }
245
246 if ( ( _reason == 7 || _reason == 2 ) && _reason_details == '' ) {
247 $('.message.error-message').show();
248 return ;
249 }
250 $.ajax({
251 url: ajaxurl,
252 type: 'POST',
253 data: {
254 action : 'loginpress_deactivate',
255 reason : _reason,
256 reason_detail : _reason_details,
257 },
258 beforeSend: function(){
259 $(".loginpress-spinner").show();
260 $(".loginpress-popup-allow-deactivate").attr("disabled", "disabled");
261 }
262 })
263 .done(function() {
264 $(".loginpress-spinner").hide();
265 $(".loginpress-popup-allow-deactivate").removeAttr("disabled");
266 window.location.href = $("tr[data-slug='"+ pluginSlug +"'] .deactivate a").attr('href');
267 });
268
269 });
270
271 $('.loginpress-popup-skip-feedback').on('click', function(e){
272 // e.preventDefault();
273 window.location.href = $("tr[data-slug='"+ pluginSlug +"'] .deactivate a").attr('href');
274 })
275
276 function close_popup() {
277 $('.loginpress-popup-overlay').removeClass('loginpress-active');
278 $('#loginpress-deactivate-form').trigger("reset");
279 $(".loginpress-popup-allow-deactivate").attr('disabled', 'disabled');
280 $(".loginpress-reason-input").hide();
281 $('body').removeClass('loginpress-hidden');
282 $('.message.error-message').hide();
283 $('.loginpress-pro-message').hide();
284 }
285 });
286
287 })( jQuery ); // This invokes the function above and allows us to use '$' in place of 'jQuery' in our code.
288 </script>
289