Version Description
- 18th September 2019 =
- Rendered Ready sites importer page on scroll, Added ratings link on responsive-add-ons page
Download this release
Release Info
Developer | cyberchimps |
Plugin | Responsive Add Ons |
Version | 2.0.6 |
Comparing to | |
See all releases |
Code changes from version 2.0.5 to 2.0.6
- admin/css/responsive-ready-sites-admin.css +32 -4
- admin/images/responsive-thumbnail.jpg +0 -0
- admin/js/render-responsive-ready-sites.js +154 -48
- admin/js/responsive-ready-sites-admin.js +30 -11
- admin/js/responsive-ready-sites-api.js +3 -2
- admin/partials/responsive-ready-sites-admin-display.php +36 -30
- includes/importers/class-responsive-ready-sites-importer.php +14 -3
- readme.txt +4 -1
- responsive-add-ons.php +89 -17
admin/css/responsive-ready-sites-admin.css
CHANGED
@@ -273,13 +273,14 @@ responsive-ready-site-import-free.button.installing:before {
|
|
273 |
}
|
274 |
.demo-type.pro{
|
275 |
position: absolute;
|
276 |
-
right:
|
277 |
-
top:
|
278 |
-
background: #
|
279 |
z-index: 1;
|
280 |
color: #fff;
|
281 |
padding: 0.5em 1em;
|
282 |
text-transform: uppercase;
|
|
|
283 |
}
|
284 |
.demo-type.free{
|
285 |
display:none;
|
@@ -376,8 +377,35 @@ responsive-ready-site-import-free.button.installing:before {
|
|
376 |
}
|
377 |
.spinner-wrap{
|
378 |
text-align: center;
|
379 |
-
margin-top: 20%;
|
380 |
}
|
381 |
.spinner-wrap .spinner.is-active{
|
382 |
float:none;
|
383 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
273 |
}
|
274 |
.demo-type.pro{
|
275 |
position: absolute;
|
276 |
+
right: 0;
|
277 |
+
top: 0;
|
278 |
+
background: #ff793f;
|
279 |
z-index: 1;
|
280 |
color: #fff;
|
281 |
padding: 0.5em 1em;
|
282 |
text-transform: uppercase;
|
283 |
+
box-shadow: -2px 2px 5px rgba(0,0,0,0.1);
|
284 |
}
|
285 |
.demo-type.free{
|
286 |
display:none;
|
377 |
}
|
378 |
.spinner-wrap{
|
379 |
text-align: center;
|
|
|
380 |
}
|
381 |
.spinner-wrap .spinner.is-active{
|
382 |
float:none;
|
383 |
}
|
384 |
+
#responsive-theme-activation {
|
385 |
+
border: none;
|
386 |
+
padding: 20px;
|
387 |
+
}
|
388 |
+
#responsive-theme-activation .responsive-addons-message-inner {
|
389 |
+
display: flex;
|
390 |
+
-webkit-box-align: center;
|
391 |
+
align-items: center;
|
392 |
+
}
|
393 |
+
#responsive-theme-activation .responsive-addons-message-icon {
|
394 |
+
font-size: 20px;
|
395 |
+
}
|
396 |
+
#responsive-theme-activation .responsive-addons-message-content {
|
397 |
+
padding: 0 20px;
|
398 |
+
}
|
399 |
+
#responsive-theme-activation .responsive-addons-message-content .responsive-addons-message-actions {
|
400 |
+
margin-top: 10px;
|
401 |
+
}
|
402 |
+
#responsive-theme-activation .responsive-addons-message-content p{
|
403 |
+
padding: 0px;
|
404 |
+
margin: 0px;
|
405 |
+
}
|
406 |
+
@media screen and (max-width: 768px ) {
|
407 |
+
#responsive-theme-activation .responsive-addons-message-inner {
|
408 |
+
display: block;
|
409 |
+
text-align: center;
|
410 |
+
}
|
411 |
+
}
|
admin/images/responsive-thumbnail.jpg
ADDED
Binary file
|
admin/js/render-responsive-ready-sites.js
CHANGED
@@ -21,10 +21,13 @@
|
|
21 |
|
22 |
active_site : '',
|
23 |
|
|
|
|
|
24 |
init: function()
|
25 |
{
|
26 |
this._bind();
|
27 |
-
this.
|
|
|
28 |
},
|
29 |
|
30 |
/**
|
@@ -36,8 +39,11 @@
|
|
36 |
*/
|
37 |
_bind: function()
|
38 |
{
|
|
|
39 |
$( document ).on( 'responsive-api-post-loaded' , ResponsiveSitesRender._reinitGrid );
|
|
|
40 |
$( document ).on( 'responsive-get-active-demo-site-done' , ResponsiveSitesRender._loadFirstGrid );
|
|
|
41 |
},
|
42 |
|
43 |
_apiAddParam_site_url: function() {
|
@@ -62,24 +68,22 @@
|
|
62 |
trigger = 'responsive-api-post-loaded';
|
63 |
}
|
64 |
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
var per_page_val = 50;
|
69 |
-
|
70 |
-
ResponsiveSitesRender._api_params['per_page'] = per_page_val;
|
71 |
|
|
|
|
|
72 |
ResponsiveSitesRender._apiAddParam_site_url();
|
73 |
|
74 |
// API Request.
|
75 |
var api_post = {
|
76 |
-
id: '',
|
77 |
-
slug: '?' + decodeURIComponent( $.param( ResponsiveSitesRender._api_params ) ),
|
78 |
trigger: trigger,
|
79 |
};
|
80 |
|
81 |
ResponsiveSitesAPI._api_request( api_post );
|
82 |
-
|
83 |
},
|
84 |
|
85 |
/**
|
@@ -105,29 +109,33 @@
|
|
105 |
|
106 |
var template = wp.template( 'responsive-sites-list' );
|
107 |
|
108 |
-
$( 'body' ).addClass( 'page-builder-selected' );
|
109 |
$( 'body' ).removeClass( 'loading-content' );
|
110 |
-
$( '.filter-count .count' ).text( data.items_count );
|
111 |
-
|
112 |
-
var active = ResponsiveSitesRender.active_site;
|
113 |
-
|
114 |
-
var temp = data.items[0];
|
115 |
-
$.each(
|
116 |
-
data.items,
|
117 |
-
function(i , val){
|
118 |
-
if (val.slug == active) {
|
119 |
-
data.items[i].active = true;
|
120 |
-
data.items[0] = data.items[i];
|
121 |
-
data.items[i] = temp;
|
122 |
-
} else {
|
123 |
-
data.items[i].active = false;
|
124 |
-
}
|
125 |
-
}
|
126 |
-
);
|
127 |
|
128 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
129 |
jQuery( '#responsive-ready-sites-admin-page' ).show();
|
130 |
jQuery( '#responsive-sites' ).show().html( template( data ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
},
|
132 |
|
133 |
// Returns if a value is an array.
|
@@ -135,29 +143,127 @@
|
|
135 |
return value && typeof value === 'object' && value.constructor === Array;
|
136 |
},
|
137 |
|
138 |
-
//
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
)
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
);
|
|
|
|
|
|
|
158 |
|
159 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
161 |
};
|
162 |
|
163 |
/**
|
21 |
|
22 |
active_site : '',
|
23 |
|
24 |
+
active_site_data: {},
|
25 |
+
|
26 |
init: function()
|
27 |
{
|
28 |
this._bind();
|
29 |
+
this._setActiveSite();
|
30 |
+
this._loadFirstGrid();
|
31 |
},
|
32 |
|
33 |
/**
|
39 |
*/
|
40 |
_bind: function()
|
41 |
{
|
42 |
+
$( document ).on( 'cyberchimps-sites-api-request-error' , ResponsiveSitesRender._addReadySiteSuggestionBlock );
|
43 |
$( document ).on( 'responsive-api-post-loaded' , ResponsiveSitesRender._reinitGrid );
|
44 |
+
$( document ).on( 'responsive-api-post-loaded-on-scroll' , ResponsiveSitesRender._reinitGridScrolled );
|
45 |
$( document ).on( 'responsive-get-active-demo-site-done' , ResponsiveSitesRender._loadFirstGrid );
|
46 |
+
$( document ).on( 'scroll' , ResponsiveSitesRender._scroll );
|
47 |
},
|
48 |
|
49 |
_apiAddParam_site_url: function() {
|
68 |
trigger = 'responsive-api-post-loaded';
|
69 |
}
|
70 |
|
71 |
+
if ( resetPagedCount ) {
|
72 |
+
ResponsiveSitesRender._resetPagedCount();
|
73 |
+
}
|
|
|
|
|
|
|
74 |
|
75 |
+
ResponsiveSitesRender._apiAddParam_per_page();
|
76 |
+
ResponsiveSitesRender._apiAddParam_page();
|
77 |
ResponsiveSitesRender._apiAddParam_site_url();
|
78 |
|
79 |
// API Request.
|
80 |
var api_post = {
|
81 |
+
id: 'cyberchimps-sites',
|
82 |
+
slug: 'cyberchimps-sites?' + decodeURIComponent( $.param( ResponsiveSitesRender._api_params ) ),
|
83 |
trigger: trigger,
|
84 |
};
|
85 |
|
86 |
ResponsiveSitesAPI._api_request( api_post );
|
|
|
87 |
},
|
88 |
|
89 |
/**
|
109 |
|
110 |
var template = wp.template( 'responsive-sites-list' );
|
111 |
|
|
|
112 |
$( 'body' ).removeClass( 'loading-content' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
|
114 |
+
if ( responsiveSitesRender.active_site_data !== "" ) {
|
115 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site-data', JSON.stringify( responsiveSitesRender.active_site_data ) );
|
116 |
+
data.active_site_data = JSON.parse( jQuery( 'body' ).attr( 'data-responsive-active-site-data' ) );
|
117 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site', ResponsiveSitesRender.active_site );
|
118 |
+
} else {
|
119 |
+
data.active_site_data = "";
|
120 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site',"" );
|
121 |
+
}
|
122 |
+
|
123 |
+
data.active_site = jQuery( 'body' ).attr( 'data-responsive-active-site' );
|
124 |
+
|
125 |
+
// Reset active site data during grid initialization.
|
126 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site-data','' );
|
127 |
+
|
128 |
jQuery( '#responsive-ready-sites-admin-page' ).show();
|
129 |
jQuery( '#responsive-sites' ).show().html( template( data ) );
|
130 |
+
|
131 |
+
var items_count = data.items.length;
|
132 |
+
if ( items_count <= 0 ) {
|
133 |
+
$( '#responsive-ready-sites-admin-page' ).find( '.spinner' ).removeClass( 'is-active' );
|
134 |
+
$( '.responsive-sites-suggestions' ).remove();
|
135 |
+
|
136 |
+
} else {
|
137 |
+
$( 'body' ).removeClass( 'listed-all-sites' );
|
138 |
+
}
|
139 |
},
|
140 |
|
141 |
// Returns if a value is an array.
|
143 |
return value && typeof value === 'object' && value.constructor === Array;
|
144 |
},
|
145 |
|
146 |
+
// Set active site.
|
147 |
+
_setActiveSite: function() {
|
148 |
+
var active = responsiveSitesRender.active_site_data;
|
149 |
+
ResponsiveSitesRender.active_site = responsiveSitesRender.active_site_data.slug;
|
150 |
+
},
|
151 |
+
|
152 |
+
/**
|
153 |
+
* On Scroll
|
154 |
+
*/
|
155 |
+
_scroll: function(event) {
|
156 |
+
|
157 |
+
if ( ! $( 'body' ).hasClass( 'listed-all-sites' ) ) {
|
158 |
+
|
159 |
+
var scrollDistance = jQuery( window ).scrollTop();
|
160 |
+
|
161 |
+
var responsiveSitesBottom = Math.abs( jQuery( window ).height() - jQuery( '#responsive-ready-sites-admin-page' ).offset().top - jQuery( '#responsive-ready-sites-admin-page' ).height() );
|
162 |
+
responsiveSitesBottom = responsiveSitesBottom - 100;
|
163 |
+
ajaxLoading = jQuery( 'body' ).data( 'scrolling' );
|
164 |
+
|
165 |
+
if (scrollDistance > responsiveSitesBottom && ajaxLoading == false) {
|
166 |
+
ResponsiveSitesRender._updatedPagedCount();
|
167 |
+
|
168 |
+
if ( ! $( '#responsive-sites .no-themes' ).length ) {
|
169 |
+
$( '#responsive-ready-sites-admin-page' ).find( '.spinner' ).addClass( 'is-active' );
|
170 |
}
|
171 |
+
|
172 |
+
jQuery( 'body' ).data( 'scrolling', true );
|
173 |
+
|
174 |
+
ResponsiveSitesRender._showSites( false, 'responsive-api-post-loaded-on-scroll' );
|
175 |
+
}
|
176 |
+
}
|
177 |
+
},
|
178 |
+
|
179 |
+
/**
|
180 |
+
* Append sites on scroll.
|
181 |
+
*
|
182 |
+
* @param {object} event Object.
|
183 |
+
* @param {object} data API response data.
|
184 |
+
*/
|
185 |
+
_reinitGridScrolled: function( event, data ) {
|
186 |
+
|
187 |
+
var template = wp.template( 'responsive-sites-list' );
|
188 |
+
data.active_site = jQuery( 'body' ).attr( 'data-responsive-active-site' );
|
189 |
+
data.active_site_data = jQuery( 'body' ).attr( 'data-responsive-active-site-data' );
|
190 |
+
|
191 |
+
if ( 'undefined' !== typeof data.items && data.items.length > 0 ) {
|
192 |
+
|
193 |
+
$( 'body' ).removeClass( 'loading-content' );
|
194 |
+
|
195 |
+
setTimeout(
|
196 |
+
function() {
|
197 |
+
jQuery( '#responsive-sites' ).append( template( data ) );
|
198 |
+
|
199 |
+
},
|
200 |
+
800
|
201 |
);
|
202 |
+
} else {
|
203 |
+
$( 'body' ).addClass( 'listed-all-sites' );
|
204 |
+
}
|
205 |
|
206 |
+
},
|
207 |
+
|
208 |
+
/**
|
209 |
+
* Reset Page Count.
|
210 |
+
*/
|
211 |
+
_resetPagedCount: function() {
|
212 |
+
|
213 |
+
jQuery( 'body' ).attr( 'data-responsive-demo-last-request', '1' );
|
214 |
+
jQuery( 'body' ).attr( 'data-responsive-demo-paged', '1' );
|
215 |
+
jQuery( 'body' ).attr( 'data-scrolling', false );
|
216 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site-data', '' );
|
217 |
+
jQuery( 'body' ).attr( 'data-responsive-active-site', '' );
|
218 |
+
|
219 |
+
},
|
220 |
+
|
221 |
+
/**
|
222 |
+
* Add 'page' to api request.
|
223 |
+
*
|
224 |
+
* @private
|
225 |
+
*/
|
226 |
+
_apiAddParam_page: function() {
|
227 |
+
var page_val = parseInt( jQuery( 'body' ).attr( 'data-responsive-demo-paged' ) ) || 1;
|
228 |
+
ResponsiveSitesRender._api_params['page'] = page_val;
|
229 |
+
},
|
230 |
+
|
231 |
+
/**
|
232 |
+
* Update Page Count.
|
233 |
+
*/
|
234 |
+
_updatedPagedCount: function() {
|
235 |
+
paged = parseInt( jQuery( 'body' ).attr( 'data-responsive-demo-paged' ) );
|
236 |
+
jQuery( 'body' ).attr( 'data-responsive-demo-paged', paged + 1 );
|
237 |
+
window.setTimeout(
|
238 |
+
function () {
|
239 |
+
jQuery( 'body' ).data( 'scrolling', false );
|
240 |
+
},
|
241 |
+
800
|
242 |
+
);
|
243 |
+
},
|
244 |
+
/**
|
245 |
+
* Add per page Parameter.
|
246 |
+
*/
|
247 |
+
_apiAddParam_per_page: function() {
|
248 |
+
var per_page_val = 6;
|
249 |
+
if ( responsiveSitesRender.sites && responsiveSitesRender.sites["per_page"] ) {
|
250 |
+
per_page_val = parseInt( responsiveSitesRender.sites["per_page"] );
|
251 |
+
}
|
252 |
+
ResponsiveSitesRender._api_params['per_page'] = per_page_val;
|
253 |
+
},
|
254 |
|
255 |
+
/**
|
256 |
+
* Add ready site suggestion Block
|
257 |
+
*/
|
258 |
+
_addReadySiteSuggestionBlock: function() {
|
259 |
+
$( '#responsive-ready-sites-admin-page' ).find( '.spinner' ).removeClass( 'is-active' ).addClass( 'hide-me' );
|
260 |
+
|
261 |
+
$( 'body' ).addClass( 'listed-all-sites' );
|
262 |
+
var template = wp.template( 'responsive-sites-suggestions' );
|
263 |
+
if ( ! $( '.responsive-sites-suggestions' ).length ) {
|
264 |
+
$( '#responsive-sites' ).append( template );
|
265 |
+
}
|
266 |
+
},
|
267 |
};
|
268 |
|
269 |
/**
|
admin/js/responsive-ready-sites-admin.js
CHANGED
@@ -159,7 +159,9 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
159 |
|
160 |
current_site: [],
|
161 |
current_screen: '',
|
162 |
-
|
|
|
|
|
163 |
widgets_data: '',
|
164 |
site_options_data: '',
|
165 |
|
@@ -176,6 +178,7 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
176 |
|
177 |
init: function()
|
178 |
{
|
|
|
179 |
this._bind();
|
180 |
},
|
181 |
|
@@ -236,7 +239,9 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
236 |
dataType: 'json',
|
237 |
data : {
|
238 |
action : 'responsive-ready-sites-import-end',
|
239 |
-
slug: ResponsiveSitesAdmin.
|
|
|
|
|
240 |
}
|
241 |
}
|
242 |
)
|
@@ -261,6 +266,18 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
261 |
);
|
262 |
},
|
263 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
264 |
/**
|
265 |
* Import Site options Screen
|
266 |
*/
|
@@ -936,7 +953,7 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
936 |
|
937 |
var site_id = $( '.responsive-ready-sites-advanced-options-wrap' ).find( '.demo_site_id' ).val();
|
938 |
|
939 |
-
var apiURL = responsiveSitesAdmin.ApiURL + site_id;
|
940 |
|
941 |
$.ajax(
|
942 |
{
|
@@ -995,14 +1012,16 @@ var ResponsiveSitesAjaxQueue = (function() {
|
|
995 |
|
996 |
} else {
|
997 |
|
998 |
-
ResponsiveSitesAdmin.xml_path
|
999 |
-
ResponsiveSitesAdmin.wpforms_path
|
1000 |
-
ResponsiveSitesAdmin.
|
1001 |
-
ResponsiveSitesAdmin.
|
1002 |
-
ResponsiveSitesAdmin.
|
1003 |
-
ResponsiveSitesAdmin.
|
1004 |
-
ResponsiveSitesAdmin.
|
1005 |
-
ResponsiveSitesAdmin.
|
|
|
|
|
1006 |
|
1007 |
$( document ).trigger( 'responsive-ready-sites-import-set-site-data-done' );
|
1008 |
}
|
159 |
|
160 |
current_site: [],
|
161 |
current_screen: '',
|
162 |
+
active_site_slug: '',
|
163 |
+
active_site_title: '',
|
164 |
+
active_site_featured_image_url: '',
|
165 |
widgets_data: '',
|
166 |
site_options_data: '',
|
167 |
|
178 |
|
179 |
init: function()
|
180 |
{
|
181 |
+
this._resetPagedCount();
|
182 |
this._bind();
|
183 |
},
|
184 |
|
239 |
dataType: 'json',
|
240 |
data : {
|
241 |
action : 'responsive-ready-sites-import-end',
|
242 |
+
slug: ResponsiveSitesAdmin.active_site_slug,
|
243 |
+
title: ResponsiveSitesAdmin.active_site_title,
|
244 |
+
featured_image_url: ResponsiveSitesAdmin.active_site_featured_image_url,
|
245 |
}
|
246 |
}
|
247 |
)
|
266 |
);
|
267 |
},
|
268 |
|
269 |
+
/**
|
270 |
+
* Reset Page Count.
|
271 |
+
*/
|
272 |
+
_resetPagedCount: function() {
|
273 |
+
|
274 |
+
$( 'body' ).addClass( 'loading-content' );
|
275 |
+
$( 'body' ).attr( 'data-responsive-demo-last-request', '1' );
|
276 |
+
$( 'body' ).attr( 'data-responsive-demo-paged', '1' );
|
277 |
+
$( 'body' ).attr( 'data-scrolling', false );
|
278 |
+
|
279 |
+
},
|
280 |
+
|
281 |
/**
|
282 |
* Import Site options Screen
|
283 |
*/
|
953 |
|
954 |
var site_id = $( '.responsive-ready-sites-advanced-options-wrap' ).find( '.demo_site_id' ).val();
|
955 |
|
956 |
+
var apiURL = responsiveSitesAdmin.ApiURL + 'cyberchimps-sites/' + site_id;
|
957 |
|
958 |
$.ajax(
|
959 |
{
|
1012 |
|
1013 |
} else {
|
1014 |
|
1015 |
+
ResponsiveSitesAdmin.xml_path = encodeURI( demo_data.data['xml_path'] ) || '';
|
1016 |
+
ResponsiveSitesAdmin.wpforms_path = encodeURI( demo_data.data['wpforms_path'] ) || '';
|
1017 |
+
ResponsiveSitesAdmin.active_site_slug = demo_data.data['slug'] || '';
|
1018 |
+
ResponsiveSitesAdmin.active_site_title = demo_data.data['title'];
|
1019 |
+
ResponsiveSitesAdmin.active_site_featured_image_url = demo_data.data['featured_image_url'];
|
1020 |
+
ResponsiveSitesAdmin.site_customizer_data = JSON.stringify( demo_data.data['site_customizer_data'] ) || '';
|
1021 |
+
ResponsiveSitesAdmin.required_plugins = JSON.stringify( demo_data.data['required_plugins'] ) || '';
|
1022 |
+
ResponsiveSitesAdmin.required_pro_plugins = JSON.stringify( demo_data.data['required_pro_plugins'] || '' );
|
1023 |
+
ResponsiveSitesAdmin.widgets_data = JSON.stringify( demo_data.data['site_widgets_data'] ) || '';
|
1024 |
+
ResponsiveSitesAdmin.site_options_data = JSON.stringify( demo_data.data['site_options_data'] ) || '';
|
1025 |
|
1026 |
$( document ).trigger( 'responsive-ready-sites-import-set-site-data-done' );
|
1027 |
}
|
admin/js/responsive-ready-sites-api.js
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
|
11 |
_api_url : responsiveSitesApi.ApiURL,
|
12 |
_stored_data : {
|
13 |
-
'
|
14 |
},
|
15 |
|
16 |
/**
|
@@ -36,6 +36,7 @@
|
|
36 |
})
|
37 |
)
|
38 |
} else {
|
|
|
39 |
return response.json();
|
40 |
}
|
41 |
}
|
@@ -45,7 +46,7 @@
|
|
45 |
if ( 'object' === typeof data ) {
|
46 |
|
47 |
data['args'] = args;
|
48 |
-
if ( data.args.id ) {
|
49 |
ResponsiveSitesAPI._stored_data[ args.id ] = $.merge( ResponsiveSitesAPI._stored_data[ data.args.id ], data.items );
|
50 |
}
|
51 |
|
10 |
|
11 |
_api_url : responsiveSitesApi.ApiURL,
|
12 |
_stored_data : {
|
13 |
+
'cyberchimps-sites' : [],
|
14 |
},
|
15 |
|
16 |
/**
|
36 |
})
|
37 |
)
|
38 |
} else {
|
39 |
+
$( document ).trigger( 'cyberchimps-sites-api-request-error' );
|
40 |
return response.json();
|
41 |
}
|
42 |
}
|
46 |
if ( 'object' === typeof data ) {
|
47 |
|
48 |
data['args'] = args;
|
49 |
+
if ( data.args.id && 'undefined' !== typeof data.items ) {
|
50 |
ResponsiveSitesAPI._stored_data[ args.id ] = $.merge( ResponsiveSitesAPI._stored_data[ data.args.id ], data.items );
|
51 |
}
|
52 |
|
admin/partials/responsive-ready-sites-admin-display.php
CHANGED
@@ -15,10 +15,7 @@
|
|
15 |
<!-- This file should primarily consist of HTML with a little bit of PHP. -->
|
16 |
<div id="responsive-ready-site-preview"></div>
|
17 |
<div id="responsive-ready-sites-import-options"></div>
|
18 |
-
<div
|
19 |
-
<span class="spinner is-active"></span>
|
20 |
-
</div>
|
21 |
-
<div id="responsive-ready-sites-admin-page" style="display: none;">
|
22 |
<div class="responsive-sites-header">
|
23 |
<span class="ready-site-list-title">Responsive Ready Websites</span>
|
24 |
<p class="ready-site-list-intro">Build your Responsive website in 3 simple steps - import a ready website, change content and launch.</p>
|
@@ -26,6 +23,10 @@
|
|
26 |
<div class="theme-browser rendered">
|
27 |
<div id="responsive-sites" class="themes wp-clearfix"></div>
|
28 |
</div>
|
|
|
|
|
|
|
|
|
29 |
</div>
|
30 |
|
31 |
<?php
|
@@ -37,19 +38,24 @@
|
|
37 |
<script type="text/template" id="tmpl-responsive-sites-list">
|
38 |
|
39 |
<# if ( data.items.length ) { #>
|
40 |
-
<# for ( key in data.items ) { #>
|
41 |
|
42 |
-
<# if (data.
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
|
|
|
|
|
|
|
|
51 |
|
52 |
-
|
|
|
|
|
53 |
|
54 |
<div class="theme inactive ra-site-single {{ data.items[ key ].status }}" tabindex="0" aria-describedby="responsive-theme-action responsive-theme-name"
|
55 |
data-demo-id="{{{ data.items[ key ].id }}}"
|
@@ -60,7 +66,6 @@
|
|
60 |
data-screenshot="{{{ data.items[ key ]['featured_image_url'] }}}"
|
61 |
data-required-plugins="{{ JSON.stringify(data.items[ key ]['required_plugins']) }}"
|
62 |
data-required-pro-plugins="{{ JSON.stringify(data.items[ key ]['required_pro_plugins']) }}">
|
63 |
-
<# } #>
|
64 |
<input type="hidden" class="site_options_data" value="{{ JSON.stringify(data.items[ key ][ 'site_options_data' ]) }}">
|
65 |
<div class="inner">
|
66 |
<span class="site-preview" data-href="{{ data.items[ key ]['responsive-site-url'] }}?TB_iframe=true&width=600&height=550" data-title="data title">
|
@@ -68,14 +73,10 @@
|
|
68 |
</span>
|
69 |
<span class="demo-type {{{ data.items[ key ].demo_type }}}">{{{ data.items[ key ].demo_type }}}</span>
|
70 |
<div class="theme-id-container">
|
71 |
-
<# if (data.items[ key ].active ) { #>
|
72 |
-
<h3 class="theme-name" id="responsive-theme-name">Active : {{{ data.items[ key ].title.rendered }}}</h3>
|
73 |
-
<# } else { #>
|
74 |
<h3 class="theme-name" id="responsive-theme-name">{{{ data.items[ key ].title.rendered }}}</h3>
|
75 |
<div class="theme-actions">
|
76 |
<button class="button-primary button preview install-theme-preview"><?php esc_html_e( 'Preview', 'responsive-addons' ); ?></button>
|
77 |
</div>
|
78 |
-
<# } #>
|
79 |
</div>
|
80 |
</div>
|
81 |
</div>
|
@@ -91,16 +92,21 @@
|
|
91 |
</span>
|
92 |
</p>
|
93 |
<# } #>
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
|
|
|
|
|
|
|
|
|
|
104 |
</script>
|
105 |
<?php
|
106 |
/** Single Demo Preview */
|
15 |
<!-- This file should primarily consist of HTML with a little bit of PHP. -->
|
16 |
<div id="responsive-ready-site-preview"></div>
|
17 |
<div id="responsive-ready-sites-import-options"></div>
|
18 |
+
<div id="responsive-ready-sites-admin-page">
|
|
|
|
|
|
|
19 |
<div class="responsive-sites-header">
|
20 |
<span class="ready-site-list-title">Responsive Ready Websites</span>
|
21 |
<p class="ready-site-list-intro">Build your Responsive website in 3 simple steps - import a ready website, change content and launch.</p>
|
23 |
<div class="theme-browser rendered">
|
24 |
<div id="responsive-sites" class="themes wp-clearfix"></div>
|
25 |
</div>
|
26 |
+
<div class="spinner-wrap">
|
27 |
+
<span class="spinner"></span>
|
28 |
+
</div>
|
29 |
+
|
30 |
</div>
|
31 |
|
32 |
<?php
|
38 |
<script type="text/template" id="tmpl-responsive-sites-list">
|
39 |
|
40 |
<# if ( data.items.length ) { #>
|
|
|
41 |
|
42 |
+
<# if ( data.active_site_data !== "" ) {#>
|
43 |
+
<div class="theme active ra-site-single" tabindex="0" aria-describedby="responsive-theme-action responsive-theme-name">
|
44 |
+
<div class="inner">
|
45 |
+
<span class="site-preview">
|
46 |
+
<div class="theme-screenshot" style="background-image: url('{{ data.active_site_data.featured_image_url }}');"></div>
|
47 |
+
</span>
|
48 |
+
<div class="theme-id-container">
|
49 |
+
<h3 class="theme-name" id="responsive-theme-name">Active : {{{ data.active_site_data.title }}}</h3>
|
50 |
+
</div>
|
51 |
+
</div>
|
52 |
+
</div>
|
53 |
+
<# } #>
|
54 |
+
<# for ( key in data.items ) { #>
|
55 |
|
56 |
+
<# if (data.items[ key ].slug === data.active_site ) { #>
|
57 |
+
<# continue; #>
|
58 |
+
<# } #>
|
59 |
|
60 |
<div class="theme inactive ra-site-single {{ data.items[ key ].status }}" tabindex="0" aria-describedby="responsive-theme-action responsive-theme-name"
|
61 |
data-demo-id="{{{ data.items[ key ].id }}}"
|
66 |
data-screenshot="{{{ data.items[ key ]['featured_image_url'] }}}"
|
67 |
data-required-plugins="{{ JSON.stringify(data.items[ key ]['required_plugins']) }}"
|
68 |
data-required-pro-plugins="{{ JSON.stringify(data.items[ key ]['required_pro_plugins']) }}">
|
|
|
69 |
<input type="hidden" class="site_options_data" value="{{ JSON.stringify(data.items[ key ][ 'site_options_data' ]) }}">
|
70 |
<div class="inner">
|
71 |
<span class="site-preview" data-href="{{ data.items[ key ]['responsive-site-url'] }}?TB_iframe=true&width=600&height=550" data-title="data title">
|
73 |
</span>
|
74 |
<span class="demo-type {{{ data.items[ key ].demo_type }}}">{{{ data.items[ key ].demo_type }}}</span>
|
75 |
<div class="theme-id-container">
|
|
|
|
|
|
|
76 |
<h3 class="theme-name" id="responsive-theme-name">{{{ data.items[ key ].title.rendered }}}</h3>
|
77 |
<div class="theme-actions">
|
78 |
<button class="button-primary button preview install-theme-preview"><?php esc_html_e( 'Preview', 'responsive-addons' ); ?></button>
|
79 |
</div>
|
|
|
80 |
</div>
|
81 |
</div>
|
82 |
</div>
|
92 |
</span>
|
93 |
</p>
|
94 |
<# } #>
|
95 |
+
</script>
|
96 |
+
<?php
|
97 |
+
/** Site suggestion block */
|
98 |
+
?>
|
99 |
+
<script type="text/template" id="tmpl-responsive-sites-suggestions">
|
100 |
+
<div class="theme inactive ra-site-single responsive-sites-suggestions">
|
101 |
+
<div class="inner">
|
102 |
+
<p>
|
103 |
+
<?php
|
104 |
+
/* translators: %1$s External Link */
|
105 |
+
printf( __( 'Can\'t find a Responsive Ready Site that suits your purpose ?<br><a target="_blank" href="%1$s">Suggest A Site</a>', 'responsive-addons' ), esc_url( 'mailto:support@cyberchimps.com?Subject=New%20Site%20Suggestion' ) );
|
106 |
+
?>
|
107 |
+
</p>
|
108 |
+
</div>
|
109 |
+
</div>
|
110 |
</script>
|
111 |
<?php
|
112 |
/** Single Demo Preview */
|
includes/importers/class-responsive-ready-sites-importer.php
CHANGED
@@ -454,8 +454,17 @@ if ( ! class_exists( 'Responsive_Ready_Sites_Importer' ) ) :
|
|
454 |
*/
|
455 |
public function import_end() {
|
456 |
|
457 |
-
$
|
458 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
459 |
|
460 |
do_action( 'responsive_ready_sites_import_complete' );
|
461 |
}
|
@@ -496,7 +505,7 @@ if ( ! class_exists( 'Responsive_Ready_Sites_Importer' ) ) :
|
|
496 |
$request_params = apply_filters(
|
497 |
'responsive_sites_api_params',
|
498 |
array(
|
499 |
-
'site_url' =>
|
500 |
)
|
501 |
);
|
502 |
|
@@ -524,6 +533,8 @@ if ( ! class_exists( 'Responsive_Ready_Sites_Importer' ) ) :
|
|
524 |
$remote_args['site_widgets_data'] = json_decode( $data['site_widgets_data'] );
|
525 |
$remote_args['site_options_data'] = $data['site_options_data'];
|
526 |
$remote_args['slug'] = $data['slug'];
|
|
|
|
|
527 |
}
|
528 |
|
529 |
// Merge remote demo and defaults.
|
454 |
*/
|
455 |
public function import_end() {
|
456 |
|
457 |
+
$current_active_site_slug = isset( $_REQUEST['slug'] ) ? $_REQUEST['slug'] : '';
|
458 |
+
$current_active_site_title = isset( $_REQUEST['title'] ) ? $_REQUEST['title'] : '';
|
459 |
+
$current_active_site_featured_image_url = isset( $_REQUEST['featured_image_url'] ) ? $_REQUEST['featured_image_url'] : '';
|
460 |
+
|
461 |
+
$current_active_site_data = array(
|
462 |
+
'slug' => $current_active_site_slug,
|
463 |
+
'title' => $current_active_site_title,
|
464 |
+
'featured_image_url' => $current_active_site_featured_image_url,
|
465 |
+
);
|
466 |
+
|
467 |
+
update_option( 'responsive_current_active_site', $current_active_site_data );
|
468 |
|
469 |
do_action( 'responsive_ready_sites_import_complete' );
|
470 |
}
|
505 |
$request_params = apply_filters(
|
506 |
'responsive_sites_api_params',
|
507 |
array(
|
508 |
+
'site_url' => site_url(),
|
509 |
)
|
510 |
);
|
511 |
|
533 |
$remote_args['site_widgets_data'] = json_decode( $data['site_widgets_data'] );
|
534 |
$remote_args['site_options_data'] = $data['site_options_data'];
|
535 |
$remote_args['slug'] = $data['slug'];
|
536 |
+
$remote_args['featured_image_url'] = $data['featured_image_url'];
|
537 |
+
$remote_args['title'] = $data['title']['rendered'];
|
538 |
}
|
539 |
|
540 |
// Merge remote demo and defaults.
|
readme.txt
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
=== Responsive Add Ons ===
|
2 |
Contributors: cyberchimps
|
3 |
Donate Link: http://cyberchimps.com
|
4 |
-
Tags:
|
5 |
Requires at least: 5.0
|
6 |
Tested up to: 5.2.2
|
7 |
Stable tag: trunk
|
@@ -33,6 +33,9 @@ The Ready Site Importer feature allows you to import ready-made website demos, c
|
|
33 |
1. Responsive Ready Site importer in action
|
34 |
|
35 |
== Changelog ==
|
|
|
|
|
|
|
36 |
= 2.0.5 - 9th September 2019 =
|
37 |
* Added Pro Templates, Support Links
|
38 |
|
1 |
=== Responsive Add Ons ===
|
2 |
Contributors: cyberchimps
|
3 |
Donate Link: http://cyberchimps.com
|
4 |
+
Tags: Elementor, Demo Importer, Templates, Starter Sites, Ready Websites
|
5 |
Requires at least: 5.0
|
6 |
Tested up to: 5.2.2
|
7 |
Stable tag: trunk
|
33 |
1. Responsive Ready Site importer in action
|
34 |
|
35 |
== Changelog ==
|
36 |
+
= 2.0.6 - 18th September 2019 =
|
37 |
+
* Rendered Ready sites importer page on scroll, Added ratings link on responsive-add-ons page
|
38 |
+
|
39 |
= 2.0.5 - 9th September 2019 =
|
40 |
* Added Pro Templates, Support Links
|
41 |
|
responsive-add-ons.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Responsive Add Ons
|
4 |
Plugin URI: http://wordpress.org/plugins/responsive-add-ons/
|
5 |
Description: Import Responsive Ready Sites that help you launch your website quickly. Just import, update & hit the launch button.
|
6 |
-
Version: 2.0.
|
7 |
Author: CyberChimps
|
8 |
Author URI: http://www.cyberchimps.com
|
9 |
License: GPL2
|
@@ -72,9 +72,6 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
72 |
//Dismiss admin notice
|
73 |
add_action( 'wp_ajax_responsive-notice-dismiss', array(&$this, 'dismiss_notice'));
|
74 |
|
75 |
-
//get Active Site
|
76 |
-
add_action( 'wp_ajax_responsive-ready-sites-get-active-site', array( $this, 'get_active_site' ) );
|
77 |
-
|
78 |
//Check if Responsive Addons pro plugin is active
|
79 |
add_action( 'wp_ajax_check-responsive-add-ons-pro-installed', array( $this, 'is_responsive_pro_is_installed') );
|
80 |
|
@@ -91,6 +88,10 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
91 |
|
92 |
add_action( 'responsive_addons_importer_page', array($this, 'menu_callback'));
|
93 |
|
|
|
|
|
|
|
|
|
94 |
self::set_api_url();
|
95 |
}
|
96 |
|
@@ -101,14 +102,32 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
101 |
|
102 |
$theme = wp_get_theme();
|
103 |
|
104 |
-
if ( 'Responsive' === $theme->name || 'Responsive' === $theme->parent_theme || $this->is_activation_theme_notice_expired()) {
|
105 |
return;
|
106 |
}
|
107 |
-
|
|
|
108 |
|
109 |
$theme_status = 'responsive-sites-theme-' . $this->get_theme_status();
|
110 |
-
printf( '<div id="responsive-theme-activation" class="%2$s"><p>Responsive Theme needs to be active for you to use currently installed "%1$s" plugin. <a href="#" class="%3$s" data-theme-slug="responsive">Install & Activate Now</a></p></div>', 'Responsive Addons', esc_attr( $class ), $theme_status );
|
111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
}
|
113 |
|
114 |
/**
|
@@ -238,7 +257,7 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
238 |
* @since 1.0.0
|
239 |
*/
|
240 |
public static function set_api_url() {
|
241 |
-
self::$api_url = apply_filters( 'responsive_ready_sites_api_url', 'https://ccreadysites.cyberchimps.com/wp-json/wp/v2/
|
242 |
}
|
243 |
|
244 |
/**
|
@@ -631,6 +650,7 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
631 |
'responsive_sites_api_params',
|
632 |
array(
|
633 |
'site_url' => '',
|
|
|
634 |
)
|
635 |
);
|
636 |
|
@@ -640,6 +660,7 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
640 |
array(
|
641 |
'sites' => $request_params,
|
642 |
'settings' => array(),
|
|
|
643 |
)
|
644 |
);
|
645 |
|
@@ -673,15 +694,11 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
673 |
}
|
674 |
|
675 |
/**
|
676 |
-
* Get Active
|
677 |
*/
|
678 |
-
public function
|
679 |
$current_active_site = get_option('responsive_current_active_site');
|
680 |
-
|
681 |
-
array(
|
682 |
-
'active_site' => $current_active_site
|
683 |
-
)
|
684 |
-
);
|
685 |
}
|
686 |
|
687 |
/**
|
@@ -829,6 +846,23 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
829 |
}
|
830 |
}
|
831 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
832 |
/**
|
833 |
* Adding the theme menu page
|
834 |
*/
|
@@ -854,13 +888,18 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
854 |
*/
|
855 |
public function responsive_add_ons() {
|
856 |
|
|
|
|
|
|
|
|
|
|
|
857 |
$responsive_addon_dir = plugin_dir_path( __FILE__ );
|
858 |
$responsive_addons_go_pro_screen = ( isset( $_GET['action'] ) && 'go_pro' === $_GET['action'] ) ? true : false; //phpcs:ignore
|
859 |
|
860 |
$responsive_addon_license_screen = ( isset( $_GET['action'] ) && 'license' === $_GET['action'] ) ? true : false; //phpcs:ignore
|
861 |
$responsive_addon_pro_support_screen = ( isset( $_GET['action'] ) && 'pro_support' === $_GET['action'] ) ? true : false; //phpcs:ignore?>
|
862 |
<div class="wrap">
|
863 |
-
<h1><?php esc_html_e( 'Responsive
|
864 |
<h2 class="nav-tab-wrapper">
|
865 |
<a href="<?php echo esc_url( admin_url( 'admin.php?page=responsive-add-ons' ) ); ?>" class="nav-tab<?php if ( ! isset( $_GET['action'] ) || isset( $_GET['action'] ) && 'go_pro' != $_GET['action'] && 'license' != $_GET['action'] && 'pro_support' != $_GET['action'] ) echo ' nav-tab-active'; ?>"><?php esc_html_e( 'Ready Site Importer' ); ?></a>
|
866 |
<?php
|
@@ -908,7 +947,40 @@ if( !class_exists( 'Responsive_Addons' ) ) {
|
|
908 |
}
|
909 |
}
|
910 |
|
911 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
912 |
}
|
913 |
|
914 |
/**
|
3 |
Plugin Name: Responsive Add Ons
|
4 |
Plugin URI: http://wordpress.org/plugins/responsive-add-ons/
|
5 |
Description: Import Responsive Ready Sites that help you launch your website quickly. Just import, update & hit the launch button.
|
6 |
+
Version: 2.0.6
|
7 |
Author: CyberChimps
|
8 |
Author URI: http://www.cyberchimps.com
|
9 |
License: GPL2
|
72 |
//Dismiss admin notice
|
73 |
add_action( 'wp_ajax_responsive-notice-dismiss', array(&$this, 'dismiss_notice'));
|
74 |
|
|
|
|
|
|
|
75 |
//Check if Responsive Addons pro plugin is active
|
76 |
add_action( 'wp_ajax_check-responsive-add-ons-pro-installed', array( $this, 'is_responsive_pro_is_installed') );
|
77 |
|
88 |
|
89 |
add_action( 'responsive_addons_importer_page', array($this, 'menu_callback'));
|
90 |
|
91 |
+
//Add rating links to the Responsive Addons Admin Page
|
92 |
+
add_filter( 'admin_footer_text', array( $this, 'responsive_addons_admin_rate_us' ) );
|
93 |
+
|
94 |
+
add_action( 'init', array( $this, 'app_output_buffer' ) );
|
95 |
self::set_api_url();
|
96 |
}
|
97 |
|
102 |
|
103 |
$theme = wp_get_theme();
|
104 |
|
105 |
+
if ( 'Responsive' === $theme->name || 'Responsive' === $theme->parent_theme || $this->is_activation_theme_notice_expired() || is_plugin_active( 'responsive-addons-pro/responsive-addons-pro.php' )) {
|
106 |
return;
|
107 |
}
|
108 |
+
|
109 |
+
$class = 'responsive-notice notice notice-error';
|
110 |
|
111 |
$theme_status = 'responsive-sites-theme-' . $this->get_theme_status();
|
|
|
112 |
|
113 |
+
$image_path = RESPONSIVE_ADDONS_URI . 'admin/images/responsive-thumbnail.jpg';
|
114 |
+
?>
|
115 |
+
<div id="responsive-theme-activation" class="<?php echo $class; ?>">
|
116 |
+
<div class="responsive-addons-message-inner">
|
117 |
+
<div class="responsive-addons-message-icon">
|
118 |
+
<div class="">
|
119 |
+
<img src="<?php echo $image_path; ?>" alt="Responsive Addons">
|
120 |
+
</div>
|
121 |
+
</div>
|
122 |
+
<div class="responsive-addons-message-content">
|
123 |
+
<p><?php echo esc_html( 'Responsive theme needs to be active to use the Responsive Addons plugin.' ); ?> </p>
|
124 |
+
<p class="responsive-addons-message-actions">
|
125 |
+
<a href="#" class="<?php echo $theme_status; ?> button button-primary" data-theme-slug="responsive">Install & Activate Now</a>
|
126 |
+
</p>
|
127 |
+
</div>
|
128 |
+
</div>
|
129 |
+
</div>
|
130 |
+
<?php
|
131 |
}
|
132 |
|
133 |
/**
|
257 |
* @since 1.0.0
|
258 |
*/
|
259 |
public static function set_api_url() {
|
260 |
+
self::$api_url = apply_filters( 'responsive_ready_sites_api_url', 'https://ccreadysites.cyberchimps.com/wp-json/wp/v2/' );
|
261 |
}
|
262 |
|
263 |
/**
|
650 |
'responsive_sites_api_params',
|
651 |
array(
|
652 |
'site_url' => '',
|
653 |
+
'per_page' => 6,
|
654 |
)
|
655 |
);
|
656 |
|
660 |
array(
|
661 |
'sites' => $request_params,
|
662 |
'settings' => array(),
|
663 |
+
'active_site_data' => $this->get_active_site_data(),
|
664 |
)
|
665 |
);
|
666 |
|
694 |
}
|
695 |
|
696 |
/**
|
697 |
+
* Get Active site data
|
698 |
*/
|
699 |
+
public function get_active_site_data() {
|
700 |
$current_active_site = get_option('responsive_current_active_site');
|
701 |
+
return $current_active_site;
|
|
|
|
|
|
|
|
|
702 |
}
|
703 |
|
704 |
/**
|
846 |
}
|
847 |
}
|
848 |
|
849 |
+
/**
|
850 |
+
* Check if Responsive Addons Pro License is Active.
|
851 |
+
*/
|
852 |
+
public function responsive_pro_license_is_active() {
|
853 |
+
global $wcam_lib;
|
854 |
+
if( is_null( $wcam_lib ) ){
|
855 |
+
return false;
|
856 |
+
}
|
857 |
+
$license_status = $wcam_lib->license_key_status();
|
858 |
+
|
859 |
+
if ( ! empty( $license_status[ 'data' ][ 'activated' ] ) && $license_status[ 'data' ][ 'activated' ] ) {
|
860 |
+
return true;
|
861 |
+
} else {
|
862 |
+
return false;
|
863 |
+
}
|
864 |
+
}
|
865 |
+
|
866 |
/**
|
867 |
* Adding the theme menu page
|
868 |
*/
|
888 |
*/
|
889 |
public function responsive_add_ons() {
|
890 |
|
891 |
+
if( $this->is_responsive_addons_pro_is_active() && !$this->responsive_pro_license_is_active() ){
|
892 |
+
wp_redirect( admin_url( '/options-general.php?page=wc_am_client_responsive_addons_pro_dashboard' ) );
|
893 |
+
exit;
|
894 |
+
}
|
895 |
+
|
896 |
$responsive_addon_dir = plugin_dir_path( __FILE__ );
|
897 |
$responsive_addons_go_pro_screen = ( isset( $_GET['action'] ) && 'go_pro' === $_GET['action'] ) ? true : false; //phpcs:ignore
|
898 |
|
899 |
$responsive_addon_license_screen = ( isset( $_GET['action'] ) && 'license' === $_GET['action'] ) ? true : false; //phpcs:ignore
|
900 |
$responsive_addon_pro_support_screen = ( isset( $_GET['action'] ) && 'pro_support' === $_GET['action'] ) ? true : false; //phpcs:ignore?>
|
901 |
<div class="wrap">
|
902 |
+
<h1><?php esc_html_e( 'Responsive Add Ons' ); ?></h1>
|
903 |
<h2 class="nav-tab-wrapper">
|
904 |
<a href="<?php echo esc_url( admin_url( 'admin.php?page=responsive-add-ons' ) ); ?>" class="nav-tab<?php if ( ! isset( $_GET['action'] ) || isset( $_GET['action'] ) && 'go_pro' != $_GET['action'] && 'license' != $_GET['action'] && 'pro_support' != $_GET['action'] ) echo ' nav-tab-active'; ?>"><?php esc_html_e( 'Ready Site Importer' ); ?></a>
|
905 |
<?php
|
947 |
}
|
948 |
}
|
949 |
|
950 |
+
/**
|
951 |
+
* Add rating links to the Responsive Addons Admin Page
|
952 |
+
*
|
953 |
+
* @param string $footer_text The existing footer text
|
954 |
+
*
|
955 |
+
* @return string
|
956 |
+
* @since 2.0.6
|
957 |
+
* @global string $typenow
|
958 |
+
*
|
959 |
+
*/
|
960 |
+
function responsive_addons_admin_rate_us( $footer_text ) {
|
961 |
+
$page = isset( $_GET['page'] ) ? $_GET['page'] : '';
|
962 |
+
$show_footer = array( 'responsive-add-ons' );
|
963 |
+
|
964 |
+
if ( in_array( $page, $show_footer ) ) {
|
965 |
+
$rate_text = sprintf(
|
966 |
+
/* translators: %s: Link to 5 star rating */
|
967 |
+
__( 'If you like the <strong>Responsive Add Ons</strong> plugin please leave us a %s rating. It takes a minute and helps a lot. Thanks in advance!', 'responsive-add-ons' ),
|
968 |
+
'<a href="https://wordpress.org/support/view/plugin-reviews/responsive-add-ons?filter=5#postform" target="_blank" class="responsive-rating-link" style="text-decoration:none;" data-rated="' . esc_attr__( 'Thanks :)', 'responsive-add-ons' ) . '">★★★★★</a>'
|
969 |
+
);
|
970 |
+
|
971 |
+
return $rate_text;
|
972 |
+
} else {
|
973 |
+
return $footer_text;
|
974 |
+
}
|
975 |
+
}
|
976 |
+
|
977 |
+
/**
|
978 |
+
* Output buffer
|
979 |
+
*/
|
980 |
+
public function app_output_buffer() {
|
981 |
+
ob_start();
|
982 |
+
}
|
983 |
+
}
|
984 |
}
|
985 |
|
986 |
/**
|