Version Description
- 02/26/2021 = Fixed - Optimized layout for smaller screens to include all SEO elements Fixed - getimagesize warning when the image path is not found Fixed - Focus Pages dissapear on applying filters Fixed - Snippet transparency on frontend reload Fixed - Add all custom taxonomies in the SEO Automation
Download this release
Release Info
Developer | cifi |
Plugin | SEO SQUIRRLY™ |
Version | 11.0.03 |
Comparing to | |
See all releases |
Code changes from version 11.0.02 to 11.0.03
- classes/ActionController.php +2 -3
- classes/RemoteController.php +1 -1
- classes/helpers/DevKit.php +2 -3
- classes/helpers/Tools.php +126 -37
- config.json +1 -0
- controllers/Menu.php +10 -2
- controllers/Post.php +1 -4
- controllers/SeoSettings.php +30 -2
- controllers/Snippet.php +1 -0
- models/Audits.php +1 -1
- models/Ico.php +1 -3
- models/domain/Patterns.php +4 -0
- readme.txt +9 -0
- squirrly.php +3 -3
- view/Assistant/Assistant.php +14 -14
- view/Assistant/Settings.php +33 -33
- view/Audits/Addpage.php +18 -20
- view/Audits/Audit.php +12 -13
- view/Audits/AuditPageRow.php +1 -1
- view/Audits/AuditPages.php +7 -7
- view/Audits/AuditStats.php +18 -18
- view/Audits/Audits.php +17 -19
- view/Audits/Compare.php +11 -11
- view/Audits/Settings.php +13 -13
- view/Blocks/Account.php +2 -2
- view/Blocks/Connect.php +2 -2
- view/Blocks/Features.php +48 -62
- view/Blocks/Jorney.php +15 -15
- view/Blocks/Login.php +1 -1
- view/Blocks/Snippet.php +28 -18
- view/Blocks/Stats.php +10 -10
- view/Blocks/Support.php +2 -2
- view/Blocks/Toolbar.php +8 -8
- view/BulkSeo/Bulkseo.php +17 -19
- view/BulkSeo/BulkseoRow.php +1 -1
- view/Connect/GoogleAnalytics.php +5 -5
- view/Connect/GoogleSearchConsole.php +5 -5
- view/Errors/Error.php +6 -6
- view/Errors/Maintenance.php +6 -6
- view/FocusPages/Addpage.php +18 -19
- view/FocusPages/Bestpractice.php +6 -6
- view/FocusPages/FocusPageRow.php +1 -1
- view/FocusPages/FocusPageStats.php +9 -9
- view/FocusPages/FocusPages.php +14 -11
- view/FocusPages/Pagelist.php +9 -9
- view/FocusPages/Settings.php +7 -7
- view/Goals/CheckSeo.php +11 -11
- view/Goals/Goals.php +26 -26
- view/Help.php +1 -1
- view/Onboarding/Step1.php +11 -11
- view/Onboarding/Step2.1.php +14 -14
- view/Onboarding/Step2.2.php +18 -18
- view/Onboarding/Step3.php +19 -19
- view/Onboarding/Step4.php +7 -7
- view/Overview.php +23 -24
- view/Ranking/Gscsync.php +9 -9
- view/Ranking/Rankings.php +43 -41
- view/Ranking/Settings.php +14 -14
- view/Research/Briefcase.php +186 -185
- view/Research/History.php +8 -8
- view/Research/HistoryDetails.php +2 -2
- view/Research/Labels.php +74 -66
- view/Research/Research.php +53 -50
- view/Research/Suggested.php +8 -8
- view/SeoSettings/Advanced.php +22 -22
- view/SeoSettings/Automation.php +153 -141
- view/SeoSettings/Backup.php +58 -43
- view/SeoSettings/Favicon.php +27 -27
- view/SeoSettings/Jsonld.php +63 -63
- view/SeoSettings/Metas.php +54 -54
- view/SeoSettings/Robots.php +19 -19
- view/SeoSettings/Sitemap.php +81 -81
- view/SeoSettings/Social.php +58 -58
- view/SeoSettings/Tracking.php +32 -32
- view/SeoSettings/Webmaster.php +27 -27
- view/assets/css/audits.min.css +1 -1
- view/assets/css/bootstrap.min.css +1 -1
- view/assets/css/bootstrap.rtl.min.css +0 -2
classes/ActionController.php
CHANGED
@@ -70,9 +70,8 @@ class SQ_Classes_ActionController extends SQ_Classes_FrontController {
|
|
70 |
*
|
71 |
*/
|
72 |
public function getActions() {
|
73 |
-
|
74 |
-
|
75 |
-
WP_Filesystem();
|
76 |
|
77 |
$this->actions = array();
|
78 |
$cur_action = SQ_Classes_Helpers_Tools::getValue('action', false);
|
70 |
*
|
71 |
*/
|
72 |
public function getActions() {
|
73 |
+
|
74 |
+
$wp_filesystem = SQ_Classes_Helpers_Tools::initFilesystem();
|
|
|
75 |
|
76 |
$this->actions = array();
|
77 |
$cur_action = SQ_Classes_Helpers_Tools::getValue('action', false);
|
classes/RemoteController.php
CHANGED
@@ -1019,7 +1019,7 @@ class SQ_Classes_RemoteController {
|
|
1019 |
public static function getInspectURL($args = array()) {
|
1020 |
self::$apimethod = 'get'; //call method
|
1021 |
|
1022 |
-
$json = json_decode(self::apiCall('api/posts/crawl', $args));
|
1023 |
|
1024 |
if (isset($json->error) && $json->error <> '') {
|
1025 |
return (new WP_Error('api_error', $json->error));
|
1019 |
public static function getInspectURL($args = array()) {
|
1020 |
self::$apimethod = 'get'; //call method
|
1021 |
|
1022 |
+
$json = json_decode(self::apiCall('api/posts/crawl', $args, ['timeout' => 60]));
|
1023 |
|
1024 |
if (isset($json->error) && $json->error <> '') {
|
1025 |
return (new WP_Error('api_error', $json->error));
|
classes/helpers/DevKit.php
CHANGED
@@ -25,9 +25,8 @@ class SQ_Classes_Helpers_DevKit {
|
|
25 |
* @return bool
|
26 |
*/
|
27 |
public function updatePluginData() {
|
28 |
-
|
29 |
-
|
30 |
-
WP_Filesystem();
|
31 |
|
32 |
$package_file = _SQ_ROOT_DIR_ . 'package.json';
|
33 |
if (!$wp_filesystem->exists($package_file)) {
|
25 |
* @return bool
|
26 |
*/
|
27 |
public function updatePluginData() {
|
28 |
+
|
29 |
+
$wp_filesystem = SQ_Classes_Helpers_Tools::initFilesystem();
|
|
|
30 |
|
31 |
$package_file = _SQ_ROOT_DIR_ . 'package.json';
|
32 |
if (!$wp_filesystem->exists($package_file)) {
|
classes/helpers/Tools.php
CHANGED
@@ -973,51 +973,87 @@ class SQ_Classes_Helpers_Tools {
|
|
973 |
|
974 |
/**
|
975 |
* Empty the cache from other plugins
|
976 |
-
* @param null $post_id
|
977 |
*/
|
978 |
-
public static function emptyCache(
|
979 |
-
|
980 |
-
|
981 |
-
|
|
|
|
|
982 |
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
|
|
992 |
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
|
|
|
|
|
|
1001 |
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
|
|
1006 |
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
|
|
1011 |
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1016 |
|
1017 |
-
//Clear the fastest cache
|
1018 |
-
global $wp_fastest_cache;
|
1019 |
-
if (isset($wp_fastest_cache) && method_exists($wp_fastest_cache, 'deleteCache')) {
|
1020 |
-
$wp_fastest_cache->deleteCache();
|
1021 |
}
|
1022 |
}
|
1023 |
|
@@ -1111,4 +1147,57 @@ class SQ_Classes_Helpers_Tools {
|
|
1111 |
return apply_filters('sq_menu_url', $url, $page, $tab, $args);
|
1112 |
}
|
1113 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1114 |
}
|
973 |
|
974 |
/**
|
975 |
* Empty the cache from other plugins
|
|
|
976 |
*/
|
977 |
+
public static function emptyCache() {
|
978 |
+
try {
|
979 |
+
//////////////////////////////////////////////////////////////////////////////
|
980 |
+
if ( function_exists( 'w3tc_pgcache_flush' ) ) {
|
981 |
+
w3tc_pgcache_flush();
|
982 |
+
}
|
983 |
|
984 |
+
if ( function_exists( 'w3tc_minify_flush' ) ) {
|
985 |
+
w3tc_minify_flush();
|
986 |
+
}
|
987 |
+
if ( function_exists( 'w3tc_dbcache_flush' ) ) {
|
988 |
+
w3tc_dbcache_flush();
|
989 |
+
}
|
990 |
+
if ( function_exists( 'w3tc_objectcache_flush' ) ) {
|
991 |
+
w3tc_objectcache_flush();
|
992 |
+
}
|
993 |
+
//////////////////////////////////////////////////////////////////////////////
|
994 |
|
995 |
+
if ( function_exists( 'wp_cache_clear_cache' ) ) {
|
996 |
+
wp_cache_clear_cache();
|
997 |
+
}
|
998 |
|
999 |
+
if ( function_exists( 'rocket_clean_domain' ) && function_exists( 'rocket_clean_minify' ) && function_exists( 'rocket_clean_cache_busting' ) ) {
|
1000 |
+
// Remove all cache files
|
1001 |
+
rocket_clean_domain();
|
1002 |
+
rocket_clean_minify();
|
1003 |
+
rocket_clean_cache_busting();
|
1004 |
+
}
|
1005 |
+
//////////////////////////////////////////////////////////////////////////////
|
1006 |
|
1007 |
+
if ( function_exists( 'apc_clear_cache' ) ) {
|
1008 |
+
// Remove all apc if enabled
|
1009 |
+
apc_clear_cache();
|
1010 |
+
}
|
1011 |
+
//////////////////////////////////////////////////////////////////////////////
|
1012 |
|
1013 |
+
if ( class_exists( 'Cache_Enabler_Disk' ) && method_exists( 'Cache_Enabler_Disk', 'clear_cache' ) ) {
|
1014 |
+
// clear disk cache
|
1015 |
+
Cache_Enabler_Disk::clear_cache();
|
1016 |
+
}
|
1017 |
+
//////////////////////////////////////////////////////////////////////////////
|
1018 |
|
1019 |
+
if ( class_exists( 'LiteSpeed_Cache' ) ) {
|
1020 |
+
LiteSpeed_Cache::get_instance()->purge_all();
|
1021 |
+
}
|
1022 |
+
//////////////////////////////////////////////////////////////////////////////
|
1023 |
+
|
1024 |
+
if ( self::isPluginInstalled( 'hummingbird-performance/wp-hummingbird.php' ) ) {
|
1025 |
+
do_action( 'wphb_clear_page_cache' );
|
1026 |
+
}
|
1027 |
+
//////////////////////////////////////////////////////////////////////////////
|
1028 |
+
|
1029 |
+
if ( class_exists( 'WpeCommon' ) ) {
|
1030 |
+
if ( method_exists( 'WpeCommon', 'purge_memcached' ) ) {
|
1031 |
+
WpeCommon::purge_memcached();
|
1032 |
+
}
|
1033 |
+
if ( method_exists( 'WpeCommon', 'clear_maxcdn_cache' ) ) {
|
1034 |
+
WpeCommon::clear_maxcdn_cache();
|
1035 |
+
}
|
1036 |
+
if ( method_exists( 'WpeCommon', 'purge_varnish_cache' ) ) {
|
1037 |
+
WpeCommon::purge_varnish_cache();
|
1038 |
+
}
|
1039 |
+
}
|
1040 |
+
//////////////////////////////////////////////////////////////////////////////
|
1041 |
+
|
1042 |
+
if ( self::isPluginInstalled( 'sg-cachepress/sg-cachepress.php' ) && class_exists( 'Supercacher' ) ) {
|
1043 |
+
if ( method_exists( 'Supercacher', 'purge_cache' ) && method_exists( 'Supercacher', 'delete_assets' ) ) {
|
1044 |
+
Supercacher::purge_cache();
|
1045 |
+
Supercacher::delete_assets();
|
1046 |
+
}
|
1047 |
+
}
|
1048 |
+
|
1049 |
+
//Clear the fastest cache
|
1050 |
+
global $wp_fastest_cache;
|
1051 |
+
if ( isset( $wp_fastest_cache ) && method_exists( $wp_fastest_cache, 'deleteCache' ) ) {
|
1052 |
+
$wp_fastest_cache->deleteCache();
|
1053 |
+
}
|
1054 |
+
//////////////////////////////////////////////////////////////////////////////
|
1055 |
+
}catch (Exception $e){
|
1056 |
|
|
|
|
|
|
|
|
|
1057 |
}
|
1058 |
}
|
1059 |
|
1147 |
return apply_filters('sq_menu_url', $url, $page, $tab, $args);
|
1148 |
}
|
1149 |
|
1150 |
+
/**
|
1151 |
+
* Instantiates the WordPress filesystem.
|
1152 |
+
*
|
1153 |
+
* @static
|
1154 |
+
* @access public
|
1155 |
+
* @return object
|
1156 |
+
*/
|
1157 |
+
public static function initFilesystem() {
|
1158 |
+
// The WordPress filesystem.
|
1159 |
+
global $wp_filesystem;
|
1160 |
+
|
1161 |
+
if ( !$wp_filesystem || empty( $wp_filesystem ) ) {
|
1162 |
+
$credentials = array();
|
1163 |
+
|
1164 |
+
if ( !defined( 'FS_METHOD' ) ) {
|
1165 |
+
define( 'FS_METHOD', 'direct' );
|
1166 |
+
}
|
1167 |
+
|
1168 |
+
$method = defined( 'FS_METHOD' ) ? FS_METHOD : false;
|
1169 |
+
|
1170 |
+
if ( 'ftpext' === $method ) {
|
1171 |
+
// If defined, set it to that, Else, set to NULL.
|
1172 |
+
$credentials['hostname'] = defined( 'FTP_HOST' ) ? preg_replace( '|\w+://|', '', FTP_HOST ) : null;
|
1173 |
+
$credentials['username'] = defined( 'FTP_USER' ) ? FTP_USER : null;
|
1174 |
+
$credentials['password'] = defined( 'FTP_PASS' ) ? FTP_PASS : null;
|
1175 |
+
|
1176 |
+
// Set FTP port.
|
1177 |
+
if ( strpos( $credentials['hostname'], ':' ) && null !== $credentials['hostname'] ) {
|
1178 |
+
list( $credentials['hostname'], $credentials['port'] ) = explode( ':', $credentials['hostname'], 2 );
|
1179 |
+
if ( !is_numeric( $credentials['port'] ) ) {
|
1180 |
+
unset( $credentials['port'] );
|
1181 |
+
}
|
1182 |
+
} else {
|
1183 |
+
unset( $credentials['port'] );
|
1184 |
+
}
|
1185 |
+
|
1186 |
+
// Set connection type.
|
1187 |
+
if ( (defined( 'FTP_SSL' ) && FTP_SSL) && 'ftpext' === $method ) {
|
1188 |
+
$credentials['connection_type'] = 'ftps';
|
1189 |
+
} elseif ( !array_filter( $credentials ) ) {
|
1190 |
+
$credentials['connection_type'] = null;
|
1191 |
+
} else {
|
1192 |
+
$credentials['connection_type'] = 'ftp';
|
1193 |
+
}
|
1194 |
+
}
|
1195 |
+
|
1196 |
+
|
1197 |
+
require_once wp_normalize_path( ABSPATH . '/wp-admin/includes/file.php' );
|
1198 |
+
WP_Filesystem( $credentials );
|
1199 |
+
}
|
1200 |
+
|
1201 |
+
return $wp_filesystem;
|
1202 |
+
}
|
1203 |
}
|
config.json
CHANGED
@@ -136,6 +136,7 @@
|
|
136 |
"sq_seosettings_importall",
|
137 |
"sq_seosettings_ga_revoke",
|
138 |
"sq_seosettings_gsc_revoke",
|
|
|
139 |
"sq_rollback",
|
140 |
"sq_alerts_close",
|
141 |
"sq_ajax_seosettings_save",
|
136 |
"sq_seosettings_importall",
|
137 |
"sq_seosettings_ga_revoke",
|
138 |
"sq_seosettings_gsc_revoke",
|
139 |
+
"sq_reinstall",
|
140 |
"sq_rollback",
|
141 |
"sq_alerts_close",
|
142 |
"sq_ajax_seosettings_save",
|
controllers/Menu.php
CHANGED
@@ -15,7 +15,6 @@ class SQ_Controllers_Menu extends SQ_Classes_FrontController {
|
|
15 |
add_action('admin_bar_menu', array($this, 'hookTopmenuDashboard'), 10);
|
16 |
add_action('admin_bar_menu', array($this, 'hookTopmenuSquirrly'), 91);
|
17 |
add_action('do_meta_boxes', array($this, 'addMetabox'));
|
18 |
-
|
19 |
//run compatibility check on Squirrly settings
|
20 |
if (SQ_Classes_Helpers_Tools::getIsset('page')) {
|
21 |
$menus = $this->model->getMainMenu();
|
@@ -23,6 +22,7 @@ class SQ_Controllers_Menu extends SQ_Classes_FrontController {
|
|
23 |
|
24 |
if (in_array($page, array_keys($menus))) {
|
25 |
add_action('admin_enqueue_scripts', array(SQ_Classes_ObjController::getClass('SQ_Models_Compatibility'), 'fixEnqueueErrors'), PHP_INT_MAX);
|
|
|
26 |
}
|
27 |
}
|
28 |
|
@@ -490,7 +490,6 @@ class SQ_Controllers_Menu extends SQ_Classes_FrontController {
|
|
490 |
echo '<script type="text/javascript" src="//www.google.com/jsapi"></script>';
|
491 |
echo '<script>google.load("visualization", "1.0", {packages: ["corechart"]});</script>';
|
492 |
echo '<div id="sq_preloader" class="sq_loading"></div>';
|
493 |
-
|
494 |
if ($page <> 'sq_dashboard') {
|
495 |
$sq_fullscreen = true;
|
496 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('fullwidth', array('trigger' => true, 'media' => 'all'));
|
@@ -511,6 +510,15 @@ class SQ_Controllers_Menu extends SQ_Classes_FrontController {
|
|
511 |
}
|
512 |
}
|
513 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
514 |
public function hookBuilders() {
|
515 |
add_action('elementor/editor/footer', array(SQ_Classes_ObjController::getClass('SQ_Controllers_Post'), 'loadLiveAssistant'), 99);
|
516 |
}
|
15 |
add_action('admin_bar_menu', array($this, 'hookTopmenuDashboard'), 10);
|
16 |
add_action('admin_bar_menu', array($this, 'hookTopmenuSquirrly'), 91);
|
17 |
add_action('do_meta_boxes', array($this, 'addMetabox'));
|
|
|
18 |
//run compatibility check on Squirrly settings
|
19 |
if (SQ_Classes_Helpers_Tools::getIsset('page')) {
|
20 |
$menus = $this->model->getMainMenu();
|
22 |
|
23 |
if (in_array($page, array_keys($menus))) {
|
24 |
add_action('admin_enqueue_scripts', array(SQ_Classes_ObjController::getClass('SQ_Models_Compatibility'), 'fixEnqueueErrors'), PHP_INT_MAX);
|
25 |
+
add_action( 'admin_head', array($this, 'setViewport'), PHP_INT_MAX);
|
26 |
}
|
27 |
}
|
28 |
|
490 |
echo '<script type="text/javascript" src="//www.google.com/jsapi"></script>';
|
491 |
echo '<script>google.load("visualization", "1.0", {packages: ["corechart"]});</script>';
|
492 |
echo '<div id="sq_preloader" class="sq_loading"></div>';
|
|
|
493 |
if ($page <> 'sq_dashboard') {
|
494 |
$sq_fullscreen = true;
|
495 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('fullwidth', array('trigger' => true, 'media' => 'all'));
|
510 |
}
|
511 |
}
|
512 |
|
513 |
+
function setViewport() {
|
514 |
+
$page = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('page', ''));
|
515 |
+
if ($page == 'sq_dashboard') {
|
516 |
+
echo '<meta name="viewport" content="width=900">';
|
517 |
+
}else{
|
518 |
+
echo '<meta name="viewport" content="width=1200">';
|
519 |
+
}
|
520 |
+
}
|
521 |
+
|
522 |
public function hookBuilders() {
|
523 |
add_action('elementor/editor/footer', array(SQ_Classes_ObjController::getClass('SQ_Controllers_Post'), 'loadLiveAssistant'), 99);
|
524 |
}
|
controllers/Post.php
CHANGED
@@ -259,9 +259,7 @@ class SQ_Controllers_Post extends SQ_Classes_FrontController {
|
|
259 |
|
260 |
$post_type = 'post';
|
261 |
if (post_type_exists($post_type)) {
|
262 |
-
|
263 |
-
require_once(ABSPATH . '/wp-admin/includes/file.php');
|
264 |
-
WP_Filesystem();
|
265 |
|
266 |
if ($wp_filesystem->exists(_SQ_ROOT_DIR_ . 'demo.json')) {
|
267 |
$json = json_decode($wp_filesystem->get_contents(_SQ_ROOT_DIR_ . 'demo.json'));
|
@@ -332,7 +330,6 @@ class SQ_Controllers_Post extends SQ_Classes_FrontController {
|
|
332 |
wp_update_attachment_metadata($attach_id, $attach_data);
|
333 |
}
|
334 |
SQ_Classes_Helpers_Tools::setHeader('json');
|
335 |
-
SQ_Classes_Helpers_Tools::emptyCache();
|
336 |
|
337 |
echo wp_json_encode($return);
|
338 |
exit();
|
259 |
|
260 |
$post_type = 'post';
|
261 |
if (post_type_exists($post_type)) {
|
262 |
+
$wp_filesystem = SQ_Classes_Helpers_Tools::initFilesystem();
|
|
|
|
|
263 |
|
264 |
if ($wp_filesystem->exists(_SQ_ROOT_DIR_ . 'demo.json')) {
|
265 |
$json = json_decode($wp_filesystem->get_contents(_SQ_ROOT_DIR_ . 'demo.json'));
|
330 |
wp_update_attachment_metadata($attach_id, $attach_data);
|
331 |
}
|
332 |
SQ_Classes_Helpers_Tools::setHeader('json');
|
|
|
333 |
|
334 |
echo wp_json_encode($return);
|
335 |
exit();
|
controllers/SeoSettings.php
CHANGED
@@ -563,6 +563,28 @@ class SQ_Controllers_SeoSettings extends SQ_Classes_FrontController {
|
|
563 |
]
|
564 |
);
|
565 |
exit();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
566 |
case 'sq_alerts_close':
|
567 |
//remove the specified alert from showing again
|
568 |
if ($alert = SQ_Classes_Helpers_Tools::getValue('alert', false)) {
|
@@ -674,10 +696,16 @@ class SQ_Controllers_SeoSettings extends SQ_Classes_FrontController {
|
|
674 |
exit();
|
675 |
}
|
676 |
|
677 |
-
|
678 |
//Get the new post type
|
679 |
$posttype = SQ_Classes_Helpers_Tools::getValue('value', false);
|
680 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
681 |
|
682 |
//If the post type is in the list of types
|
683 |
if ($posttype && in_array($posttype, $types)) {
|
563 |
]
|
564 |
);
|
565 |
exit();
|
566 |
+
case 'sq_reinstall':
|
567 |
+
SQ_Classes_Helpers_Tools::setHeader('html');
|
568 |
+
$plugin_slug = basename(_SQ_PLUGIN_NAME_, '.php');
|
569 |
+
|
570 |
+
|
571 |
+
$rollback = SQ_Classes_ObjController::getClass('SQ_Models_Rollback');
|
572 |
+
|
573 |
+
$rollback->set_plugin(array(
|
574 |
+
'version' => SQ_VERSION,
|
575 |
+
'plugin_name' => _SQ_ROOT_DIR_,
|
576 |
+
'plugin_slug' => $plugin_slug,
|
577 |
+
'package_url' => sprintf('https://downloads.wordpress.org/plugin/%s.%s.zip', $plugin_slug, SQ_VERSION),
|
578 |
+
));
|
579 |
+
|
580 |
+
$rollback->run();
|
581 |
+
|
582 |
+
wp_die(
|
583 |
+
'', esc_html__("Reinstall Current Version", _SQ_PLUGIN_NAME_), [
|
584 |
+
'response' => 200,
|
585 |
+
]
|
586 |
+
);
|
587 |
+
exit();
|
588 |
case 'sq_alerts_close':
|
589 |
//remove the specified alert from showing again
|
590 |
if ($alert = SQ_Classes_Helpers_Tools::getValue('alert', false)) {
|
696 |
exit();
|
697 |
}
|
698 |
|
|
|
699 |
//Get the new post type
|
700 |
$posttype = SQ_Classes_Helpers_Tools::getValue('value', false);
|
701 |
+
$filter = array('public' => true, '_builtin' => false);
|
702 |
+
$types = get_post_types($filter);
|
703 |
+
|
704 |
+
$filter = array('public' => true,);
|
705 |
+
$taxonomies = get_taxonomies($filter);
|
706 |
+
foreach ($taxonomies as $pattern => $type) {
|
707 |
+
$types['tax-' . $pattern] = 'tax-' . $pattern;
|
708 |
+
}
|
709 |
|
710 |
//If the post type is in the list of types
|
711 |
if ($posttype && in_array($posttype, $types)) {
|
controllers/Snippet.php
CHANGED
@@ -195,6 +195,7 @@ class SQ_Controllers_Snippet extends SQ_Classes_FrontController {
|
|
195 |
}
|
196 |
if (SQ_Classes_Helpers_Tools::isAjax()) {
|
197 |
SQ_Classes_Helpers_Tools::setHeader('json');
|
|
|
198 |
|
199 |
echo wp_json_encode($json);
|
200 |
exit();
|
195 |
}
|
196 |
if (SQ_Classes_Helpers_Tools::isAjax()) {
|
197 |
SQ_Classes_Helpers_Tools::setHeader('json');
|
198 |
+
SQ_Classes_Helpers_Tools::emptyCache();
|
199 |
|
200 |
echo wp_json_encode($json);
|
201 |
exit();
|
models/Audits.php
CHANGED
@@ -57,7 +57,7 @@ class SQ_Models_Audits {
|
|
57 |
'title' => esc_html__("Visible for search engines?", _SQ_PLUGIN_NAME_),
|
58 |
'success' => esc_html__("Yes") . '!',
|
59 |
'fail' => esc_html__("No") . '!' . '<div class="sq_list_error_title">' . esc_html__("The pages with noindex", _SQ_PLUGIN_NAME_) . ':</div><div class="sq_list_error">%s</div>',
|
60 |
-
'description' => sprintf(esc_html__("How can we fix the noindex for our pages? %s You're currently telling Google not to index some of your pages through a robots tag inside your code. %s On WordPress, it's super easy to control on which pages to place no-index and which pages should never get tagged with no-index if you use the Squirrly SEO Plugin. %s If you decided you 100
|
61 |
'protip' => esc_html__("Some pages are better off if they have an associated no-index tag. Every website has a couple of pages that would be completely pointless to appear in search results, because they wouldn't ever make any sense for potential searchers.", _SQ_PLUGIN_NAME_),
|
62 |
'solution' => esc_html__("Add the correct meta robots tag in the pages", _SQ_PLUGIN_NAME_),
|
63 |
'link' => SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo'),
|
57 |
'title' => esc_html__("Visible for search engines?", _SQ_PLUGIN_NAME_),
|
58 |
'success' => esc_html__("Yes") . '!',
|
59 |
'fail' => esc_html__("No") . '!' . '<div class="sq_list_error_title">' . esc_html__("The pages with noindex", _SQ_PLUGIN_NAME_) . ':</div><div class="sq_list_error">%s</div>',
|
60 |
+
'description' => sprintf(esc_html__("How can we fix the noindex for our pages? %s You're currently telling Google not to index some of your pages through a robots tag inside your code. %s On WordPress, it's super easy to control on which pages to place no-index and which pages should never get tagged with no-index if you use the Squirrly SEO Plugin. %s If you decided you 100%% want these pages to be No-Index (you don’t want Google to index them) - then remove these pages from the SEO Audit. Use the SEO Audit for the pages you want to be seen on search engines.%s", _SQ_PLUGIN_NAME_), '<ul><li>', '</li><li>', '</li><li>', '</li><li>','</li></ul>'),
|
61 |
'protip' => esc_html__("Some pages are better off if they have an associated no-index tag. Every website has a couple of pages that would be completely pointless to appear in search results, because they wouldn't ever make any sense for potential searchers.", _SQ_PLUGIN_NAME_),
|
62 |
'solution' => esc_html__("Add the correct meta robots tag in the pages", _SQ_PLUGIN_NAME_),
|
63 |
'link' => SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo'),
|
models/Ico.php
CHANGED
@@ -308,9 +308,7 @@ class SQ_Models_Ico {
|
|
308 |
* @access private
|
309 |
*/
|
310 |
function _load_image_file($file) {
|
311 |
-
|
312 |
-
require_once(ABSPATH . '/wp-admin/includes/file.php');
|
313 |
-
WP_Filesystem();
|
314 |
|
315 |
//initiate image as false
|
316 |
$im = false;
|
308 |
* @access private
|
309 |
*/
|
310 |
function _load_image_file($file) {
|
311 |
+
$wp_filesystem = SQ_Classes_Helpers_Tools::initFilesystem();
|
|
|
|
|
312 |
|
313 |
//initiate image as false
|
314 |
$im = false;
|
models/domain/Patterns.php
CHANGED
@@ -337,6 +337,10 @@ class SQ_Models_Domain_Patterns extends SQ_Models_Abstract_Domain {
|
|
337 |
if ($search !== '') {
|
338 |
$this->_searchphrase = esc_html($search);
|
339 |
}
|
|
|
|
|
|
|
|
|
340 |
}
|
341 |
return $this->_searchphrase;
|
342 |
}
|
337 |
if ($search !== '') {
|
338 |
$this->_searchphrase = esc_html($search);
|
339 |
}
|
340 |
+
$search = SQ_Classes_Helpers_Tools::getValue('s');
|
341 |
+
if ($search !== '') {
|
342 |
+
$this->_searchphrase = esc_html($search);
|
343 |
+
}
|
344 |
}
|
345 |
return $this->_searchphrase;
|
346 |
}
|
readme.txt
CHANGED
@@ -417,6 +417,13 @@ Type a keyword to the right of the screen and start using Squirrly Seo. Enjoy!
|
|
417 |
28. Wp Seo - Facebook Pixel, Google Analytics and Google Search Console
|
418 |
|
419 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
= 11.0.02 - 02/17/2021 =
|
421 |
Update - Added the option to delete keywords from Keyword Suggestion
|
422 |
Update - Changed the Ranking column in Briefcase
|
@@ -425,6 +432,8 @@ Update - Show more results in Keyword Research Tool
|
|
425 |
Update - Select up to 3 keyword suggestions in the Research Process
|
426 |
Update - Make the main keyword more visible in the Focus Page section
|
427 |
Update - The limit for Google News to match the number of Posts per Page from Sitemap XML
|
|
|
|
|
428 |
Fixed - UI in Briefcase to look more friendly
|
429 |
Fixed - Already in SERP Checker button to show when a keyword is already added in Rankings
|
430 |
Fixed - Make sure to save the optimizations for all keywords in Live Assistant > Briefcase
|
417 |
28. Wp Seo - Facebook Pixel, Google Analytics and Google Search Console
|
418 |
|
419 |
== Changelog ==
|
420 |
+
= 11.0.03 - 02/26/2021 =
|
421 |
+
Fixed - Optimized layout for smaller screens to include all SEO elements
|
422 |
+
Fixed - getimagesize warning when the image path is not found
|
423 |
+
Fixed - Focus Pages dissapear on applying filters
|
424 |
+
Fixed - Snippet transparency on frontend reload
|
425 |
+
Fixed - Add all custom taxonomies in the SEO Automation
|
426 |
+
|
427 |
= 11.0.02 - 02/17/2021 =
|
428 |
Update - Added the option to delete keywords from Keyword Suggestion
|
429 |
Update - Changed the Ranking column in Briefcase
|
432 |
Update - Select up to 3 keyword suggestions in the Research Process
|
433 |
Update - Make the main keyword more visible in the Focus Page section
|
434 |
Update - The limit for Google News to match the number of Posts per Page from Sitemap XML
|
435 |
+
Update - Add the NewsArticle OG in Squirrly SEO Open Graph
|
436 |
+
Update - Change Json-LD Validation link in SEO Snippet with the new Google Validation link
|
437 |
Fixed - UI in Briefcase to look more friendly
|
438 |
Fixed - Already in SERP Checker button to show when a keyword is already added in Rankings
|
439 |
Fixed - Make sure to save the optimizations for all keywords in Live Assistant > Briefcase
|
squirrly.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Description: A.I.-based Private SEO Consultant. In a Plugin. Powered by Machine Learning and Cloud Services. Over 300 functionalities for SEO available when you need them.<BR> <a href="http://cloud.squirrly.co/user" target="_blank"><strong>Account Info</strong></a>
|
9 |
* Author: Squirrly SEO
|
10 |
* Author URI: https://plugin.squirrly.co
|
11 |
-
* Version: 11.0.
|
12 |
* License: GPLv2 or later
|
13 |
* License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
14 |
* Text Domain: squirrly-seo
|
@@ -17,9 +17,9 @@
|
|
17 |
|
18 |
if (!defined('SQ_VERSION')) {
|
19 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
20 |
-
define('SQ_VERSION', '11.0.
|
21 |
//The last stable version
|
22 |
-
define('SQ_STABLE_VERSION', '
|
23 |
// Call config files
|
24 |
try {
|
25 |
require_once(dirname(__FILE__) . '/config/config.php');
|
8 |
* Description: A.I.-based Private SEO Consultant. In a Plugin. Powered by Machine Learning and Cloud Services. Over 300 functionalities for SEO available when you need them.<BR> <a href="http://cloud.squirrly.co/user" target="_blank"><strong>Account Info</strong></a>
|
9 |
* Author: Squirrly SEO
|
10 |
* Author URI: https://plugin.squirrly.co
|
11 |
+
* Version: 11.0.03
|
12 |
* License: GPLv2 or later
|
13 |
* License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
14 |
* Text Domain: squirrly-seo
|
17 |
|
18 |
if (!defined('SQ_VERSION')) {
|
19 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
20 |
+
define('SQ_VERSION', '11.0.03');
|
21 |
//The last stable version
|
22 |
+
define('SQ_STABLE_VERSION', '11.0.02');
|
23 |
// Call config files
|
24 |
try {
|
25 |
require_once(dirname(__FILE__) . '/config/config.php');
|
view/Assistant/Assistant.php
CHANGED
@@ -1,13 +1,13 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
-
<div class="d-flex flex-row my-0 bg-white">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'assistant'), 'sq_assistant'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/squirrly-live-assistant/" target="_blank"><i class="fa fa-question-circle"></i></a></div>
|
13 |
<div class="sq_icons_content p-3 py-4">
|
@@ -16,27 +16,27 @@
|
|
16 |
<h3 class="card-title"><?php echo esc_html__("Optimize with Squirrly Live Assistant", _SQ_PLUGIN_NAME_); ?>:</h3>
|
17 |
<div class="card-title-description m-2"><?php echo esc_html__("Use Squirrly to optimize the content for your posts, pages, products, etc.", _SQ_PLUGIN_NAME_); ?></div>
|
18 |
</div>
|
19 |
-
<div id="sq_assistant" class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-0">
|
23 |
-
<div class="col-
|
24 |
-
<div class="row col-
|
25 |
-
<div class="col-
|
26 |
-
<div class="col-
|
27 |
<?php if (current_user_can('sq_manage_snippet')) { ?>
|
28 |
<form method="POST">
|
29 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_create_demo', 'sq_nonce'); ?>
|
30 |
<input type="hidden" name="action" value="sq_create_demo"/>
|
31 |
-
<button type="submit" class="btn rounded-0 btn-green btn-lg px-5
|
32 |
</form>
|
33 |
<?php } ?>
|
34 |
</div>
|
35 |
</div>
|
36 |
-
<div class="col-
|
37 |
-
<div class="col-
|
38 |
<div class="dropdown">
|
39 |
-
<button class="btn btn-success btn-lg dropdown-toggle" style="min-width:
|
40 |
<?php echo esc_html__("Add New", _SQ_PLUGIN_NAME_); ?>
|
41 |
</button>
|
42 |
<div class="dropdown-menu mt-1" style="min-width: 200px" aria-labelledby="add_new_dropdown">
|
@@ -59,7 +59,7 @@
|
|
59 |
</div>
|
60 |
</div>
|
61 |
<div class="sq_col_side sticky">
|
62 |
-
<div class="card col-
|
63 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
64 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
65 |
</div>
|
1 |
<div id="sq_wrap">
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
+
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'assistant'), 'sq_assistant'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/squirrly-live-assistant/" target="_blank"><i class="fa fa-question-circle"></i></a></div>
|
13 |
<div class="sq_icons_content p-3 py-4">
|
16 |
<h3 class="card-title"><?php echo esc_html__("Optimize with Squirrly Live Assistant", _SQ_PLUGIN_NAME_); ?>:</h3>
|
17 |
<div class="card-title-description m-2"><?php echo esc_html__("Use Squirrly to optimize the content for your posts, pages, products, etc.", _SQ_PLUGIN_NAME_); ?></div>
|
18 |
</div>
|
19 |
+
<div id="sq_assistant" class="card col-12 p-0 tab-panel border-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-0">
|
23 |
+
<div class="col-12 m-0 p-0">
|
24 |
+
<div class="row col-12 m-0 py-3 px-0 border-0 ">
|
25 |
+
<div class="col-6">
|
26 |
+
<div class="col-12 my-3 p-0 text-right">
|
27 |
<?php if (current_user_can('sq_manage_snippet')) { ?>
|
28 |
<form method="POST">
|
29 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_create_demo', 'sq_nonce'); ?>
|
30 |
<input type="hidden" name="action" value="sq_create_demo"/>
|
31 |
+
<button type="submit" class="btn rounded-0 btn-green btn-lg px-5" style="min-width: 280px"><?php echo esc_html__("Practice/Test Round", _SQ_PLUGIN_NAME_); ?></button>
|
32 |
</form>
|
33 |
<?php } ?>
|
34 |
</div>
|
35 |
</div>
|
36 |
+
<div class="col-6">
|
37 |
+
<div class="col-12 my-3 p-0 text-left">
|
38 |
<div class="dropdown">
|
39 |
+
<button class="btn btn-success btn-lg dropdown-toggle" style="min-width: 280px" type="button" id="add_new_dropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
40 |
<?php echo esc_html__("Add New", _SQ_PLUGIN_NAME_); ?>
|
41 |
</button>
|
42 |
<div class="dropdown-menu mt-1" style="min-width: 200px" aria-labelledby="add_new_dropdown">
|
59 |
</div>
|
60 |
</div>
|
61 |
<div class="sq_col_side sticky">
|
62 |
+
<div class="card col-12 p-0">
|
63 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
64 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
65 |
</div>
|
view/Assistant/Settings.php
CHANGED
@@ -4,19 +4,19 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" >
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_assistant'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_settings_assistant', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_settings_assistant"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
21 |
<div class="card-body p-2 bg-title rounded-top">
|
22 |
<div class="sq_icons_content p-3 py-4">
|
@@ -26,15 +26,15 @@
|
|
26 |
<div class="card-title-description m-2"></div>
|
27 |
</div>
|
28 |
</div>
|
29 |
-
<div id="sq_seosettings" class="card col-
|
30 |
<div class="card-body p-0">
|
31 |
-
<div class="col-
|
32 |
-
<div class="card col-
|
33 |
|
34 |
-
<div class="col-
|
35 |
-
<div class="col-
|
36 |
-
<div class="checker col-
|
37 |
-
<div class="col-
|
38 |
<input type="hidden" name="sq_keyword_help" value="0"/>
|
39 |
<input type="checkbox" id="sq_keyword_help" name="sq_keyword_help" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_keyword_help') ? 'checked="checked"' : '') ?> value="1"/>
|
40 |
<label for="sq_keyword_help" class="ml-2"><?php echo esc_html__("Squirrly Tooltips", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -43,9 +43,9 @@
|
|
43 |
</div>
|
44 |
</div>
|
45 |
|
46 |
-
<div class="col-
|
47 |
-
<div class="checker col-
|
48 |
-
<div class="col-
|
49 |
<input type="hidden" name="sq_local_images" value="0"/>
|
50 |
<input type="checkbox" id="sq_local_images" name="sq_local_images" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_local_images') ? 'checked="checked"' : '') ?> value="1"/>
|
51 |
<label for="sq_local_images" class="ml-2"><?php echo esc_html__("Download Remote Images", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -56,9 +56,9 @@
|
|
56 |
</div>
|
57 |
|
58 |
|
59 |
-
<div class="col-
|
60 |
-
<div class="checker col-
|
61 |
-
<div class="col-
|
62 |
<input type="hidden" name="sq_img_licence" value="0"/>
|
63 |
<input type="checkbox" id="sq_img_licence" name="sq_img_licence" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_img_licence') ? 'checked="checked"' : '') ?> value="1"/>
|
64 |
<label for="sq_img_licence" class="ml-2"><?php echo esc_html__("Copyright Free Images", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -67,15 +67,15 @@
|
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
-
<div class="col-
|
71 |
-
<div class="checker col-
|
72 |
-
<div class="col-
|
73 |
-
<div class="col-
|
74 |
-
<div class="col-
|
75 |
<div class="font-weight-bold"><?php echo esc_html__("Live Assistant Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
76 |
<div class="small text-black-50"><?php echo esc_html__("Select how you want Squirrly Live Assistant to load in editor.", _SQ_PLUGIN_NAME_); ?></div>
|
77 |
</div>
|
78 |
-
<div class="col-
|
79 |
<select name="sq_sla_type" class="form-control bg-input mb-1">
|
80 |
<option value="auto" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sla_type') == 'auto') ? 'selected="selected"' : '') ?>><?php echo esc_html__("Auto", _SQ_PLUGIN_NAME_); ?></option>
|
81 |
<option value="integrated" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sla_type') == 'integrated') ? 'selected="selected"' : '') ?>><?php echo esc_html__("Integrated Box", _SQ_PLUGIN_NAME_); ?></option>
|
@@ -87,9 +87,9 @@
|
|
87 |
</div>
|
88 |
</div>
|
89 |
|
90 |
-
<div class="col-
|
91 |
-
<div class="checker col-
|
92 |
-
<div class="col-
|
93 |
<input type="hidden" name="sq_sla_frontend" value="0"/>
|
94 |
<input type="checkbox" id="sq_sla_frontend" name="sq_sla_frontend" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_sla_frontend') ? 'checked="checked"' : '') ?> value="1"/>
|
95 |
<label for="sq_sla_frontend" class="ml-2"><?php echo esc_html__("Activate Live Assistant in Frontend", _SQ_PLUGIN_NAME_); ?><span class="text-danger"></span><a href="https://howto.squirrly.co/kb/squirrly-live-assistant/#Add-Live-Assistant-in-Frontend" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a></label>
|
@@ -102,18 +102,18 @@
|
|
102 |
|
103 |
<div class="bg-title p-2 sq_advanced">
|
104 |
<h3 class="card-title"><?php echo esc_html__("Places where you do NOT want Squirrly Live Assistant to load", _SQ_PLUGIN_NAME_); ?>:</h3>
|
105 |
-
<div class="col-
|
106 |
<div class="card-title-description mb-0 text-danger"><?php echo esc_html__("Don't select anything if you wish Squirrly Live Assistant to load for all post types.", _SQ_PLUGIN_NAME_); ?></div>
|
107 |
</div>
|
108 |
</div>
|
109 |
-
<div class="col-
|
110 |
-
<div class="col-
|
111 |
-
<div class="col-
|
112 |
<?php echo esc_html__("Exclusions", _SQ_PLUGIN_NAME_); ?>:
|
113 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Select places where you do NOT want Squirrly Live Assistant to load.", _SQ_PLUGIN_NAME_); ?></div>
|
114 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Hold Control key to select multiple places", _SQ_PLUGIN_NAME_); ?></div>
|
115 |
</div>
|
116 |
-
<div class="col-
|
117 |
<input type="hidden" name="sq_sla_exclude_post_types[]" value="0"/>
|
118 |
<select multiple name="sq_sla_exclude_post_types[]" class="form-control bg-input mb-1" style="height: auto;">
|
119 |
<?php
|
@@ -135,7 +135,7 @@
|
|
135 |
|
136 |
</div>
|
137 |
|
138 |
-
<div class="col-
|
139 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
140 |
<div class="py-0 float-right text-right m-2">
|
141 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -147,7 +147,7 @@
|
|
147 |
</form>
|
148 |
</div>
|
149 |
<div class="sq_col_side sticky">
|
150 |
-
<div class="card col-
|
151 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
152 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
153 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" >
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_assistant'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_settings_assistant', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_settings_assistant"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
21 |
<div class="card-body p-2 bg-title rounded-top">
|
22 |
<div class="sq_icons_content p-3 py-4">
|
26 |
<div class="card-title-description m-2"></div>
|
27 |
</div>
|
28 |
</div>
|
29 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
30 |
<div class="card-body p-0">
|
31 |
+
<div class="col-12 m-0 p-0">
|
32 |
+
<div class="card col-12 p-0 border-0 ">
|
33 |
|
34 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
35 |
+
<div class="col-12 row mb-1 ml-1">
|
36 |
+
<div class="checker col-12 row my-2 py-1">
|
37 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
38 |
<input type="hidden" name="sq_keyword_help" value="0"/>
|
39 |
<input type="checkbox" id="sq_keyword_help" name="sq_keyword_help" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_keyword_help') ? 'checked="checked"' : '') ?> value="1"/>
|
40 |
<label for="sq_keyword_help" class="ml-2"><?php echo esc_html__("Squirrly Tooltips", _SQ_PLUGIN_NAME_); ?></label>
|
43 |
</div>
|
44 |
</div>
|
45 |
|
46 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
47 |
+
<div class="checker col-12 row my-2 py-1">
|
48 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
49 |
<input type="hidden" name="sq_local_images" value="0"/>
|
50 |
<input type="checkbox" id="sq_local_images" name="sq_local_images" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_local_images') ? 'checked="checked"' : '') ?> value="1"/>
|
51 |
<label for="sq_local_images" class="ml-2"><?php echo esc_html__("Download Remote Images", _SQ_PLUGIN_NAME_); ?></label>
|
56 |
</div>
|
57 |
|
58 |
|
59 |
+
<div class="col-12 row mb-1 ml-1">
|
60 |
+
<div class="checker col-12 row my-2 py-1">
|
61 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
62 |
<input type="hidden" name="sq_img_licence" value="0"/>
|
63 |
<input type="checkbox" id="sq_img_licence" name="sq_img_licence" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_img_licence') ? 'checked="checked"' : '') ?> value="1"/>
|
64 |
<label for="sq_img_licence" class="ml-2"><?php echo esc_html__("Copyright Free Images", _SQ_PLUGIN_NAME_); ?></label>
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
+
<div class="col-12 row mb-1 ml-1">
|
71 |
+
<div class="checker col-12 row my-2 py-1">
|
72 |
+
<div class="col-12 p-0">
|
73 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
74 |
+
<div class="col-4 p-1 pr-3">
|
75 |
<div class="font-weight-bold"><?php echo esc_html__("Live Assistant Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
76 |
<div class="small text-black-50"><?php echo esc_html__("Select how you want Squirrly Live Assistant to load in editor.", _SQ_PLUGIN_NAME_); ?></div>
|
77 |
</div>
|
78 |
+
<div class="col-8 p-0 input-group">
|
79 |
<select name="sq_sla_type" class="form-control bg-input mb-1">
|
80 |
<option value="auto" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sla_type') == 'auto') ? 'selected="selected"' : '') ?>><?php echo esc_html__("Auto", _SQ_PLUGIN_NAME_); ?></option>
|
81 |
<option value="integrated" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sla_type') == 'integrated') ? 'selected="selected"' : '') ?>><?php echo esc_html__("Integrated Box", _SQ_PLUGIN_NAME_); ?></option>
|
87 |
</div>
|
88 |
</div>
|
89 |
|
90 |
+
<div class="col-12 row mb-1 ml-1">
|
91 |
+
<div class="checker col-12 row my-2 py-1">
|
92 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
93 |
<input type="hidden" name="sq_sla_frontend" value="0"/>
|
94 |
<input type="checkbox" id="sq_sla_frontend" name="sq_sla_frontend" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_sla_frontend') ? 'checked="checked"' : '') ?> value="1"/>
|
95 |
<label for="sq_sla_frontend" class="ml-2"><?php echo esc_html__("Activate Live Assistant in Frontend", _SQ_PLUGIN_NAME_); ?><span class="text-danger"></span><a href="https://howto.squirrly.co/kb/squirrly-live-assistant/#Add-Live-Assistant-in-Frontend" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a></label>
|
102 |
|
103 |
<div class="bg-title p-2 sq_advanced">
|
104 |
<h3 class="card-title"><?php echo esc_html__("Places where you do NOT want Squirrly Live Assistant to load", _SQ_PLUGIN_NAME_); ?>:</h3>
|
105 |
+
<div class="col-12 text-left m-0 p-0">
|
106 |
<div class="card-title-description mb-0 text-danger"><?php echo esc_html__("Don't select anything if you wish Squirrly Live Assistant to load for all post types.", _SQ_PLUGIN_NAME_); ?></div>
|
107 |
</div>
|
108 |
</div>
|
109 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
110 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
111 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
112 |
<?php echo esc_html__("Exclusions", _SQ_PLUGIN_NAME_); ?>:
|
113 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Select places where you do NOT want Squirrly Live Assistant to load.", _SQ_PLUGIN_NAME_); ?></div>
|
114 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Hold Control key to select multiple places", _SQ_PLUGIN_NAME_); ?></div>
|
115 |
</div>
|
116 |
+
<div class="col-8 p-0 input-group">
|
117 |
<input type="hidden" name="sq_sla_exclude_post_types[]" value="0"/>
|
118 |
<select multiple name="sq_sla_exclude_post_types[]" class="form-control bg-input mb-1" style="height: auto;">
|
119 |
<?php
|
135 |
|
136 |
</div>
|
137 |
|
138 |
+
<div class="col-12 my-3 p-0">
|
139 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
140 |
<div class="py-0 float-right text-right m-2">
|
141 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
147 |
</form>
|
148 |
</div>
|
149 |
<div class="sq_col_side sticky">
|
150 |
+
<div class="card col-12 p-0">
|
151 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
152 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
153 |
</div>
|
view/Audits/Addpage.php
CHANGED
@@ -2,19 +2,19 @@
|
|
2 |
<div id="sq_wrap">
|
3 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
4 |
<?php do_action('sq_notices'); ?>
|
5 |
-
<div class="d-flex flex-row my-0 bg-
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
-
echo '<div class="col-
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'boost'), 'sq_audits'); ?>
|
13 |
-
<div class="
|
14 |
-
<div class="flex-grow-1
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-2 bg-title rounded-top">
|
19 |
<div class="sq_icons_content p-3 py-4">
|
20 |
<div class="sq_icons sq_addpage_icon m-2"></div>
|
@@ -22,12 +22,12 @@
|
|
22 |
<h3 class="card-title"><?php echo esc_html__("Add a page in Audit", _SQ_PLUGIN_NAME_); ?>:</h3>
|
23 |
<div class="card-title-description m-2"><?php echo esc_html__("Verifies the online presence of your website by knowing how your website is performing in terms of Blogging, SEO, Social, Authority, Links, and Traffic", _SQ_PLUGIN_NAME_); ?></div>
|
24 |
</div>
|
25 |
-
<div id="sq_auditpage" class="card col-
|
26 |
<div class="row px-3">
|
27 |
-
<form id="sq_auditpage_form" method="get" class="form-inline col-
|
28 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
29 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
30 |
-
<div class="sq_filter_label col-
|
31 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
32 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
33 |
foreach ($view->labels as $category => $label) {
|
@@ -42,11 +42,11 @@
|
|
42 |
} ?>
|
43 |
</div>
|
44 |
|
45 |
-
<div class="col-
|
46 |
|
47 |
-
<div class="col-
|
48 |
|
49 |
-
<select name="stype" class="
|
50 |
<?php
|
51 |
foreach ($patterns as $pattern => $type) {
|
52 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
@@ -83,13 +83,11 @@
|
|
83 |
?>
|
84 |
</select>
|
85 |
|
86 |
-
</div>
|
87 |
-
<div class="col-sm-2 py-2 pl-0 pr-1 mx-0">
|
88 |
<?php if (!empty($view->pages)) {
|
89 |
foreach ($view->pages as $index => $post) {
|
90 |
if (isset($post->ID)) {
|
91 |
?>
|
92 |
-
<select name="sstatus" class="
|
93 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : '') ?> value="all"><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
94 |
<?php
|
95 |
|
@@ -107,9 +105,9 @@
|
|
107 |
} ?>
|
108 |
|
109 |
</div>
|
110 |
-
<div class="col-
|
111 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
112 |
-
<input type="search" class="d-inline-block align-middle col-
|
113 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
114 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
115 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post') )) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
@@ -123,8 +121,8 @@
|
|
123 |
|
124 |
<?php if (!empty($view->pages)) { ?>
|
125 |
<div class="card-body p-0 position-relative">
|
126 |
-
<div class="col-
|
127 |
-
<div class="card col-
|
128 |
|
129 |
<table class="table table-striped table-hover">
|
130 |
<thead>
|
@@ -155,7 +153,7 @@
|
|
155 |
?>
|
156 |
<tr>
|
157 |
<td>
|
158 |
-
<div class="col-
|
159 |
<div class="small " style="font-size: 11px"><?php echo '<a href="' . $post->url . '" class="text-link" rel="permalink" target="_blank">' . urldecode($post->url) . '</a>' ?></div>
|
160 |
</td>
|
161 |
<td style="width: 140px; text-align: center; vertical-align: middle">
|
@@ -206,7 +204,7 @@
|
|
206 |
</div>
|
207 |
</div>
|
208 |
<div class="sq_col sq_col_side ">
|
209 |
-
<div class="card col-
|
210 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
211 |
<?php //echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
212 |
</div>
|
2 |
<div id="sq_wrap">
|
3 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
4 |
<?php do_action('sq_notices'); ?>
|
5 |
+
<div class="d-flex flex-row flex-nowrap my-0 bg-nav" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'boost'), 'sq_audits'); ?>
|
13 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
14 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
<div class="card-body p-2 bg-title rounded-top">
|
19 |
<div class="sq_icons_content p-3 py-4">
|
20 |
<div class="sq_icons sq_addpage_icon m-2"></div>
|
22 |
<h3 class="card-title"><?php echo esc_html__("Add a page in Audit", _SQ_PLUGIN_NAME_); ?>:</h3>
|
23 |
<div class="card-title-description m-2"><?php echo esc_html__("Verifies the online presence of your website by knowing how your website is performing in terms of Blogging, SEO, Social, Authority, Links, and Traffic", _SQ_PLUGIN_NAME_); ?></div>
|
24 |
</div>
|
25 |
+
<div id="sq_auditpage" class="card col-12 p-0 tab-panel border-0">
|
26 |
<div class="row px-3">
|
27 |
+
<form id="sq_auditpage_form" method="get" class="form-inline col-12 ignore">
|
28 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
29 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
30 |
+
<div class="sq_filter_label col-12 row p-2">
|
31 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
32 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
33 |
foreach ($view->labels as $category => $label) {
|
42 |
} ?>
|
43 |
</div>
|
44 |
|
45 |
+
<div class="col-12 row px-0 mx-0">
|
46 |
|
47 |
+
<div class="col-5 py-2 pl-0 pr-1 mx-0">
|
48 |
|
49 |
+
<select name="stype" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_auditpage_form').submit();">
|
50 |
<?php
|
51 |
foreach ($patterns as $pattern => $type) {
|
52 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
83 |
?>
|
84 |
</select>
|
85 |
|
|
|
|
|
86 |
<?php if (!empty($view->pages)) {
|
87 |
foreach ($view->pages as $index => $post) {
|
88 |
if (isset($post->ID)) {
|
89 |
?>
|
90 |
+
<select name="sstatus" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_auditpage_form').submit();">
|
91 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : '') ?> value="all"><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
92 |
<?php
|
93 |
|
105 |
} ?>
|
106 |
|
107 |
</div>
|
108 |
+
<div class="col-7 p-0 py-2 mx-0">
|
109 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
110 |
+
<input type="search" class="d-inline-block align-middle col-7 p-1 mr-1" id="post-search-input" autofocus name="skeyword" value="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword(SQ_Classes_Helpers_Tools::getValue('skeyword')) ?>"/>
|
111 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
112 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
113 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post') )) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
121 |
|
122 |
<?php if (!empty($view->pages)) { ?>
|
123 |
<div class="card-body p-0 position-relative">
|
124 |
+
<div class="col-12 m-0 p-2">
|
125 |
+
<div class="card col-12 my-1 p-0 border-0 " style="display: inline-block;">
|
126 |
|
127 |
<table class="table table-striped table-hover">
|
128 |
<thead>
|
153 |
?>
|
154 |
<tr>
|
155 |
<td>
|
156 |
+
<div class="col-12 px-0 mx-0 font-weight-bold" style="font-size: 15px"><?php echo wp_kses_post($post->sq->title) ?></div>
|
157 |
<div class="small " style="font-size: 11px"><?php echo '<a href="' . $post->url . '" class="text-link" rel="permalink" target="_blank">' . urldecode($post->url) . '</a>' ?></div>
|
158 |
</td>
|
159 |
<td style="width: 140px; text-align: center; vertical-align: middle">
|
204 |
</div>
|
205 |
</div>
|
206 |
<div class="sq_col sq_col_side ">
|
207 |
+
<div class="card col-12 p-0">
|
208 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
209 |
<?php //echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
210 |
</div>
|
view/Audits/Audit.php
CHANGED
@@ -5,20 +5,19 @@
|
|
5 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
-
echo '<div class="col-
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAuditTabs(); ?>
|
13 |
-
|
14 |
-
|
15 |
-
<div class="flex-grow-1 mr-3 sq_flex">
|
16 |
<?php do_action('sq_form_notices'); ?>
|
17 |
|
18 |
-
<div class="card col-
|
19 |
|
20 |
<div class="card-body p-2 bg-title rounded-top row">
|
21 |
-
<div class="col-
|
22 |
<div class="sq_icons_content p-3 py-4">
|
23 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
24 |
</div>
|
@@ -30,10 +29,10 @@
|
|
30 |
|
31 |
<?php if ($view->audit) { ?>
|
32 |
|
33 |
-
<div id="sq_audit" class="card col-
|
34 |
<div class="card-content" style="min-height: 150px">
|
35 |
<?php if (SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
36 |
-
<div class="form-group text-right col-
|
37 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
38 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audits') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
39 |
</div>
|
@@ -80,14 +79,14 @@
|
|
80 |
<div class="sq_separator"></div>
|
81 |
|
82 |
|
83 |
-
<div class="card col-
|
84 |
-
<div class="col-
|
85 |
-
<div class="col-
|
86 |
<button class="sq_audit_completed_tasks btn btn-sm btn-success px-3">
|
87 |
<i class="fa fa-check-circle-o mr-2 py-2"></i><?php echo esc_html__("Show Only Completed Tasks", _SQ_PLUGIN_NAME_) ?>
|
88 |
</button>
|
89 |
</div>
|
90 |
-
<div class="col-
|
91 |
<button class="sq_audit_incompleted_tasks btn btn-sm btn-danger px-3">
|
92 |
<i class="fa fa-circle-o mr-2 py-2"></i><?php echo esc_html__("Show Only Incompleted Tasks", _SQ_PLUGIN_NAME_) ?>
|
93 |
</button>
|
@@ -164,7 +163,7 @@
|
|
164 |
</div>
|
165 |
</div>
|
166 |
<div class="sq_col_side sticky">
|
167 |
-
<div class="card col-
|
168 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
169 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
170 |
</div>
|
5 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAuditTabs(); ?>
|
13 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
14 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
|
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
|
19 |
<div class="card-body p-2 bg-title rounded-top row">
|
20 |
+
<div class="col-10 text-left m-0 p-0">
|
21 |
<div class="sq_icons_content p-3 py-4">
|
22 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
23 |
</div>
|
29 |
|
30 |
<?php if ($view->audit) { ?>
|
31 |
|
32 |
+
<div id="sq_audit" class="card col-12 p-0 tab-panel border-0">
|
33 |
<div class="card-content" style="min-height: 150px">
|
34 |
<?php if (SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
35 |
+
<div class="form-group text-right col-12 p-0 m-0 mb-3">
|
36 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
37 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audits') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
38 |
</div>
|
79 |
<div class="sq_separator"></div>
|
80 |
|
81 |
|
82 |
+
<div class="card col-12 p-0 m-0 border-0 shadow-none">
|
83 |
+
<div class="col-12 text-center row p-0 m-0">
|
84 |
+
<div class="col-6 m-0 p-2 text-right">
|
85 |
<button class="sq_audit_completed_tasks btn btn-sm btn-success px-3">
|
86 |
<i class="fa fa-check-circle-o mr-2 py-2"></i><?php echo esc_html__("Show Only Completed Tasks", _SQ_PLUGIN_NAME_) ?>
|
87 |
</button>
|
88 |
</div>
|
89 |
+
<div class="col-6 m-0 p-2 text-left">
|
90 |
<button class="sq_audit_incompleted_tasks btn btn-sm btn-danger px-3">
|
91 |
<i class="fa fa-circle-o mr-2 py-2"></i><?php echo esc_html__("Show Only Incompleted Tasks", _SQ_PLUGIN_NAME_) ?>
|
92 |
</button>
|
163 |
</div>
|
164 |
</div>
|
165 |
<div class="sq_col_side sticky">
|
166 |
+
<div class="card col-12 p-0">
|
167 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
168 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
169 |
</div>
|
view/Audits/AuditPageRow.php
CHANGED
@@ -26,7 +26,7 @@ if (strtotime($view->auditpage->audit_datetime)) {
|
|
26 |
<td style="min-width: 380px;">
|
27 |
|
28 |
<?php if ($post instanceof SQ_Models_Domain_Post) { ?>
|
29 |
-
<div class="sq_auditpages_title col-
|
30 |
<?php echo (isset($post->sq->title) ? $post->sq->title : '') ?> <?php echo(($post->post_status <> 'publish' && $post->post_status <> 'inherit' && $post->post_status <> '') ? ' <spam style="font-weight: normal">(' . esc_html($post->post_status) . ')</spam>' : '') ?>
|
31 |
<?php if (isset($edit_link) && $edit_link <> '') { ?>
|
32 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
26 |
<td style="min-width: 380px;">
|
27 |
|
28 |
<?php if ($post instanceof SQ_Models_Domain_Post) { ?>
|
29 |
+
<div class="sq_auditpages_title col-12 px-0 mx-0 font-weight-bold">
|
30 |
<?php echo (isset($post->sq->title) ? $post->sq->title : '') ?> <?php echo(($post->post_status <> 'publish' && $post->post_status <> 'inherit' && $post->post_status <> '') ? ' <spam style="font-weight: normal">(' . esc_html($post->post_status) . ')</spam>' : '') ?>
|
31 |
<?php if (isset($edit_link) && $edit_link <> '') { ?>
|
32 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
view/Audits/AuditPages.php
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
-
<div class="card col-
|
2 |
-
<div class="card-body">
|
3 |
<?php
|
4 |
if (!empty($view->auditpages)) { ?>
|
5 |
|
6 |
<h4 class="card-title"><?php echo esc_html__("Audited pages", _SQ_PLUGIN_NAME_) ?></h4>
|
7 |
<div class="card-text mx-0 my-2 p-0">
|
8 |
<div class="card-body p-0 position-relative">
|
9 |
-
<div class=" col-
|
10 |
<table class="table table-striped table-hover">
|
11 |
<thead>
|
12 |
<tr>
|
@@ -51,7 +51,7 @@
|
|
51 |
|
52 |
<div class="card-body">
|
53 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly SEO Audits", _SQ_PLUGIN_NAME_); ?></h4>
|
54 |
-
<div class="col-
|
55 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage') ?>" class="btn btn-lg btn-success"><i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page for Audit to get started", _SQ_PLUGIN_NAME_); ?>
|
56 |
</a>
|
57 |
</div>
|
@@ -60,11 +60,11 @@
|
|
60 |
<?php } else { ?>
|
61 |
|
62 |
<div class="card-body">
|
63 |
-
<div class="col-
|
64 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
65 |
</div>
|
66 |
-
<div class="col-
|
67 |
-
<div class="col-
|
68 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
69 |
</div>
|
70 |
</div>
|
1 |
+
<div class="card col-12 px-0 py-2 border-0 m-0">
|
2 |
+
<div class="card-body p-1">
|
3 |
<?php
|
4 |
if (!empty($view->auditpages)) { ?>
|
5 |
|
6 |
<h4 class="card-title"><?php echo esc_html__("Audited pages", _SQ_PLUGIN_NAME_) ?></h4>
|
7 |
<div class="card-text mx-0 my-2 p-0">
|
8 |
<div class="card-body p-0 position-relative">
|
9 |
+
<div class=" col-12 m-0 p-0 my-2 py-2 py-0 flexcroll">
|
10 |
<table class="table table-striped table-hover">
|
11 |
<thead>
|
12 |
<tr>
|
51 |
|
52 |
<div class="card-body">
|
53 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly SEO Audits", _SQ_PLUGIN_NAME_); ?></h4>
|
54 |
+
<div class="col-12 m-2 text-center">
|
55 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage') ?>" class="btn btn-lg btn-success"><i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page for Audit to get started", _SQ_PLUGIN_NAME_); ?>
|
56 |
</a>
|
57 |
</div>
|
60 |
<?php } else { ?>
|
61 |
|
62 |
<div class="card-body">
|
63 |
+
<div class="col-12 px-2 py-3 text-center">
|
64 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
65 |
</div>
|
66 |
+
<div class="col-12 m-2 text-center">
|
67 |
+
<div class="col-12 alert alert-success text-center m-0 p-3">
|
68 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
69 |
</div>
|
70 |
</div>
|
view/Audits/AuditStats.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php if (!empty($view->auditpages)) { ?>
|
2 |
-
<div class="card-body
|
3 |
<?php
|
4 |
|
5 |
$call_timestamp = 0;
|
@@ -35,7 +35,7 @@
|
|
35 |
?>
|
36 |
<div class="sq_audit_score row p-2">
|
37 |
<?php if (SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
38 |
-
<div class="col
|
39 |
<div class="m-2 p-0 text-center" style="width: 115px;">
|
40 |
<input id="knob_<?php echo (int)$view->audit->id ?>" type="text" value="<?php echo (int)$view->audit->score ?>" class="dial" style="box-shadow: none; border: none; background: none; width: 1px; color: white" title="<?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?>">
|
41 |
<script>jQuery("#knob_<?php echo (int)$view->audit->id ?>").knob({
|
@@ -48,7 +48,7 @@
|
|
48 |
'fgColor': '<?php echo esc_attr($color) ?>'
|
49 |
});</script>
|
50 |
</div>
|
51 |
-
<div class="col
|
52 |
<div>
|
53 |
<span class="sq_audit_header_title"><?php echo esc_html__("Your audit score is", _SQ_PLUGIN_NAME_) . ': ' ?></span>
|
54 |
<span class="sq_audit_header_score"><?php echo (int)$view->audit->score ?></span>
|
@@ -57,8 +57,8 @@
|
|
57 |
</div>
|
58 |
</div>
|
59 |
<?php } else { ?>
|
60 |
-
<div class="col
|
61 |
-
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage') ?>" class="btn btn-lg btn-warning text-white mx-
|
62 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page for Audit", _SQ_PLUGIN_NAME_); ?>
|
63 |
</a>
|
64 |
</div>
|
@@ -83,14 +83,14 @@
|
|
83 |
</div>
|
84 |
<?php } else { ?>
|
85 |
<div class="sq_audit_score row p-2">
|
86 |
-
<div class="col-
|
87 |
<?php if ($call_timestamp > 0) { ?>
|
88 |
<h3 class="card-title text-info">
|
89 |
<i class="fa fa-clock-o" style="font-size: 26px !important;" aria-hidden="true"></i> <?php echo esc_html__("Audit in progress", _SQ_PLUGIN_NAME_); ?>
|
90 |
</h3>
|
91 |
<?php } ?>
|
92 |
</div>
|
93 |
-
<div class="col-
|
94 |
<div class="my-1">
|
95 |
<?php echo esc_html__("Audit not ready yet", _SQ_PLUGIN_NAME_) ?>
|
96 |
</div>
|
@@ -158,8 +158,8 @@
|
|
158 |
}
|
159 |
|
160 |
?>
|
161 |
-
<div class="sq_stats row p-
|
162 |
-
<div class="card col
|
163 |
<div class="card-content overflow-hidden m-0">
|
164 |
<div class="media align-items-stretch">
|
165 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -169,7 +169,7 @@
|
|
169 |
<h5><?php echo esc_html__("Scores", _SQ_PLUGIN_NAME_) ?></h5>
|
170 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days evolution for Audit", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
171 |
<div class="media-right py-3 media-middle ">
|
172 |
-
<div class="col-
|
173 |
<div id="sq_chart_score" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
174 |
<script>
|
175 |
if (typeof google !== 'undefined') {
|
@@ -185,7 +185,7 @@
|
|
185 |
</div>
|
186 |
</div>
|
187 |
</div>
|
188 |
-
<div class="card col
|
189 |
<div class="card-content overflow-hidden m-0">
|
190 |
<div class="media align-items-stretch">
|
191 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -198,12 +198,12 @@
|
|
198 |
<div class="media-right py-3 media-middle ">
|
199 |
<?php if (!empty($progress)) {
|
200 |
foreach ($progress as $value) {
|
201 |
-
echo '<h6 class="col-
|
202 |
}
|
203 |
?>
|
204 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the results I get with Squirrly SEO Audit for my website. @SquirrlyHQ #SEO') ?>">Share Your Success</a><?php
|
205 |
} else {
|
206 |
-
echo '<h4 class="col-
|
207 |
} ?>
|
208 |
</div>
|
209 |
|
@@ -214,8 +214,8 @@
|
|
214 |
</div>
|
215 |
</div>
|
216 |
|
217 |
-
<div class="card col-
|
218 |
-
<div class="card-body">
|
219 |
<h4 class="card-title"><?php echo esc_html__("Audit History", _SQ_PLUGIN_NAME_) ?></h4>
|
220 |
<div class="card-text mx-0 my-2 p-0">
|
221 |
<form class="sq_form_bulk_submit" method="get">
|
@@ -234,7 +234,7 @@
|
|
234 |
<th scope="col" class="text-center"><?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?></th>
|
235 |
<th scope="col" class="text-right"><?php echo esc_html__("Page(s)", _SQ_PLUGIN_NAME_) ?></th>
|
236 |
<th scope="col" class="text-center"><?php echo esc_html__("Date", _SQ_PLUGIN_NAME_) ?></th>
|
237 |
-
<th></th>
|
238 |
</tr>
|
239 |
</thead>
|
240 |
<tbody>
|
@@ -252,8 +252,8 @@
|
|
252 |
echo count((array)$audit->urls) . ' ' . esc_html__("pages", _SQ_PLUGIN_NAME_);
|
253 |
} ?></td>
|
254 |
<td class="text-center"><?php echo date('d M Y', strtotime($date)) ?></td>
|
255 |
-
<td
|
256 |
-
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audit', array('sid=' . (int)$audit->id)) ?>" class="btn btn-success btn-sm"><?php echo esc_html__("Show Audit", _SQ_PLUGIN_NAME_) ?></a>
|
257 |
</td>
|
258 |
</tr>
|
259 |
<?php } ?>
|
1 |
<?php if (!empty($view->auditpages)) { ?>
|
2 |
+
<div class="card-body p-2">
|
3 |
<?php
|
4 |
|
5 |
$call_timestamp = 0;
|
35 |
?>
|
36 |
<div class="sq_audit_score row p-2">
|
37 |
<?php if (SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
38 |
+
<div class="col row sq_audit_header">
|
39 |
<div class="m-2 p-0 text-center" style="width: 115px;">
|
40 |
<input id="knob_<?php echo (int)$view->audit->id ?>" type="text" value="<?php echo (int)$view->audit->score ?>" class="dial" style="box-shadow: none; border: none; background: none; width: 1px; color: white" title="<?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?>">
|
41 |
<script>jQuery("#knob_<?php echo (int)$view->audit->id ?>").knob({
|
48 |
'fgColor': '<?php echo esc_attr($color) ?>'
|
49 |
});</script>
|
50 |
</div>
|
51 |
+
<div class="col">
|
52 |
<div>
|
53 |
<span class="sq_audit_header_title"><?php echo esc_html__("Your audit score is", _SQ_PLUGIN_NAME_) . ': ' ?></span>
|
54 |
<span class="sq_audit_header_score"><?php echo (int)$view->audit->score ?></span>
|
57 |
</div>
|
58 |
</div>
|
59 |
<?php } else { ?>
|
60 |
+
<div class="col sq_audit_header">
|
61 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'addpage') ?>" class="btn btn-lg btn-warning text-white mx-1">
|
62 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page for Audit", _SQ_PLUGIN_NAME_); ?>
|
63 |
</a>
|
64 |
</div>
|
83 |
</div>
|
84 |
<?php } else { ?>
|
85 |
<div class="sq_audit_score row p-2">
|
86 |
+
<div class="col-8 sq_audit_header">
|
87 |
<?php if ($call_timestamp > 0) { ?>
|
88 |
<h3 class="card-title text-info">
|
89 |
<i class="fa fa-clock-o" style="font-size: 26px !important;" aria-hidden="true"></i> <?php echo esc_html__("Audit in progress", _SQ_PLUGIN_NAME_); ?>
|
90 |
</h3>
|
91 |
<?php } ?>
|
92 |
</div>
|
93 |
+
<div class="col-4 float-right text-right">
|
94 |
<div class="my-1">
|
95 |
<?php echo esc_html__("Audit not ready yet", _SQ_PLUGIN_NAME_) ?>
|
96 |
</div>
|
158 |
}
|
159 |
|
160 |
?>
|
161 |
+
<div class="sq_stats row p-2 m-0 ">
|
162 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
163 |
<div class="card-content overflow-hidden m-0">
|
164 |
<div class="media align-items-stretch">
|
165 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
169 |
<h5><?php echo esc_html__("Scores", _SQ_PLUGIN_NAME_) ?></h5>
|
170 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days evolution for Audit", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
171 |
<div class="media-right py-3 media-middle ">
|
172 |
+
<div class="col-12 px-0">
|
173 |
<div id="sq_chart_score" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
174 |
<script>
|
175 |
if (typeof google !== 'undefined') {
|
185 |
</div>
|
186 |
</div>
|
187 |
</div>
|
188 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
189 |
<div class="card-content overflow-hidden m-0">
|
190 |
<div class="media align-items-stretch">
|
191 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
198 |
<div class="media-right py-3 media-middle ">
|
199 |
<?php if (!empty($progress)) {
|
200 |
foreach ($progress as $value) {
|
201 |
+
echo '<h6 class="col-12 px-0 text-success" style="line-height: 25px;font-size: 14px;"><i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i> ' . $value . '</h6>';
|
202 |
}
|
203 |
?>
|
204 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the results I get with Squirrly SEO Audit for my website. @SquirrlyHQ #SEO') ?>">Share Your Success</a><?php
|
205 |
} else {
|
206 |
+
echo '<h4 class="col-12 px-0 text-info">' . esc_html__("No progress found yet", _SQ_PLUGIN_NAME_) . '</h4>';
|
207 |
} ?>
|
208 |
</div>
|
209 |
|
214 |
</div>
|
215 |
</div>
|
216 |
|
217 |
+
<div class="card col-12 px-0 py-2 border-0 m-0">
|
218 |
+
<div class="card-body p-1">
|
219 |
<h4 class="card-title"><?php echo esc_html__("Audit History", _SQ_PLUGIN_NAME_) ?></h4>
|
220 |
<div class="card-text mx-0 my-2 p-0">
|
221 |
<form class="sq_form_bulk_submit" method="get">
|
234 |
<th scope="col" class="text-center"><?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?></th>
|
235 |
<th scope="col" class="text-right"><?php echo esc_html__("Page(s)", _SQ_PLUGIN_NAME_) ?></th>
|
236 |
<th scope="col" class="text-center"><?php echo esc_html__("Date", _SQ_PLUGIN_NAME_) ?></th>
|
237 |
+
<th scope="col" ></th>
|
238 |
</tr>
|
239 |
</thead>
|
240 |
<tbody>
|
252 |
echo count((array)$audit->urls) . ' ' . esc_html__("pages", _SQ_PLUGIN_NAME_);
|
253 |
} ?></td>
|
254 |
<td class="text-center"><?php echo date('d M Y', strtotime($date)) ?></td>
|
255 |
+
<td >
|
256 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audit', array('sid=' . (int)$audit->id)) ?>" class="btn <?php echo ($cnt == 1 ? 'btn-success' : 'btn-light border') ?> btn-sm" style="min-width: 150px"><?php echo ($cnt == 1 ? esc_html__("Show Latest Audit", _SQ_PLUGIN_NAME_) : esc_html__("Show Audit", _SQ_PLUGIN_NAME_)) ?></a>
|
257 |
</td>
|
258 |
</tr>
|
259 |
<?php } ?>
|
view/Audits/Audits.php
CHANGED
@@ -5,51 +5,51 @@
|
|
5 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
-
echo '<div class="col-
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'audits'), 'sq_audits'); ?>
|
13 |
|
14 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
15 |
-
<div class="flex-grow-1
|
16 |
<?php do_action('sq_form_notices'); ?>
|
17 |
|
18 |
-
<div class="card col-
|
19 |
|
20 |
<div class="card-body p-2 bg-title rounded-top row">
|
21 |
-
<div class="col-
|
22 |
<div class="sq_icons_content p-3 py-4">
|
23 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
24 |
</div>
|
25 |
<h3 class="card-title"><?php echo esc_html__("Audits", _SQ_PLUGIN_NAME_); ?>:</h3>
|
26 |
<div class="card-title-description m-2"><?php echo esc_html__("Verifies the online presence of your website by knowing how your website is performing in terms of Blogging, SEO, Social, Authority, Links, and Traffic", _SQ_PLUGIN_NAME_); ?></div>
|
27 |
</div>
|
28 |
-
<div class="col-
|
29 |
<i class="fa fa-refresh m-2 sq_auditpages_refresh" style="font-size: 20px !important; cursor: pointer;"></i>
|
30 |
|
31 |
</div>
|
32 |
</div>
|
33 |
|
34 |
-
<div id="sq_audits" class="card col-
|
35 |
<?php do_action('sq_subscription_notices'); ?>
|
36 |
|
37 |
<?php
|
38 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
39 |
if (!$connect->google_analytics) { ?>
|
40 |
-
<div class="form-group my-2 col-
|
41 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
42 |
</div>
|
43 |
<?php } ?>
|
44 |
|
45 |
-
<div class="card col-
|
46 |
<div class="card-content sq_auditstatus_content m-0">
|
47 |
<?php echo $view->getView('Audits/AuditStats'); ?>
|
48 |
</div>
|
49 |
</div>
|
50 |
</div>
|
51 |
|
52 |
-
<div class="card col-
|
53 |
<div class="sq_auditpages_content">
|
54 |
<?php
|
55 |
$content = $view->getView('Audits/AuditPages');
|
@@ -62,12 +62,12 @@
|
|
62 |
</div>
|
63 |
|
64 |
<div class="card-body">
|
65 |
-
<div class="col-
|
66 |
<em><?php echo sprintf(esc_html__("%sNote:%s remember that it takes anywhere between %s1 minute to 5 minutes%s to generate the new audit for each page. There is a lot of processing involved.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong>', '</strong>'); ?></em>
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
-
<div class="card col-
|
71 |
<div class="card-body">
|
72 |
<h4 class="text-center text-white">
|
73 |
<?php echo sprintf(esc_html__("Learn how to improve your SEO Audit score over time %sClick Here%s", _SQ_PLUGIN_NAME_), '<a href="https://plugin.squirrly.co/wordpress-seo/what-is-the-site-visibility-score/" target="_blank" style="color: #ffea2a" >', '</a>') ?>
|
@@ -76,13 +76,11 @@
|
|
76 |
</div>
|
77 |
</div>
|
78 |
</div>
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
85 |
-
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
86 |
</div>
|
87 |
</div>
|
88 |
</div>
|
5 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'audits'), 'sq_audits'); ?>
|
13 |
|
14 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
15 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
16 |
<?php do_action('sq_form_notices'); ?>
|
17 |
|
18 |
+
<div class="card col-12 p-0">
|
19 |
|
20 |
<div class="card-body p-2 bg-title rounded-top row">
|
21 |
+
<div class="col-10 text-left m-0 p-0">
|
22 |
<div class="sq_icons_content p-3 py-4">
|
23 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
24 |
</div>
|
25 |
<h3 class="card-title"><?php echo esc_html__("Audits", _SQ_PLUGIN_NAME_); ?>:</h3>
|
26 |
<div class="card-title-description m-2"><?php echo esc_html__("Verifies the online presence of your website by knowing how your website is performing in terms of Blogging, SEO, Social, Authority, Links, and Traffic", _SQ_PLUGIN_NAME_); ?></div>
|
27 |
</div>
|
28 |
+
<div class="col-2 text-right">
|
29 |
<i class="fa fa-refresh m-2 sq_auditpages_refresh" style="font-size: 20px !important; cursor: pointer;"></i>
|
30 |
|
31 |
</div>
|
32 |
</div>
|
33 |
|
34 |
+
<div id="sq_audits" class="card col-12 p-0 tab-panel border-0">
|
35 |
<?php do_action('sq_subscription_notices'); ?>
|
36 |
|
37 |
<?php
|
38 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
39 |
if (!$connect->google_analytics) { ?>
|
40 |
+
<div class="form-group my-2 col-8 offset-2">
|
41 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
42 |
</div>
|
43 |
<?php } ?>
|
44 |
|
45 |
+
<div class="card col-12 p-0 m-0 border-0 shadow-none">
|
46 |
<div class="card-content sq_auditstatus_content m-0">
|
47 |
<?php echo $view->getView('Audits/AuditStats'); ?>
|
48 |
</div>
|
49 |
</div>
|
50 |
</div>
|
51 |
|
52 |
+
<div class="card col-12 border-0 m-0 p-0">
|
53 |
<div class="sq_auditpages_content">
|
54 |
<?php
|
55 |
$content = $view->getView('Audits/AuditPages');
|
62 |
</div>
|
63 |
|
64 |
<div class="card-body">
|
65 |
+
<div class="col-12 my-2 text-black-50">
|
66 |
<em><?php echo sprintf(esc_html__("%sNote:%s remember that it takes anywhere between %s1 minute to 5 minutes%s to generate the new audit for each page. There is a lot of processing involved.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong>', '</strong>'); ?></em>
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
+
<div class="card col-12 bg-cta text-white rounded-0 py-0">
|
71 |
<div class="card-body">
|
72 |
<h4 class="text-center text-white">
|
73 |
<?php echo sprintf(esc_html__("Learn how to improve your SEO Audit score over time %sClick Here%s", _SQ_PLUGIN_NAME_), '<a href="https://plugin.squirrly.co/wordpress-seo/what-is-the-site-visibility-score/" target="_blank" style="color: #ffea2a" >', '</a>') ?>
|
76 |
</div>
|
77 |
</div>
|
78 |
</div>
|
79 |
+
<div class="sq_col_side sticky">
|
80 |
+
<div class="card col-12 p-0">
|
81 |
+
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
82 |
+
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
83 |
+
</div>
|
|
|
|
|
84 |
</div>
|
85 |
</div>
|
86 |
</div>
|
view/Audits/Compare.php
CHANGED
@@ -8,20 +8,20 @@
|
|
8 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav">
|
9 |
<?php
|
10 |
if (!current_user_can('sq_manage_focuspages')) {
|
11 |
-
echo '<div class="col-
|
12 |
return;
|
13 |
}
|
14 |
?>
|
15 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAuditTabs(); ?>
|
16 |
|
17 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
18 |
-
<div class="flex-grow-1
|
19 |
<?php do_action('sq_form_notices'); ?>
|
20 |
|
21 |
-
<div class="card col-
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
-
<div class="col-
|
25 |
<div class="sq_icons_content p-3 py-4">
|
26 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
27 |
</div>
|
@@ -30,7 +30,7 @@
|
|
30 |
</div>
|
31 |
</div>
|
32 |
|
33 |
-
<div id="sq_audit" class="card col-
|
34 |
<div class="card-content" style="min-height: 150px">
|
35 |
<?php if (!empty($view->audits)) {
|
36 |
//set the first audit as referrence
|
@@ -39,7 +39,7 @@
|
|
39 |
//get the modal window for the assistant popup
|
40 |
echo SQ_Classes_ObjController::getClass('SQ_Models_Assistant')->getModal();
|
41 |
?>
|
42 |
-
<div class="form-group text-right col-
|
43 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
44 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audits') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
45 |
</div>
|
@@ -69,7 +69,7 @@
|
|
69 |
<td rowspan="2" class="sq_first_header_column text-center px-3">
|
70 |
|
71 |
|
72 |
-
<div class="col-
|
73 |
<input id="knob_<?php echo (int)$all->id ?>" type="text" value="<?php echo (int)$all->score ?>" class="dial audit_score" title="<?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?>">
|
74 |
<script>jQuery("#knob_<?php echo (int)$all->id ?>").knob({
|
75 |
'min': 0,
|
@@ -82,7 +82,7 @@
|
|
82 |
});</script>
|
83 |
</div>
|
84 |
|
85 |
-
<div class="col-
|
86 |
<?php echo date('d M Y', strtotime($all->audit_datetime)) ?>
|
87 |
</div>
|
88 |
</td>
|
@@ -144,7 +144,7 @@
|
|
144 |
?>
|
145 |
<td class="sq_first_header_column text-center px-3">
|
146 |
|
147 |
-
<div class="col-
|
148 |
<i class="fa fa-check" style="font-size: 30px !important;" data-category="<?php echo esc_attr($category_name) ?>" data-name="<?php echo esc_attr(ucfirst($group)) ?>" data-completed="<?php echo (int)$audit_task->complete ?>" data-dismiss="modal"></i>
|
149 |
<h4 style="display: none"><?php echo wp_kses_post($audit_task->title) ?></h4>
|
150 |
<div class="description" style="display: none">
|
@@ -167,7 +167,7 @@
|
|
167 |
</div>
|
168 |
<div class="message" style="display: none"></div>
|
169 |
</div>
|
170 |
-
<div class="col-
|
171 |
<?php echo date('d M Y', strtotime($all->audit_datetime)) ?>
|
172 |
</div>
|
173 |
</td>
|
8 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav">
|
9 |
<?php
|
10 |
if (!current_user_can('sq_manage_focuspages')) {
|
11 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
12 |
return;
|
13 |
}
|
14 |
?>
|
15 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAuditTabs(); ?>
|
16 |
|
17 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
18 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
19 |
<?php do_action('sq_form_notices'); ?>
|
20 |
|
21 |
+
<div class="card col-12 p-0">
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
+
<div class="col-10 text-left m-0 p-0">
|
25 |
<div class="sq_icons_content p-3 py-4">
|
26 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
27 |
</div>
|
30 |
</div>
|
31 |
</div>
|
32 |
|
33 |
+
<div id="sq_audit" class="card col-12 p-0 tab-panel border-0">
|
34 |
<div class="card-content" style="min-height: 150px">
|
35 |
<?php if (!empty($view->audits)) {
|
36 |
//set the first audit as referrence
|
39 |
//get the modal window for the assistant popup
|
40 |
echo SQ_Classes_ObjController::getClass('SQ_Models_Assistant')->getModal();
|
41 |
?>
|
42 |
+
<div class="form-group text-right col-12 p-0 m-0 mb-3">
|
43 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
44 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_audits', 'audits') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
45 |
</div>
|
69 |
<td rowspan="2" class="sq_first_header_column text-center px-3">
|
70 |
|
71 |
|
72 |
+
<div class="col-12">
|
73 |
<input id="knob_<?php echo (int)$all->id ?>" type="text" value="<?php echo (int)$all->score ?>" class="dial audit_score" title="<?php echo esc_html__("Audit Score", _SQ_PLUGIN_NAME_) ?>">
|
74 |
<script>jQuery("#knob_<?php echo (int)$all->id ?>").knob({
|
75 |
'min': 0,
|
82 |
});</script>
|
83 |
</div>
|
84 |
|
85 |
+
<div class="col-12 mt-2">
|
86 |
<?php echo date('d M Y', strtotime($all->audit_datetime)) ?>
|
87 |
</div>
|
88 |
</td>
|
144 |
?>
|
145 |
<td class="sq_first_header_column text-center px-3">
|
146 |
|
147 |
+
<div class="col-12 sq_task <?php echo esc_attr($dbtask['status']) ?>">
|
148 |
<i class="fa fa-check" style="font-size: 30px !important;" data-category="<?php echo esc_attr($category_name) ?>" data-name="<?php echo esc_attr(ucfirst($group)) ?>" data-completed="<?php echo (int)$audit_task->complete ?>" data-dismiss="modal"></i>
|
149 |
<h4 style="display: none"><?php echo wp_kses_post($audit_task->title) ?></h4>
|
150 |
<div class="description" style="display: none">
|
167 |
</div>
|
168 |
<div class="message" style="display: none"></div>
|
169 |
</div>
|
170 |
+
<div class="col-12 mt-2">
|
171 |
<?php echo date('d M Y', strtotime($all->audit_datetime)) ?>
|
172 |
</div>
|
173 |
</td>
|
view/Audits/Settings.php
CHANGED
@@ -4,14 +4,14 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_audits'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
-
<div class="form-group my-4 col-
|
15 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
16 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
17 |
</div>
|
@@ -21,7 +21,7 @@
|
|
21 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_audits_settings', 'sq_nonce'); ?>
|
22 |
<input type="hidden" name="action" value="sq_audits_settings"/>
|
23 |
|
24 |
-
<div class="card col-
|
25 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
26 |
<div class="card-body p-2 bg-title rounded-top">
|
27 |
<div class="sq_icons_content p-3 py-4">
|
@@ -32,18 +32,18 @@
|
|
32 |
</div>
|
33 |
</div>
|
34 |
|
35 |
-
<div id="sq_seosettings" class="card col-
|
36 |
<div class="card-body p-0">
|
37 |
-
<div class="col-
|
38 |
-
<div class="card col-
|
39 |
|
40 |
|
41 |
-
<div class="col-
|
42 |
-
<div class="col-
|
43 |
<?php echo esc_html__("Audit Email", _SQ_PLUGIN_NAME_); ?>:
|
44 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Enter the email address on which you want to receive the weekly audits.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
</div>
|
46 |
-
<div class="col-
|
47 |
<input type="text" class="form-control bg-input" name="sq_audit_email" value="<?php echo SQ_Classes_Helpers_Tools::getOption('sq_audit_email') ?>"/>
|
48 |
</div>
|
49 |
</div>
|
@@ -56,14 +56,14 @@
|
|
56 |
|
57 |
</div>
|
58 |
|
59 |
-
<div class="col-
|
60 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
61 |
</div>
|
62 |
</form>
|
63 |
|
64 |
</div>
|
65 |
<div class="sq_col_side sticky">
|
66 |
-
<div class="card col-
|
67 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
68 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
69 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_audits'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
+
<div class="form-group my-4 col-10 offset-1">
|
15 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
16 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
17 |
</div>
|
21 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_audits_settings', 'sq_nonce'); ?>
|
22 |
<input type="hidden" name="action" value="sq_audits_settings"/>
|
23 |
|
24 |
+
<div class="card col-12 p-0">
|
25 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
26 |
<div class="card-body p-2 bg-title rounded-top">
|
27 |
<div class="sq_icons_content p-3 py-4">
|
32 |
</div>
|
33 |
</div>
|
34 |
|
35 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
36 |
<div class="card-body p-0">
|
37 |
+
<div class="col-12 m-0 p-0">
|
38 |
+
<div class="card col-12 p-0 border-0 ">
|
39 |
|
40 |
|
41 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
42 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
43 |
<?php echo esc_html__("Audit Email", _SQ_PLUGIN_NAME_); ?>:
|
44 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Enter the email address on which you want to receive the weekly audits.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
</div>
|
46 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
47 |
<input type="text" class="form-control bg-input" name="sq_audit_email" value="<?php echo SQ_Classes_Helpers_Tools::getOption('sq_audit_email') ?>"/>
|
48 |
</div>
|
49 |
</div>
|
56 |
|
57 |
</div>
|
58 |
|
59 |
+
<div class="col-12 my-3 p-0">
|
60 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
61 |
</div>
|
62 |
</form>
|
63 |
|
64 |
</div>
|
65 |
<div class="sq_col_side sticky">
|
66 |
+
<div class="card col-12 p-0">
|
67 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
68 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
69 |
</div>
|
view/Blocks/Account.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
$whole = $decimal = 0;
|
3 |
if (isset($view->checkin->subscription_devkit) && $view->checkin->subscription_devkit) {
|
4 |
?>
|
5 |
-
<div class="card-text col-
|
6 |
<div class="author">
|
7 |
<i class="avatar sq_icons sq_icon_package"></i>
|
8 |
</div>
|
@@ -23,7 +23,7 @@ if (isset($view->checkin->subscription_status) && isset($view->checkin->product_
|
|
23 |
}
|
24 |
?>
|
25 |
<?php if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
26 |
-
<div class="card-text col-
|
27 |
<div class="author">
|
28 |
<i class="avatar sq_icons sq_icon_package"></i>
|
29 |
</div>
|
2 |
$whole = $decimal = 0;
|
3 |
if (isset($view->checkin->subscription_devkit) && $view->checkin->subscription_devkit) {
|
4 |
?>
|
5 |
+
<div class="card-text col-12 p-0 m-0 border-0">
|
6 |
<div class="author">
|
7 |
<i class="avatar sq_icons sq_icon_package"></i>
|
8 |
</div>
|
23 |
}
|
24 |
?>
|
25 |
<?php if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
26 |
+
<div class="card-text col-12 p-0 m-0 border-0">
|
27 |
<div class="author">
|
28 |
<i class="avatar sq_icons sq_icon_package"></i>
|
29 |
</div>
|
view/Blocks/Connect.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php if (current_user_can('sq_manage_snippets') && SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
2 |
-
<div class="card col-
|
3 |
-
<div class="card-body py-1">
|
4 |
<div id="sq_assistant_sq_seosettings" class="sq_assistant">
|
5 |
<form method="post" action="">
|
6 |
<ul id="sq_assistant_tasks_sq_seosettings" class="p-0 m-0">
|
1 |
<?php if (current_user_can('sq_manage_snippets') && SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
2 |
+
<div class="card col-12 p-0 m-0 border-0">
|
3 |
+
<div class="card-body px-2 py-1">
|
4 |
<div id="sq_assistant_sq_seosettings" class="sq_assistant">
|
5 |
<form method="post" action="">
|
6 |
<ul id="sq_assistant_tasks_sq_seosettings" class="p-0 m-0">
|
view/Blocks/Features.php
CHANGED
@@ -169,7 +169,7 @@ $features = array(
|
|
169 |
'title' => esc_html__("Remove META Duplicate", _SQ_PLUGIN_NAME_),
|
170 |
'description' => esc_html__("Fix Duplicate Titles and Descriptions without writing a line of code.", _SQ_PLUGIN_NAME_),
|
171 |
'mode' => esc_html__("Free", _SQ_PLUGIN_NAME_),
|
172 |
-
'option' => (SQ_Classes_Helpers_Tools::getOption('sq_auto_title') || SQ_Classes_Helpers_Tools::getOption('sq_auto_description') || SQ_Classes_Helpers_Tools::getOption('sq_auto_canonical') || SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex') || (SQ_Classes_Helpers_Tools::getOption('sq_jsonld_clearcode') && SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld'))
|
173 |
'logo' => 'metas_92.png',
|
174 |
'link' => SQ_Classes_Helpers_Tools::getAdminUrl('sq_seosettings', 'metas'),
|
175 |
'details' => 'https://plugin.squirrly.co/duplicate-removal-tool/',
|
@@ -223,17 +223,17 @@ $features = array(
|
|
223 |
);
|
224 |
?>
|
225 |
<a name="features"></a>
|
226 |
-
<div class="sq_features border my-3 py-3">
|
227 |
-
<div class="row text-left m-0 p-3">
|
228 |
<div class="px-2 text-center" style="width: 38%;">
|
229 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/speedometer.png' ?>" style="width: 100%; max-width: 320px;">
|
230 |
</div>
|
231 |
-
<div class="col
|
232 |
-
<div class="col-
|
233 |
<h3><?php echo esc_html__("Squirrly SEO Feature Categories", _SQ_PLUGIN_NAME_) ?></h3>
|
234 |
</div>
|
235 |
<div class="sq_separator"></div>
|
236 |
-
<div class="col-
|
237 |
<div class="my-2"><?php echo sprintf(esc_html__("With a total of over %s200%s free in-depth features that only Squirrly can offer.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?>
|
238 |
<a href="https://trello.com/c/BSOkxHSv/116-official-list-squirrly-seo-2019-strategy-features-grouped-by-tools-given-to-you-when-you-install-squirrly" target="_blank">See the full list</a>
|
239 |
</div>
|
@@ -241,74 +241,60 @@ $features = array(
|
|
241 |
</div>
|
242 |
</div>
|
243 |
|
244 |
-
<div class="row
|
245 |
-
<?php foreach ($features
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
$background_color
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
$background_color = '#fff6f64d';
|
264 |
-
break;
|
265 |
-
}
|
266 |
-
if($feature['option'] == false){
|
267 |
-
$background_color = '#d6d6d6';
|
268 |
-
}
|
269 |
-
?>
|
270 |
-
<?php if ($index % 3 == 0){ ?></div>
|
271 |
-
<div class="row px-3 py-0"><?php } ?>
|
272 |
-
<div class="col-sm-4 px-2">
|
273 |
-
<div class="card py-3 px-3 shadow-sm" style="background-color: <?php echo esc_attr($background_color) ?>">
|
274 |
-
<div class="card-body m-0 p-0">
|
275 |
-
<div class="row px-3">
|
276 |
-
<div class="col-sm-1 p-0">
|
277 |
-
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/logos/' . $feature['logo'] ?>" style="width: 24px; vertical-align: middle;">
|
278 |
</div>
|
279 |
-
<div class="
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
<div class="col-sm-12 font-weight-bold text-right" style="font-size: 14px">
|
284 |
-
<a href="https://plugin.squirrly.co/squirrly-seo-pricing/" target="_blank" class="<?php echo esc_attr($color) ?>"><?php echo (string)$feature['mode'] ?></a>
|
285 |
</div>
|
286 |
</div>
|
287 |
-
<div class="
|
288 |
-
|
289 |
-
|
290 |
-
<a href="<?php echo esc_url($feature['link']) ?>" target="_blank">
|
291 |
<?php if ($feature['option'] === 'na') { ?>
|
292 |
-
<
|
|
|
|
|
293 |
<?php } elseif ($feature['option'] == true) { ?>
|
294 |
-
<
|
|
|
|
|
295 |
<?php } elseif ($feature['option'] == false) { ?>
|
296 |
-
<
|
297 |
<?php } else { ?>
|
298 |
-
<
|
|
|
|
|
299 |
<?php } ?>
|
300 |
-
</
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
</div>
|
308 |
</div>
|
309 |
</div>
|
310 |
</div>
|
311 |
-
</div>
|
312 |
<?php } ?>
|
313 |
</div>
|
314 |
|
169 |
'title' => esc_html__("Remove META Duplicate", _SQ_PLUGIN_NAME_),
|
170 |
'description' => esc_html__("Fix Duplicate Titles and Descriptions without writing a line of code.", _SQ_PLUGIN_NAME_),
|
171 |
'mode' => esc_html__("Free", _SQ_PLUGIN_NAME_),
|
172 |
+
'option' => (SQ_Classes_Helpers_Tools::getOption('sq_auto_title') || SQ_Classes_Helpers_Tools::getOption('sq_auto_description') || SQ_Classes_Helpers_Tools::getOption('sq_auto_canonical') || SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex') || (SQ_Classes_Helpers_Tools::getOption('sq_jsonld_clearcode') && SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld'))),
|
173 |
'logo' => 'metas_92.png',
|
174 |
'link' => SQ_Classes_Helpers_Tools::getAdminUrl('sq_seosettings', 'metas'),
|
175 |
'details' => 'https://plugin.squirrly.co/duplicate-removal-tool/',
|
223 |
);
|
224 |
?>
|
225 |
<a name="features"></a>
|
226 |
+
<div class="sq_features border my-3 py-3" >
|
227 |
+
<div class="row text-left m-0 p-3" style="max-width: 1200px;">
|
228 |
<div class="px-2 text-center" style="width: 38%;">
|
229 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/speedometer.png' ?>" style="width: 100%; max-width: 320px;">
|
230 |
</div>
|
231 |
+
<div class="col px-2 py-5">
|
232 |
+
<div class="col-12 m-0 p-0">
|
233 |
<h3><?php echo esc_html__("Squirrly SEO Feature Categories", _SQ_PLUGIN_NAME_) ?></h3>
|
234 |
</div>
|
235 |
<div class="sq_separator"></div>
|
236 |
+
<div class="col-12 m-2 p-0">
|
237 |
<div class="my-2"><?php echo sprintf(esc_html__("With a total of over %s200%s free in-depth features that only Squirrly can offer.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?>
|
238 |
<a href="https://trello.com/c/BSOkxHSv/116-official-list-squirrly-seo-2019-strategy-features-grouped-by-tools-given-to-you-when-you-install-squirrly" target="_blank">See the full list</a>
|
239 |
</div>
|
241 |
</div>
|
242 |
</div>
|
243 |
|
244 |
+
<div class="row row-cols-1 row-cols-md-3 px-1 mx-1" style="max-width: 1200px;">
|
245 |
+
<?php foreach ($features as $index => $feature) {
|
246 |
+
$opacity = 1;
|
247 |
+
$background_color = '#f6fff966';
|
248 |
+
if ($feature['option'] === false) {
|
249 |
+
$background_color = '#eee';
|
250 |
+
$opacity = 1;
|
251 |
+
}
|
252 |
+
?>
|
253 |
+
<div class="col-4 px-2 mb-3">
|
254 |
+
<div class="card h-100 p-0 shadow-0 rounded-0" style="background-color: <?php echo esc_attr($background_color) ?>; opacity: <?php echo $opacity ?>">
|
255 |
+
<div class="card-body m-0 p-0">
|
256 |
+
<div class="row mx-3 my-4">
|
257 |
+
<div class="col-1 p-0">
|
258 |
+
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/logos/' . $feature['logo'] ?>" style="width: 24px; vertical-align: middle;">
|
259 |
+
</div>
|
260 |
+
<div class="col-11 p-0 pl-3">
|
261 |
+
<h5><?php echo wp_kses_post($feature['title']) ?></h5>
|
262 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
</div>
|
264 |
+
<div class="mx-3 my-4 text-black" style="min-height: 100px; font-size: 16px;">
|
265 |
+
<div class="my-2 text-black-50">
|
266 |
+
<?php echo wp_kses_post($feature['description']) ?>
|
267 |
+
</div>
|
|
|
|
|
268 |
</div>
|
269 |
</div>
|
270 |
+
<div class="card-footer p-0">
|
271 |
+
<div class="row m-0">
|
272 |
+
<div class="col-6 px-2 py-1 m-0 align-middle text-left" style="line-height: 30px">
|
|
|
273 |
<?php if ($feature['option'] === 'na') { ?>
|
274 |
+
<a href="<?php echo esc_url($feature['link']) ?>" target="_blank">
|
275 |
+
<strong class="text-info"><?php echo esc_html__("Go to feature", _SQ_PLUGIN_NAME_) ?></strong>
|
276 |
+
</a>
|
277 |
<?php } elseif ($feature['option'] == true) { ?>
|
278 |
+
<a href="<?php echo esc_url($feature['link']) ?>" target="_blank">
|
279 |
+
<strong class="text-success"><?php echo esc_html__("Active", _SQ_PLUGIN_NAME_) ?></strong>
|
280 |
+
</a>
|
281 |
<?php } elseif ($feature['option'] == false) { ?>
|
282 |
+
<a href="<?php echo esc_url($feature['link']) ?>" class="btn btn-success btn-sm px-4"><?php echo esc_html__("Activate", _SQ_PLUGIN_NAME_) ?></a>
|
283 |
<?php } else { ?>
|
284 |
+
<a href="<?php echo esc_url($feature['link']) ?>" target="_blank">
|
285 |
+
<strong class="text-info"><?php echo (string)$feature['option'] ?></strong>
|
286 |
+
</a>
|
287 |
<?php } ?>
|
288 |
+
</div>
|
289 |
+
<div class="col-6 p-2 m-0 align-middle text-right">
|
290 |
+
<?php if ($feature['details']) { ?>
|
291 |
+
<a href="<?php echo esc_url($feature['details']) ?>" target="_blank" class="text-black-50"><?php echo esc_html__("more details", _SQ_PLUGIN_NAME_) ?></a>
|
292 |
+
<?php } ?>
|
293 |
+
</div>
|
|
|
294 |
</div>
|
295 |
</div>
|
296 |
</div>
|
297 |
</div>
|
|
|
298 |
<?php } ?>
|
299 |
</div>
|
300 |
|
view/Blocks/Jorney.php
CHANGED
@@ -1,19 +1,19 @@
|
|
1 |
<div id="sq_journey">
|
2 |
<?php if ($view->days) { ?>
|
3 |
-
<div class="card col-
|
4 |
<div class="card-body m-0 p-0">
|
5 |
<div class="row text-left m-0 p-0">
|
6 |
<div class="row text-left m-0 p-0">
|
7 |
<div class="px-2 py-3" style="max-width: 350px;width: 40%;">
|
8 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%">
|
9 |
</div>
|
10 |
-
<div class="col
|
11 |
-
<div class="col-
|
12 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("14 Days Journey Course", _SQ_PLUGIN_NAME_); ?>:</h3>
|
13 |
</div>
|
14 |
|
15 |
<div class="sq_separator"></div>
|
16 |
-
<div class="col-
|
17 |
<div class="my-2"><?php echo sprintf(esc_html__("Follow the %sdaily recipe%s from below.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?></div>
|
18 |
<div class="my-2"><?php echo sprintf(esc_html__("%sJoin%s the rest of the %sJourneyTeam on the Facebook Group%s and if you want you can share with the members that you have started your Journey.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/groups/SquirrlySEOCustomerService/" target="_blank" >', '</a></strong>'); ?></div>
|
19 |
</div>
|
@@ -22,16 +22,16 @@
|
|
22 |
</div>
|
23 |
</div>
|
24 |
<div class="sq_separator"></div>
|
25 |
-
<div class="card col-
|
26 |
<div class="card-body p-0">
|
27 |
-
<div class="col-
|
28 |
-
<div class="card col-
|
29 |
|
30 |
-
<div class="col-
|
31 |
<?php if ($view->days > 14) { ?>
|
32 |
-
<h5 class="col-
|
33 |
<?php } else { ?>
|
34 |
-
<h2 class="col-
|
35 |
<?php } ?>
|
36 |
|
37 |
<ul class="stepper horizontal horizontal-fix focused" id="horizontal-stepper-fix">
|
@@ -84,22 +84,22 @@
|
|
84 |
|
85 |
</div>
|
86 |
<?php } else { ?>
|
87 |
-
<div class="col-
|
88 |
<div class="row text-left m-0 p-0">
|
89 |
<div class="row text-left m-0 p-0">
|
90 |
<div class="px-2 py-3" style="max-width: 350px;width: 40%;">
|
91 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%">
|
92 |
</div>
|
93 |
-
<div class="col
|
94 |
-
<div class="col-
|
95 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("14 Days Journey Course", _SQ_PLUGIN_NAME_); ?>:</h3>
|
96 |
</div>
|
97 |
|
98 |
<div class="sq_separator"></div>
|
99 |
-
<div class="col-
|
100 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("All you need now is to start driving One of your most valuable pages to Better Rankings.", _SQ_PLUGIN_NAME_); ?></div>
|
101 |
</div>
|
102 |
-
<div class="col-
|
103 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.1') ?>" class="btn btn-sm btn-success m-0 py-2 px-4"><?php echo esc_html__("I'm ready to start the Journey To Better Ranking", _SQ_PLUGIN_NAME_); ?></a>
|
104 |
</div>
|
105 |
</div>
|
1 |
<div id="sq_journey">
|
2 |
<?php if ($view->days) { ?>
|
3 |
+
<div class="card col-12 my-3 p-0">
|
4 |
<div class="card-body m-0 p-0">
|
5 |
<div class="row text-left m-0 p-0">
|
6 |
<div class="row text-left m-0 p-0">
|
7 |
<div class="px-2 py-3" style="max-width: 350px;width: 40%;">
|
8 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%">
|
9 |
</div>
|
10 |
+
<div class="col px-2 py-3">
|
11 |
+
<div class="col-12 m-0 p-0">
|
12 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("14 Days Journey Course", _SQ_PLUGIN_NAME_); ?>:</h3>
|
13 |
</div>
|
14 |
|
15 |
<div class="sq_separator"></div>
|
16 |
+
<div class="col-12 m-2 p-0">
|
17 |
<div class="my-2"><?php echo sprintf(esc_html__("Follow the %sdaily recipe%s from below.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?></div>
|
18 |
<div class="my-2"><?php echo sprintf(esc_html__("%sJoin%s the rest of the %sJourneyTeam on the Facebook Group%s and if you want you can share with the members that you have started your Journey.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/groups/SquirrlySEOCustomerService/" target="_blank" >', '</a></strong>'); ?></div>
|
19 |
</div>
|
22 |
</div>
|
23 |
</div>
|
24 |
<div class="sq_separator"></div>
|
25 |
+
<div class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
26 |
<div class="card-body p-0">
|
27 |
+
<div class="col-12 m-0 p-0">
|
28 |
+
<div class="card col-12 m-0 p-0 border-0 ">
|
29 |
|
30 |
+
<div class="col-12 m-0 p-3 text-center">
|
31 |
<?php if ($view->days > 14) { ?>
|
32 |
+
<h5 class="col-12 card-title py-3 "><?php echo esc_html__("Congratulations! You've completed the 14 Days Journey To Better Ranking", _SQ_PLUGIN_NAME_); ?></h5>
|
33 |
<?php } else { ?>
|
34 |
+
<h2 class="col-12 card-title py-3 "><?php echo esc_html__("Your 14 Days Journey To Better Ranking", _SQ_PLUGIN_NAME_); ?></h2>
|
35 |
<?php } ?>
|
36 |
|
37 |
<ul class="stepper horizontal horizontal-fix focused" id="horizontal-stepper-fix">
|
84 |
|
85 |
</div>
|
86 |
<?php } else { ?>
|
87 |
+
<div class="col-12 my-3 py-3" style="box-shadow: 0 0 10px -3px #994525;">
|
88 |
<div class="row text-left m-0 p-0">
|
89 |
<div class="row text-left m-0 p-0">
|
90 |
<div class="px-2 py-3" style="max-width: 350px;width: 40%;">
|
91 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%">
|
92 |
</div>
|
93 |
+
<div class="col px-2 py-3">
|
94 |
+
<div class="col-12 m-0 p-0">
|
95 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("14 Days Journey Course", _SQ_PLUGIN_NAME_); ?>:</h3>
|
96 |
</div>
|
97 |
|
98 |
<div class="sq_separator"></div>
|
99 |
+
<div class="col-12 m-2 p-0">
|
100 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("All you need now is to start driving One of your most valuable pages to Better Rankings.", _SQ_PLUGIN_NAME_); ?></div>
|
101 |
</div>
|
102 |
+
<div class="col-12 m-0 p-3 text-center">
|
103 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.1') ?>" class="btn btn-sm btn-success m-0 py-2 px-4"><?php echo esc_html__("I'm ready to start the Journey To Better Ranking", _SQ_PLUGIN_NAME_); ?></a>
|
104 |
</div>
|
105 |
</div>
|
view/Blocks/Login.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php $tab = SQ_Classes_Helpers_Tools::getValue('tab', 'register'); ?>
|
2 |
-
<div class="card col-
|
3 |
<div class="card-body">
|
4 |
<?php if ($tab == 'login') { ?>
|
5 |
<form method="post" action="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard', 'login') ?>">
|
1 |
<?php $tab = SQ_Classes_Helpers_Tools::getValue('tab', 'register'); ?>
|
2 |
+
<div class="card col-12 p-0 border-0">
|
3 |
<div class="card-body">
|
4 |
<?php if ($tab == 'login') { ?>
|
5 |
<form method="post" action="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard', 'login') ?>">
|
view/Blocks/Snippet.php
CHANGED
@@ -65,9 +65,7 @@ if (SQ_Classes_Helpers_Tools::getOption('sq_api') <> '') {
|
|
65 |
<input type="hidden" name="sq_hash" id="sq_hash" value="<?php echo esc_attr($view->post->hash); ?>">
|
66 |
<input type="hidden" name="sq_keyword" id="sq_keyword" value="">
|
67 |
|
68 |
-
<?php
|
69 |
-
//Run only is frontend admin and ajax call
|
70 |
-
if (SQ_Classes_Helpers_Tools::isAjax()) { ?>
|
71 |
<div id="snippet_<?php echo esc_attr($view->post->hash) ?>" class="sq_snippet_wrap sq-card sq-col-sm-12 sq-p-0 sq-pr-1 sq-m-0 sq-border-0">
|
72 |
|
73 |
<div class="sq-card-body sq-p-0">
|
@@ -89,7 +87,7 @@ if (SQ_Classes_Helpers_Tools::getOption('sq_api') <> '') {
|
|
89 |
</li>
|
90 |
<?php } ?>
|
91 |
<li class="sq-nav-item">
|
92 |
-
<a href="https://howto.squirrly.co/kb/bulk-seo/#bulk_seo_snippet_og" class="sq-nav-icon"target="_blank"><i class="fa fa-question-circle-o m-0 px-2"></i></a>
|
93 |
<a href="#sqtab<?php echo esc_attr($view->post->hash) ?>3" class="sq-nav-item sq-nav-link sq-py-3 sq-text-info" id="sq-nav-item_opengraph" data-category="opengraph" data-toggle="sqtab"><?php echo esc_html__("Open Graph", _SQ_PLUGIN_NAME_) ?></a>
|
94 |
</li>
|
95 |
<li class="sq-nav-item">
|
@@ -500,14 +498,20 @@ if (SQ_Classes_Helpers_Tools::getOption('sq_api') <> '') {
|
|
500 |
<?php
|
501 |
if ($view->post->sq->og_media <> '') {
|
502 |
try {
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
|
|
|
|
|
|
|
|
|
|
510 |
}
|
|
|
511 |
} catch (Exception $e) {
|
512 |
}
|
513 |
}
|
@@ -758,14 +762,20 @@ if (SQ_Classes_Helpers_Tools::getOption('sq_api') <> '') {
|
|
758 |
<?php
|
759 |
if ($view->post->sq->tw_media <> '') {
|
760 |
try {
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
|
|
|
|
|
|
|
|
|
|
768 |
}
|
|
|
769 |
} catch (Exception $e) {
|
770 |
}
|
771 |
}
|
65 |
<input type="hidden" name="sq_hash" id="sq_hash" value="<?php echo esc_attr($view->post->hash); ?>">
|
66 |
<input type="hidden" name="sq_keyword" id="sq_keyword" value="">
|
67 |
|
68 |
+
<?php if (SQ_Classes_Helpers_Tools::isAjax()) { //Run only is frontend admin and ajax call ?>
|
|
|
|
|
69 |
<div id="snippet_<?php echo esc_attr($view->post->hash) ?>" class="sq_snippet_wrap sq-card sq-col-sm-12 sq-p-0 sq-pr-1 sq-m-0 sq-border-0">
|
70 |
|
71 |
<div class="sq-card-body sq-p-0">
|
87 |
</li>
|
88 |
<?php } ?>
|
89 |
<li class="sq-nav-item">
|
90 |
+
<a href="https://howto.squirrly.co/kb/bulk-seo/#bulk_seo_snippet_og" class="sq-nav-icon" target="_blank"><i class="fa fa-question-circle-o m-0 px-2"></i></a>
|
91 |
<a href="#sqtab<?php echo esc_attr($view->post->hash) ?>3" class="sq-nav-item sq-nav-link sq-py-3 sq-text-info" id="sq-nav-item_opengraph" data-category="opengraph" data-toggle="sqtab"><?php echo esc_html__("Open Graph", _SQ_PLUGIN_NAME_) ?></a>
|
92 |
</li>
|
93 |
<li class="sq-nav-item">
|
498 |
<?php
|
499 |
if ($view->post->sq->og_media <> '') {
|
500 |
try {
|
501 |
+
if (defined('WP_CONTENT_DIR') && $imagepath = str_replace(content_url(), WP_CONTENT_DIR, $view->post->sq->og_media)) {
|
502 |
+
|
503 |
+
if (file_exists($imagepath)) {
|
504 |
+
list($width, $height) = @getimagesize($imagepath);
|
505 |
+
|
506 |
+
if ((int)$width > 0 && (int)$width < 500) { ?>
|
507 |
+
<div class="sq-col-sm-12">
|
508 |
+
<div class="sq-alert sq-alert-danger"><?php echo esc_html__("The image size must be at least 500 pixels wide", _SQ_PLUGIN_NAME_) ?></div>
|
509 |
+
</div>
|
510 |
+
<?php
|
511 |
+
}
|
512 |
+
}
|
513 |
}
|
514 |
+
|
515 |
} catch (Exception $e) {
|
516 |
}
|
517 |
}
|
762 |
<?php
|
763 |
if ($view->post->sq->tw_media <> '') {
|
764 |
try {
|
765 |
+
if (defined('WP_CONTENT_DIR') && $imagepath = str_replace(content_url(), WP_CONTENT_DIR, $view->post->sq->tw_media)) {
|
766 |
+
|
767 |
+
if (file_exists($imagepath)) {
|
768 |
+
list($width, $height) = @getimagesize($imagepath);
|
769 |
+
|
770 |
+
if ((int)$width > 0 && (int)$width < 500) { ?>
|
771 |
+
<div class="sq-col-sm-12">
|
772 |
+
<div class="sq-alert sq-alert-danger"><?php echo esc_html__("The image size must be at least 500 pixels wide", _SQ_PLUGIN_NAME_) ?></div>
|
773 |
+
</div>
|
774 |
+
<?php
|
775 |
+
}
|
776 |
+
}
|
777 |
}
|
778 |
+
|
779 |
} catch (Exception $e) {
|
780 |
}
|
781 |
}
|
view/Blocks/Stats.php
CHANGED
@@ -33,19 +33,19 @@
|
|
33 |
}
|
34 |
////////////////////////////////////////////////////////////
|
35 |
?>
|
36 |
-
<div class="card col-
|
37 |
<div class="card-body m-0 p-0 bg-title">
|
38 |
<div class="row text-left m-0 p-0">
|
39 |
-
<div class="col
|
40 |
<div class="text-left m-0 p-0 py-1">
|
41 |
-
<div class="col
|
42 |
<h2 class="m-0 p-0" style="font-size: 40px;font-weight: bold;"><?php echo esc_html__("Hello", _SQ_PLUGIN_NAME_); ?> <?php echo ucfirst($username)?>,</h2>
|
43 |
</div>
|
44 |
</div>
|
45 |
<div class="sq_separator"></div>
|
46 |
-
<div class="row text-left m-0 p-0 py-3">
|
47 |
-
<div class="col-
|
48 |
-
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s SEO Protection", _SQ_PLUGIN_NAME_), '<strong class="text-info" style="font-size: 40px; text-shadow: 1px 1px white;">' . (int)$view->stats['seo_percent'] . '%' . '</strong>'); ?></h3>
|
49 |
<div class="card-title-description m-0 p-0 text-black-50">
|
50 |
<?php if ((int)$view->stats['seo_percent'] == 100) { ?>
|
51 |
<?php echo esc_html__("All protection layers are activated.", _SQ_PLUGIN_NAME_); ?>
|
@@ -58,13 +58,13 @@
|
|
58 |
</div>
|
59 |
|
60 |
<div class="row text-left m-0 p-0 pt-4">
|
61 |
-
<div class="col-
|
62 |
<h5 class="m-0 p-0 text-info" style="text-shadow: 1px 1px white;"><?php echo (int)$view->stats['post_count'] ?>
|
63 |
<span class="small"><?php echo(isset($view->stats['all_post_count']) ? " (" . (int)$view->stats['all_post_count'] . " total)" : '') ?></span>
|
64 |
</h5>
|
65 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Pages SEO'ed", _SQ_PLUGIN_NAME_); ?></div>
|
66 |
</div>
|
67 |
-
<div class="col-
|
68 |
<h5 class="m-0 p-0 text-info" style="text-shadow: 1px 1px white;"><?php echo (int)$view->stats['post_types_count'] ?>
|
69 |
<span class="small"><?php echo(isset($view->stats['all_post_types_count']) ? " (" . (int)$view->stats['all_post_types_count'] . " total)" : '') ?></span>
|
70 |
</h5>
|
@@ -72,14 +72,14 @@
|
|
72 |
</div>
|
73 |
</div>
|
74 |
</div>
|
75 |
-
<div class="col-
|
76 |
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s Upgrades", _SQ_PLUGIN_NAME_), '<strong class="text-info" style="font-size: 40px; text-shadow: 1px 1px white;">' . '70' . '</strong>'); ?></h3>
|
77 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Made by Squirrly Genius.", _SQ_PLUGIN_NAME_); ?></div>
|
78 |
<div class="card-title-description m-0 p-0 ">
|
79 |
<a href="https://howto.squirrly.co/faq/70-aspects-handled-by-squirrly-genius/" target="_blank">(<?php echo esc_html__("Can I see them?", _SQ_PLUGIN_NAME_); ?>)</a>
|
80 |
</div>
|
81 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
82 |
-
<button type="button" class="btn btn-warning m-0 mt-4 py-1 px-
|
83 |
<?php echo esc_html__("Run SEO Test", _SQ_PLUGIN_NAME_) ?> >>
|
84 |
</button>
|
85 |
<?php } ?>
|
33 |
}
|
34 |
////////////////////////////////////////////////////////////
|
35 |
?>
|
36 |
+
<div class="card col-12 m-0 mt-2 p-0" style="box-shadow: 0 0 10px -3px #994525;">
|
37 |
<div class="card-body m-0 p-0 bg-title">
|
38 |
<div class="row text-left m-0 p-0">
|
39 |
+
<div class="col p-4">
|
40 |
<div class="text-left m-0 p-0 py-1">
|
41 |
+
<div class="col m-0 p-0">
|
42 |
<h2 class="m-0 p-0" style="font-size: 40px;font-weight: bold;"><?php echo esc_html__("Hello", _SQ_PLUGIN_NAME_); ?> <?php echo ucfirst($username)?>,</h2>
|
43 |
</div>
|
44 |
</div>
|
45 |
<div class="sq_separator"></div>
|
46 |
+
<div class="row text-left m-0 p-0 py-3" style="max-width: 1200px;">
|
47 |
+
<div class="col-8 m-0 p-0">
|
48 |
+
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s SEO Protection", _SQ_PLUGIN_NAME_), '<strong class="'.((int)$view->stats['seo_percent'] == 100 ? 'text-success' : 'text-info').'" style="font-size: 40px; text-shadow: 1px 1px white;">' . (int)$view->stats['seo_percent'] . '%' . '</strong>'); ?></h3>
|
49 |
<div class="card-title-description m-0 p-0 text-black-50">
|
50 |
<?php if ((int)$view->stats['seo_percent'] == 100) { ?>
|
51 |
<?php echo esc_html__("All protection layers are activated.", _SQ_PLUGIN_NAME_); ?>
|
58 |
</div>
|
59 |
|
60 |
<div class="row text-left m-0 p-0 pt-4">
|
61 |
+
<div class="col-5 m-0 p-0">
|
62 |
<h5 class="m-0 p-0 text-info" style="text-shadow: 1px 1px white;"><?php echo (int)$view->stats['post_count'] ?>
|
63 |
<span class="small"><?php echo(isset($view->stats['all_post_count']) ? " (" . (int)$view->stats['all_post_count'] . " total)" : '') ?></span>
|
64 |
</h5>
|
65 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Pages SEO'ed", _SQ_PLUGIN_NAME_); ?></div>
|
66 |
</div>
|
67 |
+
<div class="col-7 m-0 p-0" style="min-width: 100px">
|
68 |
<h5 class="m-0 p-0 text-info" style="text-shadow: 1px 1px white;"><?php echo (int)$view->stats['post_types_count'] ?>
|
69 |
<span class="small"><?php echo(isset($view->stats['all_post_types_count']) ? " (" . (int)$view->stats['all_post_types_count'] . " total)" : '') ?></span>
|
70 |
</h5>
|
72 |
</div>
|
73 |
</div>
|
74 |
</div>
|
75 |
+
<div class="col-4 m-0 p-0" style="min-width: 100px">
|
76 |
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s Upgrades", _SQ_PLUGIN_NAME_), '<strong class="text-info" style="font-size: 40px; text-shadow: 1px 1px white;">' . '70' . '</strong>'); ?></h3>
|
77 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Made by Squirrly Genius.", _SQ_PLUGIN_NAME_); ?></div>
|
78 |
<div class="card-title-description m-0 p-0 ">
|
79 |
<a href="https://howto.squirrly.co/faq/70-aspects-handled-by-squirrly-genius/" target="_blank">(<?php echo esc_html__("Can I see them?", _SQ_PLUGIN_NAME_); ?>)</a>
|
80 |
</div>
|
81 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
82 |
+
<button type="button" class="btn btn-warning m-0 mt-4 py-1 px-4 center-block sq_seocheck_submit">
|
83 |
<?php echo esc_html__("Run SEO Test", _SQ_PLUGIN_NAME_) ?> >>
|
84 |
</button>
|
85 |
<?php } ?>
|
view/Blocks/Support.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
-
<div id="sq_options" class="card col-
|
2 |
-
<ul class="p-0 m-0
|
3 |
<li id="sq_options_dasboard">
|
4 |
<?php
|
5 |
if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
1 |
+
<div id="sq_options" class="card col-12 p-0 m-0 py-2 my-2 border-0">
|
2 |
+
<ul class="p-0 m-0">
|
3 |
<li id="sq_options_dasboard">
|
4 |
<?php
|
5 |
if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
view/Blocks/Toolbar.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
-
<div id="sq_toolbarblog" class="col-
|
2 |
<nav class="navbar navbar-expand-sm" color-on-scroll="500">
|
3 |
-
<div class="
|
4 |
<div class="justify-content-start" id="navigation">
|
5 |
<ul class="nav navbar-nav mr-auto">
|
6 |
<?php
|
@@ -26,14 +26,14 @@
|
|
26 |
if (current_user_can($item['capability'])) {
|
27 |
if ($menuid <> 'sq_dashboard') {
|
28 |
?>
|
29 |
-
<li class="nav-item"
|
30 |
-
<svg class="separator" height="40" width="
|
31 |
<?php if(is_rtl()){ ?>
|
32 |
-
<line stroke="lightgray" stroke-width="1" x1="0" x2="
|
33 |
-
<line stroke="lightgray" stroke-width="1" x1="0" x2="
|
34 |
<?php }else{ ?>
|
35 |
-
<line stroke="lightgray" stroke-width="1" x1="0" x2="
|
36 |
-
<line stroke="lightgray" stroke-width="1" x1="0" x2="
|
37 |
<?php } ?>
|
38 |
</svg>
|
39 |
</li>
|
1 |
+
<div id="sq_toolbarblog" class="col-12 m-0 p-0">
|
2 |
<nav class="navbar navbar-expand-sm" color-on-scroll="500">
|
3 |
+
<div class="container-fluid px-0">
|
4 |
<div class="justify-content-start" id="navigation">
|
5 |
<ul class="nav navbar-nav mr-auto">
|
6 |
<?php
|
26 |
if (current_user_can($item['capability'])) {
|
27 |
if ($menuid <> 'sq_dashboard') {
|
28 |
?>
|
29 |
+
<li class="nav-item">
|
30 |
+
<svg class="separator" height="40" width="13" xmlns="http://www.w3.org/2000/svg">
|
31 |
<?php if(is_rtl()){ ?>
|
32 |
+
<line stroke="lightgray" stroke-width="1" x1="0" x2="13" y1="40" y2="20"></line>
|
33 |
+
<line stroke="lightgray" stroke-width="1" x1="0" x2="13" y1="0" y2="20"></line>
|
34 |
<?php }else{ ?>
|
35 |
+
<line stroke="lightgray" stroke-width="1" x1="0" x2="13" y1="0" y2="20"></line>
|
36 |
+
<line stroke="lightgray" stroke-width="1" x1="0" x2="13" y1="40" y2="20"></line>
|
37 |
<?php } ?>
|
38 |
</svg>
|
39 |
</li>
|
view/BulkSeo/Bulkseo.php
CHANGED
@@ -9,16 +9,16 @@
|
|
9 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
10 |
<?php
|
11 |
if (!current_user_can('sq_manage_snippet')) {
|
12 |
-
echo '<div class="col-
|
13 |
return;
|
14 |
}
|
15 |
?>
|
16 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'bulkseo'), 'sq_bulkseo'); ?>
|
17 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
18 |
-
<div class="flex-grow-1
|
19 |
<?php do_action('sq_form_notices'); ?>
|
20 |
|
21 |
-
<div class="card col-
|
22 |
<div class="card-body p-2 bg-title rounded-top">
|
23 |
<div class="sq_help_question float-right">
|
24 |
<a href="https://howto.squirrly.co/kb/bulk-seo/" target="_blank"><i class="fa fa-question-circle"></i></a>
|
@@ -29,14 +29,14 @@
|
|
29 |
<h3 class="card-title"><?php echo esc_html__("Bulk SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
30 |
<div class="card-title-description m-2"><?php echo esc_html__("Simplify the SEO process for all your posts types and optimize them in just minutes.", _SQ_PLUGIN_NAME_); ?></div>
|
31 |
</div>
|
32 |
-
<div id="sq_seosettings_bulkseo" class="card col-
|
33 |
<?php do_action('sq_subscription_notices'); ?>
|
34 |
|
35 |
-
<div class="row px-
|
36 |
-
<form id="sq_bulkseo_form" method="get" class="form-inline col-
|
37 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
38 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
39 |
-
<div class="sq_filter_label col-
|
40 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
41 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
42 |
foreach ($view->labels as $category => $label) {
|
@@ -50,11 +50,11 @@
|
|
50 |
} ?>
|
51 |
</div>
|
52 |
|
53 |
-
<div class="col-
|
54 |
|
55 |
-
<div class="col-
|
56 |
|
57 |
-
<select name="stype" class="
|
58 |
<?php
|
59 |
foreach ($patterns as $pattern => $type) {
|
60 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
@@ -91,13 +91,11 @@
|
|
91 |
?>
|
92 |
</select>
|
93 |
|
94 |
-
</div>
|
95 |
-
<div class="col-sm-2 py-2 pl-0 pr-1 mx-0">
|
96 |
<?php if (!empty($view->pages)) {
|
97 |
foreach ($view->pages as $index => $post) {
|
98 |
if (isset($post->ID)) {
|
99 |
?>
|
100 |
-
<select name="sstatus" class="
|
101 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : 'all') ?> value=""><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
102 |
<?php
|
103 |
|
@@ -115,9 +113,9 @@
|
|
115 |
} ?>
|
116 |
|
117 |
</div>
|
118 |
-
<div class="col-
|
119 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
120 |
-
<input type="search" class="d-inline-block align-middle col-
|
121 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
122 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
123 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post'))) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
@@ -134,8 +132,8 @@
|
|
134 |
$post_type = SQ_Classes_Helpers_Tools::getValue('stype', 'post');
|
135 |
$categories = SQ_Classes_ObjController::getClass('SQ_Models_BulkSeo')->getCategories();
|
136 |
?>
|
137 |
-
<div class="sq_overflow col-
|
138 |
-
<div class="card col-
|
139 |
|
140 |
<table class="table table-striped table-hover table-bordered">
|
141 |
<thead>
|
@@ -207,7 +205,7 @@
|
|
207 |
</div>
|
208 |
|
209 |
<div class="sq_col_side sticky">
|
210 |
-
<div class="card col-
|
211 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
212 |
<div class="sq_assistant">
|
213 |
<ul class="p-0 mx-5">
|
9 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
10 |
<?php
|
11 |
if (!current_user_can('sq_manage_snippet')) {
|
12 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
13 |
return;
|
14 |
}
|
15 |
?>
|
16 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'bulkseo'), 'sq_bulkseo'); ?>
|
17 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
18 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
19 |
<?php do_action('sq_form_notices'); ?>
|
20 |
|
21 |
+
<div class="card col-12 p-0">
|
22 |
<div class="card-body p-2 bg-title rounded-top">
|
23 |
<div class="sq_help_question float-right">
|
24 |
<a href="https://howto.squirrly.co/kb/bulk-seo/" target="_blank"><i class="fa fa-question-circle"></i></a>
|
29 |
<h3 class="card-title"><?php echo esc_html__("Bulk SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
30 |
<div class="card-title-description m-2"><?php echo esc_html__("Simplify the SEO process for all your posts types and optimize them in just minutes.", _SQ_PLUGIN_NAME_); ?></div>
|
31 |
</div>
|
32 |
+
<div id="sq_seosettings_bulkseo" class="card col-12 p-0 tab-panel border-0">
|
33 |
<?php do_action('sq_subscription_notices'); ?>
|
34 |
|
35 |
+
<div class="row px-2">
|
36 |
+
<form id="sq_bulkseo_form" method="get" class="form-inline col-12 ignore">
|
37 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
38 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
39 |
+
<div class="sq_filter_label col-12 row p-2">
|
40 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
41 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
42 |
foreach ($view->labels as $category => $label) {
|
50 |
} ?>
|
51 |
</div>
|
52 |
|
53 |
+
<div class="col-12 row px-0 mx-0">
|
54 |
|
55 |
+
<div class="col-5 py-2 pl-0 pr-1 mx-0">
|
56 |
|
57 |
+
<select name="stype" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_bulkseo_form').submit();">
|
58 |
<?php
|
59 |
foreach ($patterns as $pattern => $type) {
|
60 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
91 |
?>
|
92 |
</select>
|
93 |
|
|
|
|
|
94 |
<?php if (!empty($view->pages)) {
|
95 |
foreach ($view->pages as $index => $post) {
|
96 |
if (isset($post->ID)) {
|
97 |
?>
|
98 |
+
<select name="sstatus" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_bulkseo_form').submit();">
|
99 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : 'all') ?> value=""><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
100 |
<?php
|
101 |
|
113 |
} ?>
|
114 |
|
115 |
</div>
|
116 |
+
<div class="col-7 p-0 py-2 mx-0">
|
117 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
118 |
+
<input type="search" class="d-inline-block align-middle col-6 p-1 mr-1" id="post-search-input" autofocus name="skeyword" value="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword(SQ_Classes_Helpers_Tools::getValue('skeyword')) ?>"/>
|
119 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
120 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
121 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post'))) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
132 |
$post_type = SQ_Classes_Helpers_Tools::getValue('stype', 'post');
|
133 |
$categories = SQ_Classes_ObjController::getClass('SQ_Models_BulkSeo')->getCategories();
|
134 |
?>
|
135 |
+
<div class="sq_overflow col-12 m-0 p-2 flexcroll">
|
136 |
+
<div class="card col-12 my-1 p-0 border-0 " style="display: inline-block;">
|
137 |
|
138 |
<table class="table table-striped table-hover table-bordered">
|
139 |
<thead>
|
205 |
</div>
|
206 |
|
207 |
<div class="sq_col_side sticky">
|
208 |
+
<div class="card col-12 p-0">
|
209 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
210 |
<div class="sq_assistant">
|
211 |
<ul class="p-0 mx-5">
|
view/BulkSeo/BulkseoRow.php
CHANGED
@@ -16,7 +16,7 @@ if (isset($view->post->ID)) {
|
|
16 |
|
17 |
if ($view->post instanceof SQ_Models_Domain_Post) { ?>
|
18 |
<td style="max-width: 380px;">
|
19 |
-
<div class="col-
|
20 |
<?php if ($edit_link) { ?>
|
21 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
22 |
<i class="fa fa-edit" style="font-size: 11px"></i>
|
16 |
|
17 |
if ($view->post instanceof SQ_Models_Domain_Post) { ?>
|
18 |
<td style="max-width: 380px;">
|
19 |
+
<div class="col-12 px-0 mx-0 font-weight-bold"><?php echo esc_html($view->post->sq->title) ?><?php echo(($view->post->post_status <> 'publish' && $view->post->post_status <> 'inherit' && $view->post->post_status <> '') ? ' <spam style="font-weight: normal">(' . esc_html($view->post->post_status) . ')</spam>' : '') ?>
|
20 |
<?php if ($edit_link) { ?>
|
21 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
22 |
<i class="fa fa-edit" style="font-size: 11px"></i>
|
view/Connect/GoogleAnalytics.php
CHANGED
@@ -3,7 +3,7 @@ $connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('conne
|
|
3 |
?>
|
4 |
<div class="ga-connect-place">
|
5 |
<?php if ($connect->google_analytics) { ?>
|
6 |
-
<div class="card col-
|
7 |
<div class="card-heading my-2">
|
8 |
<h3 class="card-title text-white">
|
9 |
<div class="google-icon fa fa-google mx-2"></div><?php echo esc_html__("Google Analytics", _SQ_PLUGIN_NAME_); ?>
|
@@ -11,8 +11,8 @@ $connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('conne
|
|
11 |
</div>
|
12 |
<div class="card-body bg-light py-3">
|
13 |
<div class="row">
|
14 |
-
<h6 class="col-
|
15 |
-
<div class="col-
|
16 |
<form method="post" class="p-0 m-0" onsubmit="if(!confirm('Are you sure?')){return false;}">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_ga_revoke', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_ga_revoke"/>
|
@@ -25,8 +25,8 @@ $connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('conne
|
|
25 |
</div>
|
26 |
</div>
|
27 |
<?php } else { ?>
|
28 |
-
<div class="col-
|
29 |
-
<div class="col-
|
30 |
<h4 class="text-white py-3"><?php echo esc_html__("Connect this site to Google Analytics", _SQ_PLUGIN_NAME_); ?></h4>
|
31 |
<p><?php echo esc_html__("Connect Google Analytics and get traffic insights for your website on each Audit.", _SQ_PLUGIN_NAME_) ?></p>
|
32 |
<p><?php echo sprintf(esc_html__("Need Help Connecting Google Analytics? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/how-do-i-connect-google-analytics-both-tracking-code-and-the-api-connection/" target="_blank" style="color: lightyellow; text-decoration: underline">','</a>') ?></p>
|
3 |
?>
|
4 |
<div class="ga-connect-place">
|
5 |
<?php if ($connect->google_analytics) { ?>
|
6 |
+
<div class="card col-12 bg-google px-0 py-0 mb-2 mx-0">
|
7 |
<div class="card-heading my-2">
|
8 |
<h3 class="card-title text-white">
|
9 |
<div class="google-icon fa fa-google mx-2"></div><?php echo esc_html__("Google Analytics", _SQ_PLUGIN_NAME_); ?>
|
11 |
</div>
|
12 |
<div class="card-body bg-light py-3">
|
13 |
<div class="row">
|
14 |
+
<h6 class="col-7 py-3 m-0 text-black-50"><?php echo esc_html__("You are connected to Google Analytics", _SQ_PLUGIN_NAME_) ?></h6>
|
15 |
+
<div class="col-5">
|
16 |
<form method="post" class="p-0 m-0" onsubmit="if(!confirm('Are you sure?')){return false;}">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_ga_revoke', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_ga_revoke"/>
|
25 |
</div>
|
26 |
</div>
|
27 |
<?php } else { ?>
|
28 |
+
<div class="col-12 bg-google py-2 mb-2">
|
29 |
+
<div class="col-12">
|
30 |
<h4 class="text-white py-3"><?php echo esc_html__("Connect this site to Google Analytics", _SQ_PLUGIN_NAME_); ?></h4>
|
31 |
<p><?php echo esc_html__("Connect Google Analytics and get traffic insights for your website on each Audit.", _SQ_PLUGIN_NAME_) ?></p>
|
32 |
<p><?php echo sprintf(esc_html__("Need Help Connecting Google Analytics? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/how-do-i-connect-google-analytics-both-tracking-code-and-the-api-connection/" target="_blank" style="color: lightyellow; text-decoration: underline">','</a>') ?></p>
|
view/Connect/GoogleSearchConsole.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php $connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect'))); ?>
|
2 |
<div class="ga-connect-place">
|
3 |
<?php if ($connect->google_search_console) { ?>
|
4 |
-
<div class="card col-
|
5 |
<div class="card-heading my-2">
|
6 |
<h3 class="card-title text-white">
|
7 |
<div class="google-icon fa fa-google mx-2"></div><?php echo esc_html__("Google Search Console", _SQ_PLUGIN_NAME_); ?>
|
@@ -9,8 +9,8 @@
|
|
9 |
</div>
|
10 |
<div class="card-body bg-light py-3">
|
11 |
<div class="row">
|
12 |
-
<h6 class="col-
|
13 |
-
<div class="col-
|
14 |
<form method="post" class="p-0 m-0" onsubmit="if(!confirm('Are you sure?')){return false;}">
|
15 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_gsc_revoke', 'sq_nonce'); ?>
|
16 |
<input type="hidden" name="action" value="sq_seosettings_gsc_revoke"/>
|
@@ -24,8 +24,8 @@
|
|
24 |
</div>
|
25 |
</div>
|
26 |
<?php } else { ?>
|
27 |
-
<div class="col-
|
28 |
-
<div class="col-
|
29 |
<h4 class="text-white py-3"><?php echo esc_html__("Connect this site to Google Search Console", _SQ_PLUGIN_NAME_); ?></h4>
|
30 |
<p><?php echo esc_html__("Connect Google Search Console and get traffic insights for your website on each Audit.", _SQ_PLUGIN_NAME_) ?></p>
|
31 |
<p><?php echo sprintf(esc_html__("Need Help Connecting Google Search Console? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/need-help-connecting-google-search-console-both-tracking-code-and-api-connection/" target="_blank" style="color: lightyellow; text-decoration: underline">','</a>') ?></p>
|
1 |
<?php $connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect'))); ?>
|
2 |
<div class="ga-connect-place">
|
3 |
<?php if ($connect->google_search_console) { ?>
|
4 |
+
<div class="card col-12 bg-googlesc px-0 py-0 mb-2 mx-0">
|
5 |
<div class="card-heading my-2">
|
6 |
<h3 class="card-title text-white">
|
7 |
<div class="google-icon fa fa-google mx-2"></div><?php echo esc_html__("Google Search Console", _SQ_PLUGIN_NAME_); ?>
|
9 |
</div>
|
10 |
<div class="card-body bg-light py-3">
|
11 |
<div class="row">
|
12 |
+
<h6 class="col-7 py-3 m-0 text-black-50"><?php echo esc_html__("You are connected to Google Search Console", _SQ_PLUGIN_NAME_) ?></h6>
|
13 |
+
<div class="col-5">
|
14 |
<form method="post" class="p-0 m-0" onsubmit="if(!confirm('Are you sure?')){return false;}">
|
15 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_gsc_revoke', 'sq_nonce'); ?>
|
16 |
<input type="hidden" name="action" value="sq_seosettings_gsc_revoke"/>
|
24 |
</div>
|
25 |
</div>
|
26 |
<?php } else { ?>
|
27 |
+
<div class="col-12 bg-googlesc py-2 mb-2">
|
28 |
+
<div class="col-12">
|
29 |
<h4 class="text-white py-3"><?php echo esc_html__("Connect this site to Google Search Console", _SQ_PLUGIN_NAME_); ?></h4>
|
30 |
<p><?php echo esc_html__("Connect Google Search Console and get traffic insights for your website on each Audit.", _SQ_PLUGIN_NAME_) ?></p>
|
31 |
<p><?php echo sprintf(esc_html__("Need Help Connecting Google Search Console? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/need-help-connecting-google-search-console-both-tracking-code-and-api-connection/" target="_blank" style="color: lightyellow; text-decoration: underline">','</a>') ?></p>
|
view/Errors/Error.php
CHANGED
@@ -9,15 +9,15 @@ SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('n
|
|
9 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
10 |
<?php do_action('sq_notices'); ?>
|
11 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
|
15 |
-
<div class="col-
|
16 |
-
<div class="col-
|
17 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
18 |
</div>
|
19 |
-
<div id="sq_error" class="card col-
|
20 |
-
<div class="col-
|
21 |
</div>
|
22 |
</div>
|
23 |
|
9 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
10 |
<?php do_action('sq_notices'); ?>
|
11 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
|
15 |
+
<div class="col-12 p-0">
|
16 |
+
<div class="col-12 px-2 py-3 text-center" >
|
17 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
18 |
</div>
|
19 |
+
<div id="sq_error" class="card col-12 p-0 tab-panel border-0">
|
20 |
+
<div class="col-12 alert alert-success text-center m-0 p-3"><i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_),'<a href="javascript:location.reload();" >','</a>')?></div>
|
21 |
</div>
|
22 |
</div>
|
23 |
|
view/Errors/Maintenance.php
CHANGED
@@ -9,15 +9,15 @@ SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('n
|
|
9 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
10 |
<?php do_action('sq_notices'); ?>
|
11 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
|
15 |
-
<div class="col-
|
16 |
-
<div class="col-
|
17 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/maintenance.jpg' ?>" style="width: 500px">
|
18 |
</div>
|
19 |
-
<div id="sq_error" class="card col-
|
20 |
-
<div class="col-
|
21 |
</div>
|
22 |
</div>
|
23 |
|
9 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
10 |
<?php do_action('sq_notices'); ?>
|
11 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
|
15 |
+
<div class="col-12 p-0">
|
16 |
+
<div class="col-12 px-2 py-3 text-center" >
|
17 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/maintenance.jpg' ?>" style="width: 500px">
|
18 |
</div>
|
19 |
+
<div id="sq_error" class="card col-12 p-0 tab-panel border-0">
|
20 |
+
<div class="col-12 alert alert-success text-center m-0 p-3"><i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("Unfortunately Squirrly Cloud is down for a bit of maintenance right now. But we'll be back in a minute. %srefresh the page%s.", _SQ_PLUGIN_NAME_),'<a href="javascript:location.reload();" >','</a>')?></div>
|
21 |
</div>
|
22 |
</div>
|
23 |
|
view/FocusPages/Addpage.php
CHANGED
@@ -5,16 +5,16 @@
|
|
5 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
-
echo '<div class="col-
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'boost'), 'sq_focuspages'); ?>
|
13 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
14 |
-
<div class="flex-grow-1
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-2 bg-title rounded-top">
|
19 |
<div class="sq_icons_content p-3 py-4">
|
20 |
<div class="sq_icons sq_addpage_icon m-2"></div>
|
@@ -22,12 +22,12 @@
|
|
22 |
<h3 class="card-title"><?php echo esc_html__("Add a page in Focus Pages", _SQ_PLUGIN_NAME_); ?>:</h3>
|
23 |
<div class="card-title-description m-2"><?php echo esc_html__("Focus Pages bring you clear methods to take your pages from never found to always found on Google. Rank your pages by influencing the right ranking factors. Turn everything that you see here to Green and you will win.", _SQ_PLUGIN_NAME_); ?></div>
|
24 |
</div>
|
25 |
-
<div id="sq_focuspages" class="card col-
|
26 |
-
<div class="row px-
|
27 |
-
<form id="sq_auditpage_form" method="get" class="form-inline col-
|
28 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
29 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
30 |
-
<div class="sq_filter_label col-
|
31 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
32 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
33 |
foreach ($view->labels as $category => $label) {
|
@@ -41,11 +41,11 @@
|
|
41 |
} ?>
|
42 |
</div>
|
43 |
|
44 |
-
<div class="col-
|
45 |
|
46 |
-
<div class="col-
|
47 |
|
48 |
-
<select name="stype" class="
|
49 |
<?php
|
50 |
foreach ($patterns as $pattern => $type) {
|
51 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
@@ -82,13 +82,12 @@
|
|
82 |
?>
|
83 |
</select>
|
84 |
|
85 |
-
|
86 |
-
<div class="col-sm-2 py-2 pl-0 pr-1 mx-0">
|
87 |
<?php if (!empty($view->pages)) {
|
88 |
foreach ($view->pages as $index => $post) {
|
89 |
if (isset($post->ID)) {
|
90 |
?>
|
91 |
-
<select name="sstatus" class="
|
92 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : 'all') ?> value=""><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
93 |
<?php
|
94 |
|
@@ -106,9 +105,9 @@
|
|
106 |
} ?>
|
107 |
|
108 |
</div>
|
109 |
-
<div class="col-
|
110 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
111 |
-
<input type="search" class="d-inline-block align-middle col-
|
112 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
113 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
114 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'addpage', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post'))) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
@@ -123,8 +122,8 @@
|
|
123 |
|
124 |
<?php if (!empty($view->pages)) { ?>
|
125 |
<div class="card-body p-0 position-relative">
|
126 |
-
<div class="col-
|
127 |
-
<div class="card col-
|
128 |
|
129 |
<table class="table table-striped table-hover">
|
130 |
<thead>
|
@@ -153,7 +152,7 @@
|
|
153 |
?>
|
154 |
<tr>
|
155 |
<td>
|
156 |
-
<div class="col-
|
157 |
<div class="small " style="font-size: 11px"><?php echo '<a href="' . $post->url . '" class="text-link" rel="permalink" target="_blank">' . urldecode($post->url) . '</a>' ?></div>
|
158 |
|
159 |
</td>
|
@@ -209,7 +208,7 @@
|
|
209 |
</div>
|
210 |
</div>
|
211 |
<div class="sq_col sq_col_side ">
|
212 |
-
<div class="card col-
|
213 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
214 |
<?php //echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
215 |
</div>
|
5 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'boost'), 'sq_focuspages'); ?>
|
13 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
14 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
<div class="card-body p-2 bg-title rounded-top">
|
19 |
<div class="sq_icons_content p-3 py-4">
|
20 |
<div class="sq_icons sq_addpage_icon m-2"></div>
|
22 |
<h3 class="card-title"><?php echo esc_html__("Add a page in Focus Pages", _SQ_PLUGIN_NAME_); ?>:</h3>
|
23 |
<div class="card-title-description m-2"><?php echo esc_html__("Focus Pages bring you clear methods to take your pages from never found to always found on Google. Rank your pages by influencing the right ranking factors. Turn everything that you see here to Green and you will win.", _SQ_PLUGIN_NAME_); ?></div>
|
24 |
</div>
|
25 |
+
<div id="sq_focuspages" class="card col-12 p-0 tab-panel border-0">
|
26 |
+
<div class="row px-2">
|
27 |
+
<form id="sq_auditpage_form" method="get" class="form-inline col-12 ignore">
|
28 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
29 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
30 |
+
<div class="sq_filter_label col-12 row p-2">
|
31 |
<?php if (isset($view->labels) && !empty($view->labels)) {
|
32 |
$keyword_labels = SQ_Classes_Helpers_Tools::getValue('slabel', array());
|
33 |
foreach ($view->labels as $category => $label) {
|
41 |
} ?>
|
42 |
</div>
|
43 |
|
44 |
+
<div class="col-12 row px-0 mx-0">
|
45 |
|
46 |
+
<div class="col-5 py-2 pl-0 pr-1 mx-0">
|
47 |
|
48 |
+
<select name="stype" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_auditpage_form').submit();">
|
49 |
<?php
|
50 |
foreach ($patterns as $pattern => $type) {
|
51 |
if (in_array($pattern, array('custom', 'tax-category', 'search', 'archive', '404'))) continue;
|
82 |
?>
|
83 |
</select>
|
84 |
|
85 |
+
|
|
|
86 |
<?php if (!empty($view->pages)) {
|
87 |
foreach ($view->pages as $index => $post) {
|
88 |
if (isset($post->ID)) {
|
89 |
?>
|
90 |
+
<select name="sstatus" class="d-inline-block m-0 p-1" onchange="jQuery('form#sq_auditpage_form').submit();">
|
91 |
<option <?php echo((!SQ_Classes_Helpers_Tools::getValue('sstatus', false)) ? 'selected="selected"' : 'all') ?> value=""><?php echo esc_html__("Any status", _SQ_PLUGIN_NAME_); ?></option>
|
92 |
<?php
|
93 |
|
105 |
} ?>
|
106 |
|
107 |
</div>
|
108 |
+
<div class="col-7 p-0 py-2 mx-0">
|
109 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
110 |
+
<input type="search" class="d-inline-block align-middle col-7 p-1 mr-1" id="post-search-input" autofocus name="skeyword" value="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword(SQ_Classes_Helpers_Tools::getValue('skeyword')) ?>"/>
|
111 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search", _SQ_PLUGIN_NAME_) ?>"/>
|
112 |
<?php if ((SQ_Classes_Helpers_Tools::getIsset('skeyword') && SQ_Classes_Helpers_Tools::getValue('skeyword') <> '#all') || SQ_Classes_Helpers_Tools::getIsset('slabel') || SQ_Classes_Helpers_Tools::getIsset('sid') || SQ_Classes_Helpers_Tools::getIsset('sstatus')) { ?>
|
113 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'addpage', array('stype=' . SQ_Classes_Helpers_Tools::getValue('stype', 'post'))) ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
122 |
|
123 |
<?php if (!empty($view->pages)) { ?>
|
124 |
<div class="card-body p-0 position-relative">
|
125 |
+
<div class="col-12 m-0 p-2">
|
126 |
+
<div class="card col-12 my-1 p-0 border-0 " style="display: inline-block;">
|
127 |
|
128 |
<table class="table table-striped table-hover">
|
129 |
<thead>
|
152 |
?>
|
153 |
<tr>
|
154 |
<td>
|
155 |
+
<div class="col-12 px-0 mx-0 font-weight-bold" style="font-size: 15px"><?php echo esc_html($post->sq->title) ?></div>
|
156 |
<div class="small " style="font-size: 11px"><?php echo '<a href="' . $post->url . '" class="text-link" rel="permalink" target="_blank">' . urldecode($post->url) . '</a>' ?></div>
|
157 |
|
158 |
</td>
|
208 |
</div>
|
209 |
</div>
|
210 |
<div class="sq_col sq_col_side ">
|
211 |
+
<div class="card col-12 p-0">
|
212 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
213 |
<?php //echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
214 |
</div>
|
view/FocusPages/Bestpractice.php
CHANGED
@@ -4,10 +4,10 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'jsonld'), 'sq_focuspages'); ?>
|
6 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_boostpages_icon m-2"></div>
|
@@ -15,10 +15,10 @@
|
|
15 |
<h3 class="card-title"><?php echo esc_html__("Best Practices", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"></div>
|
17 |
</div>
|
18 |
-
<div id="sq_focuspages" class="card col-
|
19 |
<div class="card-body p-0">
|
20 |
-
<div class="col-
|
21 |
-
<div class="card col-
|
22 |
|
23 |
</div>
|
24 |
|
@@ -28,7 +28,7 @@
|
|
28 |
</div>
|
29 |
</div>
|
30 |
<div class="sq_col sq_col_side ">
|
31 |
-
<div class="card col-
|
32 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
33 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
34 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'jsonld'), 'sq_focuspages'); ?>
|
6 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_boostpages_icon m-2"></div>
|
15 |
<h3 class="card-title"><?php echo esc_html__("Best Practices", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"></div>
|
17 |
</div>
|
18 |
+
<div id="sq_focuspages" class="card col-12 p-0 tab-panel border-0">
|
19 |
<div class="card-body p-0">
|
20 |
+
<div class="col-12 m-0 p-0">
|
21 |
+
<div class="card col-12 my-4 p-0 border-0 ">
|
22 |
|
23 |
</div>
|
24 |
|
28 |
</div>
|
29 |
</div>
|
30 |
<div class="sq_col sq_col_side ">
|
31 |
+
<div class="card col-12 p-0">
|
32 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
33 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
34 |
</div>
|
view/FocusPages/FocusPageRow.php
CHANGED
@@ -61,7 +61,7 @@ if ($view->focuspage->id <> '') {
|
|
61 |
<?php } ?>
|
62 |
|
63 |
<?php if ($view->post) { ?>
|
64 |
-
<div class="sq_focuspages_title col-
|
65 |
<?php echo esc_html($view->post->sq->title) ?> <?php echo(($view->post->post_status <> 'publish' && $view->post->post_status <> 'inherit' && $view->post->post_status <> '') ? ' <spam style="font-weight: normal">(' . esc_html($view->post->post_status) . ')</spam>' : '') ?>
|
66 |
<?php if ($edit_link) { ?>
|
67 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
61 |
<?php } ?>
|
62 |
|
63 |
<?php if ($view->post) { ?>
|
64 |
+
<div class="sq_focuspages_title col-12 px-0 mx-0 font-weight-bold text-left">
|
65 |
<?php echo esc_html($view->post->sq->title) ?> <?php echo(($view->post->post_status <> 'publish' && $view->post->post_status <> 'inherit' && $view->post->post_status <> '') ? ' <spam style="font-weight: normal">(' . esc_html($view->post->post_status) . ')</spam>' : '') ?>
|
66 |
<?php if ($edit_link) { ?>
|
67 |
<a href="<?php echo esc_url($edit_link) ?>" target="_blank">
|
view/FocusPages/FocusPageStats.php
CHANGED
@@ -104,7 +104,7 @@
|
|
104 |
?>
|
105 |
<td style="width: 100%; padding: 0; margin: 0;">
|
106 |
<div class="sq_stats row p-2 m-0 ">
|
107 |
-
<div class="card col
|
108 |
<div class="card-content overflow-hidden m-0">
|
109 |
<div class="media align-items-stretch">
|
110 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -114,7 +114,7 @@
|
|
114 |
<h5><?php echo esc_html__("Chances of Ranking", _SQ_PLUGIN_NAME_) ?></h5>
|
115 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days evolution for this Focus Page", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
116 |
<div class="media-right py-3 media-middle ">
|
117 |
-
<div class="col-
|
118 |
<div id="sq_chart_score" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
119 |
<script>
|
120 |
if (typeof google !== 'undefined') {
|
@@ -130,7 +130,7 @@
|
|
130 |
</div>
|
131 |
</div>
|
132 |
</div>
|
133 |
-
<div class="card col
|
134 |
<div class="card-content overflow-hidden m-0">
|
135 |
<div class="media align-items-stretch">
|
136 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -143,12 +143,12 @@
|
|
143 |
<div class="media-right py-3 media-middle ">
|
144 |
<?php if (!empty($progress)) {
|
145 |
foreach ($progress as $value) {
|
146 |
-
echo '<h6 class="col-
|
147 |
}
|
148 |
?>
|
149 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the results I get for my Focus Page with Squirrly SEO plugin for #WordPress. @SquirrlyHQ #SEO') ?>">Share Your Success</a><?php
|
150 |
} else {
|
151 |
-
echo '<h4 class="col-
|
152 |
} ?>
|
153 |
</div>
|
154 |
|
@@ -160,7 +160,7 @@
|
|
160 |
</div>
|
161 |
<?php if (!empty($serp) && count($serp) > 2 && $focus_keyword <> '' && !empty($views) && count($views) > 2) { ?>
|
162 |
<div class="sq_stats row px-2 py-0 m-0 ">
|
163 |
-
<div class="card col
|
164 |
<div class="card-content overflow-hidden m-0">
|
165 |
<div class="media align-items-stretch">
|
166 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -170,7 +170,7 @@
|
|
170 |
<h5><?php echo esc_html__("Keyword Ranking", _SQ_PLUGIN_NAME_) ?></h5>
|
171 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days ranking for %s", _SQ_PLUGIN_NAME_), $days_back, '<strong>' . $focus_keyword . '</strong>') ?></span>
|
172 |
<div class="media-right py-3 media-middle ">
|
173 |
-
<div class="col-
|
174 |
<div id="sq_chart_serp" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
175 |
<script>
|
176 |
if (typeof google !== 'undefined') {
|
@@ -186,7 +186,7 @@
|
|
186 |
</div>
|
187 |
</div>
|
188 |
</div>
|
189 |
-
<div class="card col
|
190 |
<div class="card-content overflow-hidden m-0">
|
191 |
<div class="media align-items-stretch">
|
192 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
@@ -196,7 +196,7 @@
|
|
196 |
<h5><?php echo esc_html__("Page Traffic", _SQ_PLUGIN_NAME_) ?></h5>
|
197 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days page views", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
198 |
<div class="media-right py-3 media-middle ">
|
199 |
-
<div class="col-
|
200 |
<div id="sq_chart_views" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
201 |
<script>
|
202 |
if (typeof google !== 'undefined') {
|
104 |
?>
|
105 |
<td style="width: 100%; padding: 0; margin: 0;">
|
106 |
<div class="sq_stats row p-2 m-0 ">
|
107 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
108 |
<div class="card-content overflow-hidden m-0">
|
109 |
<div class="media align-items-stretch">
|
110 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
114 |
<h5><?php echo esc_html__("Chances of Ranking", _SQ_PLUGIN_NAME_) ?></h5>
|
115 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days evolution for this Focus Page", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
116 |
<div class="media-right py-3 media-middle ">
|
117 |
+
<div class="col-12 px-0">
|
118 |
<div id="sq_chart_score" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
119 |
<script>
|
120 |
if (typeof google !== 'undefined') {
|
130 |
</div>
|
131 |
</div>
|
132 |
</div>
|
133 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
134 |
<div class="card-content overflow-hidden m-0">
|
135 |
<div class="media align-items-stretch">
|
136 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
143 |
<div class="media-right py-3 media-middle ">
|
144 |
<?php if (!empty($progress)) {
|
145 |
foreach ($progress as $value) {
|
146 |
+
echo '<h6 class="col-12 px-0 text-success" style="line-height: 25px;font-size: 14px;"><i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i> ' . $value . '</h6>';
|
147 |
}
|
148 |
?>
|
149 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the results I get for my Focus Page with Squirrly SEO plugin for #WordPress. @SquirrlyHQ #SEO') ?>">Share Your Success</a><?php
|
150 |
} else {
|
151 |
+
echo '<h4 class="col-12 px-0 text-info">' . esc_html__("No progress found yet", _SQ_PLUGIN_NAME_) . '</h4>';
|
152 |
} ?>
|
153 |
</div>
|
154 |
|
160 |
</div>
|
161 |
<?php if (!empty($serp) && count($serp) > 2 && $focus_keyword <> '' && !empty($views) && count($views) > 2) { ?>
|
162 |
<div class="sq_stats row px-2 py-0 m-0 ">
|
163 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
164 |
<div class="card-content overflow-hidden m-0">
|
165 |
<div class="media align-items-stretch">
|
166 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
170 |
<h5><?php echo esc_html__("Keyword Ranking", _SQ_PLUGIN_NAME_) ?></h5>
|
171 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days ranking for %s", _SQ_PLUGIN_NAME_), $days_back, '<strong>' . $focus_keyword . '</strong>') ?></span>
|
172 |
<div class="media-right py-3 media-middle ">
|
173 |
+
<div class="col-12 px-0">
|
174 |
<div id="sq_chart_serp" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
175 |
<script>
|
176 |
if (typeof google !== 'undefined') {
|
186 |
</div>
|
187 |
</div>
|
188 |
</div>
|
189 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
190 |
<div class="card-content overflow-hidden m-0">
|
191 |
<div class="media align-items-stretch">
|
192 |
<div class="sq_stats_icons_content p-3 py-4 media-middle">
|
196 |
<h5><?php echo esc_html__("Page Traffic", _SQ_PLUGIN_NAME_) ?></h5>
|
197 |
<span class="small"><?php echo sprintf(esc_html__("the latest %s days page views", _SQ_PLUGIN_NAME_), $days_back) ?></span>
|
198 |
<div class="media-right py-3 media-middle ">
|
199 |
+
<div class="col-12 px-0">
|
200 |
<div id="sq_chart_views" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
201 |
<script>
|
202 |
if (typeof google !== 'undefined') {
|
view/FocusPages/FocusPages.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
if (!empty($view->focuspages)) { ?>
|
3 |
<?php if (SQ_Classes_Helpers_Tools::getValue('slabel', false) || SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
4 |
-
<div class="form-group text-right col-
|
5 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
6 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'pagelist') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
7 |
</div>
|
@@ -12,10 +12,10 @@ if (!empty($view->focuspages)) { ?>
|
|
12 |
|
13 |
?>
|
14 |
<div class="row p-3">
|
15 |
-
<form method="get" class="form-inline col-
|
16 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
17 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
18 |
-
<div class="col-
|
19 |
<h3 class="card-title text-dark p-2" style="line-height: 30px; font-size: 22px;"><?php echo esc_html__("Current Ranking Drawbacks", _SQ_PLUGIN_NAME_); ?>:</h3>
|
20 |
</div>
|
21 |
|
@@ -45,8 +45,8 @@ if (!empty($view->focuspages)) { ?>
|
|
45 |
<i class="fa fa-arrow-circle-right"></i>
|
46 |
</div>
|
47 |
<?php } ?>
|
48 |
-
<div class="<?php echo(!SQ_Classes_Helpers_Tools::getValue('sid', false) ? 'sq_overflow' : '') ?> col-
|
49 |
-
<div class="card col-
|
50 |
<table class="table table-striped table-hover <?php echo(SQ_Classes_Helpers_Tools::getValue('sid', false) ? 'detailed' : '') ?>">
|
51 |
<thead>
|
52 |
<tr>
|
@@ -73,11 +73,14 @@ if (!empty($view->focuspages)) { ?>
|
|
73 |
foreach ($view->focuspages as $index => $focuspage) {
|
74 |
$view->focuspage = $focuspage;
|
75 |
|
76 |
-
|
77 |
if (isset($view->focuspage->id) && $view->focuspage->id <> '') {
|
78 |
|
79 |
$view->post = $view->focuspage->getWppost();
|
80 |
if (!current_user_can('sq_manage_focuspages')) continue;
|
|
|
|
|
|
|
|
|
81 |
$class = ($index % 2 ? 'even' : 'odd');
|
82 |
|
83 |
?>
|
@@ -101,11 +104,11 @@ if (!empty($view->focuspages)) { ?>
|
|
101 |
<?php } elseif (!SQ_Classes_Error::isError()) { ?>
|
102 |
<div class="card-body">
|
103 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Focus Pages", _SQ_PLUGIN_NAME_); ?></h4>
|
104 |
-
<div class="col-
|
105 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'addpage') ?>" class="btn btn-lg btn-primary"><i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page as Focus Page to get started", _SQ_PLUGIN_NAME_); ?>
|
106 |
</a>
|
107 |
</div>
|
108 |
-
<div class="col-
|
109 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: Which Page Should I Choose?", _SQ_PLUGIN_NAME_); ?></h5>
|
110 |
<ul>
|
111 |
<li style="font-size: 15px;"><?php echo esc_html__("One of the most important pages in your website, you money-makers, the pages that bring you conversions.", _SQ_PLUGIN_NAME_); ?></li>
|
@@ -115,11 +118,11 @@ if (!empty($view->focuspages)) { ?>
|
|
115 |
</div>
|
116 |
<?php } else { ?>
|
117 |
<div class="card-body">
|
118 |
-
<div class="col-
|
119 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
120 |
</div>
|
121 |
-
<div class="col-
|
122 |
-
<div class="col-
|
123 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
124 |
</div>
|
125 |
</div>
|
1 |
<?php
|
2 |
if (!empty($view->focuspages)) { ?>
|
3 |
<?php if (SQ_Classes_Helpers_Tools::getValue('slabel', false) || SQ_Classes_Helpers_Tools::getValue('sid', false)) { ?>
|
4 |
+
<div class="form-group text-right col-12 p-0 m-0">
|
5 |
<div class="sq_serp_settings_button mx-2 my-0 p-0" style="margin-top:-70px !important">
|
6 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'pagelist') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
7 |
</div>
|
12 |
|
13 |
?>
|
14 |
<div class="row p-3">
|
15 |
+
<form method="get" class="form-inline col-12 ignore">
|
16 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
17 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
18 |
+
<div class="col-12 p-0">
|
19 |
<h3 class="card-title text-dark p-2" style="line-height: 30px; font-size: 22px;"><?php echo esc_html__("Current Ranking Drawbacks", _SQ_PLUGIN_NAME_); ?>:</h3>
|
20 |
</div>
|
21 |
|
45 |
<i class="fa fa-arrow-circle-right"></i>
|
46 |
</div>
|
47 |
<?php } ?>
|
48 |
+
<div class="<?php echo(!SQ_Classes_Helpers_Tools::getValue('sid', false) ? 'sq_overflow' : '') ?> col-12 m-0 my-2 px-2 py-0 flexcroll" <?php echo(!SQ_Classes_Helpers_Tools::getValue('sid', false) ? 'style="max-height: 590px;"' : '') ?>>
|
49 |
+
<div class="card col-12 my-0 p-0 border-0 " style="display: inline-block;">
|
50 |
<table class="table table-striped table-hover <?php echo(SQ_Classes_Helpers_Tools::getValue('sid', false) ? 'detailed' : '') ?>">
|
51 |
<thead>
|
52 |
<tr>
|
73 |
foreach ($view->focuspages as $index => $focuspage) {
|
74 |
$view->focuspage = $focuspage;
|
75 |
|
|
|
76 |
if (isset($view->focuspage->id) && $view->focuspage->id <> '') {
|
77 |
|
78 |
$view->post = $view->focuspage->getWppost();
|
79 |
if (!current_user_can('sq_manage_focuspages')) continue;
|
80 |
+
if (!empty($keyword_labels) && $view->focuspage->audit_error) {
|
81 |
+
continue;
|
82 |
+
}
|
83 |
+
|
84 |
$class = ($index % 2 ? 'even' : 'odd');
|
85 |
|
86 |
?>
|
104 |
<?php } elseif (!SQ_Classes_Error::isError()) { ?>
|
105 |
<div class="card-body">
|
106 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Focus Pages", _SQ_PLUGIN_NAME_); ?></h4>
|
107 |
+
<div class="col-12 m-2 text-center">
|
108 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'addpage') ?>" class="btn btn-lg btn-primary"><i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add a new page as Focus Page to get started", _SQ_PLUGIN_NAME_); ?>
|
109 |
</a>
|
110 |
</div>
|
111 |
+
<div class="col-12 mt-5 mx-2">
|
112 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: Which Page Should I Choose?", _SQ_PLUGIN_NAME_); ?></h5>
|
113 |
<ul>
|
114 |
<li style="font-size: 15px;"><?php echo esc_html__("One of the most important pages in your website, you money-makers, the pages that bring you conversions.", _SQ_PLUGIN_NAME_); ?></li>
|
118 |
</div>
|
119 |
<?php } else { ?>
|
120 |
<div class="card-body">
|
121 |
+
<div class="col-12 px-2 py-3 text-center">
|
122 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
123 |
</div>
|
124 |
+
<div class="col-12 m-2 text-center">
|
125 |
+
<div class="col-12 alert alert-success text-center m-0 p-3">
|
126 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
127 |
</div>
|
128 |
</div>
|
view/FocusPages/Pagelist.php
CHANGED
@@ -5,30 +5,30 @@
|
|
5 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
-
echo '<div class="col-
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'pagelist'), 'sq_focuspages'); ?>
|
13 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
14 |
-
<div class="flex-grow-1
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
-
<div class="col-
|
20 |
<div class="sq_icons_content p-3 py-4">
|
21 |
<div class="sq_icons sq_focuspages_icon m-2"></div>
|
22 |
</div>
|
23 |
<h3 class="card-title"><?php echo esc_html__("Focus Pages", _SQ_PLUGIN_NAME_); ?>:</h3>
|
24 |
<div class="card-title-description mx-2"><?php echo esc_html__("Focus Pages bring you clear methods to take your pages from never found to always found on Google. Rank your pages by influencing the right ranking factors. Turn everything that you see here to Green and you will win.", _SQ_PLUGIN_NAME_); ?></div>
|
25 |
</div>
|
26 |
-
<div class="col-
|
27 |
<i class="fa fa-refresh m-2 sq_focuspages_refresh" style="font-size: 20px !important; cursor: pointer;"></i>
|
28 |
|
29 |
</div>
|
30 |
</div>
|
31 |
-
<div id="sq_focuspages" class="card col-
|
32 |
<?php do_action('sq_subscription_notices'); ?>
|
33 |
|
34 |
<?php
|
@@ -55,7 +55,7 @@
|
|
55 |
</div>
|
56 |
|
57 |
<div class="card-body">
|
58 |
-
<div class="col-
|
59 |
<em><?php echo sprintf(esc_html__("%sNote:%s remember that it takes anywhere between %s1 minute to 5 minutes%s to generate the new audit for a focus page. There is a lot of processing involved.",_SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong>', '</strong>'); ?></em>
|
60 |
</div>
|
61 |
</div>
|
@@ -63,7 +63,7 @@
|
|
63 |
</div>
|
64 |
</div>
|
65 |
<div class="sq_col_side sticky">
|
66 |
-
<div class="card col-
|
67 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
68 |
<div class="sq_assistant sq_assistant_help">
|
69 |
<ul class="p-0 mx-5">
|
5 |
<div class="d-flex flex-row flex-nowrap my-0 bg-nav" style="clear: both !important;">
|
6 |
<?php
|
7 |
if (!current_user_can('sq_manage_focuspages')) {
|
8 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
9 |
return;
|
10 |
}
|
11 |
?>
|
12 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'pagelist'), 'sq_focuspages'); ?>
|
13 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
14 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
+
<div class="col-10 text-left m-0 p-0">
|
20 |
<div class="sq_icons_content p-3 py-4">
|
21 |
<div class="sq_icons sq_focuspages_icon m-2"></div>
|
22 |
</div>
|
23 |
<h3 class="card-title"><?php echo esc_html__("Focus Pages", _SQ_PLUGIN_NAME_); ?>:</h3>
|
24 |
<div class="card-title-description mx-2"><?php echo esc_html__("Focus Pages bring you clear methods to take your pages from never found to always found on Google. Rank your pages by influencing the right ranking factors. Turn everything that you see here to Green and you will win.", _SQ_PLUGIN_NAME_); ?></div>
|
25 |
</div>
|
26 |
+
<div class="col-2 text-right">
|
27 |
<i class="fa fa-refresh m-2 sq_focuspages_refresh" style="font-size: 20px !important; cursor: pointer;"></i>
|
28 |
|
29 |
</div>
|
30 |
</div>
|
31 |
+
<div id="sq_focuspages" class="card col-12 p-0 tab-panel border-0">
|
32 |
<?php do_action('sq_subscription_notices'); ?>
|
33 |
|
34 |
<?php
|
55 |
</div>
|
56 |
|
57 |
<div class="card-body">
|
58 |
+
<div class="col-12 my-2 text-black-50">
|
59 |
<em><?php echo sprintf(esc_html__("%sNote:%s remember that it takes anywhere between %s1 minute to 5 minutes%s to generate the new audit for a focus page. There is a lot of processing involved.",_SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong>', '</strong>'); ?></em>
|
60 |
</div>
|
61 |
</div>
|
63 |
</div>
|
64 |
</div>
|
65 |
<div class="sq_col_side sticky">
|
66 |
+
<div class="card col-12 p-0">
|
67 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
68 |
<div class="sq_assistant sq_assistant_help">
|
69 |
<ul class="p-0 mx-5">
|
view/FocusPages/Settings.php
CHANGED
@@ -4,16 +4,16 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'settings'), 'sq_focuspages'); ?>
|
12 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
|
16 |
-
<div class="card col-
|
17 |
<div class="card-body p-2 bg-title rounded-top">
|
18 |
<div class="sq_icons_content p-3 py-4">
|
19 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
@@ -21,10 +21,10 @@
|
|
21 |
<h3 class="card-title"><?php echo esc_html__("Focus Pages Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
22 |
<div class="card-title-description m-2"></div>
|
23 |
</div>
|
24 |
-
<div id="sq_focuspages" class="card col-
|
25 |
<div class="card-body p-0">
|
26 |
-
<div class="col-
|
27 |
-
<div class="card col-
|
28 |
|
29 |
</div>
|
30 |
|
@@ -34,7 +34,7 @@
|
|
34 |
</div>
|
35 |
</div>
|
36 |
<div class="sq_col sq_col_side ">
|
37 |
-
<div class="card col-
|
38 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
39 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
40 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'settings'), 'sq_focuspages'); ?>
|
12 |
<div class="sq_row d-flex flex-row bg-white px-3">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
|
16 |
+
<div class="card col-12 p-0">
|
17 |
<div class="card-body p-2 bg-title rounded-top">
|
18 |
<div class="sq_icons_content p-3 py-4">
|
19 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
21 |
<h3 class="card-title"><?php echo esc_html__("Focus Pages Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
22 |
<div class="card-title-description m-2"></div>
|
23 |
</div>
|
24 |
+
<div id="sq_focuspages" class="card col-12 p-0 tab-panel border-0">
|
25 |
<div class="card-body p-0">
|
26 |
+
<div class="col-12 m-0 p-0">
|
27 |
+
<div class="card col-12 my-4 p-0 border-0 ">
|
28 |
|
29 |
</div>
|
30 |
|
34 |
</div>
|
35 |
</div>
|
36 |
<div class="sq_col sq_col_side ">
|
37 |
+
<div class="card col-12 p-0">
|
38 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
39 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
40 |
</div>
|
view/Goals/CheckSeo.php
CHANGED
@@ -8,20 +8,20 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
8 |
?>
|
9 |
<div id="sq_blockseoissues">
|
10 |
<?php if (isset($view->congratulations) && !empty($view->congratulations)) { ?>
|
11 |
-
<div class="col-
|
12 |
|
13 |
<div class="row text-left m-0 p-0">
|
14 |
<div class="px-2 text-center" style="width: 38%;">
|
15 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/trompette.png' ?>" style="width: 100%; max-width: 200px;">
|
16 |
</div>
|
17 |
-
<div class="col
|
18 |
-
<div class="col-
|
19 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
20 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("Progress & Achievements", _SQ_PLUGIN_NAME_); ?>:</h3>
|
21 |
</div>
|
22 |
|
23 |
<div class="sq_separator"></div>
|
24 |
-
<div class="col-
|
25 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("See all the improvements from all Squirrly SEO features in a single panel.", _SQ_PLUGIN_NAME_); ?></div>
|
26 |
</div>
|
27 |
</div>
|
@@ -29,7 +29,7 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
29 |
|
30 |
|
31 |
<div class="sq_separator"></div>
|
32 |
-
<div class="card my-0 p-0 col-
|
33 |
|
34 |
<table class="table table-striped my-0">
|
35 |
<tbody>
|
@@ -37,7 +37,7 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
37 |
<tr>
|
38 |
<td class="p-3 text-success text-left" style="width: 150px; vertical-align: middle; font-size: 16px !important; <?php echo($row['color'] ? 'color:' . esc_attr($row['color']) : '') ?>">
|
39 |
<?php if (isset($row['image']) && $row['image']) { ?>
|
40 |
-
<div class="col-
|
41 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/' . $row['image'] ?>" style="max-width: 100px;"/>
|
42 |
</div>
|
43 |
<?php } ?>
|
@@ -47,7 +47,7 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
47 |
</td>
|
48 |
<?php if (isset($row['link']) && isset($row['link'])) { ?>
|
49 |
<td style="width: 100px; vertical-align: middle; padding-left: 0; padding-right: 0; margin: 0">
|
50 |
-
<div class="col
|
51 |
<a href="<?php echo esc_url($row['link']) ?>" class="btn btn-sm btn-success text-white p-2 px-3 m-0" target="_blank">
|
52 |
<?php echo esc_html__("See results", _SQ_PLUGIN_NAME_) ?>
|
53 |
</a>
|
@@ -80,7 +80,7 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
80 |
<a name="tasks"></a>
|
81 |
|
82 |
<!-- Show the Goals from Goals.php through ajax -->
|
83 |
-
<div id="sq_seocheck_content" class="col-
|
84 |
<?php
|
85 |
$view->report = $view->getNotifications();
|
86 |
$content = $view->getView('Goals/Goals');
|
@@ -106,7 +106,7 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
106 |
<div class="px-2 my-3 mx-auto" style="width: 200px;">
|
107 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/calendar.png' ?>" style="width: 100%">
|
108 |
</div>
|
109 |
-
<div class="col
|
110 |
<div class="text-left mx-3 p-0 py-1">
|
111 |
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s Upgrades", _SQ_PLUGIN_NAME_), '<strong class="text-info">' . '70' . '</strong>'); ?></h3>
|
112 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Handled by Squirrly Genius.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -144,11 +144,11 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
144 |
</div>
|
145 |
<div class="modal-body" style="min-height: 90px;">
|
146 |
<?php if (isset($row['image']) && $row['image']) { ?>
|
147 |
-
<div class="col-
|
148 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/' . $row['image'] ?>" style="max-width: 250px;"/>
|
149 |
</div>
|
150 |
<?php } ?>
|
151 |
-
<div class="col-
|
152 |
<?php echo(isset($row['message']) ? (string)$row['message'] : '') ?>
|
153 |
</div>
|
154 |
</div>
|
8 |
?>
|
9 |
<div id="sq_blockseoissues">
|
10 |
<?php if (isset($view->congratulations) && !empty($view->congratulations)) { ?>
|
11 |
+
<div class="col-12 my-4 py-3" style="box-shadow: 0 0 10px -3px #994525; background-color: white;">
|
12 |
|
13 |
<div class="row text-left m-0 p-0">
|
14 |
<div class="px-2 text-center" style="width: 38%;">
|
15 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/trompette.png' ?>" style="width: 100%; max-width: 200px;">
|
16 |
</div>
|
17 |
+
<div class="col px-2 py-5">
|
18 |
+
<div class="col-12 m-0 p-0">
|
19 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
20 |
<h3 class="card-title" style="color: green;"><?php echo esc_html__("Progress & Achievements", _SQ_PLUGIN_NAME_); ?>:</h3>
|
21 |
</div>
|
22 |
|
23 |
<div class="sq_separator"></div>
|
24 |
+
<div class="col-12 m-2 p-0">
|
25 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("See all the improvements from all Squirrly SEO features in a single panel.", _SQ_PLUGIN_NAME_); ?></div>
|
26 |
</div>
|
27 |
</div>
|
29 |
|
30 |
|
31 |
<div class="sq_separator"></div>
|
32 |
+
<div class="card my-0 p-0 col-12 border-0 shadow-none">
|
33 |
|
34 |
<table class="table table-striped my-0">
|
35 |
<tbody>
|
37 |
<tr>
|
38 |
<td class="p-3 text-success text-left" style="width: 150px; vertical-align: middle; font-size: 16px !important; <?php echo($row['color'] ? 'color:' . esc_attr($row['color']) : '') ?>">
|
39 |
<?php if (isset($row['image']) && $row['image']) { ?>
|
40 |
+
<div class="col-12 text-center p-0 m-0">
|
41 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/' . $row['image'] ?>" style="max-width: 100px;"/>
|
42 |
</div>
|
43 |
<?php } ?>
|
47 |
</td>
|
48 |
<?php if (isset($row['link']) && isset($row['link'])) { ?>
|
49 |
<td style="width: 100px; vertical-align: middle; padding-left: 0; padding-right: 0; margin: 0">
|
50 |
+
<div class="col p-0 m-0 mx-1">
|
51 |
<a href="<?php echo esc_url($row['link']) ?>" class="btn btn-sm btn-success text-white p-2 px-3 m-0" target="_blank">
|
52 |
<?php echo esc_html__("See results", _SQ_PLUGIN_NAME_) ?>
|
53 |
</a>
|
80 |
<a name="tasks"></a>
|
81 |
|
82 |
<!-- Show the Goals from Goals.php through ajax -->
|
83 |
+
<div id="sq_seocheck_content" class="col-12 my-4 py-3" style="box-shadow: 0 0 10px -3px #994525; background-color: white; min-height: 100px;">
|
84 |
<?php
|
85 |
$view->report = $view->getNotifications();
|
86 |
$content = $view->getView('Goals/Goals');
|
106 |
<div class="px-2 my-3 mx-auto" style="width: 200px;">
|
107 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/calendar.png' ?>" style="width: 100%">
|
108 |
</div>
|
109 |
+
<div class="col px-2 ">
|
110 |
<div class="text-left mx-3 p-0 py-1">
|
111 |
<h3 class="card-title m-0 p-0"><?php echo sprintf(esc_html__("%s Upgrades", _SQ_PLUGIN_NAME_), '<strong class="text-info">' . '70' . '</strong>'); ?></h3>
|
112 |
<div class="card-title-description m-0 p-0 text-black-50"><?php echo esc_html__("Handled by Squirrly Genius.", _SQ_PLUGIN_NAME_); ?></div>
|
144 |
</div>
|
145 |
<div class="modal-body" style="min-height: 90px;">
|
146 |
<?php if (isset($row['image']) && $row['image']) { ?>
|
147 |
+
<div class="col-12 text-center">
|
148 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/' . $row['image'] ?>" style="max-width: 250px;"/>
|
149 |
</div>
|
150 |
<?php } ?>
|
151 |
+
<div class="col-12 p-3 text-center text-success" style="font-size: 16px">
|
152 |
<?php echo(isset($row['message']) ? (string)$row['message'] : '') ?>
|
153 |
</div>
|
154 |
</div>
|
view/Goals/Goals.php
CHANGED
@@ -23,13 +23,13 @@ if ($countdone == count($view->report)) {
|
|
23 |
$view->report = array();
|
24 |
}
|
25 |
?>
|
26 |
-
<div class="row text-left m-0 p-0">
|
27 |
<div class="px-2" style="max-width: 350px;width: 38%;">
|
28 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/calendar.png' ?>" style="width: 100%">
|
29 |
</div>
|
30 |
-
<div class="col
|
31 |
<div class="text-left m-0 p-0 py-1">
|
32 |
-
<div class="col
|
33 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
34 |
<h3 class="card-title m-0 p-0"><?php echo esc_html__("Next SEO Goals", _SQ_PLUGIN_NAME_); ?>:
|
35 |
<?php if (isset($view->report) && !empty($view->report)) { ?>
|
@@ -37,7 +37,7 @@ if ($countdone == count($view->report)) {
|
|
37 |
<?php } ?>
|
38 |
</h3>
|
39 |
</div>
|
40 |
-
<div class="col
|
41 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
42 |
<button type="button" class="btn btn-warning m-2 py-2 px-5 center-block sq_seocheck_submit" <?php echo($refresh ? 'data-action="trigger"' : '') ?> >
|
43 |
<?php echo esc_html__("Run SEO Test", _SQ_PLUGIN_NAME_) ?> >>
|
@@ -47,14 +47,14 @@ if ($countdone == count($view->report)) {
|
|
47 |
</div>
|
48 |
<div class="sq_separator"></div>
|
49 |
<div class="row text-left m-0 p-0 pt-3">
|
50 |
-
<div class="col-
|
51 |
<h3 class="card-title m-0 p-0"><?php echo esc_html__("Reach New Goals", _SQ_PLUGIN_NAME_); ?>:</h3>
|
52 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("Squirrly Smart Strategy sets new goals.", _SQ_PLUGIN_NAME_); ?></div>
|
53 |
<div class="card-title-description m-2">
|
54 |
<a href="https://howto.squirrly.co/faq/how-unique-are-the-daily-seo-goals/" target="_blank">(<?php echo esc_html__("How unique are these goals?", _SQ_PLUGIN_NAME_); ?>)</a>
|
55 |
</div>
|
56 |
</div>
|
57 |
-
<div class="col-
|
58 |
<?php
|
59 |
$color = false;
|
60 |
if ((int)$view->score > 0) {
|
@@ -86,11 +86,11 @@ if ($countdone == count($view->report)) {
|
|
86 |
<?php if (isset($view->report) && !empty($view->report)) { ?>
|
87 |
<div class="small text-info text-center p-3"><?php echo sprintf(esc_html__("Hint: remember to click: %sShow me how - Mark as Done%s, when you complete a goal.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>') ?></div>
|
88 |
<div class="sq_separator"></div>
|
89 |
-
<div class="col-
|
90 |
<a href="#tasks"><i class="fa fa-arrow-circle-down" style="font-size: 45px !important; color: red; cursor: pointer"></i></a>
|
91 |
</div>
|
92 |
|
93 |
-
<div id="sq_seocheck_tasks" class="card my-0 py-2 px-0 col-
|
94 |
<table class="table table-striped my-0">
|
95 |
<tbody>
|
96 |
<?php foreach ($view->report as $function => $row) {
|
@@ -131,8 +131,8 @@ if ($countdone == count($view->report)) {
|
|
131 |
<?php if (current_user_can('sq_manage_snippets')) {
|
132 |
$dbtasks = json_decode(get_option(SQ_TASKS), true);
|
133 |
?>
|
134 |
-
<div class="col
|
135 |
-
<div class="col-
|
136 |
<button type="button" class="btn btn-sm btn-success text-white p-1 px-2 m-0" style="width: 130px" data-dismiss="modal">
|
137 |
<?php echo esc_html__("Show me how", _SQ_PLUGIN_NAME_) ?>
|
138 |
</button>
|
@@ -143,7 +143,7 @@ if ($countdone == count($view->report)) {
|
|
143 |
<?php } ?>
|
144 |
<div class="description" style="display: none">
|
145 |
<div class="row">
|
146 |
-
<div class="col
|
147 |
<div class="sq_seocheck_tasks_title m-1 text-left" style="<?php echo($row['color'] ? 'color:' . esc_attr($row['color']) : '') ?>">
|
148 |
<?php echo(isset($row['warning']) ? (string)$row['warning'] : '') ?>
|
149 |
</div>
|
@@ -162,14 +162,14 @@ if ($countdone == count($view->report)) {
|
|
162 |
|
163 |
<div class="py-2 px-3 m-0">
|
164 |
<?php if (isset($row['link']) && isset($row['link'])) { ?>
|
165 |
-
<div class="col
|
166 |
<a href="<?php echo esc_url($row['link']) ?>" target="_blank" class="btn btn-sm bg-success text-white p-1 px-2 m-0" style="width: 130px">
|
167 |
<?php echo esc_html__("Let's do this", _SQ_PLUGIN_NAME_) ?>
|
168 |
</a>
|
169 |
</div>
|
170 |
<?php } ?>
|
171 |
|
172 |
-
<div class="col
|
173 |
|
174 |
<div class="sq_save_ajax">
|
175 |
<input type="hidden" id="sq_done_<?php echo esc_attr($function) ?>" value="1">
|
@@ -207,25 +207,25 @@ if ($countdone == count($view->report)) {
|
|
207 |
|
208 |
</div>
|
209 |
<?php } else { ?>
|
210 |
-
<div class="row text-left m-0 p-0 py-3">
|
211 |
-
<div class="col-
|
212 |
<h4 class="text-center bd-highlight" style="line-height: 35px">
|
213 |
<i class="fa fa-check align-middle text-success mx-2" style="font-size: 18px;"></i><?php echo sprintf(esc_html__("No other goals for today. %sGood job!", _SQ_PLUGIN_NAME_), '<br />'); ?>
|
214 |
</h4>
|
215 |
-
<div class="row col-
|
216 |
-
<div class="col-
|
217 |
-
<div class="col-
|
218 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_assistant', 'assistant') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Optimize your Posts and Pages", _SQ_PLUGIN_NAME_); ?></a>
|
219 |
</div>
|
220 |
-
<div class="col-
|
221 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Boost your SEO with Bulk SEO", _SQ_PLUGIN_NAME_); ?></a>
|
222 |
</div>
|
223 |
-
<div class="col-
|
224 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'pagelist') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Rank your best pages with Focus Pages", _SQ_PLUGIN_NAME_); ?></a>
|
225 |
</div>
|
226 |
</div>
|
227 |
</div>
|
228 |
-
<div class="col-
|
229 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/success_background.jpg' ?>" style="width: 100%">
|
230 |
</div>
|
231 |
</div>
|
@@ -233,8 +233,8 @@ if ($countdone == count($view->report)) {
|
|
233 |
|
234 |
<div class="sq_separator"></div>
|
235 |
|
236 |
-
<div class="row">
|
237 |
-
<div class="col
|
238 |
<?php if ((int)$ignored_count > 0) { ?>
|
239 |
<form method="post" class="p-0 m-0">
|
240 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_resetignored', 'sq_nonce'); ?>
|
@@ -249,12 +249,12 @@ if ($countdone == count($view->report)) {
|
|
249 |
</div>
|
250 |
|
251 |
<?php if (empty($view->report)) { ?>
|
252 |
-
<div class="col
|
253 |
<?php echo esc_html__("Next goals on", _SQ_PLUGIN_NAME_) ?>:
|
254 |
<strong class="text-info"><?php echo date(get_option('date_format'), strtotime('+1 day')) ?></strong>
|
255 |
</div>
|
256 |
-
<div class="col
|
257 |
-
<div class="col
|
258 |
<form method="post" class="p-0 m-0">
|
259 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_moretasks', 'sq_nonce'); ?>
|
260 |
<input type="hidden" name="action" value="sq_moretasks"/>
|
23 |
$view->report = array();
|
24 |
}
|
25 |
?>
|
26 |
+
<div class="row text-left m-0 p-0" style="max-width: 1200px;">
|
27 |
<div class="px-2" style="max-width: 350px;width: 38%;">
|
28 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/calendar.png' ?>" style="width: 100%">
|
29 |
</div>
|
30 |
+
<div class="col px-2">
|
31 |
<div class="text-left m-0 p-0 py-1">
|
32 |
+
<div class="col m-0 p-0">
|
33 |
<div class="sq_icons sq_audit_icon m-2"></div>
|
34 |
<h3 class="card-title m-0 p-0"><?php echo esc_html__("Next SEO Goals", _SQ_PLUGIN_NAME_); ?>:
|
35 |
<?php if (isset($view->report) && !empty($view->report)) { ?>
|
37 |
<?php } ?>
|
38 |
</h3>
|
39 |
</div>
|
40 |
+
<div class="col m-0 p-0 text-center">
|
41 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
42 |
<button type="button" class="btn btn-warning m-2 py-2 px-5 center-block sq_seocheck_submit" <?php echo($refresh ? 'data-action="trigger"' : '') ?> >
|
43 |
<?php echo esc_html__("Run SEO Test", _SQ_PLUGIN_NAME_) ?> >>
|
47 |
</div>
|
48 |
<div class="sq_separator"></div>
|
49 |
<div class="row text-left m-0 p-0 pt-3">
|
50 |
+
<div class="col-8 m-0 p-0">
|
51 |
<h3 class="card-title m-0 p-0"><?php echo esc_html__("Reach New Goals", _SQ_PLUGIN_NAME_); ?>:</h3>
|
52 |
<div class="card-title-description m-2 text-black-50"><?php echo esc_html__("Squirrly Smart Strategy sets new goals.", _SQ_PLUGIN_NAME_); ?></div>
|
53 |
<div class="card-title-description m-2">
|
54 |
<a href="https://howto.squirrly.co/faq/how-unique-are-the-daily-seo-goals/" target="_blank">(<?php echo esc_html__("How unique are these goals?", _SQ_PLUGIN_NAME_); ?>)</a>
|
55 |
</div>
|
56 |
</div>
|
57 |
+
<div class="col-3 m-0 p-0 py-1 text-center" style="min-width: 100px">
|
58 |
<?php
|
59 |
$color = false;
|
60 |
if ((int)$view->score > 0) {
|
86 |
<?php if (isset($view->report) && !empty($view->report)) { ?>
|
87 |
<div class="small text-info text-center p-3"><?php echo sprintf(esc_html__("Hint: remember to click: %sShow me how - Mark as Done%s, when you complete a goal.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>') ?></div>
|
88 |
<div class="sq_separator"></div>
|
89 |
+
<div class="col-12 text-center mt-4">
|
90 |
<a href="#tasks"><i class="fa fa-arrow-circle-down" style="font-size: 45px !important; color: red; cursor: pointer"></i></a>
|
91 |
</div>
|
92 |
|
93 |
+
<div id="sq_seocheck_tasks" class="card my-0 py-2 px-0 col-12 border-0 shadow-none">
|
94 |
<table class="table table-striped my-0">
|
95 |
<tbody>
|
96 |
<?php foreach ($view->report as $function => $row) {
|
131 |
<?php if (current_user_can('sq_manage_snippets')) {
|
132 |
$dbtasks = json_decode(get_option(SQ_TASKS), true);
|
133 |
?>
|
134 |
+
<div class="col p-0 m-1 mx-1">
|
135 |
+
<div class="col-12 sq_task" data-category="<?php echo esc_attr($category_name) ?>" data-active="1" data-name="<?php echo esc_attr($function) ?>" data-completed="<?php echo (int)$row['completed'] ?>">
|
136 |
<button type="button" class="btn btn-sm btn-success text-white p-1 px-2 m-0" style="width: 130px" data-dismiss="modal">
|
137 |
<?php echo esc_html__("Show me how", _SQ_PLUGIN_NAME_) ?>
|
138 |
</button>
|
143 |
<?php } ?>
|
144 |
<div class="description" style="display: none">
|
145 |
<div class="row">
|
146 |
+
<div class="col py-1">
|
147 |
<div class="sq_seocheck_tasks_title m-1 text-left" style="<?php echo($row['color'] ? 'color:' . esc_attr($row['color']) : '') ?>">
|
148 |
<?php echo(isset($row['warning']) ? (string)$row['warning'] : '') ?>
|
149 |
</div>
|
162 |
|
163 |
<div class="py-2 px-3 m-0">
|
164 |
<?php if (isset($row['link']) && isset($row['link'])) { ?>
|
165 |
+
<div class="col p-0 m-1 mx-1">
|
166 |
<a href="<?php echo esc_url($row['link']) ?>" target="_blank" class="btn btn-sm bg-success text-white p-1 px-2 m-0" style="width: 130px">
|
167 |
<?php echo esc_html__("Let's do this", _SQ_PLUGIN_NAME_) ?>
|
168 |
</a>
|
169 |
</div>
|
170 |
<?php } ?>
|
171 |
|
172 |
+
<div class="col p-0 m-1 mx-1">
|
173 |
|
174 |
<div class="sq_save_ajax">
|
175 |
<input type="hidden" id="sq_done_<?php echo esc_attr($function) ?>" value="1">
|
207 |
|
208 |
</div>
|
209 |
<?php } else { ?>
|
210 |
+
<div class="row text-left m-0 p-0 py-3" style="max-width: 1200px;">
|
211 |
+
<div class="col-6 m-0 p-0 py-4">
|
212 |
<h4 class="text-center bd-highlight" style="line-height: 35px">
|
213 |
<i class="fa fa-check align-middle text-success mx-2" style="font-size: 18px;"></i><?php echo sprintf(esc_html__("No other goals for today. %sGood job!", _SQ_PLUGIN_NAME_), '<br />'); ?>
|
214 |
</h4>
|
215 |
+
<div class="row col-12 my-4 text-center">
|
216 |
+
<div class="col-12 my-3 text-center"><?php echo esc_html__("Want to keep boosting your SEO?", _SQ_PLUGIN_NAME_); ?></div>
|
217 |
+
<div class="col-12 m-2 text-center">
|
218 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_assistant', 'assistant') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Optimize your Posts and Pages", _SQ_PLUGIN_NAME_); ?></a>
|
219 |
</div>
|
220 |
+
<div class="col-12 m-2 text-center">
|
221 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_bulkseo', 'bulkseo') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Boost your SEO with Bulk SEO", _SQ_PLUGIN_NAME_); ?></a>
|
222 |
</div>
|
223 |
+
<div class="col-12 m-2 text-center">
|
224 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_focuspages', 'pagelist') ?>" class="btn btn-sm btn-success" style="width: 300px"><?php echo esc_html__("Rank your best pages with Focus Pages", _SQ_PLUGIN_NAME_); ?></a>
|
225 |
</div>
|
226 |
</div>
|
227 |
</div>
|
228 |
+
<div class="col-6 m-0 p-0 text-right">
|
229 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/success_background.jpg' ?>" style="width: 100%">
|
230 |
</div>
|
231 |
</div>
|
233 |
|
234 |
<div class="sq_separator"></div>
|
235 |
|
236 |
+
<div class="row" style="max-width: 1200px;">
|
237 |
+
<div class="col p-0 m-2 mx-0 text-left">
|
238 |
<?php if ((int)$ignored_count > 0) { ?>
|
239 |
<form method="post" class="p-0 m-0">
|
240 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_resetignored', 'sq_nonce'); ?>
|
249 |
</div>
|
250 |
|
251 |
<?php if (empty($view->report)) { ?>
|
252 |
+
<div class="col p-0 m-3 mx-0 text-right" style="font-size: 16px">
|
253 |
<?php echo esc_html__("Next goals on", _SQ_PLUGIN_NAME_) ?>:
|
254 |
<strong class="text-info"><?php echo date(get_option('date_format'), strtotime('+1 day')) ?></strong>
|
255 |
</div>
|
256 |
+
<div class="col p-0 m-2 mx-0 text-right">
|
257 |
+
<div class="col">
|
258 |
<form method="post" class="p-0 m-0">
|
259 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_moretasks', 'sq_nonce'); ?>
|
260 |
<input type="hidden" name="action" value="sq_moretasks"/>
|
view/Help.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
-
<div class="d-flex flex-row my-0 bg-white col-
|
4 |
|
5 |
</div>
|
6 |
</div>
|
1 |
<div id="sq_wrap">
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
+
<div class="d-flex flex-row my-0 bg-white col-12 p-0 m-0">
|
4 |
|
5 |
</div>
|
6 |
</div>
|
view/Onboarding/Step1.php
CHANGED
@@ -11,28 +11,28 @@ if ($platforms && count((array)$platforms) > 0) {
|
|
11 |
<div id="sq_wrap">
|
12 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
13 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step1'), 'sq_onboarding'); ?>
|
14 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
15 |
-
<div class="flex-grow-1
|
16 |
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
-
<div class="col-
|
20 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
21 |
<h3 class="card-title"><?php echo esc_html__("Welcome to Squirrly SEO 2020 (Smart Strategy)", _SQ_PLUGIN_NAME_); ?></h3>
|
22 |
</div>
|
23 |
-
<div class="col-
|
24 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', $next_step) ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
25 |
</div>
|
26 |
</div>
|
27 |
-
<div class="card col-
|
28 |
<div class="card-body" style="min-width: 800px; min-height: 430px;">
|
29 |
|
30 |
-
<div class="row col-
|
31 |
-
<div class="col-
|
32 |
-
<div class="col-
|
33 |
</div>
|
34 |
-
<div class="col-
|
35 |
-
<div class="col-
|
36 |
<div id="checkbox1" class="checkbox my-2">
|
37 |
<label>
|
38 |
<input type="checkbox" value="" disabled>
|
11 |
<div id="sq_wrap">
|
12 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
13 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step1'), 'sq_onboarding'); ?>
|
14 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
15 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
+
<div class="col-8 m-0 p-0 py-2 bg-title rounded-top">
|
20 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
21 |
<h3 class="card-title"><?php echo esc_html__("Welcome to Squirrly SEO 2020 (Smart Strategy)", _SQ_PLUGIN_NAME_); ?></h3>
|
22 |
</div>
|
23 |
+
<div class="col-4 m-0 p-0 py-2 text-right">
|
24 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', $next_step) ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
25 |
</div>
|
26 |
</div>
|
27 |
+
<div class="card col-12 p-0 m-0 border-0 border-0">
|
28 |
<div class="card-body" style="min-width: 800px; min-height: 430px;">
|
29 |
|
30 |
+
<div class="row col-12 pt-0 pb-4 ">
|
31 |
+
<div class="col-5 m-0 p-2 py-5">
|
32 |
+
<div class="col-12 card-title py-5 text-success text-center" style="font-size: 24px; line-height: 35px; margin-top: 20px;"><?php echo esc_html__("Your Private SEO Consultant Sets Up the SEO for Your WordPress", _SQ_PLUGIN_NAME_); ?>:</div>
|
33 |
</div>
|
34 |
+
<div class="col-7 m-0 p-0">
|
35 |
+
<div class="col-12 my-2 px-2">
|
36 |
<div id="checkbox1" class="checkbox my-2">
|
37 |
<label>
|
38 |
<input type="checkbox" value="" disabled>
|
view/Onboarding/Step2.1.php
CHANGED
@@ -1,38 +1,38 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
-
<div class="
|
4 |
-
<div class="
|
5 |
|
6 |
-
<div class="card col-
|
7 |
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
-
<div class="col-
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("14 Days Journey", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
-
<div class="col-
|
14 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.2') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-2 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
15 |
</div>
|
16 |
</div>
|
17 |
|
18 |
-
<div class="card col-
|
19 |
<div class="card-body p-0">
|
20 |
-
<div class="col-
|
21 |
-
<div class="card col-
|
22 |
|
23 |
-
<div class="col-
|
24 |
|
25 |
-
<div class="col-
|
26 |
<div class="row py-5 px-5 text-black-50">
|
27 |
-
<div class="col-
|
28 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%" >
|
29 |
</div>
|
30 |
-
<div class="col-
|
31 |
<div style="font-size: 22px; color: rebeccapurple; line-height: 35px" class="mt-5 mb-2"><?php echo esc_html__("To drive it in the right direction, you have the chance to join (for Free) the 14 Days Journey to Better Rankings.", _SQ_PLUGIN_NAME_); ?></div>
|
32 |
</div>
|
33 |
</div>
|
34 |
|
35 |
-
<div class="col-
|
36 |
<div style="font-size: 18px; color: rebeccapurple; line-height: 30px"><?php echo esc_html__("You'll get", _SQ_PLUGIN_NAME_); ?>:</div>
|
37 |
<ul class="m-3 ml-5" style="list-style: disc !important;">
|
38 |
<li class="mb-3 text-black-50" style="font-size: 16px"><?php echo sprintf(esc_html__("the %schance to fix in 14 days%s mistakes from years of ineffective SEO.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?></li>
|
@@ -45,7 +45,7 @@
|
|
45 |
|
46 |
|
47 |
</div>
|
48 |
-
<div class="col-
|
49 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.2') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
50 |
</div>
|
51 |
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
4 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
5 |
|
6 |
+
<div class="card col-12 p-0">
|
7 |
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
+
<div class="col-6 m-0 p-0 py-2 bg-title rounded-top">
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("14 Days Journey", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
+
<div class="col-6 m-0 p-0 py-2 text-right">
|
14 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.2') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-2 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
15 |
</div>
|
16 |
</div>
|
17 |
|
18 |
+
<div class="card col-12 p-0 m-0 border-0 border-0">
|
19 |
<div class="card-body p-0">
|
20 |
+
<div class="col-12 m-0 p-0">
|
21 |
+
<div class="card col-12 p-0 border-0 ">
|
22 |
|
23 |
+
<div class="col-12 pt-0 pb-4 ">
|
24 |
|
25 |
+
<div class="col-12 card-title py-3 px-4 text-center" style="font-size: 24px; line-height: 35px"><?php echo esc_html__("All you need now is to start driving One of your most valuable pages to Better Rankings.", _SQ_PLUGIN_NAME_); ?></div>
|
26 |
<div class="row py-5 px-5 text-black-50">
|
27 |
+
<div class="col-6">
|
28 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car.png' ?>" style="width: 100%" >
|
29 |
</div>
|
30 |
+
<div class="col-6">
|
31 |
<div style="font-size: 22px; color: rebeccapurple; line-height: 35px" class="mt-5 mb-2"><?php echo esc_html__("To drive it in the right direction, you have the chance to join (for Free) the 14 Days Journey to Better Rankings.", _SQ_PLUGIN_NAME_); ?></div>
|
32 |
</div>
|
33 |
</div>
|
34 |
|
35 |
+
<div class="col-12 m-3 px-5 clear">
|
36 |
<div style="font-size: 18px; color: rebeccapurple; line-height: 30px"><?php echo esc_html__("You'll get", _SQ_PLUGIN_NAME_); ?>:</div>
|
37 |
<ul class="m-3 ml-5" style="list-style: disc !important;">
|
38 |
<li class="mb-3 text-black-50" style="font-size: 16px"><?php echo sprintf(esc_html__("the %schance to fix in 14 days%s mistakes from years of ineffective SEO.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?></li>
|
45 |
|
46 |
|
47 |
</div>
|
48 |
+
<div class="col-12 my-3 p-0 py-3 border-top">
|
49 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step2.2') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
50 |
</div>
|
51 |
|
view/Onboarding/Step2.2.php
CHANGED
@@ -1,34 +1,34 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
-
<div class="
|
4 |
-
<div class="
|
5 |
|
6 |
-
<div class="card col-
|
7 |
<div class="card-body p-2 bg-title rounded-top row">
|
8 |
-
<div class="col-
|
9 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
10 |
<h3 class="card-title"><?php echo esc_html__("Start the 14 Days Journey", _SQ_PLUGIN_NAME_); ?></h3>
|
11 |
</div>
|
12 |
-
<div class="col-
|
13 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn btn-default btn-lg px-3 mx-4 float-sm-right border rounded-circle">X</a>
|
14 |
</div>
|
15 |
</div>
|
16 |
|
17 |
-
<div class="col-
|
18 |
<div class="p-0">
|
19 |
-
<div class="col-
|
20 |
-
<div class="col-
|
21 |
-
<div class="col-
|
22 |
-
<div class="col-
|
23 |
<?php if (SQ_Classes_Helpers_Tools::getOption('sq_seojourney')) { ?>
|
24 |
-
<div class="col-
|
25 |
<div class="p-0 m-0 mb-5 text-center">
|
26 |
-
<div class="col-
|
27 |
</div>
|
28 |
-
<div class="col-
|
29 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car start.png' ?>" style="max-width: 60%;">
|
30 |
</div>
|
31 |
-
<div class="col-
|
32 |
<div class="my-3" style="font-size: 16px; line-height: 30px"><?php echo sprintf(esc_html__("%sJoin%s the rest of the %sJourneyTeam on the Facebook Group%s and if you want you can share with the members that you have started your Journey.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/groups/SquirrlySEOCustomerService/" target="_blank" >', '</a></strong>'); ?></div>
|
33 |
<div class="my-3" style="font-size: 16px; line-height: 30px"><?php echo sprintf(esc_html__("%sIn 14 Days you can tell us how it went%s (via messages on our %sFacebook Page%s) and we'll tell you what you can do to further improve the results you got during the 14 Days.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/Squirrly.co/" target="_blank" >', '</a></strong>'); ?></div>
|
34 |
</div>
|
@@ -38,9 +38,9 @@
|
|
38 |
</a>
|
39 |
</div>
|
40 |
<?php } else { ?>
|
41 |
-
<h2 class="col-
|
42 |
<div class="row flex-nowrap py-3">
|
43 |
-
<div class="col
|
44 |
|
45 |
<form method="post" class="p-0 m-0">
|
46 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car start.png' ?>" class="float-left mr-4" style="max-width: 100%;">
|
@@ -52,7 +52,7 @@
|
|
52 |
</button>
|
53 |
</form>
|
54 |
</div>
|
55 |
-
<div class="col
|
56 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car_finish_rusty.png' ?>" class="float-left mr-4" style="max-width: 100%;">
|
57 |
|
58 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn btn-lg bg-transparent text-black-50 my-2">
|
@@ -64,7 +64,7 @@
|
|
64 |
|
65 |
</div>
|
66 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seojourney')) { ?>
|
67 |
-
<div class="col-
|
68 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn rounded-0 btn-default btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Close Window", _SQ_PLUGIN_NAME_); ?></a>
|
69 |
</div>
|
70 |
<?php } ?>
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
4 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
5 |
|
6 |
+
<div class="card col-12 p-0" style="min-width: 850px;">
|
7 |
<div class="card-body p-2 bg-title rounded-top row">
|
8 |
+
<div class="col-6 m-0 p-0 py-2 bg-title rounded-top">
|
9 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
10 |
<h3 class="card-title"><?php echo esc_html__("Start the 14 Days Journey", _SQ_PLUGIN_NAME_); ?></h3>
|
11 |
</div>
|
12 |
+
<div class="col-6 m-0 p-0 py-2 text-right">
|
13 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn btn-default btn-lg px-3 mx-4 float-sm-right border rounded-circle">X</a>
|
14 |
</div>
|
15 |
</div>
|
16 |
|
17 |
+
<div class="col-12 p-0 m-0 border-0 tab-panel border-0">
|
18 |
<div class="p-0">
|
19 |
+
<div class="col-12 m-0 p-0">
|
20 |
+
<div class="col-12 p-0 border-0 ">
|
21 |
+
<div class="col-12 pt-0 pb-4 tab-panel">
|
22 |
+
<div class="col-12 m-auto px-5 tab-panel">
|
23 |
<?php if (SQ_Classes_Helpers_Tools::getOption('sq_seojourney')) { ?>
|
24 |
+
<div class="col-12 py-3 pt-5 text-success text-center" style="font-size: 28px; color: rebeccapurple; line-height: 30px"><?php echo sprintf(esc_html__("Awesome! You are on your way to better results.", _SQ_PLUGIN_NAME_), '<br />'); ?></div>
|
25 |
<div class="p-0 m-0 mb-5 text-center">
|
26 |
+
<div class="col-12" style="font-size: 18px"><?php echo sprintf(esc_html__("You will receive the %sdaily recipe%s in your %sDashboard%s.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong>', '</strong>'); ?></div>
|
27 |
</div>
|
28 |
+
<div class="col-12 m-3 px-4 text-center justify-content-center">
|
29 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car start.png' ?>" style="max-width: 60%;">
|
30 |
</div>
|
31 |
+
<div class="col-12 m-3 px-4 clear">
|
32 |
<div class="my-3" style="font-size: 16px; line-height: 30px"><?php echo sprintf(esc_html__("%sJoin%s the rest of the %sJourneyTeam on the Facebook Group%s and if you want you can share with the members that you have started your Journey.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/groups/SquirrlySEOCustomerService/" target="_blank" >', '</a></strong>'); ?></div>
|
33 |
<div class="my-3" style="font-size: 16px; line-height: 30px"><?php echo sprintf(esc_html__("%sIn 14 Days you can tell us how it went%s (via messages on our %sFacebook Page%s) and we'll tell you what you can do to further improve the results you got during the 14 Days.", _SQ_PLUGIN_NAME_), '<strong>', '</strong>', '<strong><a href="https://www.facebook.com/Squirrly.co/" target="_blank" >', '</a></strong>'); ?></div>
|
34 |
</div>
|
38 |
</a>
|
39 |
</div>
|
40 |
<?php } else { ?>
|
41 |
+
<h2 class="col-12 py-3 text-center"><?php echo esc_html__("Choose how to continue", _SQ_PLUGIN_NAME_); ?>:</h2>
|
42 |
<div class="row flex-nowrap py-3">
|
43 |
+
<div class="col text-center">
|
44 |
|
45 |
<form method="post" class="p-0 m-0">
|
46 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car start.png' ?>" class="float-left mr-4" style="max-width: 100%;">
|
52 |
</button>
|
53 |
</form>
|
54 |
</div>
|
55 |
+
<div class="col text-center">
|
56 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/onboarding/racing_car_finish_rusty.png' ?>" class="float-left mr-4" style="max-width: 100%;">
|
57 |
|
58 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn btn-lg bg-transparent text-black-50 my-2">
|
64 |
|
65 |
</div>
|
66 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seojourney')) { ?>
|
67 |
+
<div class="col-12 my-3 p-0 py-3 border-top">
|
68 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>" class="btn rounded-0 btn-default btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Close Window", _SQ_PLUGIN_NAME_); ?></a>
|
69 |
</div>
|
70 |
<?php } ?>
|
view/Onboarding/Step3.php
CHANGED
@@ -1,41 +1,41 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step3'), 'sq_onboarding'); ?>
|
4 |
-
<div class="
|
5 |
-
<div class="
|
6 |
|
7 |
-
<div class="card col-
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
-
<div class="col-
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("Import SEO & Settings", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
-
<div class="col-
|
14 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step4') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
15 |
</div>
|
16 |
</div>
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-0" style="min-width: 800px;min-height: 430px">
|
19 |
-
<div class="col-
|
20 |
-
<div class="col-
|
21 |
|
22 |
-
<div class="col-
|
23 |
<?php
|
24 |
add_filter('sq_themes', array(SQ_Classes_ObjController::getClass('SQ_Models_ImportExport'), 'getAvailableThemes'));
|
25 |
add_filter('sq_plugins', array(SQ_Classes_ObjController::getClass('SQ_Models_ImportExport'), 'getAvailablePlugins'));
|
26 |
$platforms = apply_filters('sq_importList', false);
|
27 |
if ($platforms && count((array)$platforms) > 0) {
|
28 |
?>
|
29 |
-
<div class="col-
|
30 |
|
31 |
<div id="sq_onboarding">
|
32 |
|
33 |
-
<div class="col-
|
34 |
|
35 |
-
<div class="col-
|
36 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
37 |
-
<div class="col-
|
38 |
-
<div class="col-
|
39 |
<?php
|
40 |
if ($platforms && count((array)$platforms) > 0) {
|
41 |
?>
|
@@ -51,7 +51,7 @@
|
|
51 |
<input type="hidden" name="action" value="sq_seosettings_importall"/>
|
52 |
<button type="submit" class="btn rounded-0 btn-success px-3 mx-2" style="min-width: 140px; max-height: 50px;"><?php echo esc_html__("Import", _SQ_PLUGIN_NAME_); ?></button>
|
53 |
<?php } else { ?>
|
54 |
-
<div class="col-
|
55 |
<?php } ?>
|
56 |
</div>
|
57 |
</div>
|
@@ -59,14 +59,14 @@
|
|
59 |
|
60 |
|
61 |
<div class="card-body m-0 py-0">
|
62 |
-
<div class="col-
|
63 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("What you gain", _SQ_PLUGIN_NAME_); ?>:</h5>
|
64 |
<ul style="list-style: circle; margin-left: 30px;">
|
65 |
<li style="font-size: 15px;"><?php echo esc_html__("Everything will be the same in your site, and Google will keep all your rankings safe.", _SQ_PLUGIN_NAME_); ?></li>
|
66 |
<li style="font-size: 15px;"><?php echo esc_html__("Squirrly SEO covers everything that Google used to see from the old plugin, and brings new stuff in. That's why Google will do more than keep your rankings safe. It might award you with brand new page 1 positions if you use Squirrly.", _SQ_PLUGIN_NAME_); ?></li>
|
67 |
</ul>
|
68 |
</div>
|
69 |
-
<div class="col-
|
70 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("If you decide to switch back", _SQ_PLUGIN_NAME_); ?>:</h5>
|
71 |
<ul style="list-style: circle; margin-left: 30px;">
|
72 |
<li style="font-size: 15px;"><?php echo esc_html__("you can always switch back, without any issues. Your old plugin will remain the same. We don't delete it.", _SQ_PLUGIN_NAME_); ?></li>
|
@@ -75,13 +75,13 @@
|
|
75 |
</div>
|
76 |
</div>
|
77 |
|
78 |
-
<div class="col-
|
79 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step4') ?>" class="btn rounded-0 btn-default btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Skip this step", _SQ_PLUGIN_NAME_); ?></a>
|
80 |
</div>
|
81 |
</div>
|
82 |
|
83 |
<?php } else { ?>
|
84 |
-
<div class="col-
|
85 |
|
86 |
<div class="text-center m-5">
|
87 |
<?php echo esc_html__("Click Continue to go to the next step.", _SQ_PLUGIN_NAME_); ?>
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step3'), 'sq_onboarding'); ?>
|
4 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
5 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
6 |
|
7 |
+
<div class="card col-12 p-0">
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
+
<div class="col-8 m-0 p-0 py-2 bg-title rounded-top">
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("Import SEO & Settings", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
+
<div class="col-4 m-0 p-0 py-2 text-right">
|
14 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step4') ?>" class="btn rounded-0 btn-success btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Continue", _SQ_PLUGIN_NAME_) . ' >'; ?></a>
|
15 |
</div>
|
16 |
</div>
|
17 |
+
<div class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
18 |
<div class="card-body p-0" style="min-width: 800px;min-height: 430px">
|
19 |
+
<div class="col-12 m-0 p-0">
|
20 |
+
<div class="col-12 p-0 border-0 ">
|
21 |
|
22 |
+
<div class="col-12 pt-0 pb-4 tab-panel">
|
23 |
<?php
|
24 |
add_filter('sq_themes', array(SQ_Classes_ObjController::getClass('SQ_Models_ImportExport'), 'getAvailableThemes'));
|
25 |
add_filter('sq_plugins', array(SQ_Classes_ObjController::getClass('SQ_Models_ImportExport'), 'getAvailablePlugins'));
|
26 |
$platforms = apply_filters('sq_importList', false);
|
27 |
if ($platforms && count((array)$platforms) > 0) {
|
28 |
?>
|
29 |
+
<div class="col-12 card-title pt-4 text-center" style="font-size: 23px; line-height: 35px"><?php echo esc_html__("We've detected another SEO Plugin on your site.", _SQ_PLUGIN_NAME_); ?></div>
|
30 |
|
31 |
<div id="sq_onboarding">
|
32 |
|
33 |
+
<div class="col-12 card-title m-2 mt-5 text-center" style="font-size: 20px; line-height: 35px"><?php echo sprintf(esc_html__("%sImport your settings and SEO%s from the following plugin into your new Squirrly SEO", _SQ_PLUGIN_NAME_), '<strong>', '</strong>'); ?>:</div>
|
34 |
|
35 |
+
<div class="col-12 pt-0 pb-4 ml-3 tab-panel">
|
36 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
37 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
38 |
+
<div class="col-10 offset-1 p-0 input-group">
|
39 |
<?php
|
40 |
if ($platforms && count((array)$platforms) > 0) {
|
41 |
?>
|
51 |
<input type="hidden" name="action" value="sq_seosettings_importall"/>
|
52 |
<button type="submit" class="btn rounded-0 btn-success px-3 mx-2" style="min-width: 140px; max-height: 50px;"><?php echo esc_html__("Import", _SQ_PLUGIN_NAME_); ?></button>
|
53 |
<?php } else { ?>
|
54 |
+
<div class="col-12 my-2"><?php echo esc_html__("We couldn't find any SEO plugin or theme to import from.", _SQ_PLUGIN_NAME_); ?></div>
|
55 |
<?php } ?>
|
56 |
</div>
|
57 |
</div>
|
59 |
|
60 |
|
61 |
<div class="card-body m-0 py-0">
|
62 |
+
<div class="col-12 mt-5 mx-2">
|
63 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("What you gain", _SQ_PLUGIN_NAME_); ?>:</h5>
|
64 |
<ul style="list-style: circle; margin-left: 30px;">
|
65 |
<li style="font-size: 15px;"><?php echo esc_html__("Everything will be the same in your site, and Google will keep all your rankings safe.", _SQ_PLUGIN_NAME_); ?></li>
|
66 |
<li style="font-size: 15px;"><?php echo esc_html__("Squirrly SEO covers everything that Google used to see from the old plugin, and brings new stuff in. That's why Google will do more than keep your rankings safe. It might award you with brand new page 1 positions if you use Squirrly.", _SQ_PLUGIN_NAME_); ?></li>
|
67 |
</ul>
|
68 |
</div>
|
69 |
+
<div class="col-12 mt-5 mx-2">
|
70 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("If you decide to switch back", _SQ_PLUGIN_NAME_); ?>:</h5>
|
71 |
<ul style="list-style: circle; margin-left: 30px;">
|
72 |
<li style="font-size: 15px;"><?php echo esc_html__("you can always switch back, without any issues. Your old plugin will remain the same. We don't delete it.", _SQ_PLUGIN_NAME_); ?></li>
|
75 |
</div>
|
76 |
</div>
|
77 |
|
78 |
+
<div class="col-12 my-3 p-0 py-3 border-top">
|
79 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_onboarding', 'step4') ?>" class="btn rounded-0 btn-default btn-lg px-3 mx-4 float-sm-right"><?php echo esc_html__("Skip this step", _SQ_PLUGIN_NAME_); ?></a>
|
80 |
</div>
|
81 |
</div>
|
82 |
|
83 |
<?php } else { ?>
|
84 |
+
<div class="col-12 card-title pt-5 text-center" style="font-size: 23px; line-height: 35px"><?php echo esc_html__("We haven't detected other SEO Plugins on your site.", _SQ_PLUGIN_NAME_); ?></div>
|
85 |
|
86 |
<div class="text-center m-5">
|
87 |
<?php echo esc_html__("Click Continue to go to the next step.", _SQ_PLUGIN_NAME_); ?>
|
view/Onboarding/Step4.php
CHANGED
@@ -1,20 +1,20 @@
|
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step4'), 'sq_onboarding'); ?>
|
4 |
-
<div class="
|
5 |
-
<div class="
|
6 |
|
7 |
-
<div class="card col-
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
<div class="card-body p-2 bg-title rounded-top">
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("Final Step", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
</div>
|
14 |
-
<div class="card col-
|
15 |
<div class="card-body p-5" style="min-width: 800px;min-height: 430px">
|
16 |
-
<div class="col-
|
17 |
-
<div class="col-
|
18 |
<div class="sq_loading_steps text-center p-3" style="min-height: 60px">
|
19 |
<div class="sq_loading_step1 sq_loading_step" style="font-size: 18px;"><?php echo esc_html__("Your private SEO consultant is now accessing our cloud services to start analyzing your site.", _SQ_PLUGIN_NAME_) ?></div>
|
20 |
<div class="sq_loading_step2 sq_loading_step" style="font-size: 18px; display: none"><?php echo esc_html__("Our machine learning is now trying to match some of the data with what we have in our system.", _SQ_PLUGIN_NAME_) ?></div>
|
@@ -32,7 +32,7 @@
|
|
32 |
<?php echo esc_html__("You can now check today's SEO Goals to see what your new Consultant says you should focus on.", _SQ_PLUGIN_NAME_); ?>
|
33 |
</div>
|
34 |
|
35 |
-
<div class="col-
|
36 |
<a class="btn btn-warning m-2 py-2 px-5 center-block" href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>#tasks"><?php echo esc_html__("Check Today's SEO Goals", _SQ_PLUGIN_NAME_) ?></a>
|
37 |
</div>
|
38 |
</div>
|
1 |
<div id="sq_wrap">
|
2 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
3 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'step4'), 'sq_onboarding'); ?>
|
4 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
5 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
6 |
|
7 |
+
<div class="card col-12 p-0">
|
8 |
<div class="card-body p-2 bg-title rounded-top row">
|
9 |
<div class="card-body p-2 bg-title rounded-top">
|
10 |
<div class="sq_icons sq_squirrly_icon m-1 mx-3"></div>
|
11 |
<h3 class="card-title"><?php echo esc_html__("Final Step", _SQ_PLUGIN_NAME_); ?></h3>
|
12 |
</div>
|
13 |
</div>
|
14 |
+
<div class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
15 |
<div class="card-body p-5" style="min-width: 800px;min-height: 430px">
|
16 |
+
<div class="col-12 m-0 p-0">
|
17 |
+
<div class="col-12 mx-auto p-0 tab-panel" style="max-width: 900px">
|
18 |
<div class="sq_loading_steps text-center p-3" style="min-height: 60px">
|
19 |
<div class="sq_loading_step1 sq_loading_step" style="font-size: 18px;"><?php echo esc_html__("Your private SEO consultant is now accessing our cloud services to start analyzing your site.", _SQ_PLUGIN_NAME_) ?></div>
|
20 |
<div class="sq_loading_step2 sq_loading_step" style="font-size: 18px; display: none"><?php echo esc_html__("Our machine learning is now trying to match some of the data with what we have in our system.", _SQ_PLUGIN_NAME_) ?></div>
|
32 |
<?php echo esc_html__("You can now check today's SEO Goals to see what your new Consultant says you should focus on.", _SQ_PLUGIN_NAME_); ?>
|
33 |
</div>
|
34 |
|
35 |
+
<div class="col-12 m-0 p-0">
|
36 |
<a class="btn btn-warning m-2 py-2 px-5 center-block" href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_dashboard') ?>#tasks"><?php echo esc_html__("Check Today's SEO Goals", _SQ_PLUGIN_NAME_) ?></a>
|
37 |
</div>
|
38 |
</div>
|
view/Overview.php
CHANGED
@@ -2,11 +2,11 @@
|
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
<?php do_action('sq_form_notices'); ?>
|
4 |
<?php if (SQ_Classes_Helpers_Tools::getOption('sq_api') == '') { ?>
|
5 |
-
<div class="d-flex flex-row my-0 bg-white col-
|
6 |
<div class="sq_flex flex-grow-1 mx-0 my-2 px-3">
|
7 |
<div class="mx-auto">
|
8 |
-
<div class="bg-title col-
|
9 |
-
<div class="col-
|
10 |
<div class="mt-3 mb-4 mx-auto e-connect-link">
|
11 |
<div class="p-0 mx-2 float-left" style="width:48px;">
|
12 |
<div class="sq_wordpress_icon m-0 p-0" style="width: 48px; height: 48px;"></div>
|
@@ -26,29 +26,28 @@
|
|
26 |
|
27 |
|
28 |
<div class="sq_col sq_col_side ">
|
29 |
-
<div class="card col-
|
30 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockKnowledgeBase')->init(); ?>
|
31 |
</div>
|
32 |
</div>
|
33 |
</div>
|
34 |
<?php } else { ?>
|
35 |
-
<div class="d-flex flex-row my-0 bg-white col-
|
36 |
-
|
37 |
-
<div class="sq_flex flex-grow-1 mx-0 px-3">
|
38 |
<?php $view->getJourneyNotification(); ?>
|
39 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockStats')->init(); ?>
|
40 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
41 |
<?php SQ_Classes_ObjController::getClass('SQ_Controllers_CheckSeo')->init(); ?>
|
42 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockJorney')->init(); ?>
|
43 |
<?php } else {
|
44 |
-
echo '<div class="col-
|
45 |
} ?>
|
46 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockFeatures')->init(); ?>
|
47 |
</div>
|
48 |
|
49 |
|
50 |
-
<div class="sq_col sq_col_side
|
51 |
-
<div class="card col-
|
52 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
53 |
<?php if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
54 |
<div class="sq_account_info" style="min-height: 20px;"></div>
|
@@ -57,12 +56,12 @@
|
|
57 |
|
58 |
</div>
|
59 |
|
60 |
-
<div class="card col-
|
61 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockConnect')->init(); ?>
|
62 |
</div>
|
63 |
|
64 |
-
<div class="card col-
|
65 |
-
<div class="card col-
|
66 |
<h5 class="card-title text-center"><?php echo esc_html__("Squirrly SEO Feature Categories", _SQ_PLUGIN_NAME_); ?></h5>
|
67 |
<div class="card-body pt-4">
|
68 |
<a href="#features"><img src="<?php echo _SQ_ASSETS_URL_ . 'img/squirrly_features.png' ?>" style="width: 100%"></a>
|
@@ -72,11 +71,11 @@
|
|
72 |
|
73 |
|
74 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
75 |
-
<div class="card col-
|
76 |
<div class="my-4 py-4">
|
77 |
-
<div class="col-
|
78 |
-
<div class="checker col-
|
79 |
-
<div class="col-
|
80 |
<input type="checkbox" id="sq_seoexpert" name="sq_seoexpert" class="sq-switch" data-action="sq_ajax_seosettings_save" data-input="sq_seoexpert" data-name="sq_seoexpert" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_seoexpert') ? 'checked="checked"' : '') ?> value="1"/>
|
81 |
<label for="sq_seoexpert" class="ml-1"><?php echo esc_html__("Show Advanced SEO", _SQ_PLUGIN_NAME_); ?></label>
|
82 |
<div class="text-black-50 m-0 mt-2 p-1" style="font-size: 13px;"><?php echo esc_html__("Switch off to have the simplified version of the settings, intended for Non-SEO Experts.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -88,18 +87,18 @@
|
|
88 |
</div>
|
89 |
<?php } ?>
|
90 |
|
91 |
-
<div class="card col-
|
92 |
<div class="my-3 py-3">
|
93 |
-
<div class="col-
|
94 |
-
<div class="checker col-
|
95 |
-
<div class="col-
|
96 |
|
97 |
-
<div class="col-
|
98 |
<a href="https://wordpress.org/support/view/plugin-reviews/squirrly-seo#postform" target="_blank">
|
99 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/5stars.png' ?>">
|
100 |
</a>
|
101 |
</div>
|
102 |
-
<div class="col-
|
103 |
<a href="https://wordpress.org/support/view/plugin-reviews/squirrly-seo#postform" target="_blank" class="font-weight-bold" style="font-size: 16px;">
|
104 |
<?php echo esc_html__("Rate us if you like Squirrly SEO", _SQ_PLUGIN_NAME_) ?>
|
105 |
</a>
|
@@ -109,7 +108,7 @@
|
|
109 |
</div>
|
110 |
</div>
|
111 |
|
112 |
-
<div class="card col-
|
113 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockKnowledgeBase')->init(); ?>
|
114 |
</div>
|
115 |
</div>
|
2 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockToolbar')->init(); ?>
|
3 |
<?php do_action('sq_form_notices'); ?>
|
4 |
<?php if (SQ_Classes_Helpers_Tools::getOption('sq_api') == '') { ?>
|
5 |
+
<div class="d-flex flex-row my-0 bg-white col-12 p-0 m-0">
|
6 |
<div class="sq_flex flex-grow-1 mx-0 my-2 px-3">
|
7 |
<div class="mx-auto">
|
8 |
+
<div class="bg-title col-8 mx-auto card-body my-3 p-2 offset-2 rounded-top" style="min-width: 600px;">
|
9 |
+
<div class="col-12 text-center m-2 p-0 e-connect">
|
10 |
<div class="mt-3 mb-4 mx-auto e-connect-link">
|
11 |
<div class="p-0 mx-2 float-left" style="width:48px;">
|
12 |
<div class="sq_wordpress_icon m-0 p-0" style="width: 48px; height: 48px;"></div>
|
26 |
|
27 |
|
28 |
<div class="sq_col sq_col_side ">
|
29 |
+
<div class="card col-12 p-0">
|
30 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockKnowledgeBase')->init(); ?>
|
31 |
</div>
|
32 |
</div>
|
33 |
</div>
|
34 |
<?php } else { ?>
|
35 |
+
<div class="d-flex flex-row my-0 bg-white col-12 p-0 m-0">
|
36 |
+
<div class="sq_flex flex-grow-1 mx-0 px-2">
|
|
|
37 |
<?php $view->getJourneyNotification(); ?>
|
38 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockStats')->init(); ?>
|
39 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
40 |
<?php SQ_Classes_ObjController::getClass('SQ_Controllers_CheckSeo')->init(); ?>
|
41 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockJorney')->init(); ?>
|
42 |
<?php } else {
|
43 |
+
echo '<div class="col-12 alert alert-success text-center mx-0 my-3 p-3">' . esc_html__("You do not have permission to access Daily Goals. You need Squirrly SEO Editor role.", _SQ_PLUGIN_NAME_) . '</div>';
|
44 |
} ?>
|
45 |
<?php SQ_Classes_ObjController::getClass('SQ_Core_BlockFeatures')->init(); ?>
|
46 |
</div>
|
47 |
|
48 |
|
49 |
+
<div class="sq_col sq_col_side">
|
50 |
+
<div class="card col-12 p-0 my-2">
|
51 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
52 |
<?php if (SQ_Classes_Helpers_Tools::getMenuVisible('show_panel') && current_user_can('manage_options')) { ?>
|
53 |
<div class="sq_account_info" style="min-height: 20px;"></div>
|
56 |
|
57 |
</div>
|
58 |
|
59 |
+
<div class="card col-12 p-0 my-2">
|
60 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockConnect')->init(); ?>
|
61 |
</div>
|
62 |
|
63 |
+
<div class="card col-12 p-0 my-2">
|
64 |
+
<div class="card col-12 px-1 py-3 m-0 my-2 border-0 shadow-none">
|
65 |
<h5 class="card-title text-center"><?php echo esc_html__("Squirrly SEO Feature Categories", _SQ_PLUGIN_NAME_); ?></h5>
|
66 |
<div class="card-body pt-4">
|
67 |
<a href="#features"><img src="<?php echo _SQ_ASSETS_URL_ . 'img/squirrly_features.png' ?>" style="width: 100%"></a>
|
71 |
|
72 |
|
73 |
<?php if (current_user_can('sq_manage_snippets')) { ?>
|
74 |
+
<div class="card col-12 p-0 my-2">
|
75 |
<div class="my-4 py-4">
|
76 |
+
<div class="col-12 row m-0">
|
77 |
+
<div class="checker col-12 row m-0 p-0">
|
78 |
+
<div class="col-12 p-0 m-0 sq-switch sq-switch-sm sq_save_ajax">
|
79 |
<input type="checkbox" id="sq_seoexpert" name="sq_seoexpert" class="sq-switch" data-action="sq_ajax_seosettings_save" data-input="sq_seoexpert" data-name="sq_seoexpert" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_seoexpert') ? 'checked="checked"' : '') ?> value="1"/>
|
80 |
<label for="sq_seoexpert" class="ml-1"><?php echo esc_html__("Show Advanced SEO", _SQ_PLUGIN_NAME_); ?></label>
|
81 |
<div class="text-black-50 m-0 mt-2 p-1" style="font-size: 13px;"><?php echo esc_html__("Switch off to have the simplified version of the settings, intended for Non-SEO Experts.", _SQ_PLUGIN_NAME_); ?></div>
|
87 |
</div>
|
88 |
<?php } ?>
|
89 |
|
90 |
+
<div class="card col-12 p-0 my-2">
|
91 |
<div class="my-3 py-3">
|
92 |
+
<div class="col-12 row m-0">
|
93 |
+
<div class="checker col-12 row m-0 p-0 text-center">
|
94 |
+
<div class="col-12 my-2 mx-auto p-0 font-weight-bold" style="font-size: 18px;"><?php echo esc_html__("We Need Your Support", _SQ_PLUGIN_NAME_) ?></div>
|
95 |
|
96 |
+
<div class="col-12 my-2 p-0">
|
97 |
<a href="https://wordpress.org/support/view/plugin-reviews/squirrly-seo#postform" target="_blank">
|
98 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/5stars.png' ?>">
|
99 |
</a>
|
100 |
</div>
|
101 |
+
<div class="col-12 my-2 p-0">
|
102 |
<a href="https://wordpress.org/support/view/plugin-reviews/squirrly-seo#postform" target="_blank" class="font-weight-bold" style="font-size: 16px;">
|
103 |
<?php echo esc_html__("Rate us if you like Squirrly SEO", _SQ_PLUGIN_NAME_) ?>
|
104 |
</a>
|
108 |
</div>
|
109 |
</div>
|
110 |
|
111 |
+
<div class="card col-12 p-0 my-2">
|
112 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockKnowledgeBase')->init(); ?>
|
113 |
</div>
|
114 |
</div>
|
view/Ranking/Gscsync.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'sq_rankings'), 'sq_rankings'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_rankings_icon m-2"></div>
|
@@ -15,15 +15,15 @@
|
|
15 |
<h3 class="card-title"><?php echo esc_html__("Google Search Console Keywords Sync", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"><?php echo esc_html__("See the trending keywords suitable for your website's future topics. We check for new keywords weekly based on your latest researches.", _SQ_PLUGIN_NAME_); ?></div>
|
17 |
</div>
|
18 |
-
<div id="sq_keywords" class="card col-
|
19 |
<div class="alert alert-success text-center">
|
20 |
<?php echo esc_html__("This is the list of keywords you have in Google Search Console. Information for the last 90 days. You can add keywords that you find relevant to your Briefcase and to the Rankings section.", _SQ_PLUGIN_NAME_); ?>
|
21 |
</div>
|
22 |
|
23 |
|
24 |
<div class="card-body p-0">
|
25 |
-
<div class="col-
|
26 |
-
<div class="card col-
|
27 |
<?php if (is_array($view->suggested) && !empty($view->suggested)) { ?>
|
28 |
<table class="table table-striped table-hover">
|
29 |
<thead>
|
@@ -100,10 +100,10 @@
|
|
100 |
<div class="card-body">
|
101 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Google Search Console Keywords Sync", _SQ_PLUGIN_NAME_); ?></h4>
|
102 |
|
103 |
-
<div class="col-
|
104 |
<div><?php echo sprintf(esc_html__("If you're new to SEO, you probably don't know yet how slow Google actually is with regard to crawling and gathering data about sites which are not as big as The New York Times, Amazon.com, etc. %s Here are some resources. %s We could not find any keywords from your GSC account, because Google doesn't have enough data about your site yet. %s Give Google more time to learn about your site. Until then, keep working on your SEO Goals from Squirrly SEO.", _SQ_PLUGIN_NAME_), '<br /><br /><a href="https://www.squirrly.co/seo/kit/" target="_blank">', '</a><br /><br />', '<br /><br />'); ?></div>
|
105 |
</div>
|
106 |
-
<div class="col-
|
107 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: Which Keyword Should I Choose?", _SQ_PLUGIN_NAME_); ?></h5>
|
108 |
<ul>
|
109 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sSquirrly Briefcase%s you can send keywords to Rank Checker to track the SERP evolution.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') . '" >', '</a>'); ?></li>
|
@@ -120,7 +120,7 @@
|
|
120 |
</div>
|
121 |
</div>
|
122 |
<div class="sq_col_side sticky">
|
123 |
-
<div class="card col-
|
124 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
125 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
126 |
</div>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'sq_rankings'), 'sq_rankings'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_rankings_icon m-2"></div>
|
15 |
<h3 class="card-title"><?php echo esc_html__("Google Search Console Keywords Sync", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"><?php echo esc_html__("See the trending keywords suitable for your website's future topics. We check for new keywords weekly based on your latest researches.", _SQ_PLUGIN_NAME_); ?></div>
|
17 |
</div>
|
18 |
+
<div id="sq_keywords" class="card col-12 p-0 tab-panel border-0">
|
19 |
<div class="alert alert-success text-center">
|
20 |
<?php echo esc_html__("This is the list of keywords you have in Google Search Console. Information for the last 90 days. You can add keywords that you find relevant to your Briefcase and to the Rankings section.", _SQ_PLUGIN_NAME_); ?>
|
21 |
</div>
|
22 |
|
23 |
|
24 |
<div class="card-body p-0">
|
25 |
+
<div class="col-12 m-0 p-0">
|
26 |
+
<div class="card col-12 my-4 p-0 px-3 border-0 ">
|
27 |
<?php if (is_array($view->suggested) && !empty($view->suggested)) { ?>
|
28 |
<table class="table table-striped table-hover">
|
29 |
<thead>
|
100 |
<div class="card-body">
|
101 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Google Search Console Keywords Sync", _SQ_PLUGIN_NAME_); ?></h4>
|
102 |
|
103 |
+
<div class="col-12 mt-5 mx-2">
|
104 |
<div><?php echo sprintf(esc_html__("If you're new to SEO, you probably don't know yet how slow Google actually is with regard to crawling and gathering data about sites which are not as big as The New York Times, Amazon.com, etc. %s Here are some resources. %s We could not find any keywords from your GSC account, because Google doesn't have enough data about your site yet. %s Give Google more time to learn about your site. Until then, keep working on your SEO Goals from Squirrly SEO.", _SQ_PLUGIN_NAME_), '<br /><br /><a href="https://www.squirrly.co/seo/kit/" target="_blank">', '</a><br /><br />', '<br /><br />'); ?></div>
|
105 |
</div>
|
106 |
+
<div class="col-12 mt-5 mx-2">
|
107 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: Which Keyword Should I Choose?", _SQ_PLUGIN_NAME_); ?></h5>
|
108 |
<ul>
|
109 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sSquirrly Briefcase%s you can send keywords to Rank Checker to track the SERP evolution.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') . '" >', '</a>'); ?></li>
|
120 |
</div>
|
121 |
</div>
|
122 |
<div class="sq_col_side sticky">
|
123 |
+
<div class="card col-12 p-0">
|
124 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
125 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
126 |
</div>
|
view/Ranking/Rankings.php
CHANGED
@@ -14,16 +14,16 @@ echo (string)$view->getScripts();
|
|
14 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
15 |
<?php
|
16 |
if (!current_user_can('sq_manage_focuspages')) {
|
17 |
-
echo '<div class="col-
|
18 |
return;
|
19 |
}
|
20 |
?>
|
21 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'rankings'), 'sq_rankings'); ?>
|
22 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
23 |
-
<div class="flex-grow-1
|
24 |
<?php do_action('sq_form_notices'); ?>
|
25 |
|
26 |
-
<div class="card col-
|
27 |
<div class="card-body p-2 bg-title rounded-top">
|
28 |
<div class="sq_icons_content p-3 py-4">
|
29 |
<div class="sq_icons sq_rankings_icon m-2"></div>
|
@@ -37,11 +37,11 @@ echo (string)$view->getScripts();
|
|
37 |
</div>
|
38 |
|
39 |
|
40 |
-
<div id="sq_ranks" class="card col-
|
41 |
<?php do_action('sq_subscription_notices'); ?>
|
42 |
|
43 |
<?php if (!$connect->google_search_console) { ?>
|
44 |
-
<div class="form-group my-2 col-
|
45 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
46 |
</div>
|
47 |
<?php } ?>
|
@@ -53,7 +53,7 @@ echo (string)$view->getScripts();
|
|
53 |
SQ_Classes_Helpers_Tools::getIsset('type') ||
|
54 |
SQ_Classes_Helpers_Tools::getValue('skeyword', '')
|
55 |
) { ?>
|
56 |
-
<div class="text-right col-
|
57 |
<div class="sq_serp_settings_button mx-1 my-0">
|
58 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
59 |
</div>
|
@@ -64,7 +64,7 @@ echo (string)$view->getScripts();
|
|
64 |
<?php if (isset($view->info) && !empty($view->info)) { ?>
|
65 |
<?php if (!SQ_Classes_Helpers_Tools::getValue('skeyword', false)) { ?>
|
66 |
<div class="sq_stats row px-2 py-0 m-0 ">
|
67 |
-
<div class="card col
|
68 |
<?php
|
69 |
if (isset($view->info->average) && !empty($view->info->average)) {
|
70 |
$today_average = end($view->info->average);
|
@@ -91,8 +91,8 @@ echo (string)$view->getScripts();
|
|
91 |
<div class="card-content overflow-hidden m-0">
|
92 |
<div class="media align-items-stretch">
|
93 |
<div class="media-body p-3">
|
94 |
-
<div class="col-
|
95 |
-
<div class="col-
|
96 |
<h5>
|
97 |
<a href="<?php echo esc_url(add_query_arg(array('ranked' => 1), SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings'))) ?>" data-toggle="tooltip" title="<?php echo esc_html__("Only show ranked articles", _SQ_PLUGIN_NAME_) ?>">
|
98 |
<i class="fa fa-line-chart pull-left mt-1" aria-hidden="true"></i>
|
@@ -100,7 +100,7 @@ echo (string)$view->getScripts();
|
|
100 |
</a></h5>
|
101 |
<span class="small"><?php echo esc_html__("Today Avg. Ranking", _SQ_PLUGIN_NAME_); ?></span>
|
102 |
</div>
|
103 |
-
<div class="col-
|
104 |
<h5>
|
105 |
<a href="<?php echo esc_url(add_query_arg(array('schanges' => 1), SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings'))) ?>" data-toggle="tooltip" title="<?php echo esc_html__("Only show SERP changes", _SQ_PLUGIN_NAME_) ?>">
|
106 |
<i class="fa fa-arrows-v pull-left mt-1" aria-hidden="true"></i>
|
@@ -129,7 +129,7 @@ echo (string)$view->getScripts();
|
|
129 |
</div>
|
130 |
|
131 |
<div class="media-right py-3 media-middle ">
|
132 |
-
<div class="col-
|
133 |
<?php if (isset($view->info->average) && count((array)$view->info->average) > 1) { ?>
|
134 |
<div id="sq_chart" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
135 |
<script>
|
@@ -148,7 +148,7 @@ echo (string)$view->getScripts();
|
|
148 |
</div>
|
149 |
</div>
|
150 |
</div>
|
151 |
-
<div class="card col
|
152 |
<div class="card-content overflow-hidden m-0">
|
153 |
<div class="media align-items-stretch">
|
154 |
<div class="media-body p-3" style="min-height: 187px;">
|
@@ -158,12 +158,12 @@ echo (string)$view->getScripts();
|
|
158 |
|
159 |
<div class="media-right py-3 media-middle ">
|
160 |
<?php if ($topten > 0) { ?>
|
161 |
-
<h6 class="col-
|
162 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("%s keyword ranked in TOP 10", _SQ_PLUGIN_NAME_), '<strong>' . $topten . '</strong>'); ?>
|
163 |
</h6>
|
164 |
<?php } ?>
|
165 |
<?php if ($positive_changes > 0) { ?>
|
166 |
-
<h6 class="col-
|
167 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("%s keyword ranked better today", _SQ_PLUGIN_NAME_), '<strong>' . $positive_changes . '</strong>'); ?>
|
168 |
</h6>
|
169 |
<?php } ?>
|
@@ -175,13 +175,13 @@ echo (string)$view->getScripts();
|
|
175 |
$average_changes = $view->info->average[1][1] - $view->info->average[(count($view->info->average) - 1)][1];
|
176 |
}
|
177 |
if ($average_changes > 0) { ?>
|
178 |
-
<h6 class="col-
|
179 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("Ranks improved with an average of %s in the last 7 days.", _SQ_PLUGIN_NAME_), '<strong>' . $average_changes . '</strong>'); ?>
|
180 |
</h6>
|
181 |
<?php }
|
182 |
} ?>
|
183 |
<?php if ($topten == 0 && $positive_changes == 0 && $average_changes == 0) { ?>
|
184 |
-
<h4 class="col-
|
185 |
<?php } else { ?>
|
186 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the ranking results I get for my Pages with Squirrly SEO plugin for #WordPress. @SquirrlyHQ #SEO') ?>">Share Your Success</a>
|
187 |
<?php } ?>
|
@@ -196,9 +196,9 @@ echo (string)$view->getScripts();
|
|
196 |
<?php } ?>
|
197 |
<?php } ?>
|
198 |
<?php } ?>
|
199 |
-
<div class="card col-
|
200 |
|
201 |
-
<div class="col-5">
|
202 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
203 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
204 |
<option value="sq_ajax_rank_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the keyword?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
@@ -209,7 +209,8 @@ echo (string)$view->getScripts();
|
|
209 |
<button class="sq_bulk_submit btn btn-sm btn-success"><?php echo esc_html__("Apply"); ?></button>
|
210 |
</div>
|
211 |
|
212 |
-
<
|
|
|
213 |
<thead>
|
214 |
<tr>
|
215 |
<th style="width: 10px;"></th>
|
@@ -336,6 +337,7 @@ echo (string)$view->getScripts();
|
|
336 |
?>
|
337 |
</tbody>
|
338 |
</table>
|
|
|
339 |
|
340 |
<?php
|
341 |
foreach ($view->ranks as $key => $row) {
|
@@ -356,37 +358,37 @@ echo (string)$view->getScripts();
|
|
356 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
357 |
</div>
|
358 |
<div class="modal-body pt-0" style="min-height: 90px;">
|
359 |
-
<ul class="col-
|
360 |
<li class="row py-2 border-bottom">
|
361 |
-
<div class="col-
|
362 |
<strong><a href="<?php echo esc_url($row->permalink) ?>" target="_blank"><?php echo urldecode($row->permalink) ?></a></strong>
|
363 |
</div>
|
364 |
</li>
|
365 |
|
366 |
<li class="row py-2 border-bottom">
|
367 |
-
<div class="col-
|
368 |
-
<div class="col-
|
369 |
<strong><?php echo number_format($row->impressions, 0, '.', ',') ?></strong>
|
370 |
</div>
|
371 |
</li>
|
372 |
<li class="row py-2 border-bottom">
|
373 |
-
<div class="col-
|
374 |
-
<div class="col-
|
375 |
<strong><?php echo number_format($row->clicks, 0, '.', ',') ?></strong>
|
376 |
</div>
|
377 |
</li>
|
378 |
|
379 |
<li class="row py-2 border-bottom">
|
380 |
-
<div class="col-
|
381 |
-
<div class="col-
|
382 |
<strong><?php echo((int)$row->optimized > 0 ? (int)$row->optimized . '%' : 'N/A') ?></strong>
|
383 |
</div>
|
384 |
</li>
|
385 |
|
386 |
<?php if ($view->checkin->subscription_serpcheck) { ?>
|
387 |
<li class="row py-3 border-bottom">
|
388 |
-
<div class="col-
|
389 |
-
<div class="col-
|
390 |
<?php
|
391 |
echo "<strong>" . number_format($row->facebook, 0, '.', ',') . "</strong>" . ' ' . esc_html__("Facebook Shares", _SQ_PLUGIN_NAME_) . "<br />";
|
392 |
echo "<strong>" . number_format($row->reddit, 0, '.', ',') . "</strong>" . ' ' . esc_html__("Reddit Shares", _SQ_PLUGIN_NAME_) . "<br />";
|
@@ -397,16 +399,16 @@ echo (string)$view->getScripts();
|
|
397 |
<?php } ?>
|
398 |
|
399 |
<li class="row py-2 border-bottom">
|
400 |
-
<div class="col-
|
401 |
-
<div class="col-
|
402 |
<strong><?php echo esc_html($row->country) ?></strong>
|
403 |
</div>
|
404 |
</li>
|
405 |
|
406 |
<?php if (isset($row->datetime)) { ?>
|
407 |
<li class="row py-2 border-bottom-0">
|
408 |
-
<div class="col-
|
409 |
-
<div class="col-
|
410 |
<strong><?php echo date(get_option('date_format'), strtotime($row->datetime)) ?></strong>
|
411 |
</div>
|
412 |
</li>
|
@@ -432,12 +434,12 @@ echo (string)$view->getScripts();
|
|
432 |
<?php } elseif (!SQ_Classes_Error::isError()) { ?>
|
433 |
<div class="card-body">
|
434 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly Rankings", _SQ_PLUGIN_NAME_); ?></h4>
|
435 |
-
<div class="col-
|
436 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') ?>" class="btn btn-lg btn-primary">
|
437 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add keywords in Briefcase", _SQ_PLUGIN_NAME_); ?>
|
438 |
</a>
|
439 |
|
440 |
-
<div class="col-
|
441 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: How to add Keywords in Rankings?", _SQ_PLUGIN_NAME_); ?></h5>
|
442 |
<ul>
|
443 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sSquirrly Briefcase%s you can send keywords to Rank Checker to track the SERP evolution.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') . '" >', '</a>'); ?></li>
|
@@ -448,11 +450,11 @@ echo (string)$view->getScripts();
|
|
448 |
</div>
|
449 |
<?php } else { ?>
|
450 |
<div class="card-body">
|
451 |
-
<div class="col-
|
452 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
453 |
</div>
|
454 |
-
<div class="col-
|
455 |
-
<div class="col-
|
456 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
457 |
</div>
|
458 |
</div>
|
@@ -461,7 +463,7 @@ echo (string)$view->getScripts();
|
|
461 |
</div>
|
462 |
|
463 |
<?php if ($connect->google_search_console) { ?>
|
464 |
-
<div class="row col-
|
465 |
<div class="my-0 mx-auto justify-content-center text-center">
|
466 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'gscsync') ?>" class="btn btn-info"><?php echo esc_html__("Synchronize Keywords with Google Search Console", _SQ_PLUGIN_NAME_); ?></a>
|
467 |
</div>
|
@@ -472,7 +474,7 @@ echo (string)$view->getScripts();
|
|
472 |
|
473 |
</div>
|
474 |
<div class="sq_col_side sticky">
|
475 |
-
<div class="card col-
|
476 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
477 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
478 |
<?php
|
14 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
15 |
<?php
|
16 |
if (!current_user_can('sq_manage_focuspages')) {
|
17 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
18 |
return;
|
19 |
}
|
20 |
?>
|
21 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'rankings'), 'sq_rankings'); ?>
|
22 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
23 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
24 |
<?php do_action('sq_form_notices'); ?>
|
25 |
|
26 |
+
<div class="card col-12 p-0">
|
27 |
<div class="card-body p-2 bg-title rounded-top">
|
28 |
<div class="sq_icons_content p-3 py-4">
|
29 |
<div class="sq_icons sq_rankings_icon m-2"></div>
|
37 |
</div>
|
38 |
|
39 |
|
40 |
+
<div id="sq_ranks" class="card col-12 p-0 tab-panel border-0">
|
41 |
<?php do_action('sq_subscription_notices'); ?>
|
42 |
|
43 |
<?php if (!$connect->google_search_console) { ?>
|
44 |
+
<div class="form-group my-2 col-10 offset-1">
|
45 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
46 |
</div>
|
47 |
<?php } ?>
|
53 |
SQ_Classes_Helpers_Tools::getIsset('type') ||
|
54 |
SQ_Classes_Helpers_Tools::getValue('skeyword', '')
|
55 |
) { ?>
|
56 |
+
<div class="text-right col-12 p-0 px-2 my-2">
|
57 |
<div class="sq_serp_settings_button mx-1 my-0">
|
58 |
<button type="button" class="btn btn-info p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
59 |
</div>
|
64 |
<?php if (isset($view->info) && !empty($view->info)) { ?>
|
65 |
<?php if (!SQ_Classes_Helpers_Tools::getValue('skeyword', false)) { ?>
|
66 |
<div class="sq_stats row px-2 py-0 m-0 ">
|
67 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
68 |
<?php
|
69 |
if (isset($view->info->average) && !empty($view->info->average)) {
|
70 |
$today_average = end($view->info->average);
|
91 |
<div class="card-content overflow-hidden m-0">
|
92 |
<div class="media align-items-stretch">
|
93 |
<div class="media-body p-3">
|
94 |
+
<div class="col-12 row">
|
95 |
+
<div class="col-6 border-right">
|
96 |
<h5>
|
97 |
<a href="<?php echo esc_url(add_query_arg(array('ranked' => 1), SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings'))) ?>" data-toggle="tooltip" title="<?php echo esc_html__("Only show ranked articles", _SQ_PLUGIN_NAME_) ?>">
|
98 |
<i class="fa fa-line-chart pull-left mt-1" aria-hidden="true"></i>
|
100 |
</a></h5>
|
101 |
<span class="small"><?php echo esc_html__("Today Avg. Ranking", _SQ_PLUGIN_NAME_); ?></span>
|
102 |
</div>
|
103 |
+
<div class="col-6">
|
104 |
<h5>
|
105 |
<a href="<?php echo esc_url(add_query_arg(array('schanges' => 1), SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings'))) ?>" data-toggle="tooltip" title="<?php echo esc_html__("Only show SERP changes", _SQ_PLUGIN_NAME_) ?>">
|
106 |
<i class="fa fa-arrows-v pull-left mt-1" aria-hidden="true"></i>
|
129 |
</div>
|
130 |
|
131 |
<div class="media-right py-3 media-middle ">
|
132 |
+
<div class="col-12 px-0">
|
133 |
<?php if (isset($view->info->average) && count((array)$view->info->average) > 1) { ?>
|
134 |
<div id="sq_chart" class="sq_chart no-p" style="width:95%; height: 90px;"></div>
|
135 |
<script>
|
148 |
</div>
|
149 |
</div>
|
150 |
</div>
|
151 |
+
<div class="card col p-0 m-1 bg-white shadow-sm">
|
152 |
<div class="card-content overflow-hidden m-0">
|
153 |
<div class="media align-items-stretch">
|
154 |
<div class="media-body p-3" style="min-height: 187px;">
|
158 |
|
159 |
<div class="media-right py-3 media-middle ">
|
160 |
<?php if ($topten > 0) { ?>
|
161 |
+
<h6 class="col-12 px-0 text-success" style="line-height: 25px;font-size: 14px;">
|
162 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("%s keyword ranked in TOP 10", _SQ_PLUGIN_NAME_), '<strong>' . $topten . '</strong>'); ?>
|
163 |
</h6>
|
164 |
<?php } ?>
|
165 |
<?php if ($positive_changes > 0) { ?>
|
166 |
+
<h6 class="col-12 px-0 text-success" style="line-height: 25px;font-size: 14px;">
|
167 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("%s keyword ranked better today", _SQ_PLUGIN_NAME_), '<strong>' . $positive_changes . '</strong>'); ?>
|
168 |
</h6>
|
169 |
<?php } ?>
|
175 |
$average_changes = $view->info->average[1][1] - $view->info->average[(count($view->info->average) - 1)][1];
|
176 |
}
|
177 |
if ($average_changes > 0) { ?>
|
178 |
+
<h6 class="col-12 px-0 text-success" style="line-height: 25px;font-size: 14px;">
|
179 |
<i class="fa fa-arrow-up" style="font-size: 9px !important;margin: 0 5px;vertical-align: middle;"></i><?php echo sprintf(esc_html__("Ranks improved with an average of %s in the last 7 days.", _SQ_PLUGIN_NAME_), '<strong>' . $average_changes . '</strong>'); ?>
|
180 |
</h6>
|
181 |
<?php }
|
182 |
} ?>
|
183 |
<?php if ($topten == 0 && $positive_changes == 0 && $average_changes == 0) { ?>
|
184 |
+
<h4 class="col-12 px-0 text-info"><?php echo esc_html__("No progress found yet", _SQ_PLUGIN_NAME_) ?></h4>
|
185 |
<?php } else { ?>
|
186 |
<a class="btn btn-sm btn-success" href="https://twitter.com/intent/tweet?text=<?php echo urlencode('I love the ranking results I get for my Pages with Squirrly SEO plugin for #WordPress. @SquirrlyHQ #SEO') ?>">Share Your Success</a>
|
187 |
<?php } ?>
|
196 |
<?php } ?>
|
197 |
<?php } ?>
|
198 |
<?php } ?>
|
199 |
+
<div class="card col-12 py-3 px-0 m-0 border-0">
|
200 |
|
201 |
+
<div class="col-5 p-1">
|
202 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
203 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
204 |
<option value="sq_ajax_rank_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the keyword?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
209 |
<button class="sq_bulk_submit btn btn-sm btn-success"><?php echo esc_html__("Apply"); ?></button>
|
210 |
</div>
|
211 |
|
212 |
+
<div class="p-1">
|
213 |
+
<table class="table table-striped table-hover table-ranks">
|
214 |
<thead>
|
215 |
<tr>
|
216 |
<th style="width: 10px;"></th>
|
337 |
?>
|
338 |
</tbody>
|
339 |
</table>
|
340 |
+
</div>
|
341 |
|
342 |
<?php
|
343 |
foreach ($view->ranks as $key => $row) {
|
358 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
359 |
</div>
|
360 |
<div class="modal-body pt-0" style="min-height: 90px;">
|
361 |
+
<ul class="col-12">
|
362 |
<li class="row py-2 border-bottom">
|
363 |
+
<div class="col-12">
|
364 |
<strong><a href="<?php echo esc_url($row->permalink) ?>" target="_blank"><?php echo urldecode($row->permalink) ?></a></strong>
|
365 |
</div>
|
366 |
</li>
|
367 |
|
368 |
<li class="row py-2 border-bottom">
|
369 |
+
<div class="col-6"><?php echo esc_html__("Impressions", _SQ_PLUGIN_NAME_) ?>:</div>
|
370 |
+
<div class="col-6">
|
371 |
<strong><?php echo number_format($row->impressions, 0, '.', ',') ?></strong>
|
372 |
</div>
|
373 |
</li>
|
374 |
<li class="row py-2 border-bottom">
|
375 |
+
<div class="col-6"><?php echo esc_html__("Clicks", _SQ_PLUGIN_NAME_) ?>:</div>
|
376 |
+
<div class="col-6">
|
377 |
<strong><?php echo number_format($row->clicks, 0, '.', ',') ?></strong>
|
378 |
</div>
|
379 |
</li>
|
380 |
|
381 |
<li class="row py-2 border-bottom">
|
382 |
+
<div class="col-6"><?php echo esc_html__("Optimized with SLA", _SQ_PLUGIN_NAME_) ?>:</div>
|
383 |
+
<div class="col-6">
|
384 |
<strong><?php echo((int)$row->optimized > 0 ? (int)$row->optimized . '%' : 'N/A') ?></strong>
|
385 |
</div>
|
386 |
</li>
|
387 |
|
388 |
<?php if ($view->checkin->subscription_serpcheck) { ?>
|
389 |
<li class="row py-3 border-bottom">
|
390 |
+
<div class="col-6"><?php echo esc_html__("Social Shares", _SQ_PLUGIN_NAME_) ?>:</div>
|
391 |
+
<div class="col-6">
|
392 |
<?php
|
393 |
echo "<strong>" . number_format($row->facebook, 0, '.', ',') . "</strong>" . ' ' . esc_html__("Facebook Shares", _SQ_PLUGIN_NAME_) . "<br />";
|
394 |
echo "<strong>" . number_format($row->reddit, 0, '.', ',') . "</strong>" . ' ' . esc_html__("Reddit Shares", _SQ_PLUGIN_NAME_) . "<br />";
|
399 |
<?php } ?>
|
400 |
|
401 |
<li class="row py-2 border-bottom">
|
402 |
+
<div class="col-6"><?php echo esc_html__("Country", _SQ_PLUGIN_NAME_) ?>:</div>
|
403 |
+
<div class="col-6">
|
404 |
<strong><?php echo esc_html($row->country) ?></strong>
|
405 |
</div>
|
406 |
</li>
|
407 |
|
408 |
<?php if (isset($row->datetime)) { ?>
|
409 |
<li class="row py-2 border-bottom-0">
|
410 |
+
<div class="col-6"><?php echo esc_html__("Date", _SQ_PLUGIN_NAME_) ?>:</div>
|
411 |
+
<div class="col-6">
|
412 |
<strong><?php echo date(get_option('date_format'), strtotime($row->datetime)) ?></strong>
|
413 |
</div>
|
414 |
</li>
|
434 |
<?php } elseif (!SQ_Classes_Error::isError()) { ?>
|
435 |
<div class="card-body">
|
436 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly Rankings", _SQ_PLUGIN_NAME_); ?></h4>
|
437 |
+
<div class="col-12 m-2 text-center">
|
438 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') ?>" class="btn btn-lg btn-primary">
|
439 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add keywords in Briefcase", _SQ_PLUGIN_NAME_); ?>
|
440 |
</a>
|
441 |
|
442 |
+
<div class="col-12 mt-5 mx-2">
|
443 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: How to add Keywords in Rankings?", _SQ_PLUGIN_NAME_); ?></h5>
|
444 |
<ul>
|
445 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sSquirrly Briefcase%s you can send keywords to Rank Checker to track the SERP evolution.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') . '" >', '</a>'); ?></li>
|
450 |
</div>
|
451 |
<?php } else { ?>
|
452 |
<div class="card-body">
|
453 |
+
<div class="col-12 px-2 py-3 text-center">
|
454 |
<img src="<?php echo _SQ_ASSETS_URL_ . 'img/settings/noconnection.jpg' ?>" style="width: 300px">
|
455 |
</div>
|
456 |
+
<div class="col-12 m-2 text-center">
|
457 |
+
<div class="col-12 alert alert-success text-center m-0 p-3">
|
458 |
<i class="fa fa-exclamation-triangle" style="font-size: 18px !important;"></i> <?php echo sprintf(esc_html__("There is a connection error with Squirrly Cloud. Please check the connection and %srefresh the page%s.", _SQ_PLUGIN_NAME_), '<a href="javascript:location.reload();" >', '</a>') ?>
|
459 |
</div>
|
460 |
</div>
|
463 |
</div>
|
464 |
|
465 |
<?php if ($connect->google_search_console) { ?>
|
466 |
+
<div class="row col-12 my-4 text-center">
|
467 |
<div class="my-0 mx-auto justify-content-center text-center">
|
468 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'gscsync') ?>" class="btn btn-info"><?php echo esc_html__("Synchronize Keywords with Google Search Console", _SQ_PLUGIN_NAME_); ?></a>
|
469 |
</div>
|
474 |
|
475 |
</div>
|
476 |
<div class="sq_col_side sticky">
|
477 |
+
<div class="card col-12 p-0">
|
478 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
479 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
480 |
<?php
|
view/Ranking/Settings.php
CHANGED
@@ -4,14 +4,14 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_rankings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
-
<div class="form-group my-4 col-
|
15 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
16 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
17 |
</div>
|
@@ -20,7 +20,7 @@
|
|
20 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_ranking_settings', 'sq_nonce'); ?>
|
21 |
<input type="hidden" name="action" value="sq_ranking_settings"/>
|
22 |
|
23 |
-
<div class="card col-
|
24 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
25 |
<div class="card-body p-2 bg-title rounded-top">
|
26 |
<div class="sq_icons_content p-3 py-4">
|
@@ -30,20 +30,20 @@
|
|
30 |
<div class="card-title-description m-2"></div>
|
31 |
</div>
|
32 |
</div>
|
33 |
-
<div id="sq_seosettings" class="card col-
|
34 |
<div class="card-body p-0">
|
35 |
-
<div class="col-
|
36 |
-
<div class="card col-
|
37 |
|
38 |
-
<div class="col-
|
39 |
|
40 |
|
41 |
-
<div class="col-
|
42 |
-
<div class="col-
|
43 |
<div class="font-weight-bold"><?php echo esc_html__("Google Country", _SQ_PLUGIN_NAME_); ?>:</div>
|
44 |
<div class="small text-black-50"><?php echo esc_html__("Select the Google country for which Squirrly will check the Google rank.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
</div>
|
46 |
-
<div class="col-
|
47 |
<select name="sq_google_country" class="form-control bg-input mb-1">
|
48 |
<option value="com"><?php echo esc_html__("Default", _SQ_PLUGIN_NAME_); ?> - Google.com (http://www.google.com/)</option>
|
49 |
<option value="as"><?php echo esc_html__("American Samoa", _SQ_PLUGIN_NAME_); ?> (http://www.google.as/)</option>
|
@@ -170,13 +170,13 @@
|
|
170 |
|
171 |
</div>
|
172 |
|
173 |
-
<div class="col-
|
174 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
175 |
</div>
|
176 |
</form>
|
177 |
</div>
|
178 |
<div class="sq_col_side sticky">
|
179 |
-
<div class="card col-
|
180 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
181 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
182 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_focuspages')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_rankings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
+
<div class="form-group my-4 col-10 offset-1">
|
15 |
<?php echo $view->getView('Connect/GoogleAnalytics'); ?>
|
16 |
<?php echo $view->getView('Connect/GoogleSearchConsole'); ?>
|
17 |
</div>
|
20 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_ranking_settings', 'sq_nonce'); ?>
|
21 |
<input type="hidden" name="action" value="sq_ranking_settings"/>
|
22 |
|
23 |
+
<div class="card col-12 p-0">
|
24 |
<div class="card-body p-0 m-0 bg-title rounded-top row">
|
25 |
<div class="card-body p-2 bg-title rounded-top">
|
26 |
<div class="sq_icons_content p-3 py-4">
|
30 |
<div class="card-title-description m-2"></div>
|
31 |
</div>
|
32 |
</div>
|
33 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
34 |
<div class="card-body p-0">
|
35 |
+
<div class="col-12 m-0 p-0">
|
36 |
+
<div class="card col-12 p-0 border-0 ">
|
37 |
|
38 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
39 |
|
40 |
|
41 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
42 |
+
<div class="col-4 p-1 pr-3">
|
43 |
<div class="font-weight-bold"><?php echo esc_html__("Google Country", _SQ_PLUGIN_NAME_); ?>:</div>
|
44 |
<div class="small text-black-50"><?php echo esc_html__("Select the Google country for which Squirrly will check the Google rank.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
</div>
|
46 |
+
<div class="col-8 p-0 input-group">
|
47 |
<select name="sq_google_country" class="form-control bg-input mb-1">
|
48 |
<option value="com"><?php echo esc_html__("Default", _SQ_PLUGIN_NAME_); ?> - Google.com (http://www.google.com/)</option>
|
49 |
<option value="as"><?php echo esc_html__("American Samoa", _SQ_PLUGIN_NAME_); ?> (http://www.google.as/)</option>
|
170 |
|
171 |
</div>
|
172 |
|
173 |
+
<div class="col-12 my-3 p-0">
|
174 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
175 |
</div>
|
176 |
</form>
|
177 |
</div>
|
178 |
<div class="sq_col_side sticky">
|
179 |
+
<div class="card col-12 p-0">
|
180 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
181 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
182 |
</div>
|
view/Research/Briefcase.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'briefcase'), 'sq_research'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right">
|
13 |
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#briefcase" target="_blank"><i class="fa fa-question-circle"></i></a>
|
@@ -18,20 +18,20 @@
|
|
18 |
<h3 class="card-title"><?php echo esc_html__("Briefcase", _SQ_PLUGIN_NAME_); ?>:</h3>
|
19 |
<div class="card-title-description m-2"><?php echo esc_html__("Briefcase is essential to managing your SEO Strategy. With Briefcase you'll find the best opportunities for keywords you're using in the Awareness Stage, Decision Stage and other stages you may plan for your Customer's Journey.", _SQ_PLUGIN_NAME_); ?></div>
|
20 |
</div>
|
21 |
-
<div id="sq_briefcase" class="card col-
|
22 |
<?php do_action('sq_subscription_notices'); ?>
|
23 |
|
24 |
<?php if (isset($view->keywords) && !empty($view->keywords)) { ?>
|
25 |
<div class="row px-3">
|
26 |
-
<form method="get" class="form-inline col-
|
27 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
28 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
29 |
-
<div class="col-
|
30 |
<h3 class="card-title text-dark p-2"><?php echo esc_html__("Labels", _SQ_PLUGIN_NAME_); ?>:</h3>
|
31 |
</div>
|
32 |
-
<div class="col-
|
33 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
34 |
-
<input type="search" class="d-inline-block align-middle col-
|
35 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search Keyword", _SQ_PLUGIN_NAME_) ?>"/>
|
36 |
<?php if (SQ_Classes_Helpers_Tools::getIsset('skeyword') || SQ_Classes_Helpers_Tools::getIsset('slabel')) { ?>
|
37 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
@@ -55,14 +55,14 @@
|
|
55 |
</div>
|
56 |
<?php } ?>
|
57 |
<div class="card-body p-0">
|
58 |
-
<div class="col-
|
59 |
|
60 |
-
<div class="
|
61 |
<?php if (isset($view->keywords) && !empty($view->keywords)) { ?>
|
62 |
-
<div class="col-5">
|
63 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
64 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
65 |
-
<option value="sq_ajax_briefcase_bulk_doserp"><?php echo esc_html__("Send to
|
66 |
<option value="sq_ajax_briefcase_bulk_label"><?php echo esc_html__("Assign Label", _SQ_PLUGIN_NAME_); ?></option>
|
67 |
<option value="sq_ajax_briefcase_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the keywords?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
68 |
</select>
|
@@ -100,169 +100,170 @@
|
|
100 |
</div>
|
101 |
</div>
|
102 |
|
103 |
-
<
|
104 |
-
<
|
105 |
-
|
106 |
-
<
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
$
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
if ($
|
131 |
-
if (
|
132 |
-
$
|
|
|
|
|
|
|
|
|
133 |
}
|
134 |
-
} elseif ((int)$rankkeyword->average_position > 0) {
|
135 |
-
$row->rank = $rankkeyword->average_position;
|
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 |
-
<?php } else { ?>
|
163 |
-
<span data-value="<?php echo (int)$row->count ?>"><?php echo sprintf(esc_html__("in %s posts", _SQ_PLUGIN_NAME_), $row->count) ?></span>
|
164 |
-
<?php } ?>
|
165 |
-
</td>
|
166 |
-
<td style="width: 130px;">
|
167 |
-
<?php if (!$row->rank) { ?>
|
168 |
-
<?php if (isset($row->do_serp) && !$row->do_serp) { ?>
|
169 |
-
<button class="sq_research_doserp btn btn-sm btn-link text-black-50 p-0 m-0 text-nowrap" data-success="<?php echo esc_html__("Check Rankings", _SQ_PLUGIN_NAME_) ?>" data-link="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-keyword="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?>">
|
170 |
-
<?php echo esc_html__("Send to Rank Check", _SQ_PLUGIN_NAME_) ?>
|
171 |
-
</button>
|
172 |
-
<?php } elseif ($view->checkin->subscription_serpcheck) { ?>
|
173 |
-
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" style="font-weight: bold;font-size: 15px;"><?php echo esc_html__("Not indexed", _SQ_PLUGIN_NAME_) ?></a>
|
174 |
<?php } else { ?>
|
175 |
-
<
|
176 |
-
<?php } ?>
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
214 |
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
<?php } ?>
|
237 |
-
<li class="border-bottom m-0 p-1 py-2">
|
238 |
-
<i class="sq_icons_small sq_kr_icon"></i>
|
239 |
-
<?php if ($row->research == '') { ?>
|
240 |
-
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research', array('keyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword, 'url'))) ?>" class="sq-nav-link"><?php echo esc_html__("Do a research", _SQ_PLUGIN_NAME_) ?></a>
|
241 |
-
<?php } else { ?>
|
242 |
-
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research', array('keyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword, 'url'))) ?>" class="sq-nav-link"><?php echo esc_html__("Refresh Research", _SQ_PLUGIN_NAME_) ?></a>
|
243 |
<?php } ?>
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
<i class="sq_icons_small fa fa-trash-o"></i>
|
252 |
-
<?php echo esc_html__("Delete Keyword", _SQ_PLUGIN_NAME_) ?>
|
253 |
</li>
|
254 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
255 |
|
256 |
-
|
|
|
257 |
</div>
|
258 |
-
</
|
259 |
-
</
|
260 |
-
|
261 |
-
<?php } ?>
|
262 |
-
|
263 |
-
</tbody>
|
264 |
-
</table>
|
265 |
|
|
|
|
|
|
|
266 |
<?php foreach ($view->keywords as $key => $row) { ?>
|
267 |
|
268 |
<?php if ($row->count > 0 && isset($row->posts) && !empty($row->posts)) { ?>
|
@@ -277,7 +278,7 @@
|
|
277 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
278 |
</div>
|
279 |
<div class="modal-body" style="min-height: 90px;">
|
280 |
-
<ul class="col-
|
281 |
<?php
|
282 |
foreach ($row->posts as $post_id => $permalink) { ?>
|
283 |
<li class="row py-2 border-bottom">
|
@@ -301,34 +302,34 @@
|
|
301 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
302 |
</div>
|
303 |
<div class="modal-body" style="min-height: 90px;">
|
304 |
-
<ul class="col-
|
305 |
<?php if (!isset($row->country)) $row->country = ''; ?>
|
306 |
<li class="row py-3 border-bottom">
|
307 |
-
<div class="col-
|
308 |
-
<div class="col-
|
309 |
</li>
|
310 |
<?php if (isset($row->research->sc)) { ?>
|
311 |
<li class="row py-3 border-bottom">
|
312 |
-
<div class="col-
|
313 |
-
<div class="col-
|
314 |
</li>
|
315 |
<?php } ?>
|
316 |
<?php if (isset($row->research->sv)) { ?>
|
317 |
<li class="row py-3 border-bottom">
|
318 |
-
<div class="col-
|
319 |
-
<div class="col-
|
320 |
</li>
|
321 |
<?php } ?>
|
322 |
<?php if (isset($row->research->tw)) { ?>
|
323 |
<li class="row py-3 border-bottom">
|
324 |
-
<div class="col-
|
325 |
-
<div class="col-
|
326 |
</li>
|
327 |
<?php } ?>
|
328 |
<?php if (isset($row->research->td)) { ?>
|
329 |
<li class="row py-3">
|
330 |
-
<div class="col-
|
331 |
-
<div class="col-
|
332 |
<?php if (isset($row->research->td->absolute) && is_array($row->research->td->absolute) && !empty($row->research->td->absolute)) {
|
333 |
$last = 0.1;
|
334 |
$datachar = [];
|
@@ -408,12 +409,12 @@
|
|
408 |
|
409 |
<div class="card-body">
|
410 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly Briefcase", _SQ_PLUGIN_NAME_); ?></h4>
|
411 |
-
<div class="col-
|
412 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
413 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
414 |
</a>
|
415 |
|
416 |
-
<div class="col-
|
417 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: How to add Keywords in Briefcase?", _SQ_PLUGIN_NAME_); ?></h5>
|
418 |
<ul>
|
419 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sKeyword Research%s send keywords to Briefcase.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') . '" >', '</a>'); ?></li>
|
@@ -426,13 +427,13 @@
|
|
426 |
<?php } ?>
|
427 |
|
428 |
<?php if (current_user_can('sq_manage_settings')) { ?>
|
429 |
-
<div class="col-
|
430 |
-
<div class="col-
|
431 |
<div class="font-weight-bold"><?php echo esc_html__("Backup/Restore Briefcase Keywords", _SQ_PLUGIN_NAME_); ?>:</div>
|
432 |
<div class="small text-black-50"><?php echo esc_html__("Keep your briefcase keywords safe in case you change your domain or reinstall the plugin", _SQ_PLUGIN_NAME_); ?></div>
|
433 |
<div class="small text-black-50"><?php echo sprintf(esc_html__("%sLearn how to import keywords into briefcase%s", _SQ_PLUGIN_NAME_), '<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#briefcase_backup_keywords" target="_blank">', '</a>'); ?></div>
|
434 |
</div>
|
435 |
-
<div class="col-
|
436 |
<form action="" method="post" enctype="multipart/form-data">
|
437 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_backup', 'sq_nonce'); ?>
|
438 |
<input type="hidden" name="action" value="sq_briefcase_backup"/>
|
@@ -451,16 +452,16 @@
|
|
451 |
|
452 |
<div class="modal-body">
|
453 |
<form name="import" action="" method="post" enctype="multipart/form-data">
|
454 |
-
<div class="col-
|
455 |
-
<div class="col-
|
456 |
<div class="font-weight-bold"><?php echo esc_html__("Restore Keywords", _SQ_PLUGIN_NAME_); ?>:</div>
|
457 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly Briefcase Keywords.", _SQ_PLUGIN_NAME_); ?></div>
|
458 |
</div>
|
459 |
-
<div class="col-
|
460 |
-
<div class="col-
|
461 |
<input type="file" class="form-control-file" name="sq_upload_file">
|
462 |
</div>
|
463 |
-
<div class="col-
|
464 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_restore', 'sq_nonce'); ?>
|
465 |
<input type="hidden" name="action" value="sq_briefcase_restore"/>
|
466 |
<button type="submit" class="btn rounded-0 btn-success btn-sm px-3 mx-2"><?php echo esc_html__("Upload", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -484,7 +485,7 @@
|
|
484 |
</div>
|
485 |
</div>
|
486 |
<div class="sq_col_side sticky">
|
487 |
-
<div class="card col-
|
488 |
<div class="card-body f-gray-dark p-0">
|
489 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
490 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'briefcase'), 'sq_research'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right">
|
13 |
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#briefcase" target="_blank"><i class="fa fa-question-circle"></i></a>
|
18 |
<h3 class="card-title"><?php echo esc_html__("Briefcase", _SQ_PLUGIN_NAME_); ?>:</h3>
|
19 |
<div class="card-title-description m-2"><?php echo esc_html__("Briefcase is essential to managing your SEO Strategy. With Briefcase you'll find the best opportunities for keywords you're using in the Awareness Stage, Decision Stage and other stages you may plan for your Customer's Journey.", _SQ_PLUGIN_NAME_); ?></div>
|
20 |
</div>
|
21 |
+
<div id="sq_briefcase" class="card col-12 p-0 tab-panel border-0">
|
22 |
<?php do_action('sq_subscription_notices'); ?>
|
23 |
|
24 |
<?php if (isset($view->keywords) && !empty($view->keywords)) { ?>
|
25 |
<div class="row px-3">
|
26 |
+
<form method="get" class="form-inline col-12">
|
27 |
<input type="hidden" name="page" value="<?php echo SQ_Classes_Helpers_Tools::getValue('page') ?>">
|
28 |
<input type="hidden" name="tab" value="<?php echo SQ_Classes_Helpers_Tools::getValue('tab') ?>">
|
29 |
+
<div class="col-3 p-0">
|
30 |
<h3 class="card-title text-dark p-2"><?php echo esc_html__("Labels", _SQ_PLUGIN_NAME_); ?>:</h3>
|
31 |
</div>
|
32 |
+
<div class="col-9 p-0 py-2">
|
33 |
<div class="d-flex flex-row justify-content-end p-0 m-0">
|
34 |
+
<input type="search" class="d-inline-block align-middle col-7 p-2 mr-2" id="post-search-input" autofocus name="skeyword" value="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword(SQ_Classes_Helpers_Tools::getValue('skeyword')) ?>"/>
|
35 |
<input type="submit" class="btn btn-primary" value="<?php echo esc_html__("Search Keyword", _SQ_PLUGIN_NAME_) ?>"/>
|
36 |
<?php if (SQ_Classes_Helpers_Tools::getIsset('skeyword') || SQ_Classes_Helpers_Tools::getIsset('slabel')) { ?>
|
37 |
<button type="button" class="btn btn-info ml-1 p-v-xs" onclick="location.href = '<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'briefcase') ?>';" style="cursor: pointer"><?php echo esc_html__("Show All", _SQ_PLUGIN_NAME_) ?></button>
|
55 |
</div>
|
56 |
<?php } ?>
|
57 |
<div class="card-body p-0">
|
58 |
+
<div class="col-12 m-0 p-0">
|
59 |
|
60 |
+
<div class="col-12 my-4 mx-0 p-0 border-0">
|
61 |
<?php if (isset($view->keywords) && !empty($view->keywords)) { ?>
|
62 |
+
<div class="col-5 p-1">
|
63 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
64 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
65 |
+
<option value="sq_ajax_briefcase_bulk_doserp"><?php echo esc_html__("Send to Rankings", _SQ_PLUGIN_NAME_); ?></option>
|
66 |
<option value="sq_ajax_briefcase_bulk_label"><?php echo esc_html__("Assign Label", _SQ_PLUGIN_NAME_); ?></option>
|
67 |
<option value="sq_ajax_briefcase_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the keywords?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
68 |
</select>
|
100 |
</div>
|
101 |
</div>
|
102 |
|
103 |
+
<div class="p-1">
|
104 |
+
<table class="table table-striped table-hover mx-0 p-0 ">
|
105 |
+
<thead>
|
106 |
+
<tr>
|
107 |
+
<th></th>
|
108 |
+
<th><?php echo esc_html__("Keyword", _SQ_PLUGIN_NAME_) ?></th>
|
109 |
+
<th><?php echo esc_html__("Usage", _SQ_PLUGIN_NAME_) ?></th>
|
110 |
+
<th>
|
111 |
+
<?php
|
112 |
+
if ($view->checkin->subscription_serpcheck) {
|
113 |
+
echo esc_html__("Rank", _SQ_PLUGIN_NAME_);
|
114 |
+
} else {
|
115 |
+
echo esc_html__("Avg Rank", _SQ_PLUGIN_NAME_);
|
116 |
+
}
|
117 |
+
?>
|
118 |
+
</th>
|
119 |
+
<th title="<?php echo esc_html__("Search Volume", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("SV", _SQ_PLUGIN_NAME_) ?></th>
|
120 |
+
<th><?php echo esc_html__("Research", _SQ_PLUGIN_NAME_) ?></th>
|
121 |
+
<th></th>
|
122 |
+
</tr>
|
123 |
+
</thead>
|
124 |
+
<tbody>
|
125 |
+
<?php
|
126 |
+
foreach ($view->keywords as $key => $row) {
|
127 |
+
$row->rank = false;
|
128 |
+
if (!empty($view->rankkeywords)) {
|
129 |
+
foreach ($view->rankkeywords as $rankkeyword) {
|
130 |
+
if (strtolower($rankkeyword->keyword) == strtolower($row->keyword)) {
|
131 |
+
if ($view->checkin->subscription_serpcheck) {
|
132 |
+
if ((int)$rankkeyword->rank > 0) {
|
133 |
+
$row->rank = $rankkeyword->rank;
|
134 |
+
}
|
135 |
+
} elseif ((int)$rankkeyword->average_position > 0) {
|
136 |
+
$row->rank = $rankkeyword->average_position;
|
137 |
}
|
|
|
|
|
138 |
}
|
139 |
}
|
140 |
}
|
|
|
141 |
|
142 |
+
?>
|
143 |
+
<tr id="sq_row_<?php echo (int)$row->id ?>">
|
144 |
+
<td style="width: 10px;">
|
145 |
+
<?php if (current_user_can('sq_manage_settings')) { ?>
|
146 |
+
<input type="checkbox" name="sq_edit[]" class="sq_bulk_input" value="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?>"/>
|
147 |
+
<?php } ?>
|
148 |
+
</td>
|
149 |
+
<td>
|
150 |
+
<?php if (!empty($row->labels)) {
|
151 |
+
foreach ($row->labels as $label) {
|
152 |
+
?>
|
153 |
+
<span class="sq_circle_label fa" style="background-color: <?php echo esc_attr($label->color) ?>" data-id="<?php echo (int)$label->lid ?>" title="<?php echo esc_attr($label->name) ?>"></span>
|
154 |
+
<?php
|
155 |
+
}
|
156 |
+
} ?>
|
157 |
|
158 |
+
<span style="display: block; clear: left; float: left;"><?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?></span>
|
159 |
+
</td>
|
160 |
+
<td>
|
161 |
+
<?php if ($row->count > 0) { ?>
|
162 |
+
<span data-value="<?php echo (int)$row->count ?>"><a href="javascript:void(0);" onclick="jQuery('#sq_kr_posts<?php echo (int)$key ?>').modal('show')"><?php echo sprintf(esc_html__("in %s posts", _SQ_PLUGIN_NAME_), $row->count) ?></a></span>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
<?php } else { ?>
|
164 |
+
<span data-value="<?php echo (int)$row->count ?>"><?php echo sprintf(esc_html__("in %s posts", _SQ_PLUGIN_NAME_), $row->count) ?></span>
|
165 |
+
<?php } ?>
|
166 |
+
</td>
|
167 |
+
<td>
|
168 |
+
<?php if (!$row->rank) { ?>
|
169 |
+
<?php if (isset($row->do_serp) && !$row->do_serp) { ?>
|
170 |
+
<button class="sq_research_doserp btn btn-sm btn-link text-black-50 p-0 m-0 text-nowrap" data-value="999" data-success="<?php echo esc_html__("Check Rankings", _SQ_PLUGIN_NAME_) ?>" data-link="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-keyword="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?>">
|
171 |
+
<?php echo esc_html__("Send to Rankings", _SQ_PLUGIN_NAME_) ?>
|
172 |
+
</button>
|
173 |
+
<?php } elseif ($view->checkin->subscription_serpcheck) { ?>
|
174 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-value="999" style="font-weight: bold;font-size: 15px;"><?php echo esc_html__("Not indexed", _SQ_PLUGIN_NAME_) ?></a>
|
175 |
+
<?php } else { ?>
|
176 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-value="999" style="font-weight: bold;font-size: 15px;"><?php echo esc_html__("GSC", _SQ_PLUGIN_NAME_) ?></a>
|
177 |
+
<?php } ?><?php } else { ?>
|
178 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-value="<?php echo (int)$row->rank ?>" target="_blank" style="font-weight: bold;font-size: 15px;"><?php echo (int)$row->rank ?></a>
|
179 |
+
<?php } ?>
|
180 |
+
</td>
|
181 |
+
<td>
|
182 |
+
<?php if (isset($row->research->sv) && isset($row->research->sv->absolute)) {
|
183 |
+
echo '<span data-value="' . (int)$row->research->sv->absolute . '">' . ((isset($row->research->sv->absolute) && is_numeric($row->research->sv->absolute)) ? number_format($row->research->sv->absolute, 0, '.', ',') : $row->research->sv->absolute) . '</span>';
|
184 |
+
} else {
|
185 |
+
echo '<span data-value="0">' . "-" . '</span>';
|
186 |
+
} ?>
|
187 |
+
</td>
|
188 |
+
<td>
|
189 |
+
<?php if (isset($row->research->rank->value)) { ?>
|
190 |
+
<button data-value="<?php echo esc_attr($row->research->rank->value) ?>" onclick="jQuery('#sq_kr_research<?php echo (int)$key ?>').modal('show');" class="small btn btn-success btn-sm" style="cursor: pointer; width: 100px"><?php echo esc_html__("keyword info", _SQ_PLUGIN_NAME_) ?></button>
|
191 |
+
<div class="progress" style="max-width: 100px; max-height: 3px">
|
192 |
+
<?php
|
193 |
+
$progress_color = 'danger';
|
194 |
+
switch ($row->research->rank->value) {
|
195 |
+
case ($row->research->rank->value < 4):
|
196 |
+
$progress_color = 'danger';
|
197 |
+
break;
|
198 |
+
case ($row->research->rank->value < 6):
|
199 |
+
$progress_color = 'warning';
|
200 |
+
break;
|
201 |
+
case ($row->research->rank->value < 8):
|
202 |
+
$progress_color = 'info';
|
203 |
+
break;
|
204 |
+
case ($row->research->rank->value <= 10):
|
205 |
+
$progress_color = 'success';
|
206 |
+
break;
|
207 |
+
}
|
208 |
+
?>
|
209 |
+
<div class="progress-bar bg-<?php echo esc_attr($progress_color); ?>" role="progressbar" style="width: <?php echo((int)$row->research->rank->value * 10) ?>%" aria-valuenow="<?php echo (int)$row->research->rank->value ?>" aria-valuemin="0" aria-valuemax="10"></div>
|
210 |
+
</div>
|
211 |
+
<?php } else { ?>
|
212 |
+
<button data-value="0" style="cursor: pointer;" class="btn btn-sm btn-default bg-transparent"><?php echo esc_html__("No research data", _SQ_PLUGIN_NAME_) ?></button>
|
213 |
+
<?php } ?>
|
214 |
+
</td>
|
215 |
|
216 |
+
<td class="px-0 py-2" style="width: 20px">
|
217 |
+
<div class="sq_sm_menu">
|
218 |
+
<div class="sm_icon_button sm_icon_options">
|
219 |
+
<i class="fa fa-ellipsis-v"></i>
|
220 |
+
</div>
|
221 |
+
<div class="sq_sm_dropdown">
|
222 |
+
<ul class="p-2 m-0 text-left">
|
223 |
+
<li class="sq_research_selectit border-bottom m-0 p-1 py-2 noloading">
|
224 |
+
<?php $edit_link = SQ_Classes_Helpers_Tools::getAdminUrl('/post-new.php?keyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword, 'url')); ?>
|
225 |
+
<a href="<?php echo (string)$edit_link ?>" target="_blank" class="sq-nav-link">
|
226 |
+
<i class="sq_icons_small sq_sla_icon"></i>
|
227 |
+
<?php echo esc_html__("Optimize for this", _SQ_PLUGIN_NAME_) ?>
|
228 |
+
</a>
|
229 |
+
</li>
|
230 |
+
<?php if (current_user_can('sq_manage_settings')) { ?>
|
231 |
+
<?php if (isset($row->do_serp) && !$row->do_serp) { ?>
|
232 |
+
<li class="sq_research_doserp border-bottom m-0 p-1 py-2" data-success="<?php echo esc_html__("Check Rankings", _SQ_PLUGIN_NAME_) ?>" data-link="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_rankings', 'rankings', array('strict=1', 'skeyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword))) ?>" data-keyword="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?>">
|
233 |
+
<i class="sq_icons_small sq_ranks_icon"></i>
|
234 |
+
<span><?php echo esc_html__("Send to Rank Checker", _SQ_PLUGIN_NAME_) ?></span>
|
235 |
+
</li>
|
236 |
+
<?php } ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
<?php } ?>
|
238 |
+
<li class="border-bottom m-0 p-1 py-2">
|
239 |
+
<i class="sq_icons_small sq_kr_icon"></i>
|
240 |
+
<?php if ($row->research == '') { ?>
|
241 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research', array('keyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword, 'url'))) ?>" class="sq-nav-link"><?php echo esc_html__("Do a research", _SQ_PLUGIN_NAME_) ?></a>
|
242 |
+
<?php } else { ?>
|
243 |
+
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research', array('keyword=' . SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword, 'url'))) ?>" class="sq-nav-link"><?php echo esc_html__("Refresh Research", _SQ_PLUGIN_NAME_) ?></a>
|
244 |
+
<?php } ?>
|
|
|
|
|
245 |
</li>
|
246 |
+
<li class="border-bottom m-0 p-1 py-2">
|
247 |
+
<i class="sq_icons_small sq_labels_icon"></i>
|
248 |
+
<span onclick="jQuery('#sq_label_manage_popup<?php echo (int)$key ?>').modal('show')"><?php echo esc_html__("Assign Label", _SQ_PLUGIN_NAME_); ?></span>
|
249 |
+
</li>
|
250 |
+
<?php if (current_user_can('sq_manage_settings')) { ?>
|
251 |
+
<li class="sq_delete m-0 p-1 py-2" data-id="<?php echo (int)$row->id ?>" data-keyword="<?php echo SQ_Classes_Helpers_Sanitize::escapeKeyword($row->keyword) ?>">
|
252 |
+
<i class="sq_icons_small fa fa-trash-o"></i>
|
253 |
+
<?php echo esc_html__("Delete Keyword", _SQ_PLUGIN_NAME_) ?>
|
254 |
+
</li>
|
255 |
+
<?php } ?>
|
256 |
|
257 |
+
</ul>
|
258 |
+
</div>
|
259 |
</div>
|
260 |
+
</td>
|
261 |
+
</tr>
|
262 |
+
<?php } ?>
|
|
|
|
|
|
|
|
|
263 |
|
264 |
+
</tbody>
|
265 |
+
</table>
|
266 |
+
</div>
|
267 |
<?php foreach ($view->keywords as $key => $row) { ?>
|
268 |
|
269 |
<?php if ($row->count > 0 && isset($row->posts) && !empty($row->posts)) { ?>
|
278 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
279 |
</div>
|
280 |
<div class="modal-body" style="min-height: 90px;">
|
281 |
+
<ul class="col-12" style="list-style: initial">
|
282 |
<?php
|
283 |
foreach ($row->posts as $post_id => $permalink) { ?>
|
284 |
<li class="row py-2 border-bottom">
|
302 |
<button type="button" class="close" data-dismiss="modal">×</button>
|
303 |
</div>
|
304 |
<div class="modal-body" style="min-height: 90px;">
|
305 |
+
<ul class="col-12">
|
306 |
<?php if (!isset($row->country)) $row->country = ''; ?>
|
307 |
<li class="row py-3 border-bottom">
|
308 |
+
<div class="col-4"><?php echo esc_html__("Country", _SQ_PLUGIN_NAME_) ?>:</div>
|
309 |
+
<div class="col-6"><?php echo esc_html($row->country) ?></div>
|
310 |
</li>
|
311 |
<?php if (isset($row->research->sc)) { ?>
|
312 |
<li class="row py-3 border-bottom">
|
313 |
+
<div class="col-4"><?php echo esc_html__("Competition", _SQ_PLUGIN_NAME_) ?>:</div>
|
314 |
+
<div class="col-6" style="color: <?php echo esc_attr($row->research->sc->color) ?>"><?php echo($row->research->sc->text <> '' ? esc_html($row->research->sc->text) : '-') ?></div>
|
315 |
</li>
|
316 |
<?php } ?>
|
317 |
<?php if (isset($row->research->sv)) { ?>
|
318 |
<li class="row py-3 border-bottom">
|
319 |
+
<div class="col-4"><?php echo esc_html__("Search Volume", _SQ_PLUGIN_NAME_) ?>:</div>
|
320 |
+
<div class="col-6" style="color: <?php echo esc_attr($row->research->sv->color) ?>"><?php echo((isset($row->research->sv->absolute) && is_numeric($row->research->sv->absolute)) ? number_format($row->research->sv->absolute, 0, '.', ',') : esc_attr($row->research->sv->absolute)) ?></div>
|
321 |
</li>
|
322 |
<?php } ?>
|
323 |
<?php if (isset($row->research->tw)) { ?>
|
324 |
<li class="row py-3 border-bottom">
|
325 |
+
<div class="col-4"><?php echo esc_html__("Recent discussions", _SQ_PLUGIN_NAME_) ?>:</div>
|
326 |
+
<div class="col-6" style="color: <?php echo esc_attr($row->research->tw->color) ?>"><?php echo($row->research->tw->text <> '' ? esc_html($row->research->tw->text) : '-') ?></div>
|
327 |
</li>
|
328 |
<?php } ?>
|
329 |
<?php if (isset($row->research->td)) { ?>
|
330 |
<li class="row py-3">
|
331 |
+
<div class="col-4"><?php echo esc_html__("Trending", _SQ_PLUGIN_NAME_) ?>:</div>
|
332 |
+
<div class="col-6" style="color: <?php echo esc_attr($row->research->td->color) ?>">
|
333 |
<?php if (isset($row->research->td->absolute) && is_array($row->research->td->absolute) && !empty($row->research->td->absolute)) {
|
334 |
$last = 0.1;
|
335 |
$datachar = [];
|
409 |
|
410 |
<div class="card-body">
|
411 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Squirrly Briefcase", _SQ_PLUGIN_NAME_); ?></h4>
|
412 |
+
<div class="col-12 m-2 text-center">
|
413 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
414 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
415 |
</a>
|
416 |
|
417 |
+
<div class="col-12 mt-5 mx-2">
|
418 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("Tips: How to add Keywords in Briefcase?", _SQ_PLUGIN_NAME_); ?></h5>
|
419 |
<ul>
|
420 |
<li class="text-left" style="font-size: 15px;"><?php echo sprintf(esc_html__("From %sKeyword Research%s send keywords to Briefcase.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') . '" >', '</a>'); ?></li>
|
427 |
<?php } ?>
|
428 |
|
429 |
<?php if (current_user_can('sq_manage_settings')) { ?>
|
430 |
+
<div class="col-12 row py-2 mx-0 my-3 mt-4 pt-4 border-bottom-0 border-top">
|
431 |
+
<div class="col-8 p-0 pr-3">
|
432 |
<div class="font-weight-bold"><?php echo esc_html__("Backup/Restore Briefcase Keywords", _SQ_PLUGIN_NAME_); ?>:</div>
|
433 |
<div class="small text-black-50"><?php echo esc_html__("Keep your briefcase keywords safe in case you change your domain or reinstall the plugin", _SQ_PLUGIN_NAME_); ?></div>
|
434 |
<div class="small text-black-50"><?php echo sprintf(esc_html__("%sLearn how to import keywords into briefcase%s", _SQ_PLUGIN_NAME_), '<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#briefcase_backup_keywords" target="_blank">', '</a>'); ?></div>
|
435 |
</div>
|
436 |
+
<div class="col-4 p-0 text-center">
|
437 |
<form action="" method="post" enctype="multipart/form-data">
|
438 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_backup', 'sq_nonce'); ?>
|
439 |
<input type="hidden" name="action" value="sq_briefcase_backup"/>
|
452 |
|
453 |
<div class="modal-body">
|
454 |
<form name="import" action="" method="post" enctype="multipart/form-data">
|
455 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
456 |
+
<div class="col-4 p-0 pr-3">
|
457 |
<div class="font-weight-bold"><?php echo esc_html__("Restore Keywords", _SQ_PLUGIN_NAME_); ?>:</div>
|
458 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly Briefcase Keywords.", _SQ_PLUGIN_NAME_); ?></div>
|
459 |
</div>
|
460 |
+
<div class="col-8 p-0 input-group">
|
461 |
+
<div class="col-8 form-group m-0 p-0 my-2">
|
462 |
<input type="file" class="form-control-file" name="sq_upload_file">
|
463 |
</div>
|
464 |
+
<div class="col-4 form-group m-0 p-0 my-2">
|
465 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_restore', 'sq_nonce'); ?>
|
466 |
<input type="hidden" name="action" value="sq_briefcase_restore"/>
|
467 |
<button type="submit" class="btn rounded-0 btn-success btn-sm px-3 mx-2"><?php echo esc_html__("Upload", _SQ_PLUGIN_NAME_); ?></button>
|
485 |
</div>
|
486 |
</div>
|
487 |
<div class="sq_col_side sticky">
|
488 |
+
<div class="card col-12 p-0">
|
489 |
<div class="card-body f-gray-dark p-0">
|
490 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
491 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
view/Research/History.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'suggested'), 'sq_research'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#history" target="_blank"><i class="fa fa-question-circle"></i></a></div>
|
13 |
<div class="sq_icons_content p-3 py-4">
|
@@ -16,12 +16,12 @@
|
|
16 |
<h3 class="card-title"><?php echo esc_html__("History", _SQ_PLUGIN_NAME_); ?>:</h3>
|
17 |
<div class="card-title-description m-2"><?php echo esc_html__("See the Keyword Researches you made in the last 30 days", _SQ_PLUGIN_NAME_); ?></div>
|
18 |
</div>
|
19 |
-
<div id="sq_history" class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-0">
|
23 |
-
<div class="col-
|
24 |
-
<div class="card col-
|
25 |
<?php if (is_array($view->kr) && !empty($view->kr)) { ?>
|
26 |
<table class="sq_krhistory_list table table-striped table-hover" cellpadding="0" cellspacing="0" border="0">
|
27 |
<thead>
|
@@ -53,7 +53,7 @@
|
|
53 |
<div class="card-body">
|
54 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Keyword Research History", _SQ_PLUGIN_NAME_); ?></h4>
|
55 |
<h5 class="text-center"><?php echo esc_html__("See your research results and compare them over time", _SQ_PLUGIN_NAME_); ?>:</h5>
|
56 |
-
<div class="col-
|
57 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
58 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
59 |
</a>
|
@@ -68,7 +68,7 @@
|
|
68 |
</div>
|
69 |
</div>
|
70 |
<div class="sq_col_side sticky">
|
71 |
-
<div class="card col-
|
72 |
<div class="card-body f-gray-dark p-0">
|
73 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
74 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'suggested'), 'sq_research'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#history" target="_blank"><i class="fa fa-question-circle"></i></a></div>
|
13 |
<div class="sq_icons_content p-3 py-4">
|
16 |
<h3 class="card-title"><?php echo esc_html__("History", _SQ_PLUGIN_NAME_); ?>:</h3>
|
17 |
<div class="card-title-description m-2"><?php echo esc_html__("See the Keyword Researches you made in the last 30 days", _SQ_PLUGIN_NAME_); ?></div>
|
18 |
</div>
|
19 |
+
<div id="sq_history" class="card col-12 p-0 tab-panel border-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-0">
|
23 |
+
<div class="col-12 m-0 p-0">
|
24 |
+
<div class="card col-12 my-4 p-0 px-1 border-0 ">
|
25 |
<?php if (is_array($view->kr) && !empty($view->kr)) { ?>
|
26 |
<table class="sq_krhistory_list table table-striped table-hover" cellpadding="0" cellspacing="0" border="0">
|
27 |
<thead>
|
53 |
<div class="card-body">
|
54 |
<h4 class="text-center"><?php echo esc_html__("Welcome to Keyword Research History", _SQ_PLUGIN_NAME_); ?></h4>
|
55 |
<h5 class="text-center"><?php echo esc_html__("See your research results and compare them over time", _SQ_PLUGIN_NAME_); ?>:</h5>
|
56 |
+
<div class="col-12 my-4 text-center">
|
57 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
58 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
59 |
</a>
|
68 |
</div>
|
69 |
</div>
|
70 |
<div class="sq_col_side sticky">
|
71 |
+
<div class="card col-12 p-0">
|
72 |
<div class="card-body f-gray-dark p-0">
|
73 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
74 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
view/Research/HistoryDetails.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<td colspan="8">
|
2 |
-
<div class="col-
|
3 |
-
<div class="card col-
|
4 |
<table class="table table-striped" cellpadding="0" cellspacing="0" border="0">
|
5 |
<thead>
|
6 |
<tr>
|
1 |
<td colspan="8">
|
2 |
+
<div class="col-12 m-0 p-0">
|
3 |
+
<div class="card col-12 my-4 p-0 px-0 border-0 ">
|
4 |
<table class="table table-striped" cellpadding="0" cellspacing="0" border="0">
|
5 |
<thead>
|
6 |
<tr>
|
view/Research/Labels.php
CHANGED
@@ -3,23 +3,29 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'labels'), 'sq_research'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
-
<div class="sq_help_question float-right"
|
|
|
|
|
13 |
<div class="sq_icons_content p-3 py-4">
|
14 |
<div class="sq_icons sq_labels_icon m-2"></div>
|
15 |
</div>
|
16 |
<h3 class="card-title"><?php echo esc_html__("Briefcase Labels", _SQ_PLUGIN_NAME_); ?>:</h3>
|
17 |
<div class="card-title-description m-2"><?php echo esc_html__("Briefcase Labels will help you sort your keywords based on your SEO strategy. Labels are like categories and you can quickly filter your keywords by one or more labels.", _SQ_PLUGIN_NAME_); ?></div>
|
18 |
</div>
|
19 |
-
<div id="sq_briefcaselabels" class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
|
|
|
|
|
|
|
|
|
|
21 |
|
22 |
-
<button class="btn btn-lg btn-warning text-white col-sm-3 ml-3" onclick="jQuery('.sq_add_labels_dialog').modal('show')" data-dismiss="modal"><i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add new Label", _SQ_PLUGIN_NAME_); ?></button>
|
23 |
<div class="sq_add_labels_dialog modal" tabindex="-1" role="dialog">
|
24 |
<div class="modal-dialog">
|
25 |
<div class="modal-content bg-light">
|
@@ -36,8 +42,6 @@
|
|
36 |
<label for="sq_labelcolor" style="display: block"><?php echo esc_html__("Label Color", _SQ_PLUGIN_NAME_); ?></label>
|
37 |
<input type="text" id="sq_labelcolor" value="<?php echo sprintf('#%06X', mt_rand(0, 0xFFFFFF)); ?>"/>
|
38 |
</div>
|
39 |
-
|
40 |
-
|
41 |
</div>
|
42 |
<div class="modal-footer" style="border-bottom: 1px solid #ddd;">
|
43 |
<button type="button" id="sq_save_label" class="btn btn-success"><?php echo esc_html__("Add Label", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -72,10 +76,10 @@
|
|
72 |
</div>
|
73 |
|
74 |
<div class="card-body p-0">
|
75 |
-
<div class="col-
|
76 |
-
<div class="card col-
|
77 |
<?php if (is_array($view->labels) && !empty($view->labels)) { ?>
|
78 |
-
<div class="col-
|
79 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
80 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
81 |
<option value="sq_ajax_labels_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the labels?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
@@ -83,68 +87,72 @@
|
|
83 |
<button class="sq_bulk_submit btn btn-sm btn-success"><?php echo esc_html__("Apply"); ?></button>
|
84 |
</div>
|
85 |
|
86 |
-
<
|
87 |
-
<
|
88 |
-
|
89 |
-
<
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
<
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
<
|
110 |
-
|
|
|
111 |
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
</li>
|
123 |
-
<?php if (current_user_can('sq_manage_settings')) { ?>
|
124 |
-
<li class="sq_delete_label m-0 p-1 py-2" data-id="<?php echo (int)$row->id ?>">
|
125 |
-
<i class="sq_icons_small fa fa-trash-o"></i>
|
126 |
-
<?php echo esc_html__("Delete Label", _SQ_PLUGIN_NAME_) ?>
|
127 |
</li>
|
128 |
-
|
129 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
</div>
|
131 |
-
</
|
132 |
-
</
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
?>
|
137 |
|
138 |
-
|
139 |
-
|
|
|
140 |
<?php } else { ?>
|
141 |
<div class="card-body">
|
142 |
-
<h4 class="text-center"><?php echo esc_html__("Welcome to Briefcase Labels"
|
143 |
-
<div class="col-
|
144 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("TIPS: How Should I Create My Labels?", _SQ_PLUGIN_NAME_); ?></h5>
|
145 |
<ul>
|
146 |
-
<li onclick="jQuery('.sq_add_labels_dialog').modal('show')"
|
147 |
-
<li style="font-size: 15px;"
|
|
|
|
|
148 |
</ul>
|
149 |
</div>
|
150 |
</div>
|
@@ -157,7 +165,7 @@
|
|
157 |
</div>
|
158 |
</div>
|
159 |
<div class="sq_col_side sticky">
|
160 |
-
<div class="card col-
|
161 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
162 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
163 |
</div>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'labels'), 'sq_research'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
+
<div class="sq_help_question float-right">
|
13 |
+
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#labels" target="_blank"><i class="fa fa-question-circle"></i></a>
|
14 |
+
</div>
|
15 |
<div class="sq_icons_content p-3 py-4">
|
16 |
<div class="sq_icons sq_labels_icon m-2"></div>
|
17 |
</div>
|
18 |
<h3 class="card-title"><?php echo esc_html__("Briefcase Labels", _SQ_PLUGIN_NAME_); ?>:</h3>
|
19 |
<div class="card-title-description m-2"><?php echo esc_html__("Briefcase Labels will help you sort your keywords based on your SEO strategy. Labels are like categories and you can quickly filter your keywords by one or more labels.", _SQ_PLUGIN_NAME_); ?></div>
|
20 |
</div>
|
21 |
+
<div id="sq_briefcaselabels" class="card col-12 p-0 tab-panel border-0">
|
22 |
<?php do_action('sq_subscription_notices'); ?>
|
23 |
+
<div class="card-body p-0">
|
24 |
+
<button class="btn btn-lg btn-warning text-white px-5 mx-3" onclick="jQuery('.sq_add_labels_dialog').modal('show')" data-dismiss="modal">
|
25 |
+
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Add new Label", _SQ_PLUGIN_NAME_); ?>
|
26 |
+
</button>
|
27 |
+
</div>
|
28 |
|
|
|
29 |
<div class="sq_add_labels_dialog modal" tabindex="-1" role="dialog">
|
30 |
<div class="modal-dialog">
|
31 |
<div class="modal-content bg-light">
|
42 |
<label for="sq_labelcolor" style="display: block"><?php echo esc_html__("Label Color", _SQ_PLUGIN_NAME_); ?></label>
|
43 |
<input type="text" id="sq_labelcolor" value="<?php echo sprintf('#%06X', mt_rand(0, 0xFFFFFF)); ?>"/>
|
44 |
</div>
|
|
|
|
|
45 |
</div>
|
46 |
<div class="modal-footer" style="border-bottom: 1px solid #ddd;">
|
47 |
<button type="button" id="sq_save_label" class="btn btn-success"><?php echo esc_html__("Add Label", _SQ_PLUGIN_NAME_); ?></button>
|
76 |
</div>
|
77 |
|
78 |
<div class="card-body p-0">
|
79 |
+
<div class="col-12 m-0 p-0">
|
80 |
+
<div class="card col-12 my-4 p-0 border-0">
|
81 |
<?php if (is_array($view->labels) && !empty($view->labels)) { ?>
|
82 |
+
<div class="col-5 p-1">
|
83 |
<select name="sq_bulk_action" class="sq_bulk_action">
|
84 |
<option value=""><?php echo esc_html__("Bulk Actions", _SQ_PLUGIN_NAME_) ?></option>
|
85 |
<option value="sq_ajax_labels_bulk_delete" data-confirm="<?php echo esc_html__("Ar you sure you want to delete the labels?", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Delete") ?></option>
|
87 |
<button class="sq_bulk_submit btn btn-sm btn-success"><?php echo esc_html__("Apply"); ?></button>
|
88 |
</div>
|
89 |
|
90 |
+
<div class="p-1">
|
91 |
+
<table class="table table-striped table-hover">
|
92 |
+
<thead>
|
93 |
+
<tr>
|
94 |
+
<th style="width: 10px;"></th>
|
95 |
+
<th style="width: 70%;"><?php echo esc_html__("Name", _SQ_PLUGIN_NAME_) ?></th>
|
96 |
+
<th scope="col" title="<?php echo esc_html__("Color", _SQ_PLUGIN_NAME_) ?>"><?php echo esc_html__("Color", _SQ_PLUGIN_NAME_) ?></th>
|
97 |
+
<th style="width: 20px;"></th>
|
98 |
+
</tr>
|
99 |
+
</thead>
|
100 |
+
<tbody>
|
101 |
+
<?php
|
102 |
+
foreach ($view->labels as $key => $row) {
|
103 |
+
?>
|
104 |
+
<tr id="sq_row_<?php echo (int)$row->id ?>">
|
105 |
+
<td style="width: 10px;">
|
106 |
+
<?php if (current_user_can('sq_manage_settings')) { ?>
|
107 |
+
<input type="checkbox" name="sq_edit[]" class="sq_bulk_input" value="<?php echo (int)$row->id ?>"/>
|
108 |
+
<?php } ?>
|
109 |
+
</td>
|
110 |
+
<td style="width: 50%;" class="text-left">
|
111 |
+
<?php echo esc_html($row->name) ?>
|
112 |
+
</td>
|
113 |
+
<td style="width: 50%;">
|
114 |
+
<span style="display: block; float: left; background-color:<?php echo esc_attr($row->color) ?>; width: 20px;height: 20px; margin-right: 5px;"></span><?php echo esc_attr($row->color) ?>
|
115 |
+
</td>
|
116 |
|
117 |
+
<td class="px-0 py-2" style="width: 20px">
|
118 |
+
<div class="sq_sm_menu">
|
119 |
+
<div class="sm_icon_button sm_icon_options">
|
120 |
+
<i class="fa fa-ellipsis-v"></i>
|
121 |
+
</div>
|
122 |
+
<div class="sq_sm_dropdown">
|
123 |
+
<ul class="text-left p-2 m-0">
|
124 |
+
<li class="sq_edit_label border-bottom m-0 p-1 py-2" data-id="<?php echo (int)$row->id ?>" data-name="<?php echo esc_attr($row->name) ?>" data-color="<?php echo esc_attr($row->color) ?>">
|
125 |
+
<i class="sq_icons_small sq_labels_icon"></i>
|
126 |
+
<?php echo esc_html__("Edit Label", _SQ_PLUGIN_NAME_) ?>
|
|
|
|
|
|
|
|
|
|
|
127 |
</li>
|
128 |
+
<?php if (current_user_can('sq_manage_settings')) { ?>
|
129 |
+
<li class="sq_delete_label m-0 p-1 py-2" data-id="<?php echo (int)$row->id ?>">
|
130 |
+
<i class="sq_icons_small fa fa-trash-o"></i>
|
131 |
+
<?php echo esc_html__("Delete Label", _SQ_PLUGIN_NAME_) ?>
|
132 |
+
</li>
|
133 |
+
<?php } ?>
|
134 |
+
</ul>
|
135 |
+
</div>
|
136 |
</div>
|
137 |
+
</td>
|
138 |
+
</tr>
|
139 |
+
<?php
|
140 |
+
}
|
141 |
+
?>
|
|
|
142 |
|
143 |
+
</tbody>
|
144 |
+
</table>
|
145 |
+
</div>
|
146 |
<?php } else { ?>
|
147 |
<div class="card-body">
|
148 |
+
<h4 class="text-center"><?php echo esc_html__("Welcome to Briefcase Labels", _SQ_PLUGIN_NAME_); ?></h4>
|
149 |
+
<div class="col-12 mt-5 mx-2">
|
150 |
<h5 class="text-left my-3 text-info"><?php echo esc_html__("TIPS: How Should I Create My Labels?", _SQ_PLUGIN_NAME_); ?></h5>
|
151 |
<ul>
|
152 |
+
<li onclick="jQuery('.sq_add_labels_dialog').modal('show')" style="font-size: 15px;"><?php echo sprintf(esc_html__("Click on %sAdd New Label%s button, add a label name and choose a color for it.", _SQ_PLUGIN_NAME_), '<strong style="cursor: pointer">', '</strong>'); ?></li>
|
153 |
+
<li style="font-size: 15px;">
|
154 |
+
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#labels" target="_blank"><?php echo esc_html__("Read more details about Briefcase Labels", _SQ_PLUGIN_NAME_); ?></a>
|
155 |
+
</li>
|
156 |
</ul>
|
157 |
</div>
|
158 |
</div>
|
165 |
</div>
|
166 |
</div>
|
167 |
<div class="sq_col_side sticky">
|
168 |
+
<div class="card col-12 p-0">
|
169 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
170 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
171 |
</div>
|
view/Research/Research.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'research'), 'sq_research'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right">
|
13 |
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#keyword_research" target="_blank"><i class="fa fa-question-circle"></i></a>
|
@@ -25,7 +25,7 @@
|
|
25 |
|
26 |
<div class="sq_message sq_error" style="display: none"></div>
|
27 |
|
28 |
-
<div class="col-
|
29 |
|
30 |
<?php
|
31 |
if (isset($view->error) && $view->error == 'limit_exceeded') { ?>
|
@@ -37,11 +37,11 @@
|
|
37 |
|
38 |
<h4 class="text-success text-center mt-5 mb-2"><?php echo esc_html__("Add a keyword to Briefcase", _SQ_PLUGIN_NAME_) ?></h4>
|
39 |
<form method="post" class="p-0 m-0">
|
40 |
-
<div class="col-
|
41 |
<input type="text" name="keyword" class="form-control mb-2" value="<?php echo SQ_Classes_Helpers_Tools::getValue('keyword', '') ?>">
|
42 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("It's best if you focus on finding Long-Tail Keywords.", _SQ_PLUGIN_NAME_) ?></div>
|
43 |
</div>
|
44 |
-
<div class="col-
|
45 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_addkeyword', 'sq_nonce'); ?>
|
46 |
<input type="hidden" name="action" value="sq_briefcase_addkeyword"/>
|
47 |
<button type="submit" class="sqd-submit btn btn-success btn-lg px-5">
|
@@ -55,7 +55,7 @@
|
|
55 |
<div class="sq_step sq_step1 my-2">
|
56 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 1/4: Enter a starting 2-3 words keyword", _SQ_PLUGIN_NAME_) ?></h4>
|
57 |
|
58 |
-
<div class="col-
|
59 |
<h6 class="my-2 text-info">
|
60 |
<strong><?php echo esc_html__("Enter a keyword that matches your business", _SQ_PLUGIN_NAME_) ?>:</strong>
|
61 |
</h6>
|
@@ -64,10 +64,10 @@
|
|
64 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("Focus on finding Long Tail Keywords.", _SQ_PLUGIN_NAME_) ?></div>
|
65 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo esc_html__("You need to enter a keyword first", _SQ_PLUGIN_NAME_) ?></h4>
|
66 |
</div>
|
67 |
-
<div class="row col-
|
68 |
-
<div class="col-
|
69 |
</div>
|
70 |
-
<div class="col-
|
71 |
<button type="button" class="sqd-submit btn btn-success btn-lg px-5" onclick="jQuery.sq_steps(2)"><?php echo esc_html__("Next", _SQ_PLUGIN_NAME_) ?> >></button>
|
72 |
</div>
|
73 |
</div>
|
@@ -76,7 +76,7 @@
|
|
76 |
<div class="sq_step sq_step2 my-2" style="display: none">
|
77 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 2/4: Choose a country for your keyword research", _SQ_PLUGIN_NAME_) ?></h4>
|
78 |
|
79 |
-
<div class="col-
|
80 |
<h6 class="my-2 text-info">
|
81 |
<strong><?php echo esc_html__("Select country", _SQ_PLUGIN_NAME_) ?>:</strong>
|
82 |
</h6>
|
@@ -94,12 +94,12 @@
|
|
94 |
</select>
|
95 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("For local SEO you need to select the Country where you run your business", _SQ_PLUGIN_NAME_) ?></div>
|
96 |
</div>
|
97 |
-
<div class="row col-
|
98 |
|
99 |
-
<div class="col-
|
100 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
101 |
</div>
|
102 |
-
<div class="col-
|
103 |
<button type="button" class="sqd-submit btn btn-success btn-lg px-5" onclick="jQuery('.sq_step3').sq_getSuggested();"><?php echo esc_html__("Next", _SQ_PLUGIN_NAME_) ?> >></button>
|
104 |
</div>
|
105 |
</div>
|
@@ -107,39 +107,39 @@
|
|
107 |
<div class="sq_step sq_step3 my-2" style="display: none; min-height: 250px">
|
108 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 3/4: Select similar keywords from below", _SQ_PLUGIN_NAME_) ?></h4>
|
109 |
<div class="text-danger text-center my-4" style="display: none"><?php echo esc_html__("Select up to 3 similar keywords and start the research", _SQ_PLUGIN_NAME_) ?></div>
|
110 |
-
<div class="col-
|
111 |
<div class="custom-control custom-checkbox">
|
112 |
<div class="row">
|
113 |
-
<div class="sq_suggested col-
|
114 |
-
<div class="sq_suggested col-
|
115 |
</div>
|
116 |
<div class="row">
|
117 |
-
<div class="sq_suggested col-
|
118 |
-
<div class="sq_suggested col-
|
119 |
</div>
|
120 |
<div class="row">
|
121 |
-
<div class="sq_suggested col-
|
122 |
-
<div class="sq_suggested col-
|
123 |
</div>
|
124 |
<div class="row">
|
125 |
-
<div class="sq_suggested col-
|
126 |
-
<div class="sq_suggested col-
|
127 |
</div>
|
128 |
<div class="row">
|
129 |
-
<div class="sq_suggested col-
|
130 |
-
<div class="sq_suggested col-
|
131 |
</div>
|
132 |
<div class="row">
|
133 |
-
<div class="sq_suggested col-
|
134 |
-
<div class="sq_suggested col-
|
135 |
</div>
|
136 |
<div class="row">
|
137 |
-
<div class="sq_suggested col-
|
138 |
-
<div class="sq_suggested col-
|
139 |
</div>
|
140 |
<div class="row">
|
141 |
-
<div class="sq_suggested col-
|
142 |
-
<div class="sq_suggested col-
|
143 |
</div>
|
144 |
</div>
|
145 |
<h4 class="sq_limit_exceeded text-warning text-center" style="display: none">
|
@@ -148,31 +148,31 @@
|
|
148 |
</h4>
|
149 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo sprintf(esc_html__("We could not find similar keywords. %sClick on 'Do research'", _SQ_PLUGIN_NAME_), '<br />') ?></h4>
|
150 |
</div>
|
151 |
-
<div class="row col-
|
152 |
-
<div class="col-
|
153 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
154 |
</div>
|
155 |
<?php if ($view->checkin->subscription_research == 'deep') { ?>
|
156 |
-
<div class="col-
|
157 |
-
<div class="
|
158 |
-
<
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
<
|
164 |
</div>
|
165 |
</div>
|
166 |
</div>
|
167 |
<?php } else { ?>
|
168 |
-
<div class="col-
|
169 |
-
<button type="button" class="sqd-submit btn btn-success px-5" onclick="jQuery('.sq_step4').sq_getResearch(20);"><?php echo esc_html__("Do research", _SQ_PLUGIN_NAME_) ?> >></button>
|
170 |
</div>
|
171 |
<?php } ?>
|
172 |
|
173 |
</div>
|
174 |
</div>
|
175 |
-
<div class="sq_step sq_step4 col-
|
176 |
<div class="sq_loading_steps" style="display: none; ">
|
177 |
<div class="sq_loading_step1 sq_loading_step"><?php echo esc_html__("Keyword Research in progress. We're doing all of this in real-time. Data is fresh.", _SQ_PLUGIN_NAME_) ?></div>
|
178 |
<div class="sq_loading_step2 sq_loading_step"><?php echo esc_html__("We're now finding 10 alternatives for each keyword you selected.", _SQ_PLUGIN_NAME_) ?></div>
|
@@ -191,7 +191,9 @@
|
|
191 |
<h4 class="sq_research_success text-success text-center my-2" style="display: none"><?php echo esc_html__("Step 4/4: We found some relevant keywords for you", _SQ_PLUGIN_NAME_) ?></h4>
|
192 |
<h4 class="sq_research_timeout_error text-warning text-center" style="display: none"><?php echo sprintf(esc_html__("Still processing. give it a bit more time, then go to %sResearch History%s. Results will appear there.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'history') . '" >', '</a>') ?></h4>
|
193 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo esc_html__("Step 4/4: We could not find relevant keywords for you", _SQ_PLUGIN_NAME_) ?></h4>
|
194 |
-
|
|
|
|
|
195 |
<thead>
|
196 |
<tr>
|
197 |
<th><?php echo esc_html__("Keyword", _SQ_PLUGIN_NAME_) ?></th>
|
@@ -219,12 +221,13 @@
|
|
219 |
|
220 |
</tbody>
|
221 |
</table>
|
|
|
222 |
|
223 |
<div class="row mt-2">
|
224 |
-
<div class="col-
|
225 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
226 |
</div>
|
227 |
-
<div class="col-
|
228 |
|
229 |
</div>
|
230 |
</div>
|
@@ -236,12 +239,12 @@
|
|
236 |
</div>
|
237 |
</div>
|
238 |
|
239 |
-
<div class="col-
|
240 |
<a href="https://howto.squirrly.co/wordpress-seo/journey-to-better-ranking-day-2/" target="_blank"><?php echo esc_html__("How to Find Amazing Keywords and get more search traffic?", _SQ_PLUGIN_NAME_) ?></a>
|
241 |
</div>
|
242 |
</div>
|
243 |
<div class="sq_col_side sticky">
|
244 |
-
<div class="card col-
|
245 |
<div class="card-body f-gray-dark p-0">
|
246 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
247 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
@@ -250,7 +253,7 @@
|
|
250 |
|
251 |
</div>
|
252 |
|
253 |
-
<div class="card col-
|
254 |
<h5 class="modal-title mb-3"><?php echo esc_html__("Already Have Keywords?", _SQ_PLUGIN_NAME_); ?></h5>
|
255 |
|
256 |
<div>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'research'), 'sq_research'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_help_question float-right">
|
13 |
<a href="https://howto.squirrly.co/kb/keyword-research-and-seo-strategy/#keyword_research" target="_blank"><i class="fa fa-question-circle"></i></a>
|
25 |
|
26 |
<div class="sq_message sq_error" style="display: none"></div>
|
27 |
|
28 |
+
<div class="col-12 p-0 py-3">
|
29 |
|
30 |
<?php
|
31 |
if (isset($view->error) && $view->error == 'limit_exceeded') { ?>
|
37 |
|
38 |
<h4 class="text-success text-center mt-5 mb-2"><?php echo esc_html__("Add a keyword to Briefcase", _SQ_PLUGIN_NAME_) ?></h4>
|
39 |
<form method="post" class="p-0 m-0">
|
40 |
+
<div class="col-8 offset-2">
|
41 |
<input type="text" name="keyword" class="form-control mb-2" value="<?php echo SQ_Classes_Helpers_Tools::getValue('keyword', '') ?>">
|
42 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("It's best if you focus on finding Long-Tail Keywords.", _SQ_PLUGIN_NAME_) ?></div>
|
43 |
</div>
|
44 |
+
<div class="col-12 mt-3 text-center">
|
45 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_briefcase_addkeyword', 'sq_nonce'); ?>
|
46 |
<input type="hidden" name="action" value="sq_briefcase_addkeyword"/>
|
47 |
<button type="submit" class="sqd-submit btn btn-success btn-lg px-5">
|
55 |
<div class="sq_step sq_step1 my-2">
|
56 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 1/4: Enter a starting 2-3 words keyword", _SQ_PLUGIN_NAME_) ?></h4>
|
57 |
|
58 |
+
<div class="col-8 offset-2">
|
59 |
<h6 class="my-2 text-info">
|
60 |
<strong><?php echo esc_html__("Enter a keyword that matches your business", _SQ_PLUGIN_NAME_) ?>:</strong>
|
61 |
</h6>
|
64 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("Focus on finding Long Tail Keywords.", _SQ_PLUGIN_NAME_) ?></div>
|
65 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo esc_html__("You need to enter a keyword first", _SQ_PLUGIN_NAME_) ?></h4>
|
66 |
</div>
|
67 |
+
<div class="row col-12 mt-3">
|
68 |
+
<div class="col-6 text-left">
|
69 |
</div>
|
70 |
+
<div class="col-6 text-right">
|
71 |
<button type="button" class="sqd-submit btn btn-success btn-lg px-5" onclick="jQuery.sq_steps(2)"><?php echo esc_html__("Next", _SQ_PLUGIN_NAME_) ?> >></button>
|
72 |
</div>
|
73 |
</div>
|
76 |
<div class="sq_step sq_step2 my-2" style="display: none">
|
77 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 2/4: Choose a country for your keyword research", _SQ_PLUGIN_NAME_) ?></h4>
|
78 |
|
79 |
+
<div class="col-8 offset-2">
|
80 |
<h6 class="my-2 text-info">
|
81 |
<strong><?php echo esc_html__("Select country", _SQ_PLUGIN_NAME_) ?>:</strong>
|
82 |
</h6>
|
94 |
</select>
|
95 |
<div class="my-2 text-black-50 small text-center"><?php echo esc_html__("For local SEO you need to select the Country where you run your business", _SQ_PLUGIN_NAME_) ?></div>
|
96 |
</div>
|
97 |
+
<div class="row col-12 mt-5">
|
98 |
|
99 |
+
<div class="col-6 text-left">
|
100 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
101 |
</div>
|
102 |
+
<div class="col-6 text-right">
|
103 |
<button type="button" class="sqd-submit btn btn-success btn-lg px-5" onclick="jQuery('.sq_step3').sq_getSuggested();"><?php echo esc_html__("Next", _SQ_PLUGIN_NAME_) ?> >></button>
|
104 |
</div>
|
105 |
</div>
|
107 |
<div class="sq_step sq_step3 my-2" style="display: none; min-height: 250px">
|
108 |
<h4 class="text-success text-center my-4"><?php echo esc_html__("Step 3/4: Select similar keywords from below", _SQ_PLUGIN_NAME_) ?></h4>
|
109 |
<div class="text-danger text-center my-4" style="display: none"><?php echo esc_html__("Select up to 3 similar keywords and start the research", _SQ_PLUGIN_NAME_) ?></div>
|
110 |
+
<div class="col-10 offset-1">
|
111 |
<div class="custom-control custom-checkbox">
|
112 |
<div class="row">
|
113 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
114 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
115 |
</div>
|
116 |
<div class="row">
|
117 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
118 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
119 |
</div>
|
120 |
<div class="row">
|
121 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
122 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
123 |
</div>
|
124 |
<div class="row">
|
125 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
126 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
127 |
</div>
|
128 |
<div class="row">
|
129 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
130 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
131 |
</div>
|
132 |
<div class="row">
|
133 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
134 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
135 |
</div>
|
136 |
<div class="row">
|
137 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
138 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
139 |
</div>
|
140 |
<div class="row">
|
141 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
142 |
+
<div class="sq_suggested col-5 offset-1 mt-2"></div>
|
143 |
</div>
|
144 |
</div>
|
145 |
<h4 class="sq_limit_exceeded text-warning text-center" style="display: none">
|
148 |
</h4>
|
149 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo sprintf(esc_html__("We could not find similar keywords. %sClick on 'Do research'", _SQ_PLUGIN_NAME_), '<br />') ?></h4>
|
150 |
</div>
|
151 |
+
<div class="row col-12 mt-5">
|
152 |
+
<div class="col-4 p-2 text-left">
|
153 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
154 |
</div>
|
155 |
<?php if ($view->checkin->subscription_research == 'deep') { ?>
|
156 |
+
<div class="col-8 mx-0 my-2 p-0 text-right">
|
157 |
+
<div class="dropdown ">
|
158 |
+
<button class="btn btn-success btn-lg dropdown-toggle" style="min-width: 280px" type="button" id="add_new_dropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
159 |
+
<?php echo esc_html__("Do research", _SQ_PLUGIN_NAME_); ?>
|
160 |
+
</button>
|
161 |
+
<div class="dropdown-menu mt-1" style="min-width: 200px" aria-labelledby="add_new_dropdown">
|
162 |
+
<a href="javascript:jQuery('.sq_step4').sq_getResearch(20);" class="dropdown-item py-2" ><?php echo esc_html__("Do research (up to 20 results)", _SQ_PLUGIN_NAME_) ?></a>
|
163 |
+
<a href="javascript:jQuery('.sq_step4').sq_getResearch(50);" class="dropdown-item py-2" ><?php echo esc_html__("Do a deep research (up to 50 results)", _SQ_PLUGIN_NAME_) ?></a>
|
164 |
</div>
|
165 |
</div>
|
166 |
</div>
|
167 |
<?php } else { ?>
|
168 |
+
<div class="col-8 mx-0 my-2 p-0 text-right">
|
169 |
+
<button type="button" class="sqd-submit btn btn-lg btn-success px-5" onclick="jQuery('.sq_step4').sq_getResearch(20);"><?php echo esc_html__("Do research", _SQ_PLUGIN_NAME_) ?> >></button>
|
170 |
</div>
|
171 |
<?php } ?>
|
172 |
|
173 |
</div>
|
174 |
</div>
|
175 |
+
<div class="sq_step sq_step4 col-12 my-2 px-0" style="display: none; min-height: 230px !important;">
|
176 |
<div class="sq_loading_steps" style="display: none; ">
|
177 |
<div class="sq_loading_step1 sq_loading_step"><?php echo esc_html__("Keyword Research in progress. We're doing all of this in real-time. Data is fresh.", _SQ_PLUGIN_NAME_) ?></div>
|
178 |
<div class="sq_loading_step2 sq_loading_step"><?php echo esc_html__("We're now finding 10 alternatives for each keyword you selected.", _SQ_PLUGIN_NAME_) ?></div>
|
191 |
<h4 class="sq_research_success text-success text-center my-2" style="display: none"><?php echo esc_html__("Step 4/4: We found some relevant keywords for you", _SQ_PLUGIN_NAME_) ?></h4>
|
192 |
<h4 class="sq_research_timeout_error text-warning text-center" style="display: none"><?php echo sprintf(esc_html__("Still processing. give it a bit more time, then go to %sResearch History%s. Results will appear there.", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'history') . '" >', '</a>') ?></h4>
|
193 |
<h4 class="sq_research_error text-warning text-center" style="display: none"><?php echo esc_html__("Step 4/4: We could not find relevant keywords for you", _SQ_PLUGIN_NAME_) ?></h4>
|
194 |
+
|
195 |
+
<div class="p-1">
|
196 |
+
<table class="table table-striped table-hover" style="display: none">
|
197 |
<thead>
|
198 |
<tr>
|
199 |
<th><?php echo esc_html__("Keyword", _SQ_PLUGIN_NAME_) ?></th>
|
221 |
|
222 |
</tbody>
|
223 |
</table>
|
224 |
+
</div>
|
225 |
|
226 |
<div class="row mt-2">
|
227 |
+
<div class="col-6 p-2 text-left">
|
228 |
<button type="button" class="btn btn-link btn-lg" onclick="location.reload();"><?php echo esc_html__("Start Over", _SQ_PLUGIN_NAME_) ?></button>
|
229 |
</div>
|
230 |
+
<div class="col-6 text-right">
|
231 |
|
232 |
</div>
|
233 |
</div>
|
239 |
</div>
|
240 |
</div>
|
241 |
|
242 |
+
<div class="col-12 text-center m-3">
|
243 |
<a href="https://howto.squirrly.co/wordpress-seo/journey-to-better-ranking-day-2/" target="_blank"><?php echo esc_html__("How to Find Amazing Keywords and get more search traffic?", _SQ_PLUGIN_NAME_) ?></a>
|
244 |
</div>
|
245 |
</div>
|
246 |
<div class="sq_col_side sticky">
|
247 |
+
<div class="card col-12 p-0">
|
248 |
<div class="card-body f-gray-dark p-0">
|
249 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
250 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
253 |
|
254 |
</div>
|
255 |
|
256 |
+
<div class="card col-12 border-0 p-2 text-center">
|
257 |
<h5 class="modal-title mb-3"><?php echo esc_html__("Already Have Keywords?", _SQ_PLUGIN_NAME_); ?></h5>
|
258 |
|
259 |
<div>
|
view/Research/Suggested.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'suggested'), 'sq_research'); ?>
|
6 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
7 |
-
<div class="flex-grow-1
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
-
<div class="card col-
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_suggested_icon m-2"></div>
|
@@ -15,12 +15,12 @@
|
|
15 |
<h3 class="card-title"><?php echo esc_html__("Suggested", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"><?php echo esc_html__("See the trending keywords suitable for your website's future topics. We check for new keywords weekly based on your latest researches.", _SQ_PLUGIN_NAME_); ?></div>
|
17 |
</div>
|
18 |
-
<div id="sq_suggested" class="card col-
|
19 |
<?php do_action('sq_subscription_notices'); ?>
|
20 |
|
21 |
<div class="card-body p-0">
|
22 |
-
<div class="col-
|
23 |
-
<div class="card col-
|
24 |
<?php if (is_array($view->suggested) && !empty($view->suggested)) { ?>
|
25 |
<table class="table table-striped table-hover">
|
26 |
<thead>
|
@@ -147,7 +147,7 @@
|
|
147 |
<h5 class="text-center"><?php echo esc_html__("Once a week, Squirrly checks all the keywords from your briefcase.", _SQ_PLUGIN_NAME_); ?></h5>
|
148 |
<h5 class="text-center"><?php echo esc_html__("If it finds better keywords, they will be listed here", _SQ_PLUGIN_NAME_); ?></h5>
|
149 |
<h6 class="text-center text-black-50 mt-3"><?php echo esc_html__("Until then, add keywords in Briefcase", _SQ_PLUGIN_NAME_); ?>:</h6>
|
150 |
-
<div class="col-
|
151 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
152 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
153 |
</a>
|
@@ -162,7 +162,7 @@
|
|
162 |
</div>
|
163 |
</div>
|
164 |
<div class="sq_col_side sticky">
|
165 |
-
<div class="card col-
|
166 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
167 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
168 |
</div>
|
3 |
<?php do_action('sq_notices'); ?>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab', 'suggested'), 'sq_research'); ?>
|
6 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
7 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
8 |
<?php do_action('sq_form_notices'); ?>
|
9 |
|
10 |
+
<div class="card col-12 p-0">
|
11 |
<div class="card-body p-2 bg-title rounded-top">
|
12 |
<div class="sq_icons_content p-3 py-4">
|
13 |
<div class="sq_icons sq_suggested_icon m-2"></div>
|
15 |
<h3 class="card-title"><?php echo esc_html__("Suggested", _SQ_PLUGIN_NAME_); ?>:</h3>
|
16 |
<div class="card-title-description m-2"><?php echo esc_html__("See the trending keywords suitable for your website's future topics. We check for new keywords weekly based on your latest researches.", _SQ_PLUGIN_NAME_); ?></div>
|
17 |
</div>
|
18 |
+
<div id="sq_suggested" class="card col-12 p-0 tab-panel border-0">
|
19 |
<?php do_action('sq_subscription_notices'); ?>
|
20 |
|
21 |
<div class="card-body p-0">
|
22 |
+
<div class="col-12 m-0 p-0">
|
23 |
+
<div class="card col-12 my-4 py-0 px-1 border-0 ">
|
24 |
<?php if (is_array($view->suggested) && !empty($view->suggested)) { ?>
|
25 |
<table class="table table-striped table-hover">
|
26 |
<thead>
|
147 |
<h5 class="text-center"><?php echo esc_html__("Once a week, Squirrly checks all the keywords from your briefcase.", _SQ_PLUGIN_NAME_); ?></h5>
|
148 |
<h5 class="text-center"><?php echo esc_html__("If it finds better keywords, they will be listed here", _SQ_PLUGIN_NAME_); ?></h5>
|
149 |
<h6 class="text-center text-black-50 mt-3"><?php echo esc_html__("Until then, add keywords in Briefcase", _SQ_PLUGIN_NAME_); ?>:</h6>
|
150 |
+
<div class="col-12 my-4 text-center">
|
151 |
<a href="<?php echo SQ_Classes_Helpers_Tools::getAdminUrl('sq_research', 'research') ?>" class="btn btn-lg btn-primary">
|
152 |
<i class="fa fa-plus-square-o"></i> <?php echo esc_html__("Go Find New Keywords", _SQ_PLUGIN_NAME_); ?>
|
153 |
</a>
|
162 |
</div>
|
163 |
</div>
|
164 |
<div class="sq_col_side sticky">
|
165 |
+
<div class="card col-12 p-0">
|
166 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
167 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
168 |
</div>
|
view/SeoSettings/Advanced.php
CHANGED
@@ -4,21 +4,21 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_advanced', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_advanced"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<div class="card-body p-2 bg-title rounded-top row">
|
21 |
-
<div class="col-
|
22 |
<div class="sq_icons_content p-3 py-4">
|
23 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
24 |
</div>
|
@@ -27,13 +27,13 @@
|
|
27 |
|
28 |
</div>
|
29 |
|
30 |
-
<div id="sq_seosettings" class="card col-
|
31 |
<div class="card-body p-0 ">
|
32 |
-
<div class="col-
|
33 |
-
<div class="card col-
|
34 |
-
<div class="col-
|
35 |
-
<div class="checker col-
|
36 |
-
<div class="col-
|
37 |
<input type="hidden" name="sq_load_css" value="0"/>
|
38 |
<input type="checkbox" id="sq_load_css" name="sq_load_css" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_load_css') ? 'checked="checked"' : '') ?> value="1"/>
|
39 |
<label for="sq_load_css" class="ml-2"><?php echo esc_html__("Load Squirrly Frontend CSS", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -42,9 +42,9 @@
|
|
42 |
</div>
|
43 |
</div>
|
44 |
|
45 |
-
<div class="col-
|
46 |
-
<div class="checker col-
|
47 |
-
<div class="col-
|
48 |
<input type="hidden" name="sq_minify" value="0"/>
|
49 |
<input type="checkbox" id="sq_minify" name="sq_minify" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_minify') ? 'checked="checked"' : '') ?> value="1"/>
|
50 |
<label for="sq_minify" class="ml-2"><?php echo esc_html__("Minify Squirrly SEO Metas", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -54,9 +54,9 @@
|
|
54 |
</div>
|
55 |
</div>
|
56 |
|
57 |
-
<div class="col-
|
58 |
-
<div class="checker col-
|
59 |
-
<div class="col-
|
60 |
<input type="hidden" name="sq_laterload" value="0"/>
|
61 |
<input type="checkbox" id="sq_laterload" name="sq_laterload" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_laterload') ? 'checked="checked"' : '') ?> value="1"/>
|
62 |
<label for="sq_laterload" class="ml-2"><?php echo esc_html__("Squirrly SEO Late Buffer", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -68,9 +68,9 @@
|
|
68 |
|
69 |
<div class="sq_separator my-3"></div>
|
70 |
|
71 |
-
<div class="col-
|
72 |
-
<div class="checker col-
|
73 |
-
<div class="col-
|
74 |
<input type="hidden" name="sq_complete_uninstall" value="0"/>
|
75 |
<input type="checkbox" id="sq_complete_uninstall" name="sq_complete_uninstall" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_complete_uninstall') ? 'checked="checked"' : '') ?> value="1"/>
|
76 |
<label for="sq_complete_uninstall" class="ml-2"><?php echo esc_html__("Delete Squirrly Table on Uninstall", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -86,7 +86,7 @@
|
|
86 |
|
87 |
</div>
|
88 |
|
89 |
-
<div class="col-
|
90 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
91 |
</div>
|
92 |
|
@@ -94,7 +94,7 @@
|
|
94 |
</form>
|
95 |
</div>
|
96 |
<div class="sq_col_side sticky">
|
97 |
-
<div class="card col-
|
98 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
99 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
100 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_advanced', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_advanced"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<div class="card-body p-2 bg-title rounded-top row">
|
21 |
+
<div class="col-12 text-left m-0 p-0">
|
22 |
<div class="sq_icons_content p-3 py-4">
|
23 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
24 |
</div>
|
27 |
|
28 |
</div>
|
29 |
|
30 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
31 |
<div class="card-body p-0 ">
|
32 |
+
<div class="col-12 m-0 p-0">
|
33 |
+
<div class="card col-12 p-0 border-0 ">
|
34 |
+
<div class="col-12 row mb-1 ml-1">
|
35 |
+
<div class="checker col-12 row my-2 py-1">
|
36 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
37 |
<input type="hidden" name="sq_load_css" value="0"/>
|
38 |
<input type="checkbox" id="sq_load_css" name="sq_load_css" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_load_css') ? 'checked="checked"' : '') ?> value="1"/>
|
39 |
<label for="sq_load_css" class="ml-2"><?php echo esc_html__("Load Squirrly Frontend CSS", _SQ_PLUGIN_NAME_); ?></label>
|
42 |
</div>
|
43 |
</div>
|
44 |
|
45 |
+
<div class="col-12 row mb-1 ml-1">
|
46 |
+
<div class="checker col-12 row my-2 py-1">
|
47 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
48 |
<input type="hidden" name="sq_minify" value="0"/>
|
49 |
<input type="checkbox" id="sq_minify" name="sq_minify" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_minify') ? 'checked="checked"' : '') ?> value="1"/>
|
50 |
<label for="sq_minify" class="ml-2"><?php echo esc_html__("Minify Squirrly SEO Metas", _SQ_PLUGIN_NAME_); ?></label>
|
54 |
</div>
|
55 |
</div>
|
56 |
|
57 |
+
<div class="col-12 row mb-1 ml-1">
|
58 |
+
<div class="checker col-12 row my-2 py-1">
|
59 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
60 |
<input type="hidden" name="sq_laterload" value="0"/>
|
61 |
<input type="checkbox" id="sq_laterload" name="sq_laterload" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_laterload') ? 'checked="checked"' : '') ?> value="1"/>
|
62 |
<label for="sq_laterload" class="ml-2"><?php echo esc_html__("Squirrly SEO Late Buffer", _SQ_PLUGIN_NAME_); ?></label>
|
68 |
|
69 |
<div class="sq_separator my-3"></div>
|
70 |
|
71 |
+
<div class="col-12 row mb-1 ml-1">
|
72 |
+
<div class="checker col-12 row my-2 py-1">
|
73 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
74 |
<input type="hidden" name="sq_complete_uninstall" value="0"/>
|
75 |
<input type="checkbox" id="sq_complete_uninstall" name="sq_complete_uninstall" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_complete_uninstall') ? 'checked="checked"' : '') ?> value="1"/>
|
76 |
<label for="sq_complete_uninstall" class="ml-2"><?php echo esc_html__("Delete Squirrly Table on Uninstall", _SQ_PLUGIN_NAME_); ?></label>
|
86 |
|
87 |
</div>
|
88 |
|
89 |
+
<div class="col-12 my-3 p-0">
|
90 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
91 |
</div>
|
92 |
|
94 |
</form>
|
95 |
</div>
|
96 |
<div class="sq_col_side sticky">
|
97 |
+
<div class="card col-12 p-0">
|
98 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
99 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
100 |
</div>
|
view/SeoSettings/Automation.php
CHANGED
@@ -4,33 +4,33 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs('automation', 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row bg-white px-3">
|
13 |
-
<div class="flex-grow-1
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_automation', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_automation"/>
|
19 |
|
20 |
-
<div class="card col-
|
21 |
<div class="card-body p-2 bg-title rounded-top row">
|
22 |
-
<div class="col-
|
23 |
<div class="sq_icons_content p-3 py-4">
|
24 |
<div class="sq_icons sq_automation_icon m-2"></div>
|
25 |
</div>
|
26 |
<h3 class="card-title"><?php echo esc_html__("Meta Automation", _SQ_PLUGIN_NAME_); ?>:</h3>
|
27 |
-
<div class="col-
|
28 |
<div class="card-title-description m-1"><?php echo esc_html__("Control how post types are displayed on your site, within search engine results, and social media feeds.", _SQ_PLUGIN_NAME_); ?></div>
|
29 |
</div>
|
30 |
</div>
|
31 |
-
<div class="col-
|
32 |
-
<div class="checker col-
|
33 |
-
<div class="col-
|
34 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/seo-automation/" target="_blank"><i class="fa fa-question-circle" style="margin: 0;"></i></a></div>
|
35 |
<label for="sq_auto_pattern" class="ml-2"><?php echo esc_html__("Activate Patterns", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_pattern" value="0"/>
|
@@ -42,11 +42,11 @@
|
|
42 |
|
43 |
</div>
|
44 |
|
45 |
-
<div class="card col-
|
46 |
|
47 |
<div class="card-body p-0">
|
48 |
-
<div class="col-
|
49 |
-
<div class="card col-
|
50 |
|
51 |
<?php
|
52 |
$filter = array('public' => true, '_builtin' => false);
|
@@ -54,25 +54,37 @@
|
|
54 |
|
55 |
$new_types = array();
|
56 |
foreach ($types as $pattern => $type) {
|
|
|
|
|
57 |
if (in_array($pattern, array_keys(SQ_Classes_Helpers_Tools::getOption('patterns')))) {
|
58 |
continue;
|
59 |
}
|
60 |
$new_types[$pattern] = $type;
|
61 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
if (!empty($new_types)) {
|
63 |
?>
|
64 |
-
<div class="col-
|
65 |
-
<div class="col-
|
66 |
<H5><?php echo esc_html__("Add Post Type for SEO Automation", _SQ_PLUGIN_NAME_); ?>:</H5>
|
67 |
</div>
|
68 |
|
69 |
-
<div class="checker col-
|
70 |
-
<div class="col-
|
71 |
-
<div class="col-
|
72 |
<div class="font-weight-bold"><?php echo esc_html__("Add Post Type", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#add_post_type" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a></div>
|
73 |
<div class="small text-black-50"><?php echo esc_html__("Add new post types in the list and customize the automation for it.", _SQ_PLUGIN_NAME_); ?></div>
|
74 |
</div>
|
75 |
-
<div class="col-
|
76 |
<select id="sq_select_post_types" class="form-control bg-input mb-1">
|
77 |
<?php
|
78 |
foreach ($new_types as $pattern => $type) {
|
@@ -81,7 +93,7 @@
|
|
81 |
<?php } ?>
|
82 |
</select>
|
83 |
|
84 |
-
<button type="button" data-input="sq_select_post_types" data-action="sq_ajax_automation_addpostype" data-name="post_type" class="btn rounded-0 btn-success
|
85 |
|
86 |
</div>
|
87 |
</div>
|
@@ -89,8 +101,8 @@
|
|
89 |
</div>
|
90 |
<?php } ?>
|
91 |
|
92 |
-
<div class="col-
|
93 |
-
<div class="col-
|
94 |
<h5><?php echo esc_html__("Customize the automation for each post type", _SQ_PLUGIN_NAME_); ?>:</h5>
|
95 |
</div>
|
96 |
|
@@ -116,35 +128,35 @@
|
|
116 |
<?php foreach (SQ_Classes_Helpers_Tools::getOption('patterns') as $pattern => $type) { ?>
|
117 |
|
118 |
<div class="tab-pane <?php if ($pattern == 'home') { ?>show active<?php } ?>" id="nav-<?php echo esc_attr($pattern) ?>" role="tabpanel" aria-labelledby="nav-<?php echo esc_attr($pattern) ?>-tab">
|
119 |
-
<h4 class="col-
|
120 |
|
121 |
-
<div id="sq_seosettings" class="col-
|
122 |
|
123 |
-
<div class="col-
|
124 |
-
<div class="col-
|
125 |
<?php echo esc_html__("Title", _SQ_PLUGIN_NAME_); ?>:
|
126 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 10-75 chars", _SQ_PLUGIN_NAME_); ?></div>
|
127 |
</div>
|
128 |
-
<div class="col-
|
129 |
<textarea rows="1" class="form-control bg-input" name="patterns[<?php echo esc_attr($pattern) ?>][title]" ><?php echo esc_html($type['title']) ?></textarea>
|
130 |
</div>
|
131 |
</div>
|
132 |
-
<div class="col-
|
133 |
-
<div class="col-
|
134 |
<?php echo esc_html__("Description", _SQ_PLUGIN_NAME_); ?>:
|
135 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 70-320 chars", _SQ_PLUGIN_NAME_); ?></div>
|
136 |
</div>
|
137 |
-
<div class="col-
|
138 |
<textarea class="form-control" name="patterns[<?php echo esc_attr($pattern) ?>][description]" rows="5"><?php echo esc_html($type['description']) ?></textarea>
|
139 |
</div>
|
140 |
</div>
|
141 |
|
142 |
-
<div class="col-
|
143 |
-
<div class="col-
|
144 |
<div class="font-weight-bold"><?php echo esc_html__("Separator", _SQ_PLUGIN_NAME_); ?>:</div>
|
145 |
<div class="small text-black-50"><?php echo esc_html__("Use separator to help user read the most relevant part of your title and increase Conversion Rate", _SQ_PLUGIN_NAME_); ?></div>
|
146 |
</div>
|
147 |
-
<div class="col-
|
148 |
<select name="patterns[<?php echo esc_attr($pattern) ?>][sep]" class="form-control bg-input mb-1">
|
149 |
<?php
|
150 |
$seps = json_decode(SQ_ALL_SEP, true);
|
@@ -157,28 +169,28 @@
|
|
157 |
</div>
|
158 |
</div>
|
159 |
|
160 |
-
<div class="col-
|
161 |
|
162 |
-
<div class="col-
|
163 |
|
164 |
-
<div class="checker col-
|
165 |
|
166 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
167 |
-
<div class="sq_deactivated_label col-
|
168 |
-
<div class="col-
|
169 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
170 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
171 |
</div>
|
172 |
</div>
|
173 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) { ?>
|
174 |
-
<div class="sq_deactivated_label col-
|
175 |
-
<div class="col-
|
176 |
<input type="hidden" id="activate_sq_auto_noindex" value="1"/>
|
177 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_noindex" data-action="sq_ajax_seosettings_save" data-name="sq_auto_noindex"><?php echo esc_html__("Activate Robots Meta", _SQ_PLUGIN_NAME_); ?></button>
|
178 |
</div>
|
179 |
</div>
|
180 |
<?php } ?>
|
181 |
-
<div class="col-
|
182 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][noindex]" value="1"/>
|
183 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_noindex" name="patterns[<?php echo esc_attr($pattern) ?>][noindex]" class="sq-switch" <?php echo(($type['noindex'] == 0) ? 'checked="checked"' : '') ?> value="0"/>
|
184 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_noindex" class="ml-2"><?php echo esc_html__("Let Google Index it", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -188,24 +200,24 @@
|
|
188 |
|
189 |
</div>
|
190 |
|
191 |
-
<div class="col-
|
192 |
-
<div class="checker col-
|
193 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
194 |
-
<div class="sq_deactivated_label col-
|
195 |
-
<div class="col-
|
196 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
197 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
198 |
</div>
|
199 |
</div>
|
200 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) { ?>
|
201 |
-
<div class="sq_deactivated_label col-
|
202 |
-
<div class="col-
|
203 |
<input type="hidden" id="activate_sq_auto_noindex" value="1"/>
|
204 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_noindex" data-action="sq_ajax_seosettings_save" data-name="sq_auto_noindex"><?php echo esc_html__("Activate Robots Meta", _SQ_PLUGIN_NAME_); ?></button>
|
205 |
</div>
|
206 |
</div>
|
207 |
<?php } ?>
|
208 |
-
<div class="col-
|
209 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][nofollow]" value="1"/>
|
210 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_nofollow" name="patterns[<?php echo esc_attr($pattern) ?>][nofollow]" class="sq-switch" <?php echo(($type['nofollow'] == 0) ? 'checked="checked"' : '') ?> value="0"/>
|
211 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_nofollow" class="ml-2"><?php echo esc_html__("Send Authority to it", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -214,17 +226,17 @@
|
|
214 |
</div>
|
215 |
</div>
|
216 |
|
217 |
-
<div class="col-
|
218 |
-
<div class="checker col-
|
219 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap')) { ?>
|
220 |
-
<div class="sq_deactivated_label col-
|
221 |
-
<div class="col-
|
222 |
<input type="hidden" id="activate_sq_auto_sitemap" value="1"/>
|
223 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_sitemap" data-action="sq_ajax_seosettings_save" data-name="sq_auto_sitemap"><?php echo esc_html__("Activate Sitemap", _SQ_PLUGIN_NAME_); ?></button>
|
224 |
</div>
|
225 |
</div>
|
226 |
<?php } ?>
|
227 |
-
<div class="col-
|
228 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_sitemap]" value="0"/>
|
229 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_sitemap" name="patterns[<?php echo esc_attr($pattern) ?>][do_sitemap]" class="sq-switch" <?php echo(($type['do_sitemap'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
230 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_sitemap" class="ml-2"><?php echo esc_html__("Include In Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -238,9 +250,9 @@
|
|
238 |
$type['do_redirects'] = 0;
|
239 |
}
|
240 |
?>
|
241 |
-
<div class="col-
|
242 |
-
<div class="checker col-
|
243 |
-
<div class="col-
|
244 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_redirects]" value="0"/>
|
245 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_redirects" name="patterns[<?php echo esc_attr($pattern) ?>][do_redirects]" class="sq-switch" <?php echo(($type['do_redirects'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
246 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_redirects" class="ml-2"><?php echo esc_html__("Redirect Broken URLs", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -250,9 +262,9 @@
|
|
250 |
</div>
|
251 |
|
252 |
<?php if ($pattern == 'attachment') { ?>
|
253 |
-
<div class="col-
|
254 |
-
<div class="checker col-
|
255 |
-
<div class="col-
|
256 |
<input type="hidden" name="sq_attachment_redirect" value="0"/>
|
257 |
<input type="checkbox" id="sq_attachment_redirect" name="sq_attachment_redirect" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_attachment_redirect') ? 'checked="checked"' : '') ?> value="1"/>
|
258 |
<label for="sq_attachment_redirect" class="ml-2"><?php echo esc_html__("Redirect Attachments Page", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -264,19 +276,19 @@
|
|
264 |
<?php } ?>
|
265 |
</div>
|
266 |
|
267 |
-
<div class="col-
|
268 |
|
269 |
-
<div class="col-
|
270 |
-
<div class="checker col-
|
271 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
272 |
-
<div class="sq_deactivated_label col-
|
273 |
-
<div class="col-
|
274 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
275 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
276 |
</div>
|
277 |
</div>
|
278 |
<?php } ?>
|
279 |
-
<div class="col-
|
280 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_metas]" value="0"/>
|
281 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_metas" name="patterns[<?php echo esc_attr($pattern) ?>][do_metas]" class="sq-switch" <?php echo(($type['do_metas'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
282 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_metas" class="ml-2"><?php echo esc_html__("Load Squirrly SEO METAs", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -285,17 +297,17 @@
|
|
285 |
</div>
|
286 |
</div>
|
287 |
|
288 |
-
<div class="col-
|
289 |
-
<div class="checker col-
|
290 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_pattern')) { ?>
|
291 |
-
<div class="sq_deactivated_label col-
|
292 |
-
<div class="col-
|
293 |
<input type="hidden" id="activate_sq_auto_pattern" value="1"/>
|
294 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_pattern" data-action="sq_ajax_seosettings_save" data-name="sq_auto_pattern"><?php echo esc_html__("Activate Patterns", _SQ_PLUGIN_NAME_); ?></button>
|
295 |
</div>
|
296 |
</div>
|
297 |
<?php } ?>
|
298 |
-
<div class="col-
|
299 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_pattern]" value="0"/>
|
300 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_pattern" name="patterns[<?php echo esc_attr($pattern) ?>][do_pattern]" class="sq-switch" <?php echo(($type['do_pattern'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
301 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_pattern" class="ml-2"><?php echo esc_html__("Load Squirrly Patterns", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -304,17 +316,17 @@
|
|
304 |
</div>
|
305 |
</div>
|
306 |
|
307 |
-
<div class="col-
|
308 |
-
<div class="checker col-
|
309 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld')) { ?>
|
310 |
-
<div class="sq_deactivated_label col-
|
311 |
-
<div class="col-
|
312 |
<input type="hidden" id="activate_sq_auto_jsonld" value="1"/>
|
313 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_jsonld" data-action="sq_ajax_seosettings_save" data-name="sq_auto_jsonld"><?php echo esc_html__("Activate Json-Ld", _SQ_PLUGIN_NAME_); ?></button>
|
314 |
</div>
|
315 |
</div>
|
316 |
<?php } ?>
|
317 |
-
<div class="col-
|
318 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_jsonld]" value="0"/>
|
319 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_jsonld" name="patterns[<?php echo esc_attr($pattern) ?>][do_jsonld]" class="sq-switch" <?php echo(($type['do_jsonld'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
320 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_jsonld" class="ml-2"><?php echo esc_html__("Load JSON-LD Structured Data", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -327,19 +339,19 @@
|
|
327 |
</div>
|
328 |
|
329 |
|
330 |
-
<div class="col-
|
331 |
-
<div class="col-
|
332 |
-
<div class="col-
|
333 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
334 |
-
<div class="sq_deactivated_label col-
|
335 |
-
<div class="col-
|
336 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
337 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
338 |
</div>
|
339 |
</div>
|
340 |
<?php } ?>
|
341 |
-
<div class="col-
|
342 |
-
<div class="col-
|
343 |
<div class="font-weight-bold"><?php echo esc_html__("Open Graph & JSON-LD Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
344 |
<div class="small text-black-50"><?php echo esc_html__("Select which Open Graph type to load for this post type.", _SQ_PLUGIN_NAME_); ?></div>
|
345 |
<div class="small text-black-50"><?php echo esc_html__("JSON-LD will try to load the relevant data for this type.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -347,7 +359,7 @@
|
|
347 |
<?php
|
348 |
$post_types = json_decode(SQ_ALL_JSONLD_TYPES, true);
|
349 |
?>
|
350 |
-
<div class="col-
|
351 |
<select name="patterns[<?php echo esc_attr($pattern) ?>][og_type]" class="form-control bg-input mb-1">
|
352 |
<?php foreach ($post_types as $post_type => $og_type) { ?>
|
353 |
<option <?php echo(($type['og_type'] == $og_type) ? 'selected="selected"' : '') ?> value="<?php echo esc_attr($og_type) ?>">
|
@@ -361,24 +373,24 @@
|
|
361 |
</div>
|
362 |
</div>
|
363 |
|
364 |
-
<div class="col-
|
365 |
-
<div class="checker col-
|
366 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
367 |
-
<div class="sq_deactivated_label col-
|
368 |
-
<div class="col-
|
369 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
370 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
371 |
</div>
|
372 |
</div>
|
373 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_facebook')) { ?>
|
374 |
-
<div class="sq_deactivated_label col-
|
375 |
-
<div class="col-
|
376 |
<input type="hidden" id="activate_sq_auto_og" value="1"/>
|
377 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_og" data-action="sq_ajax_seosettings_save" data-name="sq_auto_facebook"><?php echo esc_html__("Activate Open Graph", _SQ_PLUGIN_NAME_); ?></button>
|
378 |
</div>
|
379 |
</div>
|
380 |
<?php } ?>
|
381 |
-
<div class="col-
|
382 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_og]" value="0"/>
|
383 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_og" name="patterns[<?php echo esc_attr($pattern) ?>][do_og]" class="sq-switch" <?php echo(($type['do_og'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
384 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_og" class="ml-2"><?php echo esc_html__("Load Squirrly Open Graph", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -388,24 +400,24 @@
|
|
388 |
</div>
|
389 |
|
390 |
|
391 |
-
<div class="col-
|
392 |
-
<div class="checker col-
|
393 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
394 |
-
<div class="sq_deactivated_label col-
|
395 |
-
<div class="col-
|
396 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
397 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
398 |
</div>
|
399 |
</div>
|
400 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_twitter')) { ?>
|
401 |
-
<div class="sq_deactivated_label col-
|
402 |
-
<div class="col-
|
403 |
<input type="hidden" id="activate_sq_auto_twc" value="1"/>
|
404 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_twc" data-action="sq_ajax_seosettings_save" data-name="sq_auto_twitter"><?php echo esc_html__("Activate Twitter Card", _SQ_PLUGIN_NAME_); ?></button>
|
405 |
</div>
|
406 |
</div>
|
407 |
<?php } ?>
|
408 |
-
<div class="col-
|
409 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_twc]" value="0"/>
|
410 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_twc" name="patterns[<?php echo esc_attr($pattern) ?>][do_twc]" class="sq-switch" <?php echo(($type['do_twc'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
411 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_twc" class="ml-2"><?php echo esc_html__("Load Squirrly Twitter Card", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -416,19 +428,19 @@
|
|
416 |
|
417 |
</div>
|
418 |
|
419 |
-
<div class="col-
|
420 |
|
421 |
-
<div class="col-
|
422 |
-
<div class="checker col-
|
423 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) { ?>
|
424 |
-
<div class="sq_deactivated_label col-
|
425 |
-
<div class="col-
|
426 |
<input type="hidden" id="activate_sq_auto_ganalytics" value="1"/>
|
427 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_ganalytics" data-action="sq_ajax_seosettings_save" data-name="sq_auto_tracking"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></button>
|
428 |
</div>
|
429 |
</div>
|
430 |
<?php } ?>
|
431 |
-
<div class="col-
|
432 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_analytics]" value="0"/>
|
433 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_analytics" name="patterns[<?php echo esc_attr($pattern) ?>][do_analytics]" class="sq-switch" <?php echo(($type['do_analytics'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
434 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_analytics" class="ml-2"><?php echo esc_html__("Load Google Analytics Tracking Script", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -437,17 +449,17 @@
|
|
437 |
</div>
|
438 |
</div>
|
439 |
|
440 |
-
<div class="col-
|
441 |
-
<div class="checker col-
|
442 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) { ?>
|
443 |
-
<div class="sq_deactivated_label col-
|
444 |
-
<div class="col-
|
445 |
<input type="hidden" id="activate_sq_auto_fpixel" value="1"/>
|
446 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_fpixel" data-action="sq_ajax_seosettings_save" data-name="sq_auto_tracking"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></button>
|
447 |
</div>
|
448 |
</div>
|
449 |
<?php } ?>
|
450 |
-
<div class="col-
|
451 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_fpixel]" value="0"/>
|
452 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_fpixel" name="patterns[<?php echo esc_attr($pattern) ?>][do_fpixel]" class="sq-switch" <?php echo(($type['do_fpixel'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
453 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_fpixel" class="ml-2"><?php echo esc_html__("Load Facebook Pixel Tracking Script", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -458,8 +470,8 @@
|
|
458 |
</div>
|
459 |
|
460 |
<?php if ($pattern <> 'custom' && (!isset($type['protected']) || !$type['protected'])) { ?>
|
461 |
-
<div class="checker col-
|
462 |
-
<div class="col-
|
463 |
<input type="hidden" id="sq_delete_post_types_<?php echo esc_attr($pattern) ?>" value="<?php echo esc_attr($pattern) ?>"/>
|
464 |
<button type="button" data-confirm="<?php echo sprintf(esc_html__("Do you want to delete the automation for %s?", _SQ_PLUGIN_NAME_), ucwords(str_replace(array('-', '_'), array(' '), esc_attr($pattern)))); ?>" data-input="sq_delete_post_types_<?php echo esc_attr($pattern) ?>" data-action="sq_ajax_automation_deletepostype" data-name="post_type" class="btn btn-link btn-sm text-black-50 rounded-0"><?php echo sprintf(esc_html__("Remove automation for %s", _SQ_PLUGIN_NAME_), ucwords(str_replace(array('-', '_'), array(' '), esc_attr($pattern)))); ?></button>
|
465 |
</div>
|
@@ -468,7 +480,7 @@
|
|
468 |
</div>
|
469 |
|
470 |
<?php } ?>
|
471 |
-
<div class="col-
|
472 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
473 |
<div class="py-0 float-right text-right m-2">
|
474 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -491,13 +503,13 @@
|
|
491 |
|
492 |
<div class="bg-title p-2">
|
493 |
<h3 class="card-title"><?php echo esc_html__("Squirrly Patterns", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#add_patterns" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;font-size: 20px !important;"></i></a></h3>
|
494 |
-
<div class="col-
|
495 |
<div class="card-title-description mb-0"><?php echo esc_html__("Use the Pattern system to prevent Title and Description duplicates between posts", _SQ_PLUGIN_NAME_); ?></div>
|
496 |
</div>
|
497 |
</div>
|
498 |
-
<div class="col-
|
499 |
|
500 |
-
<div class="col-
|
501 |
<div class="card-title-description m-3"><?php echo esc_html__("Patterns change the codes like {{title}} with the actual value of the post Title.", _SQ_PLUGIN_NAME_); ?></div>
|
502 |
<div class="card-title-description m-3"><?php echo esc_html__("In Squirrly, each post type in your site comes with a predefined posting pattern when displayed onto your website. However, based on your site's purpose and needs, you can also decide what information these patterns will include.", _SQ_PLUGIN_NAME_); ?></div>
|
503 |
<div class="card-title-description m-3"><?php echo esc_html__("Once you set up a pattern for a particular post type, only the content required by your custom sequence will be displayed.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -510,72 +522,72 @@
|
|
510 |
?>
|
511 |
<div class="bg-title p-2 sq_advanced">
|
512 |
<h3 class="card-title"><?php echo esc_html__("META Lengths", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#automation_custom_lengths" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;font-size: 20px !important;"></i></a></h3>
|
513 |
-
<div class="col-
|
514 |
<div class="card-title-description mb-0"><?php echo esc_html__("Change the lengths for each META on automation", _SQ_PLUGIN_NAME_); ?></div>
|
515 |
</div>
|
516 |
</div>
|
517 |
-
<div class="col-
|
518 |
-
<div class="col-
|
519 |
-
<div class="col-
|
520 |
<?php echo esc_html__("Title Length", _SQ_PLUGIN_NAME_); ?>:
|
521 |
</div>
|
522 |
-
<div class="col-
|
523 |
<input type="text" class="form-control bg-input" name="sq_metas[title_maxlength]" value="<?php echo (int)$metas->title_maxlength ?>"/>
|
524 |
</div>
|
525 |
</div>
|
526 |
-
<div class="col-
|
527 |
-
<div class="col-
|
528 |
<?php echo esc_html__("Description Length", _SQ_PLUGIN_NAME_); ?>:
|
529 |
</div>
|
530 |
-
<div class="col-
|
531 |
<input type="text" class="form-control bg-input" name="sq_metas[description_maxlength]" value="<?php echo (int)$metas->description_maxlength ?>"/>
|
532 |
</div>
|
533 |
</div>
|
534 |
-
<div class="col-
|
535 |
-
<div class="col-
|
536 |
<?php echo esc_html__("Open Graph Title Length", _SQ_PLUGIN_NAME_); ?>:
|
537 |
</div>
|
538 |
-
<div class="col-
|
539 |
<input type="text" class="form-control bg-input" name="sq_metas[og_title_maxlength]" value="<?php echo (int)$metas->og_title_maxlength ?>"/>
|
540 |
</div>
|
541 |
</div>
|
542 |
-
<div class="col-
|
543 |
-
<div class="col-
|
544 |
<?php echo esc_html__("Open Graph Description Length", _SQ_PLUGIN_NAME_); ?>:
|
545 |
</div>
|
546 |
-
<div class="col-
|
547 |
<input type="text" class="form-control bg-input" name="sq_metas[og_description_maxlength]" value="<?php echo (int)$metas->og_description_maxlength ?>"/>
|
548 |
</div>
|
549 |
</div>
|
550 |
-
<div class="col-
|
551 |
-
<div class="col-
|
552 |
<?php echo esc_html__("Twitter Card Title Length", _SQ_PLUGIN_NAME_); ?>:
|
553 |
</div>
|
554 |
-
<div class="col-
|
555 |
<input type="text" class="form-control bg-input" name="sq_metas[tw_title_maxlength]" value="<?php echo (int)$metas->tw_title_maxlength ?>"/>
|
556 |
</div>
|
557 |
</div>
|
558 |
-
<div class="col-
|
559 |
-
<div class="col-
|
560 |
<?php echo esc_html__("Twitter Card Description Length", _SQ_PLUGIN_NAME_); ?>:
|
561 |
</div>
|
562 |
-
<div class="col-
|
563 |
<input type="text" class="form-control bg-input" name="sq_metas[tw_description_maxlength]" value="<?php echo (int)$metas->tw_description_maxlength ?>"/>
|
564 |
</div>
|
565 |
</div>
|
566 |
-
<div class="col-
|
567 |
-
<div class="col-
|
568 |
<?php echo esc_html__("JSON-LD Title Length", _SQ_PLUGIN_NAME_); ?>:
|
569 |
</div>
|
570 |
-
<div class="col-
|
571 |
<input type="text" class="form-control bg-input" name="sq_metas[jsonld_title_maxlength]" value="<?php echo (int)$metas->jsonld_title_maxlength ?>"/>
|
572 |
</div>
|
573 |
</div>
|
574 |
-
<div class="col-
|
575 |
-
<div class="col-
|
576 |
<?php echo esc_html__("JSON-LD Description Length", _SQ_PLUGIN_NAME_); ?>:
|
577 |
</div>
|
578 |
-
<div class="col-
|
579 |
<input type="text" class="form-control bg-input" name="sq_metas[jsonld_description_maxlength]" value="<?php echo (int)$metas->jsonld_description_maxlength ?>"/>
|
580 |
</div>
|
581 |
</div>
|
@@ -589,7 +601,7 @@
|
|
589 |
|
590 |
</div>
|
591 |
|
592 |
-
<div class="col-
|
593 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
594 |
<div class="py-0 float-right text-right m-2">
|
595 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -603,7 +615,7 @@
|
|
603 |
</form>
|
604 |
</div>
|
605 |
<div class="sq_col sq_col_side ">
|
606 |
-
<div class="card col-
|
607 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
608 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
609 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs('automation', 'sq_seosettings'); ?>
|
12 |
+
<div class="sq_seosettings_automation d-flex flex-row bg-white px-3">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_automation', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_automation"/>
|
19 |
|
20 |
+
<div class="card col-12 p-0">
|
21 |
<div class="card-body p-2 bg-title rounded-top row">
|
22 |
+
<div class="col-8 text-left m-0 p-0">
|
23 |
<div class="sq_icons_content p-3 py-4">
|
24 |
<div class="sq_icons sq_automation_icon m-2"></div>
|
25 |
</div>
|
26 |
<h3 class="card-title"><?php echo esc_html__("Meta Automation", _SQ_PLUGIN_NAME_); ?>:</h3>
|
27 |
+
<div class="col-12 text-left m-0 p-0">
|
28 |
<div class="card-title-description m-1"><?php echo esc_html__("Control how post types are displayed on your site, within search engine results, and social media feeds.", _SQ_PLUGIN_NAME_); ?></div>
|
29 |
</div>
|
30 |
</div>
|
31 |
+
<div class="col-4 text-right">
|
32 |
+
<div class="checker col-12 row my-2 py-1 mx-0 px-0 ">
|
33 |
+
<div class="col-12 p-0 sq-switch redgreen sq-switch-sm ">
|
34 |
<div class="sq_help_question float-right"><a href="https://howto.squirrly.co/kb/seo-automation/" target="_blank"><i class="fa fa-question-circle" style="margin: 0;"></i></a></div>
|
35 |
<label for="sq_auto_pattern" class="ml-2"><?php echo esc_html__("Activate Patterns", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_pattern" value="0"/>
|
42 |
|
43 |
</div>
|
44 |
|
45 |
+
<div class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
46 |
|
47 |
<div class="card-body p-0">
|
48 |
+
<div class="col-12 m-0 p-0">
|
49 |
+
<div class="card col-12 p-0 my-0 border-0 ">
|
50 |
|
51 |
<?php
|
52 |
$filter = array('public' => true, '_builtin' => false);
|
54 |
|
55 |
$new_types = array();
|
56 |
foreach ($types as $pattern => $type) {
|
57 |
+
if (in_array($pattern, array('elementor_library'))) continue;
|
58 |
+
|
59 |
if (in_array($pattern, array_keys(SQ_Classes_Helpers_Tools::getOption('patterns')))) {
|
60 |
continue;
|
61 |
}
|
62 |
$new_types[$pattern] = $type;
|
63 |
}
|
64 |
+
$filter = array('public' => true,);
|
65 |
+
$taxonomies = get_taxonomies($filter);
|
66 |
+
foreach ($taxonomies as $pattern => $type) {
|
67 |
+
if (in_array($pattern, array('post_tag', 'post_format', 'product_cat', 'product_tag', 'product_shipping_class'))) continue;
|
68 |
+
|
69 |
+
if (in_array('tax-' . $pattern, array_keys(SQ_Classes_Helpers_Tools::getOption('patterns')))) {
|
70 |
+
continue;
|
71 |
+
}
|
72 |
+
$new_types['tax-' . $pattern] = $type;
|
73 |
+
}
|
74 |
if (!empty($new_types)) {
|
75 |
?>
|
76 |
+
<div class="col-12 m-0 py-4 bg-light border-bottom tab-panel">
|
77 |
+
<div class="col-12 text-left mb-4 p-0">
|
78 |
<H5><?php echo esc_html__("Add Post Type for SEO Automation", _SQ_PLUGIN_NAME_); ?>:</H5>
|
79 |
</div>
|
80 |
|
81 |
+
<div class="checker col-12 row m-0 p-0 sq_save_ajax">
|
82 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
83 |
+
<div class="col-4 p-1">
|
84 |
<div class="font-weight-bold"><?php echo esc_html__("Add Post Type", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#add_post_type" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a></div>
|
85 |
<div class="small text-black-50"><?php echo esc_html__("Add new post types in the list and customize the automation for it.", _SQ_PLUGIN_NAME_); ?></div>
|
86 |
</div>
|
87 |
+
<div class="col-8 p-0 input-group">
|
88 |
<select id="sq_select_post_types" class="form-control bg-input mb-1">
|
89 |
<?php
|
90 |
foreach ($new_types as $pattern => $type) {
|
93 |
<?php } ?>
|
94 |
</select>
|
95 |
|
96 |
+
<button type="button" data-input="sq_select_post_types" data-action="sq_ajax_automation_addpostype" data-name="post_type" class="btn btn-lg rounded-0 btn-success mx-2" style="max-height: 50px;"><?php echo esc_html__("Add Post Type", _SQ_PLUGIN_NAME_); ?></button>
|
97 |
|
98 |
</div>
|
99 |
</div>
|
101 |
</div>
|
102 |
<?php } ?>
|
103 |
|
104 |
+
<div class="col-12 pt-0 py-4 border-bottom tab-panel">
|
105 |
+
<div class="col-12 text-left mb-4 p-0">
|
106 |
<h5><?php echo esc_html__("Customize the automation for each post type", _SQ_PLUGIN_NAME_); ?>:</h5>
|
107 |
</div>
|
108 |
|
128 |
<?php foreach (SQ_Classes_Helpers_Tools::getOption('patterns') as $pattern => $type) { ?>
|
129 |
|
130 |
<div class="tab-pane <?php if ($pattern == 'home') { ?>show active<?php } ?>" id="nav-<?php echo esc_attr($pattern) ?>" role="tabpanel" aria-labelledby="nav-<?php echo esc_attr($pattern) ?>-tab">
|
131 |
+
<h4 class="col-12 py-3 text-center text-black"><?php echo ucwords(str_replace(array('-', '_'), ' ', esc_attr($pattern))); ?></h4>
|
132 |
|
133 |
+
<div id="sq_seosettings" class="col-12 pt-0 pb-4 border-bottom tab-panel <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_pattern') ? '' : 'sq_deactivated') ?>">
|
134 |
|
135 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
136 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
137 |
<?php echo esc_html__("Title", _SQ_PLUGIN_NAME_); ?>:
|
138 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 10-75 chars", _SQ_PLUGIN_NAME_); ?></div>
|
139 |
</div>
|
140 |
+
<div class="col-8 p-0 input-group input-group-lg sq_pattern_field">
|
141 |
<textarea rows="1" class="form-control bg-input" name="patterns[<?php echo esc_attr($pattern) ?>][title]" ><?php echo esc_html($type['title']) ?></textarea>
|
142 |
</div>
|
143 |
</div>
|
144 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
145 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
146 |
<?php echo esc_html__("Description", _SQ_PLUGIN_NAME_); ?>:
|
147 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 70-320 chars", _SQ_PLUGIN_NAME_); ?></div>
|
148 |
</div>
|
149 |
+
<div class="col-8 p-0 sq_pattern_field">
|
150 |
<textarea class="form-control" name="patterns[<?php echo esc_attr($pattern) ?>][description]" rows="5"><?php echo esc_html($type['description']) ?></textarea>
|
151 |
</div>
|
152 |
</div>
|
153 |
|
154 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
155 |
+
<div class="col-4 p-1">
|
156 |
<div class="font-weight-bold"><?php echo esc_html__("Separator", _SQ_PLUGIN_NAME_); ?>:</div>
|
157 |
<div class="small text-black-50"><?php echo esc_html__("Use separator to help user read the most relevant part of your title and increase Conversion Rate", _SQ_PLUGIN_NAME_); ?></div>
|
158 |
</div>
|
159 |
+
<div class="col-4 p-0 input-group">
|
160 |
<select name="patterns[<?php echo esc_attr($pattern) ?>][sep]" class="form-control bg-input mb-1">
|
161 |
<?php
|
162 |
$seps = json_decode(SQ_ALL_SEP, true);
|
169 |
</div>
|
170 |
</div>
|
171 |
|
172 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
173 |
|
174 |
+
<div class="col-12 row mb-1 ml-1">
|
175 |
|
176 |
+
<div class="checker col-12 row my-2 py-1">
|
177 |
|
178 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
179 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
180 |
+
<div class="col-12 p-0 text-right">
|
181 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
182 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
183 |
</div>
|
184 |
</div>
|
185 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) { ?>
|
186 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
187 |
+
<div class="col-12 p-0 text-right">
|
188 |
<input type="hidden" id="activate_sq_auto_noindex" value="1"/>
|
189 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_noindex" data-action="sq_ajax_seosettings_save" data-name="sq_auto_noindex"><?php echo esc_html__("Activate Robots Meta", _SQ_PLUGIN_NAME_); ?></button>
|
190 |
</div>
|
191 |
</div>
|
192 |
<?php } ?>
|
193 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) ? 'sq_deactivated' : ''); ?>">
|
194 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][noindex]" value="1"/>
|
195 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_noindex" name="patterns[<?php echo esc_attr($pattern) ?>][noindex]" class="sq-switch" <?php echo(($type['noindex'] == 0) ? 'checked="checked"' : '') ?> value="0"/>
|
196 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_noindex" class="ml-2"><?php echo esc_html__("Let Google Index it", _SQ_PLUGIN_NAME_); ?></label>
|
200 |
|
201 |
</div>
|
202 |
|
203 |
+
<div class="col-12 row mb-1 ml-1">
|
204 |
+
<div class="checker col-12 row my-2 py-1">
|
205 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
206 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
207 |
+
<div class="col-12 p-0 text-right">
|
208 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
209 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
210 |
</div>
|
211 |
</div>
|
212 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) { ?>
|
213 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
214 |
+
<div class="col-12 p-0 text-right">
|
215 |
<input type="hidden" id="activate_sq_auto_noindex" value="1"/>
|
216 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_noindex" data-action="sq_ajax_seosettings_save" data-name="sq_auto_noindex"><?php echo esc_html__("Activate Robots Meta", _SQ_PLUGIN_NAME_); ?></button>
|
217 |
</div>
|
218 |
</div>
|
219 |
<?php } ?>
|
220 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex')) ? 'sq_deactivated' : ''); ?>">
|
221 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][nofollow]" value="1"/>
|
222 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_nofollow" name="patterns[<?php echo esc_attr($pattern) ?>][nofollow]" class="sq-switch" <?php echo(($type['nofollow'] == 0) ? 'checked="checked"' : '') ?> value="0"/>
|
223 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_nofollow" class="ml-2"><?php echo esc_html__("Send Authority to it", _SQ_PLUGIN_NAME_); ?></label>
|
226 |
</div>
|
227 |
</div>
|
228 |
|
229 |
+
<div class="col-12 row mb-1 ml-1">
|
230 |
+
<div class="checker col-12 row my-2 py-1">
|
231 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap')) { ?>
|
232 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
233 |
+
<div class="col-12 p-0 text-right">
|
234 |
<input type="hidden" id="activate_sq_auto_sitemap" value="1"/>
|
235 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_sitemap" data-action="sq_ajax_seosettings_save" data-name="sq_auto_sitemap"><?php echo esc_html__("Activate Sitemap", _SQ_PLUGIN_NAME_); ?></button>
|
236 |
</div>
|
237 |
</div>
|
238 |
<?php } ?>
|
239 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap')) ? 'sq_deactivated' : ''); ?>">
|
240 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_sitemap]" value="0"/>
|
241 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_sitemap" name="patterns[<?php echo esc_attr($pattern) ?>][do_sitemap]" class="sq-switch" <?php echo(($type['do_sitemap'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
242 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_sitemap" class="ml-2"><?php echo esc_html__("Include In Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
250 |
$type['do_redirects'] = 0;
|
251 |
}
|
252 |
?>
|
253 |
+
<div class="col-12 row mb-1 ml-1">
|
254 |
+
<div class="checker col-12 row my-2 py-1">
|
255 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
256 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_redirects]" value="0"/>
|
257 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_redirects" name="patterns[<?php echo esc_attr($pattern) ?>][do_redirects]" class="sq-switch" <?php echo(($type['do_redirects'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
258 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_redirects" class="ml-2"><?php echo esc_html__("Redirect Broken URLs", _SQ_PLUGIN_NAME_); ?></label>
|
262 |
</div>
|
263 |
|
264 |
<?php if ($pattern == 'attachment') { ?>
|
265 |
+
<div class="col-12 row mb-1 ml-1">
|
266 |
+
<div class="checker col-12 row my-2 py-1">
|
267 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
268 |
<input type="hidden" name="sq_attachment_redirect" value="0"/>
|
269 |
<input type="checkbox" id="sq_attachment_redirect" name="sq_attachment_redirect" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_attachment_redirect') ? 'checked="checked"' : '') ?> value="1"/>
|
270 |
<label for="sq_attachment_redirect" class="ml-2"><?php echo esc_html__("Redirect Attachments Page", _SQ_PLUGIN_NAME_); ?></label>
|
276 |
<?php } ?>
|
277 |
</div>
|
278 |
|
279 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
280 |
|
281 |
+
<div class="col-12 row mb-1 ml-1">
|
282 |
+
<div class="checker col-12 row my-2 py-1">
|
283 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) { ?>
|
284 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
285 |
+
<div class="col-12 p-0 text-right">
|
286 |
<input type="hidden" id="activate_sq_auto_metas" value="1"/>
|
287 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_metas" data-action="sq_ajax_seosettings_save" data-name="sq_auto_metas"><?php echo esc_html__("Activate Metas", _SQ_PLUGIN_NAME_); ?></button>
|
288 |
</div>
|
289 |
</div>
|
290 |
<?php } ?>
|
291 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_metas')) ? 'sq_deactivated' : ''); ?>">
|
292 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_metas]" value="0"/>
|
293 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_metas" name="patterns[<?php echo esc_attr($pattern) ?>][do_metas]" class="sq-switch" <?php echo(($type['do_metas'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
294 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_metas" class="ml-2"><?php echo esc_html__("Load Squirrly SEO METAs", _SQ_PLUGIN_NAME_); ?></label>
|
297 |
</div>
|
298 |
</div>
|
299 |
|
300 |
+
<div class="col-12 row mb-1 ml-1">
|
301 |
+
<div class="checker col-12 row my-2 py-1">
|
302 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_pattern')) { ?>
|
303 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
304 |
+
<div class="col-12 p-0 text-right">
|
305 |
<input type="hidden" id="activate_sq_auto_pattern" value="1"/>
|
306 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_pattern" data-action="sq_ajax_seosettings_save" data-name="sq_auto_pattern"><?php echo esc_html__("Activate Patterns", _SQ_PLUGIN_NAME_); ?></button>
|
307 |
</div>
|
308 |
</div>
|
309 |
<?php } ?>
|
310 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_pattern')) ? 'sq_deactivated' : ''); ?>">
|
311 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_pattern]" value="0"/>
|
312 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_pattern" name="patterns[<?php echo esc_attr($pattern) ?>][do_pattern]" class="sq-switch" <?php echo(($type['do_pattern'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
313 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_pattern" class="ml-2"><?php echo esc_html__("Load Squirrly Patterns", _SQ_PLUGIN_NAME_); ?></label>
|
316 |
</div>
|
317 |
</div>
|
318 |
|
319 |
+
<div class="col-12 row mb-1 ml-1">
|
320 |
+
<div class="checker col-12 row my-2 py-1">
|
321 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld')) { ?>
|
322 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
323 |
+
<div class="col-12 p-0 text-right">
|
324 |
<input type="hidden" id="activate_sq_auto_jsonld" value="1"/>
|
325 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_jsonld" data-action="sq_ajax_seosettings_save" data-name="sq_auto_jsonld"><?php echo esc_html__("Activate Json-Ld", _SQ_PLUGIN_NAME_); ?></button>
|
326 |
</div>
|
327 |
</div>
|
328 |
<?php } ?>
|
329 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld')) ? 'sq_deactivated' : ''); ?>">
|
330 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_jsonld]" value="0"/>
|
331 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_jsonld" name="patterns[<?php echo esc_attr($pattern) ?>][do_jsonld]" class="sq-switch" <?php echo(($type['do_jsonld'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
332 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_jsonld" class="ml-2"><?php echo esc_html__("Load JSON-LD Structured Data", _SQ_PLUGIN_NAME_); ?></label>
|
339 |
</div>
|
340 |
|
341 |
|
342 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
343 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
344 |
+
<div class="col-12 my-2 py-1">
|
345 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
346 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
347 |
+
<div class="col-12 p-0 text-right">
|
348 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
349 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
350 |
</div>
|
351 |
</div>
|
352 |
<?php } ?>
|
353 |
+
<div class="col-12 row m-0 p-0 <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) ? 'sq_deactivated' : ''); ?>">
|
354 |
+
<div class="col-5 p-1 pr-2">
|
355 |
<div class="font-weight-bold"><?php echo esc_html__("Open Graph & JSON-LD Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
356 |
<div class="small text-black-50"><?php echo esc_html__("Select which Open Graph type to load for this post type.", _SQ_PLUGIN_NAME_); ?></div>
|
357 |
<div class="small text-black-50"><?php echo esc_html__("JSON-LD will try to load the relevant data for this type.", _SQ_PLUGIN_NAME_); ?></div>
|
359 |
<?php
|
360 |
$post_types = json_decode(SQ_ALL_JSONLD_TYPES, true);
|
361 |
?>
|
362 |
+
<div class="col-4 p-0 input-group">
|
363 |
<select name="patterns[<?php echo esc_attr($pattern) ?>][og_type]" class="form-control bg-input mb-1">
|
364 |
<?php foreach ($post_types as $post_type => $og_type) { ?>
|
365 |
<option <?php echo(($type['og_type'] == $og_type) ? 'selected="selected"' : '') ?> value="<?php echo esc_attr($og_type) ?>">
|
373 |
</div>
|
374 |
</div>
|
375 |
|
376 |
+
<div class="col-12 row mb-1 ml-1 ">
|
377 |
+
<div class="checker col-12 row my-2 py-1">
|
378 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
379 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
380 |
+
<div class="col-12 p-0 text-right">
|
381 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
382 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
383 |
</div>
|
384 |
</div>
|
385 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_facebook')) { ?>
|
386 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
387 |
+
<div class="col-12 p-0 text-right">
|
388 |
<input type="hidden" id="activate_sq_auto_og" value="1"/>
|
389 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_og" data-action="sq_ajax_seosettings_save" data-name="sq_auto_facebook"><?php echo esc_html__("Activate Open Graph", _SQ_PLUGIN_NAME_); ?></button>
|
390 |
</div>
|
391 |
</div>
|
392 |
<?php } ?>
|
393 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_social') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_facebook')) ? 'sq_deactivated' : ''); ?>">
|
394 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_og]" value="0"/>
|
395 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_og" name="patterns[<?php echo esc_attr($pattern) ?>][do_og]" class="sq-switch" <?php echo(($type['do_og'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
396 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_og" class="ml-2"><?php echo esc_html__("Load Squirrly Open Graph", _SQ_PLUGIN_NAME_); ?></label>
|
400 |
</div>
|
401 |
|
402 |
|
403 |
+
<div class="col-12 row mb-1 ml-1 ">
|
404 |
+
<div class="checker col-12 row my-2 py-1">
|
405 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_social')) { ?>
|
406 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
407 |
+
<div class="col-12 p-0 text-right">
|
408 |
<input type="hidden" id="activate_sq_auto_social" value="1"/>
|
409 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_social" data-action="sq_ajax_seosettings_save" data-name="sq_auto_social"><?php echo esc_html__("Activate Social Media", _SQ_PLUGIN_NAME_); ?></button>
|
410 |
</div>
|
411 |
</div>
|
412 |
<?php } elseif (!SQ_Classes_Helpers_Tools::getOption('sq_auto_twitter')) { ?>
|
413 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
414 |
+
<div class="col-12 p-0 text-right">
|
415 |
<input type="hidden" id="activate_sq_auto_twc" value="1"/>
|
416 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_twc" data-action="sq_ajax_seosettings_save" data-name="sq_auto_twitter"><?php echo esc_html__("Activate Twitter Card", _SQ_PLUGIN_NAME_); ?></button>
|
417 |
</div>
|
418 |
</div>
|
419 |
<?php } ?>
|
420 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_social') || !SQ_Classes_Helpers_Tools::getOption('sq_auto_twitter')) ? 'sq_deactivated' : ''); ?>">
|
421 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_twc]" value="0"/>
|
422 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_twc" name="patterns[<?php echo esc_attr($pattern) ?>][do_twc]" class="sq-switch" <?php echo(($type['do_twc'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
423 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_twc" class="ml-2"><?php echo esc_html__("Load Squirrly Twitter Card", _SQ_PLUGIN_NAME_); ?></label>
|
428 |
|
429 |
</div>
|
430 |
|
431 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
432 |
|
433 |
+
<div class="col-12 row mb-1 ml-1 ">
|
434 |
+
<div class="checker col-12 row my-2 py-1">
|
435 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) { ?>
|
436 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
437 |
+
<div class="col-12 p-0 text-right">
|
438 |
<input type="hidden" id="activate_sq_auto_ganalytics" value="1"/>
|
439 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_ganalytics" data-action="sq_ajax_seosettings_save" data-name="sq_auto_tracking"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></button>
|
440 |
</div>
|
441 |
</div>
|
442 |
<?php } ?>
|
443 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) ? 'sq_deactivated' : ''); ?>">
|
444 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_analytics]" value="0"/>
|
445 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_analytics" name="patterns[<?php echo esc_attr($pattern) ?>][do_analytics]" class="sq-switch" <?php echo(($type['do_analytics'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
446 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_analytics" class="ml-2"><?php echo esc_html__("Load Google Analytics Tracking Script", _SQ_PLUGIN_NAME_); ?></label>
|
449 |
</div>
|
450 |
</div>
|
451 |
|
452 |
+
<div class="col-12 row mb-1 ml-1 ">
|
453 |
+
<div class="checker col-12 row my-2 py-1">
|
454 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) { ?>
|
455 |
+
<div class="sq_deactivated_label col-12 row m-0 p-2 pr-3 sq_save_ajax">
|
456 |
+
<div class="col-12 p-0 text-right">
|
457 |
<input type="hidden" id="activate_sq_auto_fpixel" value="1"/>
|
458 |
<button type="button" class="btn btn-link text-danger btn-sm" data-input="activate_sq_auto_fpixel" data-action="sq_ajax_seosettings_save" data-name="sq_auto_tracking"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></button>
|
459 |
</div>
|
460 |
</div>
|
461 |
<?php } ?>
|
462 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm <?php echo((!SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking')) ? 'sq_deactivated' : ''); ?>">
|
463 |
<input type="hidden" name="patterns[<?php echo esc_attr($pattern) ?>][do_fpixel]" value="0"/>
|
464 |
<input type="checkbox" id="sq_patterns_<?php echo esc_attr($pattern) ?>_do_fpixel" name="patterns[<?php echo esc_attr($pattern) ?>][do_fpixel]" class="sq-switch" <?php echo(($type['do_fpixel'] == 1) ? 'checked="checked"' : '') ?> value="1"/>
|
465 |
<label for="sq_patterns_<?php echo esc_attr($pattern) ?>_do_fpixel" class="ml-2"><?php echo esc_html__("Load Facebook Pixel Tracking Script", _SQ_PLUGIN_NAME_); ?></label>
|
470 |
</div>
|
471 |
|
472 |
<?php if ($pattern <> 'custom' && (!isset($type['protected']) || !$type['protected'])) { ?>
|
473 |
+
<div class="checker col-12 row m-0 p-3 sq_save_ajax">
|
474 |
+
<div class="col-12 p-0 text-right">
|
475 |
<input type="hidden" id="sq_delete_post_types_<?php echo esc_attr($pattern) ?>" value="<?php echo esc_attr($pattern) ?>"/>
|
476 |
<button type="button" data-confirm="<?php echo sprintf(esc_html__("Do you want to delete the automation for %s?", _SQ_PLUGIN_NAME_), ucwords(str_replace(array('-', '_'), array(' '), esc_attr($pattern)))); ?>" data-input="sq_delete_post_types_<?php echo esc_attr($pattern) ?>" data-action="sq_ajax_automation_deletepostype" data-name="post_type" class="btn btn-link btn-sm text-black-50 rounded-0"><?php echo sprintf(esc_html__("Remove automation for %s", _SQ_PLUGIN_NAME_), ucwords(str_replace(array('-', '_'), array(' '), esc_attr($pattern)))); ?></button>
|
477 |
</div>
|
480 |
</div>
|
481 |
|
482 |
<?php } ?>
|
483 |
+
<div class="col-12 my-3 p-0">
|
484 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
485 |
<div class="py-0 float-right text-right m-2">
|
486 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
503 |
|
504 |
<div class="bg-title p-2">
|
505 |
<h3 class="card-title"><?php echo esc_html__("Squirrly Patterns", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#add_patterns" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;font-size: 20px !important;"></i></a></h3>
|
506 |
+
<div class="col-12 text-left m-0 p-0">
|
507 |
<div class="card-title-description mb-0"><?php echo esc_html__("Use the Pattern system to prevent Title and Description duplicates between posts", _SQ_PLUGIN_NAME_); ?></div>
|
508 |
</div>
|
509 |
</div>
|
510 |
+
<div class="col-12 py-4 border-bottom tab-panel ">
|
511 |
|
512 |
+
<div class="col-12 text-left m-0 p-0">
|
513 |
<div class="card-title-description m-3"><?php echo esc_html__("Patterns change the codes like {{title}} with the actual value of the post Title.", _SQ_PLUGIN_NAME_); ?></div>
|
514 |
<div class="card-title-description m-3"><?php echo esc_html__("In Squirrly, each post type in your site comes with a predefined posting pattern when displayed onto your website. However, based on your site's purpose and needs, you can also decide what information these patterns will include.", _SQ_PLUGIN_NAME_); ?></div>
|
515 |
<div class="card-title-description m-3"><?php echo esc_html__("Once you set up a pattern for a particular post type, only the content required by your custom sequence will be displayed.", _SQ_PLUGIN_NAME_); ?></div>
|
522 |
?>
|
523 |
<div class="bg-title p-2 sq_advanced">
|
524 |
<h3 class="card-title"><?php echo esc_html__("META Lengths", _SQ_PLUGIN_NAME_); ?>:<a href="https://howto.squirrly.co/kb/seo-automation/#automation_custom_lengths" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;font-size: 20px !important;"></i></a></h3>
|
525 |
+
<div class="col-12 text-left m-0 p-0">
|
526 |
<div class="card-title-description mb-0"><?php echo esc_html__("Change the lengths for each META on automation", _SQ_PLUGIN_NAME_); ?></div>
|
527 |
</div>
|
528 |
</div>
|
529 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
530 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
531 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
532 |
<?php echo esc_html__("Title Length", _SQ_PLUGIN_NAME_); ?>:
|
533 |
</div>
|
534 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
535 |
<input type="text" class="form-control bg-input" name="sq_metas[title_maxlength]" value="<?php echo (int)$metas->title_maxlength ?>"/>
|
536 |
</div>
|
537 |
</div>
|
538 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
539 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
540 |
<?php echo esc_html__("Description Length", _SQ_PLUGIN_NAME_); ?>:
|
541 |
</div>
|
542 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
543 |
<input type="text" class="form-control bg-input" name="sq_metas[description_maxlength]" value="<?php echo (int)$metas->description_maxlength ?>"/>
|
544 |
</div>
|
545 |
</div>
|
546 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
547 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
548 |
<?php echo esc_html__("Open Graph Title Length", _SQ_PLUGIN_NAME_); ?>:
|
549 |
</div>
|
550 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
551 |
<input type="text" class="form-control bg-input" name="sq_metas[og_title_maxlength]" value="<?php echo (int)$metas->og_title_maxlength ?>"/>
|
552 |
</div>
|
553 |
</div>
|
554 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
555 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
556 |
<?php echo esc_html__("Open Graph Description Length", _SQ_PLUGIN_NAME_); ?>:
|
557 |
</div>
|
558 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
559 |
<input type="text" class="form-control bg-input" name="sq_metas[og_description_maxlength]" value="<?php echo (int)$metas->og_description_maxlength ?>"/>
|
560 |
</div>
|
561 |
</div>
|
562 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
563 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
564 |
<?php echo esc_html__("Twitter Card Title Length", _SQ_PLUGIN_NAME_); ?>:
|
565 |
</div>
|
566 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
567 |
<input type="text" class="form-control bg-input" name="sq_metas[tw_title_maxlength]" value="<?php echo (int)$metas->tw_title_maxlength ?>"/>
|
568 |
</div>
|
569 |
</div>
|
570 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
571 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
572 |
<?php echo esc_html__("Twitter Card Description Length", _SQ_PLUGIN_NAME_); ?>:
|
573 |
</div>
|
574 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
575 |
<input type="text" class="form-control bg-input" name="sq_metas[tw_description_maxlength]" value="<?php echo (int)$metas->tw_description_maxlength ?>"/>
|
576 |
</div>
|
577 |
</div>
|
578 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
579 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
580 |
<?php echo esc_html__("JSON-LD Title Length", _SQ_PLUGIN_NAME_); ?>:
|
581 |
</div>
|
582 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
583 |
<input type="text" class="form-control bg-input" name="sq_metas[jsonld_title_maxlength]" value="<?php echo (int)$metas->jsonld_title_maxlength ?>"/>
|
584 |
</div>
|
585 |
</div>
|
586 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
587 |
+
<div class="col-4 p-1 pr-3 font-weight-bold">
|
588 |
<?php echo esc_html__("JSON-LD Description Length", _SQ_PLUGIN_NAME_); ?>:
|
589 |
</div>
|
590 |
+
<div class="col-1 p-0 input-group input-group-sm">
|
591 |
<input type="text" class="form-control bg-input" name="sq_metas[jsonld_description_maxlength]" value="<?php echo (int)$metas->jsonld_description_maxlength ?>"/>
|
592 |
</div>
|
593 |
</div>
|
601 |
|
602 |
</div>
|
603 |
|
604 |
+
<div class="col-12 my-3 p-0">
|
605 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
606 |
<div class="py-0 float-right text-right m-2">
|
607 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
615 |
</form>
|
616 |
</div>
|
617 |
<div class="sq_col sq_col_side ">
|
618 |
+
<div class="card col-12 p-0">
|
619 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
620 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
621 |
</div>
|
view/SeoSettings/Backup.php
CHANGED
@@ -4,24 +4,24 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
|
16 |
|
17 |
-
<div class="card col-
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
-
<div class="col-
|
20 |
<div class="sq_icons_content p-3 py-4" style="min-height: 150px">
|
21 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
22 |
</div>
|
23 |
<h3 class="card-title"><?php echo esc_html__("Import Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
24 |
-
<div class="col-
|
25 |
<div class="card-title-description m-2"><?php echo esc_html__("Import the settings and SEO from other plugins so you can use only Squirrly SEO for on-page SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
26 |
<div class="card-title-description m-2"><?php echo esc_html__("Note! If you import the SEO settings from other plugins or themes, you will lose all the settings that you had in Squirrly SEO. Make sure you backup your settings from the panel below before you do this.", _SQ_PLUGIN_NAME_); ?></div>
|
27 |
</div>
|
@@ -31,20 +31,20 @@
|
|
31 |
</div>
|
32 |
|
33 |
<?php $platforms = apply_filters('sq_importList', false); ?>
|
34 |
-
<div id="sq_seosettings" class="card col-
|
35 |
<div class="card-body p-0">
|
36 |
-
<div class="col-
|
37 |
-
<div class="card col-
|
38 |
|
39 |
-
<div class="col-
|
40 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
41 |
-
<div class="col-
|
42 |
-
<div class="col-
|
43 |
<div class="font-weight-bold"><?php echo esc_html__("Import Settings From", _SQ_PLUGIN_NAME_); ?>:</div>
|
44 |
<div class="small text-black-50"><?php echo esc_html__("Select the plugin or theme you want to import the Settings from.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
<div class="small text-danger"><?php echo esc_html__("Note! It will overwrite the settings you set in Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
46 |
</div>
|
47 |
-
<div class="col-
|
48 |
<?php
|
49 |
if ($platforms && count((array)$platforms) > 0) {
|
50 |
?>
|
@@ -60,20 +60,20 @@
|
|
60 |
<input type="hidden" name="action" value="sq_seosettings_importsettings"/>
|
61 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2" style="min-width: 140px"><?php echo esc_html__("Import Settings", _SQ_PLUGIN_NAME_); ?></button>
|
62 |
<?php } else { ?>
|
63 |
-
<div class="col-
|
64 |
<?php } ?>
|
65 |
</div>
|
66 |
</div>
|
67 |
</form>
|
68 |
|
69 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
70 |
-
<div class="col-
|
71 |
-
<div class="col-
|
72 |
<div class="font-weight-bold"><?php echo esc_html__("Import SEO From", _SQ_PLUGIN_NAME_); ?>:</div>
|
73 |
<div class="small text-black-50"><?php echo esc_html__("Select the plugin or theme you want to import the SEO settings from.", _SQ_PLUGIN_NAME_); ?></div>
|
74 |
<div class="small text-danger"><?php echo esc_html__("Note! It will import only the SEO for the pages that were not yet optimized with Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
75 |
</div>
|
76 |
-
<div class="col-
|
77 |
<?php
|
78 |
if ($platforms && count((array)$platforms) > 0) {
|
79 |
?>
|
@@ -89,7 +89,7 @@
|
|
89 |
<input type="hidden" name="action" value="sq_seosettings_importseo"/>
|
90 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2" style="min-width: 140px"><?php echo esc_html__("Import SEO", _SQ_PLUGIN_NAME_); ?></button>
|
91 |
<?php } else { ?>
|
92 |
-
<div class="col-
|
93 |
<?php } ?>
|
94 |
</div>
|
95 |
</div>
|
@@ -99,18 +99,18 @@
|
|
99 |
|
100 |
<div class="bg-title p-2">
|
101 |
<h3 class="card-title"><?php echo esc_html__("Backup Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
102 |
-
<div class="col-
|
103 |
<div class="card-title-description mb-0"><?php echo esc_html__("You can now download your Squirrly settings in an sql file before you go ahead and import the SEO settings from another plugin. That way, you can always go back to your Squirrly settings.", _SQ_PLUGIN_NAME_); ?></div>
|
104 |
</div>
|
105 |
</div>
|
106 |
-
<div class="col-
|
107 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
108 |
-
<div class="col-
|
109 |
-
<div class="col-
|
110 |
<div class="font-weight-bold"><?php echo esc_html__("Backup Settings", _SQ_PLUGIN_NAME_); ?>:</div>
|
111 |
<div class="small text-black-50"><?php echo esc_html__("Download all the settings from Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
112 |
</div>
|
113 |
-
<div class="col-
|
114 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_backupsettings', 'sq_nonce'); ?>
|
115 |
<input type="hidden" name="action" value="sq_seosettings_backupsettings"/>
|
116 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2 noloading"><?php echo esc_html__("Download Backup", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -119,12 +119,12 @@
|
|
119 |
</form>
|
120 |
|
121 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
122 |
-
<div class="col-
|
123 |
-
<div class="col-
|
124 |
<div class="font-weight-bold"><?php echo esc_html__("Backup SEO", _SQ_PLUGIN_NAME_); ?>:</div>
|
125 |
<div class="small text-black-50"><?php echo esc_html__("Download all the Squirrly SEO Snippet optimizations.", _SQ_PLUGIN_NAME_); ?></div>
|
126 |
</div>
|
127 |
-
<div class="col-
|
128 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_backupseo', 'sq_nonce'); ?>
|
129 |
<input type="hidden" name="action" value="sq_seosettings_backupseo"/>
|
130 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2 noloading"><?php echo esc_html__("Download Backup", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -136,41 +136,41 @@
|
|
136 |
|
137 |
<div class="bg-title p-2">
|
138 |
<h3 class="card-title"><?php echo esc_html__("Restore Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
139 |
-
<div class="col-
|
140 |
<div class="card-title-description mb-0"><?php echo esc_html__("Restore the settings and all the pages optimized with Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
141 |
</div>
|
142 |
</div>
|
143 |
-
<div class="col-
|
144 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
145 |
-
<div class="col-
|
146 |
-
<div class="col-
|
147 |
<div class="font-weight-bold"><?php echo esc_html__("Restore Settings", _SQ_PLUGIN_NAME_); ?>:</div>
|
148 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly Settings.", _SQ_PLUGIN_NAME_); ?></div>
|
149 |
</div>
|
150 |
-
<div class="col-
|
151 |
<div class="form-group my-2">
|
152 |
<input type="file" class="form-control-file" name="sq_options">
|
153 |
</div>
|
154 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_restoresettings', 'sq_nonce'); ?>
|
155 |
<input type="hidden" name="action" value="sq_seosettings_restoresettings"/>
|
156 |
-
<button type="submit" class="btn rounded-0 btn-success px-2 mx-
|
157 |
</div>
|
158 |
</div>
|
159 |
</form>
|
160 |
|
161 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
162 |
-
<div class="col-
|
163 |
-
<div class="col-
|
164 |
<div class="font-weight-bold"><?php echo esc_html__("Restore SEO", _SQ_PLUGIN_NAME_); ?>:</div>
|
165 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly SEO SQL file.", _SQ_PLUGIN_NAME_); ?></div>
|
166 |
</div>
|
167 |
-
<div class="col-
|
168 |
<div class="form-group my-2">
|
169 |
<input type="file" class="form-control-file" name="sq_sql">
|
170 |
</div>
|
171 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_restoreseo', 'sq_nonce'); ?>
|
172 |
<input type="hidden" name="action" value="sq_seosettings_restoreseo"/>
|
173 |
-
<button type="submit" class="btn rounded-0 btn-success px-2 mx-
|
174 |
</div>
|
175 |
</div>
|
176 |
</form>
|
@@ -178,18 +178,18 @@
|
|
178 |
</div>
|
179 |
<div class="bg-title p-2">
|
180 |
<h3 class="card-title"><?php echo esc_html__("Rollback Plugin", _SQ_PLUGIN_NAME_); ?>:</h3>
|
181 |
-
<div class="col-
|
182 |
<div class="card-title-description mb-0"><?php echo esc_html__("You can rollback Squirrly SEO plugin to the last stable version.", _SQ_PLUGIN_NAME_); ?></div>
|
183 |
</div>
|
184 |
</div>
|
185 |
-
<div class="col-
|
186 |
<form id="sq_rollback_form" name="import" action="" method="post" enctype="multipart/form-data">
|
187 |
-
<div class="col-
|
188 |
-
<div class="col-
|
189 |
<div class="font-weight-bold"><?php echo esc_html__("Rollback to", _SQ_PLUGIN_NAME_) . ' ' . SQ_STABLE_VERSION; ?>:</div>
|
190 |
<div class="small text-black-50"><?php echo esc_html__("Install the last stable version of the plugin.", _SQ_PLUGIN_NAME_); ?></div>
|
191 |
</div>
|
192 |
-
<div class="col-
|
193 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_rollback', 'sq_nonce'); ?>
|
194 |
<input type="hidden" name="action" value="sq_rollback"/>
|
195 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2"><?php echo esc_html__("Install Squirrly SEO", _SQ_PLUGIN_NAME_) . ' ' . SQ_STABLE_VERSION; ?></button>
|
@@ -197,6 +197,21 @@
|
|
197 |
</div>
|
198 |
</form>
|
199 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
200 |
</div>
|
201 |
|
202 |
</div>
|
@@ -204,14 +219,14 @@
|
|
204 |
|
205 |
</div>
|
206 |
|
207 |
-
<div class="col-
|
208 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
209 |
</div>
|
210 |
|
211 |
</div>
|
212 |
</div>
|
213 |
<div class="sq_col_side sticky">
|
214 |
-
<div class="card col-
|
215 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
216 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
217 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role", _SQ_PLUGIN_NAME_) . '</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
|
16 |
|
17 |
+
<div class="card col-12 p-0">
|
18 |
<div class="card-body p-2 bg-title rounded-top row">
|
19 |
+
<div class="col-12 text-left m-0 p-0">
|
20 |
<div class="sq_icons_content p-3 py-4" style="min-height: 150px">
|
21 |
<div class="sq_icons sq_settings_icon m-2"></div>
|
22 |
</div>
|
23 |
<h3 class="card-title"><?php echo esc_html__("Import Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
24 |
+
<div class="col-12 text-left m-0 p-0">
|
25 |
<div class="card-title-description m-2"><?php echo esc_html__("Import the settings and SEO from other plugins so you can use only Squirrly SEO for on-page SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
26 |
<div class="card-title-description m-2"><?php echo esc_html__("Note! If you import the SEO settings from other plugins or themes, you will lose all the settings that you had in Squirrly SEO. Make sure you backup your settings from the panel below before you do this.", _SQ_PLUGIN_NAME_); ?></div>
|
27 |
</div>
|
31 |
</div>
|
32 |
|
33 |
<?php $platforms = apply_filters('sq_importList', false); ?>
|
34 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0">
|
35 |
<div class="card-body p-0">
|
36 |
+
<div class="col-12 m-0 p-0">
|
37 |
+
<div class="card col-12 p-0 border-0 ">
|
38 |
|
39 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
40 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
41 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
42 |
+
<div class="col-4 p-0 pr-3">
|
43 |
<div class="font-weight-bold"><?php echo esc_html__("Import Settings From", _SQ_PLUGIN_NAME_); ?>:</div>
|
44 |
<div class="small text-black-50"><?php echo esc_html__("Select the plugin or theme you want to import the Settings from.", _SQ_PLUGIN_NAME_); ?></div>
|
45 |
<div class="small text-danger"><?php echo esc_html__("Note! It will overwrite the settings you set in Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
46 |
</div>
|
47 |
+
<div class="col-8 p-0 input-group">
|
48 |
<?php
|
49 |
if ($platforms && count((array)$platforms) > 0) {
|
50 |
?>
|
60 |
<input type="hidden" name="action" value="sq_seosettings_importsettings"/>
|
61 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2" style="min-width: 140px"><?php echo esc_html__("Import Settings", _SQ_PLUGIN_NAME_); ?></button>
|
62 |
<?php } else { ?>
|
63 |
+
<div class="col-12 my-2"><?php echo esc_html__("We couldn't find any SEO plugin or theme to import from.", _SQ_PLUGIN_NAME_); ?></div>
|
64 |
<?php } ?>
|
65 |
</div>
|
66 |
</div>
|
67 |
</form>
|
68 |
|
69 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
70 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
71 |
+
<div class="col-4 p-0 pr-3">
|
72 |
<div class="font-weight-bold"><?php echo esc_html__("Import SEO From", _SQ_PLUGIN_NAME_); ?>:</div>
|
73 |
<div class="small text-black-50"><?php echo esc_html__("Select the plugin or theme you want to import the SEO settings from.", _SQ_PLUGIN_NAME_); ?></div>
|
74 |
<div class="small text-danger"><?php echo esc_html__("Note! It will import only the SEO for the pages that were not yet optimized with Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
75 |
</div>
|
76 |
+
<div class="col-8 p-0 input-group">
|
77 |
<?php
|
78 |
if ($platforms && count((array)$platforms) > 0) {
|
79 |
?>
|
89 |
<input type="hidden" name="action" value="sq_seosettings_importseo"/>
|
90 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2" style="min-width: 140px"><?php echo esc_html__("Import SEO", _SQ_PLUGIN_NAME_); ?></button>
|
91 |
<?php } else { ?>
|
92 |
+
<div class="col-12 my-2"><?php echo esc_html__("We couldn't find any SEO plugin or theme to import from.", _SQ_PLUGIN_NAME_); ?></div>
|
93 |
<?php } ?>
|
94 |
</div>
|
95 |
</div>
|
99 |
|
100 |
<div class="bg-title p-2">
|
101 |
<h3 class="card-title"><?php echo esc_html__("Backup Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
102 |
+
<div class="col-12 text-left m-0 p-0">
|
103 |
<div class="card-title-description mb-0"><?php echo esc_html__("You can now download your Squirrly settings in an sql file before you go ahead and import the SEO settings from another plugin. That way, you can always go back to your Squirrly settings.", _SQ_PLUGIN_NAME_); ?></div>
|
104 |
</div>
|
105 |
</div>
|
106 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
107 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
108 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
109 |
+
<div class="col-4 p-0 pr-3">
|
110 |
<div class="font-weight-bold"><?php echo esc_html__("Backup Settings", _SQ_PLUGIN_NAME_); ?>:</div>
|
111 |
<div class="small text-black-50"><?php echo esc_html__("Download all the settings from Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
112 |
</div>
|
113 |
+
<div class="col-8 p-0 input-group">
|
114 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_backupsettings', 'sq_nonce'); ?>
|
115 |
<input type="hidden" name="action" value="sq_seosettings_backupsettings"/>
|
116 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2 noloading"><?php echo esc_html__("Download Backup", _SQ_PLUGIN_NAME_); ?></button>
|
119 |
</form>
|
120 |
|
121 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
122 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
123 |
+
<div class="col-4 p-0 pr-3">
|
124 |
<div class="font-weight-bold"><?php echo esc_html__("Backup SEO", _SQ_PLUGIN_NAME_); ?>:</div>
|
125 |
<div class="small text-black-50"><?php echo esc_html__("Download all the Squirrly SEO Snippet optimizations.", _SQ_PLUGIN_NAME_); ?></div>
|
126 |
</div>
|
127 |
+
<div class="col-8 p-0 input-group">
|
128 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_backupseo', 'sq_nonce'); ?>
|
129 |
<input type="hidden" name="action" value="sq_seosettings_backupseo"/>
|
130 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2 noloading"><?php echo esc_html__("Download Backup", _SQ_PLUGIN_NAME_); ?></button>
|
136 |
|
137 |
<div class="bg-title p-2">
|
138 |
<h3 class="card-title"><?php echo esc_html__("Restore Settings & SEO", _SQ_PLUGIN_NAME_); ?>:</h3>
|
139 |
+
<div class="col-12 text-left m-0 p-0">
|
140 |
<div class="card-title-description mb-0"><?php echo esc_html__("Restore the settings and all the pages optimized with Squirrly SEO.", _SQ_PLUGIN_NAME_); ?></div>
|
141 |
</div>
|
142 |
</div>
|
143 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
144 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
145 |
+
<div class="col-12 row py-2 pr-0 mx-0 my-3">
|
146 |
+
<div class="col-4 p-0 pr-3">
|
147 |
<div class="font-weight-bold"><?php echo esc_html__("Restore Settings", _SQ_PLUGIN_NAME_); ?>:</div>
|
148 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly Settings.", _SQ_PLUGIN_NAME_); ?></div>
|
149 |
</div>
|
150 |
+
<div class="col-8 p-0 input-group">
|
151 |
<div class="form-group my-2">
|
152 |
<input type="file" class="form-control-file" name="sq_options">
|
153 |
</div>
|
154 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_restoresettings', 'sq_nonce'); ?>
|
155 |
<input type="hidden" name="action" value="sq_seosettings_restoresettings"/>
|
156 |
+
<button type="submit" class="btn rounded-0 btn-success px-2 mx-1" style="min-width: 140px"><?php echo esc_html__("Restore Settings", _SQ_PLUGIN_NAME_); ?></button>
|
157 |
</div>
|
158 |
</div>
|
159 |
</form>
|
160 |
|
161 |
<form id="sq_inport_form" name="import" action="" method="post" enctype="multipart/form-data">
|
162 |
+
<div class="col-12 row py-2 pr-0 mx-0 my-3">
|
163 |
+
<div class="col-4 p-0 pr-3">
|
164 |
<div class="font-weight-bold"><?php echo esc_html__("Restore SEO", _SQ_PLUGIN_NAME_); ?>:</div>
|
165 |
<div class="small text-black-50"><?php echo esc_html__("Upload the file with the saved Squirrly SEO SQL file.", _SQ_PLUGIN_NAME_); ?></div>
|
166 |
</div>
|
167 |
+
<div class="col-8 p-0 input-group">
|
168 |
<div class="form-group my-2">
|
169 |
<input type="file" class="form-control-file" name="sq_sql">
|
170 |
</div>
|
171 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_restoreseo', 'sq_nonce'); ?>
|
172 |
<input type="hidden" name="action" value="sq_seosettings_restoreseo"/>
|
173 |
+
<button type="submit" class="btn rounded-0 btn-success px-2 mx-1" style="min-width: 140px"><?php echo esc_html__("Restore SEO", _SQ_PLUGIN_NAME_); ?></button>
|
174 |
</div>
|
175 |
</div>
|
176 |
</form>
|
178 |
</div>
|
179 |
<div class="bg-title p-2">
|
180 |
<h3 class="card-title"><?php echo esc_html__("Rollback Plugin", _SQ_PLUGIN_NAME_); ?>:</h3>
|
181 |
+
<div class="col-12 text-left m-0 p-0">
|
182 |
<div class="card-title-description mb-0"><?php echo esc_html__("You can rollback Squirrly SEO plugin to the last stable version.", _SQ_PLUGIN_NAME_); ?></div>
|
183 |
</div>
|
184 |
</div>
|
185 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
186 |
<form id="sq_rollback_form" name="import" action="" method="post" enctype="multipart/form-data">
|
187 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
188 |
+
<div class="col-4 p-0 pr-3">
|
189 |
<div class="font-weight-bold"><?php echo esc_html__("Rollback to", _SQ_PLUGIN_NAME_) . ' ' . SQ_STABLE_VERSION; ?>:</div>
|
190 |
<div class="small text-black-50"><?php echo esc_html__("Install the last stable version of the plugin.", _SQ_PLUGIN_NAME_); ?></div>
|
191 |
</div>
|
192 |
+
<div class="col-8 p-0 input-group">
|
193 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_rollback', 'sq_nonce'); ?>
|
194 |
<input type="hidden" name="action" value="sq_rollback"/>
|
195 |
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2"><?php echo esc_html__("Install Squirrly SEO", _SQ_PLUGIN_NAME_) . ' ' . SQ_STABLE_VERSION; ?></button>
|
197 |
</div>
|
198 |
</form>
|
199 |
</div>
|
200 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
201 |
+
<form id="sq_reinstall_form" name="import" action="" method="post" enctype="multipart/form-data">
|
202 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
203 |
+
<div class="col-4 p-0 pr-3">
|
204 |
+
<div class="font-weight-bold"><?php echo esc_html__("Reinstall", _SQ_PLUGIN_NAME_) . ' ' . SQ_VERSION; ?>:</div>
|
205 |
+
<div class="small text-black-50"><?php echo esc_html__("Reinstall the current version of the plugin.", _SQ_PLUGIN_NAME_); ?></div>
|
206 |
+
</div>
|
207 |
+
<div class="col-8 p-0 input-group">
|
208 |
+
<?php SQ_Classes_Helpers_Tools::setNonce('sq_reinstall', 'sq_nonce'); ?>
|
209 |
+
<input type="hidden" name="action" value="sq_reinstall"/>
|
210 |
+
<button type="submit" class="btn rounded-0 btn-success px-2 mx-2"><?php echo esc_html__("Reinstall Squirrly SEO", _SQ_PLUGIN_NAME_) . ' ' . SQ_VERSION; ?></button>
|
211 |
+
</div>
|
212 |
+
</div>
|
213 |
+
</form>
|
214 |
+
</div>
|
215 |
</div>
|
216 |
|
217 |
</div>
|
219 |
|
220 |
</div>
|
221 |
|
222 |
+
<div class="col-12 my-3 p-0">
|
223 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
224 |
</div>
|
225 |
|
226 |
</div>
|
227 |
</div>
|
228 |
<div class="sq_col_side sticky">
|
229 |
+
<div class="card col-12 p-0">
|
230 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
231 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
232 |
</div>
|
view/SeoSettings/Favicon.php
CHANGED
@@ -4,34 +4,34 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST" enctype="multipart/form-data">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_favicon', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_favicon"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_favicon_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title"><?php echo esc_html__("Website Icon", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
-
<div class="col-
|
29 |
<div class="card-title-description m-2"><?php echo esc_html__("Add your website icon in the browser tabs and on other devices like iPhone, iPad and Android phones.", _SQ_PLUGIN_NAME_); ?></div>
|
30 |
</div>
|
31 |
</div>
|
32 |
-
<div class="col-
|
33 |
-
<div class="checker
|
34 |
-
<div class="
|
35 |
<label for="sq_auto_favicon" class="mr-2"><?php echo esc_html__("Activate Favicon", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_favicon" value="0"/>
|
37 |
<input type="checkbox" id="sq_auto_favicon" name="sq_auto_favicon" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_favicon') ? 'checked="checked"' : '') ?> value="1"/>
|
@@ -43,19 +43,19 @@
|
|
43 |
|
44 |
</div>
|
45 |
|
46 |
-
<div id="sq_seosettings" class="card col-
|
47 |
<div class="card-body p-0">
|
48 |
-
<div class="col-
|
49 |
-
<div class="card col-
|
50 |
|
51 |
-
<div class="col-
|
52 |
|
53 |
-
<div class="col-
|
54 |
-
<div class="col-
|
55 |
<div class="font-weight-bold"><?php echo esc_html__("Upload file", _SQ_PLUGIN_NAME_); ?>:</div>
|
56 |
<div class="small text-black-50"><?php echo esc_html__("Upload a jpg, jpeg, png or ico file.", _SQ_PLUGIN_NAME_); ?></div>
|
57 |
</div>
|
58 |
-
<div class="col-
|
59 |
<?php
|
60 |
if (SQ_Classes_Helpers_Tools::getOption('sq_auto_favicon') && SQ_Classes_Helpers_Tools::getOption('favicon') <> '' && file_exists(_SQ_CACHE_DIR_ . SQ_Classes_Helpers_Tools::getOption('favicon'))) {
|
61 |
if (!get_option('permalink_structure')) {
|
@@ -70,17 +70,17 @@
|
|
70 |
|
71 |
|
72 |
</div>
|
73 |
-
<div class="col-
|
74 |
<div class="form-group my-2">
|
75 |
<input type="file" class="form-control-file" name="favicon">
|
76 |
</div>
|
77 |
-
<button type="submit" class="btn rounded-0 btn-success px-2 mx-
|
78 |
</div>
|
79 |
</div>
|
80 |
|
81 |
-
<div class="col-
|
82 |
-
<div class="checker col-
|
83 |
-
<div class="col-
|
84 |
<input type="hidden" name="sq_favicon_apple" value="0"/>
|
85 |
<input type="checkbox" id="sq_favicon_apple" name="sq_favicon_apple" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_favicon_apple') ? 'checked="checked"' : '') ?> value="1"/>
|
86 |
<label for="sq_favicon_apple" class="ml-2"><?php echo esc_html__("Add Apple Touch Icons", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -89,10 +89,10 @@
|
|
89 |
</div>
|
90 |
</div>
|
91 |
|
92 |
-
<div class="col-
|
93 |
-
<span class="col-
|
94 |
-
<span class="col-
|
95 |
-
<span class="col-
|
96 |
</div>
|
97 |
</div>
|
98 |
|
@@ -103,7 +103,7 @@
|
|
103 |
|
104 |
</div>
|
105 |
|
106 |
-
<div class="col-
|
107 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
108 |
</div>
|
109 |
|
@@ -111,7 +111,7 @@
|
|
111 |
</form>
|
112 |
</div>
|
113 |
<div class="sq_col_side sticky">
|
114 |
-
<div class="card col-
|
115 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
116 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
117 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST" enctype="multipart/form-data">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_favicon', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_favicon"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_favicon_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title"><?php echo esc_html__("Website Icon", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
+
<div class="col-12 text-left m-0 p-0">
|
29 |
<div class="card-title-description m-2"><?php echo esc_html__("Add your website icon in the browser tabs and on other devices like iPhone, iPad and Android phones.", _SQ_PLUGIN_NAME_); ?></div>
|
30 |
</div>
|
31 |
</div>
|
32 |
+
<div class="col-5 text-right">
|
33 |
+
<div class="checker row my-4 py-2 mx-0 px-0 justify-content-end">
|
34 |
+
<div class="sq-switch redgreen sq-switch-sm ">
|
35 |
<label for="sq_auto_favicon" class="mr-2"><?php echo esc_html__("Activate Favicon", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_favicon" value="0"/>
|
37 |
<input type="checkbox" id="sq_auto_favicon" name="sq_auto_favicon" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_favicon') ? 'checked="checked"' : '') ?> value="1"/>
|
43 |
|
44 |
</div>
|
45 |
|
46 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_favicon') ? '' : 'sq_deactivated') ?>">
|
47 |
<div class="card-body p-0">
|
48 |
+
<div class="col-12 m-0 p-0">
|
49 |
+
<div class="card col-12 p-0 border-0 ">
|
50 |
|
51 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
52 |
|
53 |
+
<div class="col-12 row py-2 pr-0 mx-0 my-3">
|
54 |
+
<div class="col-4 p-0 pr-3">
|
55 |
<div class="font-weight-bold"><?php echo esc_html__("Upload file", _SQ_PLUGIN_NAME_); ?>:</div>
|
56 |
<div class="small text-black-50"><?php echo esc_html__("Upload a jpg, jpeg, png or ico file.", _SQ_PLUGIN_NAME_); ?></div>
|
57 |
</div>
|
58 |
+
<div class="col-1 p-2 text-center input-group">
|
59 |
<?php
|
60 |
if (SQ_Classes_Helpers_Tools::getOption('sq_auto_favicon') && SQ_Classes_Helpers_Tools::getOption('favicon') <> '' && file_exists(_SQ_CACHE_DIR_ . SQ_Classes_Helpers_Tools::getOption('favicon'))) {
|
61 |
if (!get_option('permalink_structure')) {
|
70 |
|
71 |
|
72 |
</div>
|
73 |
+
<div class="col-7 p-0 input-group">
|
74 |
<div class="form-group my-2">
|
75 |
<input type="file" class="form-control-file" name="favicon">
|
76 |
</div>
|
77 |
+
<button type="submit" class="btn btn-sm rounded-0 btn-success px-2 mx-1" style="min-width: 90px"><?php echo esc_html__("Upload", _SQ_PLUGIN_NAME_); ?></button>
|
78 |
</div>
|
79 |
</div>
|
80 |
|
81 |
+
<div class="col-12 row mb-1 ml-1">
|
82 |
+
<div class="checker col-12 row my-2 py-1">
|
83 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
84 |
<input type="hidden" name="sq_favicon_apple" value="0"/>
|
85 |
<input type="checkbox" id="sq_favicon_apple" name="sq_favicon_apple" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_favicon_apple') ? 'checked="checked"' : '') ?> value="1"/>
|
86 |
<label for="sq_favicon_apple" class="ml-2"><?php echo esc_html__("Add Apple Touch Icons", _SQ_PLUGIN_NAME_); ?></label>
|
89 |
</div>
|
90 |
</div>
|
91 |
|
92 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
93 |
+
<span class="col-12 px-0 small text-black-50 font-italic"><?php echo esc_html__("If you don't see the new icon in your browser, empty the browser cache and refresh the page.", _SQ_PLUGIN_NAME_); ?></span>
|
94 |
+
<span class="col-12 px-0 small text-black-50 font-italic"><?php echo esc_html__("Accepted file types: JPG, JPEG, GIF and PNG.", _SQ_PLUGIN_NAME_); ?></span>
|
95 |
+
<span class="col-12 px-0 small text-black-50 font-italic"><?php echo esc_html__("Does not physically create the favicon.ico file. The best option for Multisites.", _SQ_PLUGIN_NAME_); ?></span>
|
96 |
</div>
|
97 |
</div>
|
98 |
|
103 |
|
104 |
</div>
|
105 |
|
106 |
+
<div class="col-12 my-3 p-0">
|
107 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
108 |
</div>
|
109 |
|
111 |
</form>
|
112 |
</div>
|
113 |
<div class="sq_col_side sticky">
|
114 |
+
<div class="card col-12 p-0">
|
115 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
116 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
117 |
</div>
|
view/SeoSettings/Jsonld.php
CHANGED
@@ -4,31 +4,31 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_jsonld', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_jsonld"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_jsonld_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("JSON-LD Structured Data", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
-
<div class="col-
|
30 |
-
<div class="checker
|
31 |
-
<div class="
|
32 |
<div class="sq_help_question float-right">
|
33 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/" target="_blank"><i class="fa fa-question-circle m-0 p-0"></i></a>
|
34 |
</div>
|
@@ -42,22 +42,22 @@
|
|
42 |
|
43 |
</div>
|
44 |
|
45 |
-
<div id="sq_seosettings" class="card col-
|
46 |
<div class="card-body p-0">
|
47 |
-
<div class="col-
|
48 |
-
<div class="card col-
|
49 |
<?php
|
50 |
$jsonld = SQ_Classes_Helpers_Tools::getOption('sq_jsonld');
|
51 |
$jsonldtype = SQ_Classes_Helpers_Tools::getOption('sq_jsonld_type');
|
52 |
?>
|
53 |
|
54 |
-
<div class="col-
|
55 |
-
<div class="col-
|
56 |
-
<div class="col-
|
57 |
<div class="font-weight-bold"><?php echo esc_html__("Your Site Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
58 |
<div class="small text-black-50 my-1"><?php echo esc_html__("The Organization details will be added in JSON-LD publisher section for every page and post", _SQ_PLUGIN_NAME_); ?></div>
|
59 |
</div>
|
60 |
-
<div class="col-
|
61 |
|
62 |
<select name="sq_jsonld_type" class="form-control bg-input mb-1">
|
63 |
<option value="Organization" <?php echo(($jsonldtype == 'Organization') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Organization", _SQ_PLUGIN_NAME_); ?></option>
|
@@ -67,42 +67,42 @@
|
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
-
<div class="col-
|
71 |
-
<div class="col-
|
72 |
-
<div class="col-
|
73 |
<?php echo esc_html__("Your Organization Name", _SQ_PLUGIN_NAME_); ?>:
|
74 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/#Add-JSON-LD-Company" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a>
|
75 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. COMPANY LTD", _SQ_PLUGIN_NAME_); ?></div>
|
76 |
</div>
|
77 |
-
<div class="col-
|
78 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Organization][name]" value="<?php echo(($jsonld['Organization']['name'] <> '') ? $jsonld['Organization']['name'] : '') ?>"/>
|
79 |
</div>
|
80 |
</div>
|
81 |
-
<div class="col-
|
82 |
-
<div class="col-
|
83 |
<?php echo esc_html__("Logo URL", _SQ_PLUGIN_NAME_); ?>:
|
84 |
<div class="small text-black-50 my-1"></div>
|
85 |
</div>
|
86 |
-
<div class="col-
|
87 |
<input id="sq_jsonld_logo_organization" type="text" class="form-control bg-input" name="sq_jsonld[Organization][logo]" value="<?php echo(($jsonld['Organization']['logo'] <> '') ? $jsonld['Organization']['logo'] : '') ?>"/>
|
88 |
<input type="button" class="sq_imageselect btn btn-primary rounded-right" data-destination="sq_jsonld_logo_organization" value="<?php echo esc_html__("Select Image", _SQ_PLUGIN_NAME_) ?>"/>
|
89 |
</div>
|
90 |
</div>
|
91 |
-
<div class="col-
|
92 |
-
<div class="col-
|
93 |
<?php echo esc_html__("Contact Phone", _SQ_PLUGIN_NAME_); ?>:
|
94 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. +1-541-754-3010", _SQ_PLUGIN_NAME_); ?></div>
|
95 |
</div>
|
96 |
-
<div class="col-
|
97 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Organization][telephone]" value="<?php echo(($jsonld['Organization']['telephone']) ? $jsonld['Organization']['telephone'] : '') ?>"/>
|
98 |
</div>
|
99 |
</div>
|
100 |
-
<div class="col-
|
101 |
-
<div class="col-
|
102 |
<div class="font-weight-bold"><?php echo esc_html__("Contact Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
103 |
<div class="small text-black-50 my-1"></div>
|
104 |
</div>
|
105 |
-
<div class="col-
|
106 |
<select name="sq_jsonld[Organization][contactType]" class="form-control bg-input mb-1">
|
107 |
<option value="customer service" <?php echo(($jsonld['Organization']['contactType'] == 'customer service') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Customer Service", _SQ_PLUGIN_NAME_); ?></option>
|
108 |
<option value="technical support" <?php echo(($jsonld['Organization']['contactType'] == 'technical support') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Technical Support", _SQ_PLUGIN_NAME_); ?></option>
|
@@ -118,62 +118,62 @@
|
|
118 |
</select>
|
119 |
</div>
|
120 |
</div>
|
121 |
-
<div class="col-
|
122 |
-
<div class="col-
|
123 |
<?php echo esc_html__("Short Description", _SQ_PLUGIN_NAME_); ?>:
|
124 |
<div class="small text-black-50 my-1"><?php echo esc_html__("A short description about the company. 20-50 words.", _SQ_PLUGIN_NAME_); ?></div>
|
125 |
</div>
|
126 |
-
<div class="col-
|
127 |
<textarea class="form-control" name="sq_jsonld[Organization][description]" rows="3"><?php echo(($jsonld['Organization']['description'] <> '') ? $jsonld['Organization']['description'] : '') ?></textarea>
|
128 |
</div>
|
129 |
</div>
|
130 |
</div>
|
131 |
|
132 |
-
<div class="col-
|
133 |
-
<div class="col-
|
134 |
-
<div class="col-
|
135 |
<?php echo esc_html__("Your Name", _SQ_PLUGIN_NAME_); ?>:
|
136 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/#Add-JSON-LD-Profile" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a>
|
137 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. John Smith", _SQ_PLUGIN_NAME_); ?></div>
|
138 |
</div>
|
139 |
-
<div class="col-
|
140 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][name]" value="<?php echo(($jsonld['Person']['name'] <> '') ? $jsonld['Person']['name'] : '') ?>"/>
|
141 |
</div>
|
142 |
</div>
|
143 |
-
<div class="col-
|
144 |
-
<div class="col-
|
145 |
<?php echo esc_html__("Job Title", _SQ_PLUGIN_NAME_); ?>:
|
146 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. Sales Manager", _SQ_PLUGIN_NAME_); ?></div>
|
147 |
</div>
|
148 |
-
<div class="col-
|
149 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][jobTitle]" value="<?php echo(($jsonld['Person']['jobTitle'] <> '') ? $jsonld['Person']['jobTitle'] : '') ?>"/>
|
150 |
</div>
|
151 |
</div>
|
152 |
-
<div class="col-
|
153 |
-
<div class="col-
|
154 |
<?php echo esc_html__("Logo URL", _SQ_PLUGIN_NAME_); ?>:
|
155 |
<div class="small text-black-50 my-1"></div>
|
156 |
</div>
|
157 |
-
<div class="col-
|
158 |
<input id="sq_jsonld_logo_person" type="text" class="form-control bg-input" name="sq_jsonld[Person][logo]" value="<?php echo(($jsonld['Person']['logo'] <> '') ? $jsonld['Person']['logo'] : '') ?>"/>
|
159 |
-
<input type="button" class="sq_imageselect form-control btn btn-primary rounded-right col-
|
160 |
</div>
|
161 |
</div>
|
162 |
-
<div class="col-
|
163 |
-
<div class="col-
|
164 |
<?php echo esc_html__("Contact Phone", _SQ_PLUGIN_NAME_); ?>:
|
165 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. +1-541-754-3010", _SQ_PLUGIN_NAME_); ?></div>
|
166 |
</div>
|
167 |
-
<div class="col-
|
168 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][telephone]" value="<?php echo(($jsonld['Person']['telephone'] <> '') ? $jsonld['Person']['telephone'] : '') ?>"/>
|
169 |
</div>
|
170 |
</div>
|
171 |
-
<div class="col-
|
172 |
-
<div class="col-
|
173 |
<?php echo esc_html__("Short Description", _SQ_PLUGIN_NAME_); ?>:
|
174 |
<div class="small text-black-50 my-1"><?php echo esc_html__("A short description about your job title.", _SQ_PLUGIN_NAME_); ?></div>
|
175 |
</div>
|
176 |
-
<div class="col-
|
177 |
<textarea class="form-control" name="sq_jsonld[Person][description]" rows="3"><?php echo(($jsonld['Person']['description'] <> '') ? $jsonld['Person']['description'] : '') ?></textarea>
|
178 |
</div>
|
179 |
</div>
|
@@ -184,11 +184,11 @@
|
|
184 |
<div class="bg-title p-2 sq_advanced">
|
185 |
<h3 class="card-title"><?php echo esc_html__("More Json-LD Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
186 |
</div>
|
187 |
-
<div class="col-
|
188 |
<?php if (SQ_Classes_Helpers_Tools::isPluginInstalled('woocommerce/woocommerce.php')) { ?>
|
189 |
-
<div class="col-
|
190 |
-
<div class="checker col-
|
191 |
-
<div class="col-
|
192 |
<input type="hidden" name="sq_jsonld_woocommerce" value="0"/>
|
193 |
<input type="checkbox" id="sq_jsonld_woocommerce" name="sq_jsonld_woocommerce" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_woocommerce') ? 'checked="checked"' : '') ?> value="1"/>
|
194 |
<label for="sq_jsonld_woocommerce" class="ml-2"><?php echo esc_html__("Add Support For Woocommerce", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -197,9 +197,9 @@
|
|
197 |
</div>
|
198 |
</div>
|
199 |
|
200 |
-
<div class="col-
|
201 |
-
<div class="checker col-
|
202 |
-
<div class="col-
|
203 |
<input type="hidden" name="sq_jsonld_product_defaults" value="0"/>
|
204 |
<input type="checkbox" id="sq_jsonld_product_defaults" name="sq_jsonld_product_defaults" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_product_defaults') ? 'checked="checked"' : '') ?> value="1"/>
|
205 |
<label for="sq_jsonld_product_defaults" class="ml-2"><?php echo esc_html__("Add default data for Woocommerce Products", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -208,9 +208,9 @@
|
|
208 |
</div>
|
209 |
</div>
|
210 |
<?php } ?>
|
211 |
-
<div class="col-
|
212 |
-
<div class="checker col-
|
213 |
-
<div class="col-
|
214 |
<input type="hidden" name="sq_jsonld_breadcrumbs" value="0"/>
|
215 |
<input type="checkbox" id="sq_jsonld_breadcrumbs" name="sq_jsonld_breadcrumbs" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_breadcrumbs') ? 'checked="checked"' : '') ?> value="1"/>
|
216 |
<label for="sq_jsonld_breadcrumbs" class="ml-2"><?php echo esc_html__("Add Breadcrumbs in Json-LD", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -219,9 +219,9 @@
|
|
219 |
</div>
|
220 |
</div>
|
221 |
|
222 |
-
<div class="col-
|
223 |
-
<div class="checker col-
|
224 |
-
<div class="col-
|
225 |
<input type="hidden" name="sq_jsonld_clearcode" value="0"/>
|
226 |
<input type="checkbox" id="sq_jsonld_clearcode" name="sq_jsonld_clearcode" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_clearcode') ? 'checked="checked"' : '') ?> value="1"/>
|
227 |
<label for="sq_jsonld_clearcode" class="ml-2"><?php echo esc_html__("Remove other Json-LD from page", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -237,7 +237,7 @@
|
|
237 |
|
238 |
</div>
|
239 |
|
240 |
-
<div class="col-
|
241 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
242 |
<div class="py-0 float-right text-right m-2">
|
243 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -251,7 +251,7 @@
|
|
251 |
</form>
|
252 |
</div>
|
253 |
<div class="sq_col_side sticky">
|
254 |
-
<div class="card col-
|
255 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
256 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
257 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role", _SQ_PLUGIN_NAME_) . '</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_jsonld', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_jsonld"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_jsonld_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("JSON-LD Structured Data", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
+
<div class="col-5 text-right">
|
30 |
+
<div class="checker row my-4 py-2 mx-0 px-0 justify-content-end">
|
31 |
+
<div class="sq-switch redgreen sq-switch-sm ">
|
32 |
<div class="sq_help_question float-right">
|
33 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/" target="_blank"><i class="fa fa-question-circle m-0 p-0"></i></a>
|
34 |
</div>
|
42 |
|
43 |
</div>
|
44 |
|
45 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_jsonld') ? '' : 'sq_deactivated') ?>">
|
46 |
<div class="card-body p-0">
|
47 |
+
<div class="col-12 m-0 p-0">
|
48 |
+
<div class="card col-12 p-0 border-0 ">
|
49 |
<?php
|
50 |
$jsonld = SQ_Classes_Helpers_Tools::getOption('sq_jsonld');
|
51 |
$jsonldtype = SQ_Classes_Helpers_Tools::getOption('sq_jsonld_type');
|
52 |
?>
|
53 |
|
54 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
55 |
+
<div class="col-12 row mx-0 my-3">
|
56 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
57 |
<div class="font-weight-bold"><?php echo esc_html__("Your Site Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
58 |
<div class="small text-black-50 my-1"><?php echo esc_html__("The Organization details will be added in JSON-LD publisher section for every page and post", _SQ_PLUGIN_NAME_); ?></div>
|
59 |
</div>
|
60 |
+
<div class="col-8 p-0 input-group">
|
61 |
|
62 |
<select name="sq_jsonld_type" class="form-control bg-input mb-1">
|
63 |
<option value="Organization" <?php echo(($jsonldtype == 'Organization') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Organization", _SQ_PLUGIN_NAME_); ?></option>
|
67 |
</div>
|
68 |
</div>
|
69 |
|
70 |
+
<div class="col-12 py-4 border-bottom tab-panel tab-panel-Organization" style="<?php echo(($jsonldtype == 'Person') ? 'display:none' : ''); ?>">
|
71 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
72 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
73 |
<?php echo esc_html__("Your Organization Name", _SQ_PLUGIN_NAME_); ?>:
|
74 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/#Add-JSON-LD-Company" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a>
|
75 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. COMPANY LTD", _SQ_PLUGIN_NAME_); ?></div>
|
76 |
</div>
|
77 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
78 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Organization][name]" value="<?php echo(($jsonld['Organization']['name'] <> '') ? $jsonld['Organization']['name'] : '') ?>"/>
|
79 |
</div>
|
80 |
</div>
|
81 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
82 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
83 |
<?php echo esc_html__("Logo URL", _SQ_PLUGIN_NAME_); ?>:
|
84 |
<div class="small text-black-50 my-1"></div>
|
85 |
</div>
|
86 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
87 |
<input id="sq_jsonld_logo_organization" type="text" class="form-control bg-input" name="sq_jsonld[Organization][logo]" value="<?php echo(($jsonld['Organization']['logo'] <> '') ? $jsonld['Organization']['logo'] : '') ?>"/>
|
88 |
<input type="button" class="sq_imageselect btn btn-primary rounded-right" data-destination="sq_jsonld_logo_organization" value="<?php echo esc_html__("Select Image", _SQ_PLUGIN_NAME_) ?>"/>
|
89 |
</div>
|
90 |
</div>
|
91 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
92 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
93 |
<?php echo esc_html__("Contact Phone", _SQ_PLUGIN_NAME_); ?>:
|
94 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. +1-541-754-3010", _SQ_PLUGIN_NAME_); ?></div>
|
95 |
</div>
|
96 |
+
<div class="col-5 p-0 input-group input-group-lg">
|
97 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Organization][telephone]" value="<?php echo(($jsonld['Organization']['telephone']) ? $jsonld['Organization']['telephone'] : '') ?>"/>
|
98 |
</div>
|
99 |
</div>
|
100 |
+
<div class="col-12 row mx-0 my-3">
|
101 |
+
<div class="col-4 p-1">
|
102 |
<div class="font-weight-bold"><?php echo esc_html__("Contact Type", _SQ_PLUGIN_NAME_); ?>:</div>
|
103 |
<div class="small text-black-50 my-1"></div>
|
104 |
</div>
|
105 |
+
<div class="col-5 p-0 input-group">
|
106 |
<select name="sq_jsonld[Organization][contactType]" class="form-control bg-input mb-1">
|
107 |
<option value="customer service" <?php echo(($jsonld['Organization']['contactType'] == 'customer service') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Customer Service", _SQ_PLUGIN_NAME_); ?></option>
|
108 |
<option value="technical support" <?php echo(($jsonld['Organization']['contactType'] == 'technical support') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("Technical Support", _SQ_PLUGIN_NAME_); ?></option>
|
118 |
</select>
|
119 |
</div>
|
120 |
</div>
|
121 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
122 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
123 |
<?php echo esc_html__("Short Description", _SQ_PLUGIN_NAME_); ?>:
|
124 |
<div class="small text-black-50 my-1"><?php echo esc_html__("A short description about the company. 20-50 words.", _SQ_PLUGIN_NAME_); ?></div>
|
125 |
</div>
|
126 |
+
<div class="col-8 p-0">
|
127 |
<textarea class="form-control" name="sq_jsonld[Organization][description]" rows="3"><?php echo(($jsonld['Organization']['description'] <> '') ? $jsonld['Organization']['description'] : '') ?></textarea>
|
128 |
</div>
|
129 |
</div>
|
130 |
</div>
|
131 |
|
132 |
+
<div class="col-12 py-4 border-bottom tab-panel tab-panel-Person" style="<?php echo(($jsonldtype == 'Organization') ? 'display:none' : ''); ?>">
|
133 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
134 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
135 |
<?php echo esc_html__("Your Name", _SQ_PLUGIN_NAME_); ?>:
|
136 |
<a href="https://howto.squirrly.co/kb/json-ld-structured-data/#Add-JSON-LD-Profile" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a>
|
137 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. John Smith", _SQ_PLUGIN_NAME_); ?></div>
|
138 |
</div>
|
139 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
140 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][name]" value="<?php echo(($jsonld['Person']['name'] <> '') ? $jsonld['Person']['name'] : '') ?>"/>
|
141 |
</div>
|
142 |
</div>
|
143 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
144 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
145 |
<?php echo esc_html__("Job Title", _SQ_PLUGIN_NAME_); ?>:
|
146 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. Sales Manager", _SQ_PLUGIN_NAME_); ?></div>
|
147 |
</div>
|
148 |
+
<div class="col-5 p-0 input-group input-group-lg">
|
149 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][jobTitle]" value="<?php echo(($jsonld['Person']['jobTitle'] <> '') ? $jsonld['Person']['jobTitle'] : '') ?>"/>
|
150 |
</div>
|
151 |
</div>
|
152 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
153 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
154 |
<?php echo esc_html__("Logo URL", _SQ_PLUGIN_NAME_); ?>:
|
155 |
<div class="small text-black-50 my-1"></div>
|
156 |
</div>
|
157 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
158 |
<input id="sq_jsonld_logo_person" type="text" class="form-control bg-input" name="sq_jsonld[Person][logo]" value="<?php echo(($jsonld['Person']['logo'] <> '') ? $jsonld['Person']['logo'] : '') ?>"/>
|
159 |
+
<input type="button" class="sq_imageselect form-control btn btn-primary rounded-right col-3" data-destination="sq_jsonld_logo_person" value="<?php echo esc_html__("Select Image", _SQ_PLUGIN_NAME_) ?>"/>
|
160 |
</div>
|
161 |
</div>
|
162 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
163 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
164 |
<?php echo esc_html__("Contact Phone", _SQ_PLUGIN_NAME_); ?>:
|
165 |
<div class="small text-black-50 my-1"><?php echo esc_html__("eg. +1-541-754-3010", _SQ_PLUGIN_NAME_); ?></div>
|
166 |
</div>
|
167 |
+
<div class="col-5 p-0 input-group input-group-lg">
|
168 |
<input type="text" class="form-control bg-input" name="sq_jsonld[Person][telephone]" value="<?php echo(($jsonld['Person']['telephone'] <> '') ? $jsonld['Person']['telephone'] : '') ?>"/>
|
169 |
</div>
|
170 |
</div>
|
171 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
172 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
173 |
<?php echo esc_html__("Short Description", _SQ_PLUGIN_NAME_); ?>:
|
174 |
<div class="small text-black-50 my-1"><?php echo esc_html__("A short description about your job title.", _SQ_PLUGIN_NAME_); ?></div>
|
175 |
</div>
|
176 |
+
<div class="col-8 p-0">
|
177 |
<textarea class="form-control" name="sq_jsonld[Person][description]" rows="3"><?php echo(($jsonld['Person']['description'] <> '') ? $jsonld['Person']['description'] : '') ?></textarea>
|
178 |
</div>
|
179 |
</div>
|
184 |
<div class="bg-title p-2 sq_advanced">
|
185 |
<h3 class="card-title"><?php echo esc_html__("More Json-LD Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
186 |
</div>
|
187 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
188 |
<?php if (SQ_Classes_Helpers_Tools::isPluginInstalled('woocommerce/woocommerce.php')) { ?>
|
189 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
190 |
+
<div class="checker col-12 row my-2 py-1">
|
191 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
192 |
<input type="hidden" name="sq_jsonld_woocommerce" value="0"/>
|
193 |
<input type="checkbox" id="sq_jsonld_woocommerce" name="sq_jsonld_woocommerce" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_woocommerce') ? 'checked="checked"' : '') ?> value="1"/>
|
194 |
<label for="sq_jsonld_woocommerce" class="ml-2"><?php echo esc_html__("Add Support For Woocommerce", _SQ_PLUGIN_NAME_); ?></label>
|
197 |
</div>
|
198 |
</div>
|
199 |
|
200 |
+
<div class="col-12 row mb-1 ml-1">
|
201 |
+
<div class="checker col-12 row my-2 py-1">
|
202 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
203 |
<input type="hidden" name="sq_jsonld_product_defaults" value="0"/>
|
204 |
<input type="checkbox" id="sq_jsonld_product_defaults" name="sq_jsonld_product_defaults" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_product_defaults') ? 'checked="checked"' : '') ?> value="1"/>
|
205 |
<label for="sq_jsonld_product_defaults" class="ml-2"><?php echo esc_html__("Add default data for Woocommerce Products", _SQ_PLUGIN_NAME_); ?></label>
|
208 |
</div>
|
209 |
</div>
|
210 |
<?php } ?>
|
211 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
212 |
+
<div class="checker col-12 row my-2 py-1">
|
213 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
214 |
<input type="hidden" name="sq_jsonld_breadcrumbs" value="0"/>
|
215 |
<input type="checkbox" id="sq_jsonld_breadcrumbs" name="sq_jsonld_breadcrumbs" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_breadcrumbs') ? 'checked="checked"' : '') ?> value="1"/>
|
216 |
<label for="sq_jsonld_breadcrumbs" class="ml-2"><?php echo esc_html__("Add Breadcrumbs in Json-LD", _SQ_PLUGIN_NAME_); ?></label>
|
219 |
</div>
|
220 |
</div>
|
221 |
|
222 |
+
<div class="col-12 row mb-1 ml-1">
|
223 |
+
<div class="checker col-12 row my-2 py-1">
|
224 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
225 |
<input type="hidden" name="sq_jsonld_clearcode" value="0"/>
|
226 |
<input type="checkbox" id="sq_jsonld_clearcode" name="sq_jsonld_clearcode" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_jsonld_clearcode') ? 'checked="checked"' : '') ?> value="1"/>
|
227 |
<label for="sq_jsonld_clearcode" class="ml-2"><?php echo esc_html__("Remove other Json-LD from page", _SQ_PLUGIN_NAME_); ?></label>
|
237 |
|
238 |
</div>
|
239 |
|
240 |
+
<div class="col-12 my-3 p-0">
|
241 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
242 |
<div class="py-0 float-right text-right m-2">
|
243 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
251 |
</form>
|
252 |
</div>
|
253 |
<div class="sq_col_side sticky">
|
254 |
+
<div class="card col-12 p-0">
|
255 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
256 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
257 |
</div>
|
view/SeoSettings/Metas.php
CHANGED
@@ -4,25 +4,25 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_metas', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_metas"/>
|
19 |
|
20 |
-
<div class="card col-
|
21 |
<?php do_action('sq_subscription_notices'); ?>
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
-
<div class="col-
|
25 |
-
<div class="sq_help_question float-right">
|
26 |
<a href="https://howto.squirrly.co/kb/seo-metas/" target="_blank"><i class="fa fa-question-circle"></i></a>
|
27 |
</div>
|
28 |
<div class="sq_icons_content p-3 py-4">
|
@@ -33,16 +33,16 @@
|
|
33 |
|
34 |
</div>
|
35 |
|
36 |
-
<div id="sq_seosettings" class="card col-
|
37 |
|
38 |
<div class="card-body p-0">
|
39 |
-
<div class="col-
|
40 |
-
<div class="card col-
|
41 |
|
42 |
-
<div class="col-
|
43 |
-
<div class="col-
|
44 |
-
<div class="checker col-
|
45 |
-
<div class="col-
|
46 |
<input type="hidden" name="sq_auto_title" value="0"/>
|
47 |
<input type="checkbox" id="sq_auto_title" name="sq_auto_title" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_title') ? 'checked="checked"' : '') ?> value="1"/>
|
48 |
<label for="sq_auto_title" class="ml-2"><?php echo esc_html__("Optimize the Titles", _SQ_PLUGIN_NAME_); ?>
|
@@ -52,9 +52,9 @@
|
|
52 |
</div>
|
53 |
</div>
|
54 |
|
55 |
-
<div class="col-
|
56 |
-
<div class="checker col-
|
57 |
-
<div class="col-
|
58 |
<input type="hidden" name="sq_auto_description" value="0"/>
|
59 |
<input type="checkbox" id="sq_auto_description" name="sq_auto_description" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_description') ? 'checked="checked"' : '') ?> value="1"/>
|
60 |
<label for="sq_auto_description" class="ml-2"><?php echo esc_html__("Optimize Descriptions", _SQ_PLUGIN_NAME_); ?>
|
@@ -64,9 +64,9 @@
|
|
64 |
</div>
|
65 |
</div>
|
66 |
|
67 |
-
<div class="col-
|
68 |
-
<div class="checker col-
|
69 |
-
<div class="col-
|
70 |
<input type="hidden" name="sq_auto_keywords" value="0"/>
|
71 |
<input type="checkbox" id="sq_auto_keywords" name="sq_auto_keywords" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_keywords') ? 'checked="checked"' : '') ?> value="1"/>
|
72 |
<label for="sq_auto_keywords" class="ml-2"><?php echo esc_html__("Optimize Keywords", _SQ_PLUGIN_NAME_); ?>
|
@@ -78,9 +78,9 @@
|
|
78 |
</div>
|
79 |
|
80 |
|
81 |
-
<div class="col-
|
82 |
-
<div class="checker col-
|
83 |
-
<div class="col-
|
84 |
<input type="hidden" name="sq_auto_canonical" value="0"/>
|
85 |
<input type="checkbox" id="sq_auto_canonical" name="sq_auto_canonical" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_canonical') ? 'checked="checked"' : '') ?> value="1"/>
|
86 |
<label for="sq_auto_canonical" class="ml-2"><?php echo esc_html__("Add Canonical Meta Link", _SQ_PLUGIN_NAME_); ?>
|
@@ -91,9 +91,9 @@
|
|
91 |
</div>
|
92 |
</div>
|
93 |
|
94 |
-
<div class="col-
|
95 |
-
<div class="checker col-
|
96 |
-
<div class="col-
|
97 |
<input type="hidden" name="sq_auto_dublincore" value="0"/>
|
98 |
<input type="checkbox" id="sq_auto_dublincore" name="sq_auto_dublincore" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_dublincore') ? 'checked="checked"' : '') ?> value="1"/>
|
99 |
<label for="sq_auto_dublincore" class="ml-2"><?php echo esc_html__("Add Dublin Core Meta", _SQ_PLUGIN_NAME_); ?>
|
@@ -103,9 +103,9 @@
|
|
103 |
</div>
|
104 |
</div>
|
105 |
|
106 |
-
<div class="col-
|
107 |
-
<div class="checker col-
|
108 |
-
<div class="col-
|
109 |
<input type="hidden" name="sq_auto_noindex" value="0"/>
|
110 |
<input type="checkbox" id="sq_auto_noindex" name="sq_auto_noindex" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex') ? 'checked="checked"' : '') ?> value="1"/>
|
111 |
<label for="sq_auto_noindex" class="ml-2"><?php echo esc_html__("Add Robots Meta", _SQ_PLUGIN_NAME_); ?>
|
@@ -120,10 +120,10 @@
|
|
120 |
<div class="bg-title p-2 sq_advanced">
|
121 |
<h3 class="card-title"><?php echo esc_html__("More SEO Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
122 |
</div>
|
123 |
-
<div class="col-
|
124 |
-
<div class="col-
|
125 |
-
<div class="checker col-
|
126 |
-
<div class="col-
|
127 |
<input type="hidden" name="sq_keywordtag" value="0"/>
|
128 |
<input type="checkbox" id="sq_keywordtag" name="sq_keywordtag" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_keywordtag') ? 'checked="checked"' : '') ?> value="1"/>
|
129 |
<label for="sq_keywordtag" class="ml-2"><?php echo esc_html__("Add the Post tags in Keyword META", _SQ_PLUGIN_NAME_); ?>
|
@@ -133,9 +133,9 @@
|
|
133 |
</div>
|
134 |
</div>
|
135 |
|
136 |
-
<div class="col-
|
137 |
-
<div class="checker col-
|
138 |
-
<div class="col-
|
139 |
<input type="hidden" name="sq_use_frontend" value="0"/>
|
140 |
<input type="checkbox" id="sq_use_frontend" name="sq_use_frontend" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_use_frontend') ? 'checked="checked"' : '') ?> value="1"/>
|
141 |
<label for="sq_use_frontend" class="ml-2"><?php echo esc_html__("Activate Snippet in Frontend", _SQ_PLUGIN_NAME_); ?>
|
@@ -153,50 +153,50 @@
|
|
153 |
|
154 |
<div class="bg-title p-2">
|
155 |
<h3 class="card-title"><?php echo esc_html__("First Page Optimization", _SQ_PLUGIN_NAME_); ?>:</h3>
|
156 |
-
<div class="col-
|
157 |
<div class="card-title-description mb-0"><?php echo esc_html__("Needed when you didn't set a specific page as Homepage in Settings > Reading page", _SQ_PLUGIN_NAME_); ?></div>
|
158 |
</div>
|
159 |
</div>
|
160 |
-
<div class="col-
|
161 |
<?php
|
162 |
$post = SQ_Classes_ObjController::getClass('SQ_Models_Snippet')->setHomePage();
|
163 |
$patterns = SQ_Classes_Helpers_Tools::getOption('patterns');
|
164 |
?>
|
165 |
-
<div class="col-
|
166 |
-
<div class="col-
|
167 |
<?php echo esc_html__("Title", _SQ_PLUGIN_NAME_); ?>:
|
168 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 10-75 chars", _SQ_PLUGIN_NAME_); ?></div>
|
169 |
</div>
|
170 |
-
<div class="col-
|
171 |
<input type="text" class="form-control bg-input" name="sq_fp_title" value="<?php echo(($post->sq->title <> '') ? esc_attr($post->sq->title) : '') ?>"/>
|
172 |
</div>
|
173 |
</div>
|
174 |
-
<div class="col-
|
175 |
-
<div class="col-
|
176 |
<?php echo esc_html__("Description", _SQ_PLUGIN_NAME_); ?>:
|
177 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 70-320 chars", _SQ_PLUGIN_NAME_); ?></div>
|
178 |
</div>
|
179 |
-
<div class="col-
|
180 |
<textarea class="form-control" name="sq_fp_description" rows="5"><?php echo(($post->sq->description <> '') ? esc_attr($post->sq->description) : '') ?></textarea>
|
181 |
</div>
|
182 |
</div>
|
183 |
-
<div class="col-
|
184 |
-
<div class="col-
|
185 |
<?php echo esc_html__("Keywords", _SQ_PLUGIN_NAME_); ?>:
|
186 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: use 2-4 keywords", _SQ_PLUGIN_NAME_); ?></div>
|
187 |
</div>
|
188 |
-
<div class="col-
|
189 |
<input type="text" class="form-control bg-input" name="sq_fp_keywords" value="<?php echo(($post->sq->keywords <> '') ? SQ_Classes_Helpers_Sanitize::escapeKeyword($post->sq->keywords) : '') ?>"/>
|
190 |
</div>
|
191 |
</div>
|
192 |
-
<div class="col-
|
193 |
-
<div class="col-
|
194 |
<?php echo esc_html__("OG Image", _SQ_PLUGIN_NAME_); ?>:
|
195 |
<div class="small text-black-50 my-1"></div>
|
196 |
</div>
|
197 |
-
<div class="col-
|
198 |
<input id="sq_fp_ogimage" type="text" class="form-control bg-input" name="sq_fp_ogimage" value="<?php echo(($post->sq->og_media <> '') ? esc_attr($post->sq->og_media) : '') ?>"/>
|
199 |
-
<input type="button" class="sq_imageselect form-control btn btn-primary rounded-right col-
|
200 |
</div>
|
201 |
</div>
|
202 |
|
@@ -205,11 +205,11 @@
|
|
205 |
|
206 |
<div class="bg-title p-2">
|
207 |
<h3 class="card-title"><?php echo esc_html__("First Page Preview", _SQ_PLUGIN_NAME_); ?>:</h3>
|
208 |
-
<div class="col-
|
209 |
<div class="card-title-description mb-0"><?php echo esc_html__("See how the social snippet will look like for the front page", _SQ_PLUGIN_NAME_); ?></div>
|
210 |
</div>
|
211 |
</div>
|
212 |
-
<div class="col-
|
213 |
<div class="sq_snippet_preview text-center m-auto" class="px-1 mx-auto" style="max-width: 500px;">
|
214 |
<div class="sq_snippet_name"><?php echo esc_html__("Squirrly Snippet", _SQ_PLUGIN_NAME_) ?></div>
|
215 |
|
@@ -235,7 +235,7 @@
|
|
235 |
|
236 |
</div>
|
237 |
|
238 |
-
<div class="col-
|
239 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
240 |
<div class="py-0 float-right text-right m-2">
|
241 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -247,7 +247,7 @@
|
|
247 |
</form>
|
248 |
</div>
|
249 |
<div class="sq_col_side sticky">
|
250 |
-
<div class="card col-
|
251 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
252 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
253 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">' . esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_) . '</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_metas', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_metas"/>
|
19 |
|
20 |
+
<div class="card col-12 p-0">
|
21 |
<?php do_action('sq_subscription_notices'); ?>
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
+
<div class="col-12 text-left m-0 p-0">
|
25 |
+
<div class="sq_help_question my-4 float-right">
|
26 |
<a href="https://howto.squirrly.co/kb/seo-metas/" target="_blank"><i class="fa fa-question-circle"></i></a>
|
27 |
</div>
|
28 |
<div class="sq_icons_content p-3 py-4">
|
33 |
|
34 |
</div>
|
35 |
|
36 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_metas') ? '' : 'sq_deactivated') ?>">
|
37 |
|
38 |
<div class="card-body p-0">
|
39 |
+
<div class="col-12 m-0 p-0">
|
40 |
+
<div class="card col-12 p-0 border-0 ">
|
41 |
|
42 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
43 |
+
<div class="col-12 row mb-1 ml-1">
|
44 |
+
<div class="checker col-12 row my-2 py-1">
|
45 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
46 |
<input type="hidden" name="sq_auto_title" value="0"/>
|
47 |
<input type="checkbox" id="sq_auto_title" name="sq_auto_title" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_title') ? 'checked="checked"' : '') ?> value="1"/>
|
48 |
<label for="sq_auto_title" class="ml-2"><?php echo esc_html__("Optimize the Titles", _SQ_PLUGIN_NAME_); ?>
|
52 |
</div>
|
53 |
</div>
|
54 |
|
55 |
+
<div class="col-12 row mb-1 ml-1">
|
56 |
+
<div class="checker col-12 row my-2 py-1">
|
57 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
58 |
<input type="hidden" name="sq_auto_description" value="0"/>
|
59 |
<input type="checkbox" id="sq_auto_description" name="sq_auto_description" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_description') ? 'checked="checked"' : '') ?> value="1"/>
|
60 |
<label for="sq_auto_description" class="ml-2"><?php echo esc_html__("Optimize Descriptions", _SQ_PLUGIN_NAME_); ?>
|
64 |
</div>
|
65 |
</div>
|
66 |
|
67 |
+
<div class="col-12 row mb-1 ml-1">
|
68 |
+
<div class="checker col-12 row my-2 py-1">
|
69 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
70 |
<input type="hidden" name="sq_auto_keywords" value="0"/>
|
71 |
<input type="checkbox" id="sq_auto_keywords" name="sq_auto_keywords" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_keywords') ? 'checked="checked"' : '') ?> value="1"/>
|
72 |
<label for="sq_auto_keywords" class="ml-2"><?php echo esc_html__("Optimize Keywords", _SQ_PLUGIN_NAME_); ?>
|
78 |
</div>
|
79 |
|
80 |
|
81 |
+
<div class="col-12 row mb-1 ml-1">
|
82 |
+
<div class="checker col-12 row my-2 py-1">
|
83 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
84 |
<input type="hidden" name="sq_auto_canonical" value="0"/>
|
85 |
<input type="checkbox" id="sq_auto_canonical" name="sq_auto_canonical" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_canonical') ? 'checked="checked"' : '') ?> value="1"/>
|
86 |
<label for="sq_auto_canonical" class="ml-2"><?php echo esc_html__("Add Canonical Meta Link", _SQ_PLUGIN_NAME_); ?>
|
91 |
</div>
|
92 |
</div>
|
93 |
|
94 |
+
<div class="col-12 row mb-1 ml-1">
|
95 |
+
<div class="checker col-12 row my-2 py-1">
|
96 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
97 |
<input type="hidden" name="sq_auto_dublincore" value="0"/>
|
98 |
<input type="checkbox" id="sq_auto_dublincore" name="sq_auto_dublincore" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_dublincore') ? 'checked="checked"' : '') ?> value="1"/>
|
99 |
<label for="sq_auto_dublincore" class="ml-2"><?php echo esc_html__("Add Dublin Core Meta", _SQ_PLUGIN_NAME_); ?>
|
103 |
</div>
|
104 |
</div>
|
105 |
|
106 |
+
<div class="col-12 row mb-1 ml-1">
|
107 |
+
<div class="checker col-12 row my-2 py-1">
|
108 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
109 |
<input type="hidden" name="sq_auto_noindex" value="0"/>
|
110 |
<input type="checkbox" id="sq_auto_noindex" name="sq_auto_noindex" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_noindex') ? 'checked="checked"' : '') ?> value="1"/>
|
111 |
<label for="sq_auto_noindex" class="ml-2"><?php echo esc_html__("Add Robots Meta", _SQ_PLUGIN_NAME_); ?>
|
120 |
<div class="bg-title p-2 sq_advanced">
|
121 |
<h3 class="card-title"><?php echo esc_html__("More SEO Settings", _SQ_PLUGIN_NAME_); ?>:</h3>
|
122 |
</div>
|
123 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
124 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
125 |
+
<div class="checker col-12 row my-2 py-1">
|
126 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
127 |
<input type="hidden" name="sq_keywordtag" value="0"/>
|
128 |
<input type="checkbox" id="sq_keywordtag" name="sq_keywordtag" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_keywordtag') ? 'checked="checked"' : '') ?> value="1"/>
|
129 |
<label for="sq_keywordtag" class="ml-2"><?php echo esc_html__("Add the Post tags in Keyword META", _SQ_PLUGIN_NAME_); ?>
|
133 |
</div>
|
134 |
</div>
|
135 |
|
136 |
+
<div class="col-12 row mb-1 ml-1">
|
137 |
+
<div class="checker col-12 row my-2 py-1">
|
138 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
139 |
<input type="hidden" name="sq_use_frontend" value="0"/>
|
140 |
<input type="checkbox" id="sq_use_frontend" name="sq_use_frontend" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_use_frontend') ? 'checked="checked"' : '') ?> value="1"/>
|
141 |
<label for="sq_use_frontend" class="ml-2"><?php echo esc_html__("Activate Snippet in Frontend", _SQ_PLUGIN_NAME_); ?>
|
153 |
|
154 |
<div class="bg-title p-2">
|
155 |
<h3 class="card-title"><?php echo esc_html__("First Page Optimization", _SQ_PLUGIN_NAME_); ?>:</h3>
|
156 |
+
<div class="col-12 text-left m-0 p-0">
|
157 |
<div class="card-title-description mb-0"><?php echo esc_html__("Needed when you didn't set a specific page as Homepage in Settings > Reading page", _SQ_PLUGIN_NAME_); ?></div>
|
158 |
</div>
|
159 |
</div>
|
160 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
161 |
<?php
|
162 |
$post = SQ_Classes_ObjController::getClass('SQ_Models_Snippet')->setHomePage();
|
163 |
$patterns = SQ_Classes_Helpers_Tools::getOption('patterns');
|
164 |
?>
|
165 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
166 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
167 |
<?php echo esc_html__("Title", _SQ_PLUGIN_NAME_); ?>:
|
168 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 10-75 chars", _SQ_PLUGIN_NAME_); ?></div>
|
169 |
</div>
|
170 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
171 |
<input type="text" class="form-control bg-input" name="sq_fp_title" value="<?php echo(($post->sq->title <> '') ? esc_attr($post->sq->title) : '') ?>"/>
|
172 |
</div>
|
173 |
</div>
|
174 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
175 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
176 |
<?php echo esc_html__("Description", _SQ_PLUGIN_NAME_); ?>:
|
177 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: Length 70-320 chars", _SQ_PLUGIN_NAME_); ?></div>
|
178 |
</div>
|
179 |
+
<div class="col-8 p-0">
|
180 |
<textarea class="form-control" name="sq_fp_description" rows="5"><?php echo(($post->sq->description <> '') ? esc_attr($post->sq->description) : '') ?></textarea>
|
181 |
</div>
|
182 |
</div>
|
183 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
184 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
185 |
<?php echo esc_html__("Keywords", _SQ_PLUGIN_NAME_); ?>:
|
186 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Tips: use 2-4 keywords", _SQ_PLUGIN_NAME_); ?></div>
|
187 |
</div>
|
188 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
189 |
<input type="text" class="form-control bg-input" name="sq_fp_keywords" value="<?php echo(($post->sq->keywords <> '') ? SQ_Classes_Helpers_Sanitize::escapeKeyword($post->sq->keywords) : '') ?>"/>
|
190 |
</div>
|
191 |
</div>
|
192 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
193 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
194 |
<?php echo esc_html__("OG Image", _SQ_PLUGIN_NAME_); ?>:
|
195 |
<div class="small text-black-50 my-1"></div>
|
196 |
</div>
|
197 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
198 |
<input id="sq_fp_ogimage" type="text" class="form-control bg-input" name="sq_fp_ogimage" value="<?php echo(($post->sq->og_media <> '') ? esc_attr($post->sq->og_media) : '') ?>"/>
|
199 |
+
<input type="button" class="sq_imageselect form-control btn btn-primary rounded-right col-3" data-destination="sq_fp_ogimage" value="<?php echo esc_html__("Select Image", _SQ_PLUGIN_NAME_) ?>"/>
|
200 |
</div>
|
201 |
</div>
|
202 |
|
205 |
|
206 |
<div class="bg-title p-2">
|
207 |
<h3 class="card-title"><?php echo esc_html__("First Page Preview", _SQ_PLUGIN_NAME_); ?>:</h3>
|
208 |
+
<div class="col-12 text-left m-0 p-0">
|
209 |
<div class="card-title-description mb-0"><?php echo esc_html__("See how the social snippet will look like for the front page", _SQ_PLUGIN_NAME_); ?></div>
|
210 |
</div>
|
211 |
</div>
|
212 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
213 |
<div class="sq_snippet_preview text-center m-auto" class="px-1 mx-auto" style="max-width: 500px;">
|
214 |
<div class="sq_snippet_name"><?php echo esc_html__("Squirrly Snippet", _SQ_PLUGIN_NAME_) ?></div>
|
215 |
|
235 |
|
236 |
</div>
|
237 |
|
238 |
+
<div class="col-12 my-3 p-0">
|
239 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
240 |
<div class="py-0 float-right text-right m-2">
|
241 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
247 |
</form>
|
248 |
</div>
|
249 |
<div class="sq_col_side sticky">
|
250 |
+
<div class="card col-12 p-0">
|
251 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
252 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
253 |
</div>
|
view/SeoSettings/Robots.php
CHANGED
@@ -4,34 +4,34 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_robots', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_robots"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_robots_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title"><?php echo esc_html__("Robots File", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
-
<div class="col-
|
29 |
<div class="card-title-description m-2"><?php echo esc_html__("A robots.txt file tells search engine crawlers which pages or files the crawler can or can't request from your site.", _SQ_PLUGIN_NAME_); ?></div>
|
30 |
</div>
|
31 |
</div>
|
32 |
-
<div class="col-
|
33 |
-
<div class="checker
|
34 |
-
<div class="
|
35 |
<label for="sq_auto_robots" class="mr-2"><?php echo esc_html__("Activate Robots", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_robots" value="0"/>
|
37 |
<input type="checkbox" id="sq_auto_robots" name="sq_auto_robots" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_robots') ? 'checked="checked"' : '') ?> value="1"/>
|
@@ -43,20 +43,20 @@
|
|
43 |
|
44 |
</div>
|
45 |
|
46 |
-
<div id="sq_seosettings" class="card col-
|
47 |
<div class="card-body p-0">
|
48 |
-
<div class="col-
|
49 |
-
<div class="card col-
|
50 |
|
51 |
|
52 |
-
<div class="col-
|
53 |
|
54 |
-
<div class="col-
|
55 |
-
<div class="col-
|
56 |
<?php echo esc_html__("Edit the Robots.txt data", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Does not physically create the robots.txt file. The best option for Multisites.", _SQ_PLUGIN_NAME_), '<a href="https://developers.facebook.com/apps/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
58 |
</div>
|
59 |
-
<div class="col-
|
60 |
<textarea class="form-control" name="robots_permission" rows="10"><?php
|
61 |
$robots = '';
|
62 |
$robots_permission = SQ_Classes_Helpers_Tools::getOption('sq_robots_permission');
|
@@ -66,7 +66,7 @@
|
|
66 |
|
67 |
?></textarea>
|
68 |
|
69 |
-
<div class="col-
|
70 |
<?php echo esc_html__("Edit the Robots.txt only if you know what you're doing. Adding wrong rules in Robots can lead to SEO ranking errors or block your posts in Google.", _SQ_PLUGIN_NAME_); ?>
|
71 |
</div>
|
72 |
</div>
|
@@ -81,7 +81,7 @@
|
|
81 |
|
82 |
</div>
|
83 |
|
84 |
-
<div class="col-
|
85 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
86 |
</div>
|
87 |
|
@@ -89,7 +89,7 @@
|
|
89 |
</form>
|
90 |
</div>
|
91 |
<div class="sq_col_side sticky">
|
92 |
-
<div class="card col-
|
93 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
94 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
95 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_robots', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_robots"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_robots_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title"><?php echo esc_html__("Robots File", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
+
<div class="col-12 text-left m-0 p-0">
|
29 |
<div class="card-title-description m-2"><?php echo esc_html__("A robots.txt file tells search engine crawlers which pages or files the crawler can or can't request from your site.", _SQ_PLUGIN_NAME_); ?></div>
|
30 |
</div>
|
31 |
</div>
|
32 |
+
<div class="col-5 text-right">
|
33 |
+
<div class="checker row my-4 py-2 mx-0 px-0 justify-content-end">
|
34 |
+
<div class="sq-switch redgreen sq-switch-sm ">
|
35 |
<label for="sq_auto_robots" class="mr-2"><?php echo esc_html__("Activate Robots", _SQ_PLUGIN_NAME_); ?></label>
|
36 |
<input type="hidden" name="sq_auto_robots" value="0"/>
|
37 |
<input type="checkbox" id="sq_auto_robots" name="sq_auto_robots" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_robots') ? 'checked="checked"' : '') ?> value="1"/>
|
43 |
|
44 |
</div>
|
45 |
|
46 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_robots') ? '' : 'sq_deactivated') ?>">
|
47 |
<div class="card-body p-0">
|
48 |
+
<div class="col-12 m-0 p-0">
|
49 |
+
<div class="card col-12 p-0 border-0 ">
|
50 |
|
51 |
|
52 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
53 |
|
54 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
55 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
56 |
<?php echo esc_html__("Edit the Robots.txt data", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Does not physically create the robots.txt file. The best option for Multisites.", _SQ_PLUGIN_NAME_), '<a href="https://developers.facebook.com/apps/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
58 |
</div>
|
59 |
+
<div class="col-8 p-0 form-group">
|
60 |
<textarea class="form-control" name="robots_permission" rows="10"><?php
|
61 |
$robots = '';
|
62 |
$robots_permission = SQ_Classes_Helpers_Tools::getOption('sq_robots_permission');
|
66 |
|
67 |
?></textarea>
|
68 |
|
69 |
+
<div class="col-12 py-3 px-0 font-weight-bold text-danger">
|
70 |
<?php echo esc_html__("Edit the Robots.txt only if you know what you're doing. Adding wrong rules in Robots can lead to SEO ranking errors or block your posts in Google.", _SQ_PLUGIN_NAME_); ?>
|
71 |
</div>
|
72 |
</div>
|
81 |
|
82 |
</div>
|
83 |
|
84 |
+
<div class="col-12 my-3 p-0">
|
85 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
86 |
</div>
|
87 |
|
89 |
</form>
|
90 |
</div>
|
91 |
<div class="sq_col_side sticky">
|
92 |
+
<div class="card col-12 p-0">
|
93 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
94 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
95 |
</div>
|
view/SeoSettings/Sitemap.php
CHANGED
@@ -4,32 +4,32 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_sitemap', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_sitemap"/>
|
19 |
|
20 |
-
<div class="card col-
|
21 |
<?php do_action('sq_subscription_notices'); ?>
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
-
<div class="col-
|
25 |
<div class="sq_icons_content p-3 py-4">
|
26 |
<div class="sq_icons sq_sitemap_icon m-2"></div>
|
27 |
</div>
|
28 |
<h3 class="card-title py-4"><?php echo esc_html__("Sitemap XML", _SQ_PLUGIN_NAME_); ?>:</h3>
|
29 |
</div>
|
30 |
-
<div class="col-
|
31 |
-
<div class="checker
|
32 |
-
<div class="
|
33 |
<label for="sq_auto_sitemap" class="mr-2"><?php echo esc_html__("Activate Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
34 |
<input type="hidden" name="sq_auto_sitemap" value="0"/>
|
35 |
<input type="checkbox" id="sq_auto_sitemap" name="sq_auto_sitemap" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap') ? 'checked="checked"' : '') ?> value="1"/>
|
@@ -43,19 +43,19 @@
|
|
43 |
$sitemap = SQ_Classes_Helpers_Tools::getOption('sq_sitemap');
|
44 |
$sitemapshow = SQ_Classes_Helpers_Tools::getOption('sq_sitemap_show');
|
45 |
?>
|
46 |
-
<div id="sq_seosettings" class="card col-
|
47 |
|
48 |
<div class="card-body p-0">
|
49 |
-
<div class="col-
|
50 |
-
<div class="card col-
|
51 |
|
52 |
-
<div class="col-
|
53 |
-
<div class="col-
|
54 |
-
<div class="col-
|
55 |
<div class="font-weight-bold"><?php echo esc_html__("Blogging Frequency", _SQ_PLUGIN_NAME_); ?>:</div>
|
56 |
<div class="small text-black-50"><?php echo esc_html__("How often do you write new posts?", _SQ_PLUGIN_NAME_); ?></div>
|
57 |
</div>
|
58 |
-
<div class="col-
|
59 |
<select name="sq_sitemap_frequency" class="form-control bg-input mb-1">
|
60 |
<option value="hourly" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_frequency') == 'hourly') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("every hour", _SQ_PLUGIN_NAME_); ?></option>
|
61 |
<option value="daily" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_frequency') == 'daily') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("every day", _SQ_PLUGIN_NAME_); ?></option>
|
@@ -66,9 +66,9 @@
|
|
66 |
</div>
|
67 |
</div>
|
68 |
|
69 |
-
<div class="col-
|
70 |
-
<div class="checker col-
|
71 |
-
<div class="col-
|
72 |
<input type="hidden" name="sq_sitemap_ping" value="0"/>
|
73 |
<input type="checkbox" id="sq_sitemap_ping" name="sq_sitemap_ping" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_ping')) ? 'checked="checked"' : ''); ?> value="1"/>
|
74 |
<label for="sq_sitemap_ping" class="ml-2"><?php echo esc_html__("Ping New Posts to Google", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -79,9 +79,9 @@
|
|
79 |
</div>
|
80 |
|
81 |
<?php if (function_exists('pll_get_post_translations')) { ?>
|
82 |
-
<div class="col-
|
83 |
-
<div class="checker col-
|
84 |
-
<div class="col-
|
85 |
<input type="hidden" name="sq_sitemap_combinelangs" value="0"/>
|
86 |
<input type="checkbox" id="sq_sitemap_combinelangs" name="sq_sitemap_combinelangs" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_combinelangs')) ? 'checked="checked"' : ''); ?> value="1"/>
|
87 |
<label for="sq_sitemap_combinelangs" class="ml-2"><?php echo esc_html__("Combine Languages in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -96,16 +96,16 @@
|
|
96 |
|
97 |
<div class="bg-title p-2">
|
98 |
<h3 class="card-title"><?php echo esc_html__("Build Sitemaps for", _SQ_PLUGIN_NAME_); ?>:</h3>
|
99 |
-
<div class="col-
|
100 |
<div class="card-title-description mb-2"><?php echo sprintf(esc_html__("Check the sitemap you want Squirrly to build for your website. Your sitemap will be %s", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_ObjController::getClass('SQ_Controllers_Sitemaps')->getXmlUrl('sitemap') . '" target="_blank"><strong>' . SQ_Classes_ObjController::getClass('SQ_Controllers_Sitemaps')->getXmlUrl('sitemap') . '</strong></a>'); ?></div>
|
101 |
<div class="card-title-description mb-0"><?php echo esc_html__("Verify your sitemaps after you activate them to have data. Uncheck them if they don't have URLs to avoid Google errors.", _SQ_PLUGIN_NAME_); ?></div>
|
102 |
</div>
|
103 |
</div>
|
104 |
-
<div class="col-
|
105 |
-
<div class="row mt-3 col-
|
106 |
-
<div class="col
|
107 |
-
<div class="checker col-
|
108 |
-
<div class="col-
|
109 |
<input type="checkbox" id="sq_sitemap_home" name="sitemap[sitemap-home]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-home'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
110 |
<label for="sq_sitemap_home" class="ml-2"><?php echo esc_html__("Home Page", _SQ_PLUGIN_NAME_); ?></label>
|
111 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for the home page.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -113,9 +113,9 @@
|
|
113 |
</div>
|
114 |
</div>
|
115 |
|
116 |
-
<div class="col
|
117 |
-
<div class="checker col-
|
118 |
-
<div class="col-
|
119 |
<input type="checkbox" id="sq_sitemap_news" name="sitemap[sitemap-news]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-news'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
120 |
<label for="sq_sitemap_news" class="ml-2"><?php echo esc_html__("Google News", _SQ_PLUGIN_NAME_); ?></label>
|
121 |
<div class="offset-2 small text-black-50"><?php echo sprintf(esc_html__("Only if you have a news website. Make sure you submit your website to %sGoogle News%s first.", _SQ_PLUGIN_NAME_), '<a href="https://partnerdash.google.com/partnerdash/d/news" target="_blank">', '</a>'); ?></div>
|
@@ -125,10 +125,10 @@
|
|
125 |
</div>
|
126 |
|
127 |
|
128 |
-
<div class="row mt-3 col-
|
129 |
-
<div class="col
|
130 |
-
<div class="checker col-
|
131 |
-
<div class="col-
|
132 |
<input type="checkbox" id="sq_sitemap_post" name="sitemap[sitemap-post]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-post'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
133 |
<label for="sq_sitemap_post" class="ml-2"><?php echo esc_html__("Posts", _SQ_PLUGIN_NAME_); ?></label>
|
134 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your posts.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -136,9 +136,9 @@
|
|
136 |
</div>
|
137 |
</div>
|
138 |
|
139 |
-
<div class="col
|
140 |
-
<div class="checker col-
|
141 |
-
<div class="col-
|
142 |
<input type="checkbox" id="sq_sitemap_attachment" name="sitemap[sitemap-attachment]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-attachment'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
143 |
<label for="sq_sitemap_attachment" class="ml-2"><?php echo esc_html__("Attachments", _SQ_PLUGIN_NAME_); ?></label>
|
144 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Only recommended if you have a photography website.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -147,10 +147,10 @@
|
|
147 |
</div>
|
148 |
</div>
|
149 |
|
150 |
-
<div class="row mt-3 col-
|
151 |
-
<div class="col
|
152 |
-
<div class="checker col-
|
153 |
-
<div class="col-
|
154 |
<input type="checkbox" id="sq_sitemap_category" name="sitemap[sitemap-category]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-category'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
155 |
<label for="sq_sitemap_category" class="ml-2"><?php echo esc_html__("Categories", _SQ_PLUGIN_NAME_); ?></label>
|
156 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your post categories.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -159,9 +159,9 @@
|
|
159 |
</div>
|
160 |
|
161 |
|
162 |
-
<div class="col
|
163 |
-
<div class="checker col-
|
164 |
-
<div class="col-
|
165 |
<input type="checkbox" id="sq_sitemap_post_tag" name="sitemap[sitemap-post_tag]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-post_tag'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
166 |
<label for="sq_sitemap_post_tag" class="ml-2"><?php echo esc_html__("Tags", _SQ_PLUGIN_NAME_); ?></label>
|
167 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your post tags.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -170,10 +170,10 @@
|
|
170 |
</div>
|
171 |
</div>
|
172 |
|
173 |
-
<div class="row mt-3 col-
|
174 |
-
<div class="col
|
175 |
-
<div class="checker col-
|
176 |
-
<div class="col-
|
177 |
<input type="checkbox" id="sq_sitemap_page" name="sitemap[sitemap-page]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-page'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
178 |
<label for="sq_sitemap_page" class="ml-2"><?php echo esc_html__("Pages", _SQ_PLUGIN_NAME_); ?></label>
|
179 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your pages.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -181,9 +181,9 @@
|
|
181 |
</div>
|
182 |
</div>
|
183 |
|
184 |
-
<div class="col
|
185 |
-
<div class="checker col-
|
186 |
-
<div class="col-
|
187 |
<input type="checkbox" id="sq_sitemap_archive" name="sitemap[sitemap-archive]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-archive'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
188 |
<label for="sq_sitemap_archive" class="ml-2"><?php echo esc_html__("Archive", _SQ_PLUGIN_NAME_); ?></label>
|
189 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your archive links.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -192,10 +192,10 @@
|
|
192 |
</div>
|
193 |
</div>
|
194 |
|
195 |
-
<div class="row mt-3 col-
|
196 |
-
<div class="col
|
197 |
-
<div class="checker col-
|
198 |
-
<div class="col-
|
199 |
<input type="checkbox" id="sq_sitemap_custom-tax" name="sitemap[sitemap-custom-tax]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-custom-tax'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
200 |
<label for="sq_sitemap_custom-tax" class="ml-2"><?php echo esc_html__("Custom Taxonomies", _SQ_PLUGIN_NAME_); ?></label>
|
201 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your custom post type categories and tags.", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -203,9 +203,9 @@
|
|
203 |
</div>
|
204 |
</div>
|
205 |
|
206 |
-
<div class="col
|
207 |
-
<div class="checker col-
|
208 |
-
<div class="col-
|
209 |
<input type="checkbox" id="sq_sitemap_custom-post" name="sitemap[sitemap-custom-post]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-custom-post'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
210 |
<label for="sq_sitemap_custom-post" class="ml-2"><?php echo esc_html__("Custom Posts", _SQ_PLUGIN_NAME_); ?></label>
|
211 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your custom post types (other than WP posts and pages).", _SQ_PLUGIN_NAME_); ?></div>
|
@@ -215,19 +215,19 @@
|
|
215 |
</div>
|
216 |
|
217 |
<?php if (SQ_Classes_Helpers_Tools::isEcommerce()) { //check for ecommerce product ?>
|
218 |
-
<div class="row mt-3 col-
|
219 |
-
<div class="col
|
220 |
-
<div class="checker col-
|
221 |
-
<div class="col-
|
222 |
<input type="checkbox" id="sq_sitemap_product" name="sitemap[sitemap-product]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-product'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
223 |
<label for="sq_sitemap_product" class="ml-2"><?php echo esc_html__("Products", _SQ_PLUGIN_NAME_); ?></label>
|
224 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your e-commerce products.", _SQ_PLUGIN_NAME_); ?></div>
|
225 |
</div>
|
226 |
</div>
|
227 |
</div>
|
228 |
-
<div class="col
|
229 |
-
<div class="checker col-
|
230 |
-
<div class="col-
|
231 |
</div>
|
232 |
</div>
|
233 |
</div>
|
@@ -235,10 +235,10 @@
|
|
235 |
<?php } ?>
|
236 |
</div>
|
237 |
|
238 |
-
<div class="col-
|
239 |
-
<div class="col-
|
240 |
-
<div class="checker col-
|
241 |
-
<div class="col-
|
242 |
<input type="hidden" name="sq_sitemap_show[images]" value="0"/>
|
243 |
<input type="checkbox" id="sq_sitemap_show_images" name="sq_sitemap_show[images]" class="sq-switch" <?php echo(($sitemapshow['images']) ? 'checked="checked"' : ''); ?> value="1"/>
|
244 |
<label for="sq_sitemap_show_images" class="ml-2"><?php echo esc_html__("Include Images in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -247,9 +247,9 @@
|
|
247 |
</div>
|
248 |
</div>
|
249 |
|
250 |
-
<div class="col-
|
251 |
-
<div class="checker col-
|
252 |
-
<div class="col-
|
253 |
<input type="hidden" name="sq_sitemap_show[videos]" value="0"/>
|
254 |
<input type="checkbox" id="sq_sitemap_show_video" name="sq_sitemap_show[videos]" class="sq-switch" <?php echo(($sitemapshow['videos']) ? 'checked="checked"' : ''); ?> value="1"/>
|
255 |
<label for="sq_sitemap_show_video" class="ml-2"><?php echo esc_html__("Include Videos in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -261,14 +261,14 @@
|
|
261 |
|
262 |
</div>
|
263 |
|
264 |
-
<div class="col-
|
265 |
|
266 |
-
<div class="col-
|
267 |
-
<div class="col-
|
268 |
<div class="font-weight-bold"><?php echo esc_html__("Sitemap Pagination", _SQ_PLUGIN_NAME_); ?>:</div>
|
269 |
<div class="small text-black-50"><?php echo esc_html__("How many Posts per page to show in sitemap?", _SQ_PLUGIN_NAME_); ?></div>
|
270 |
</div>
|
271 |
-
<div class="col-
|
272 |
<select name="sq_sitemap_perpage" class="form-control bg-input mb-1">
|
273 |
<option value="10" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_perpage') == '10') ? 'selected="selected"' : ''); ?>>10</option>
|
274 |
<option value="50" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_perpage') == '50') ? 'selected="selected"' : ''); ?>>50</option>
|
@@ -281,9 +281,9 @@
|
|
281 |
</div>
|
282 |
|
283 |
|
284 |
-
<div class="col-
|
285 |
-
<div class="checker col-
|
286 |
-
<div class="col-
|
287 |
<input type="hidden" name="sq_url_fix" value="0"/>
|
288 |
<input type="checkbox" id="sq_url_fix" name="sq_url_fix" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_url_fix')) ? 'checked="checked"' : ''); ?> value="1"/>
|
289 |
<label for="sq_url_fix" class="ml-2"><?php echo esc_html__("Fix Relative URLs", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -301,7 +301,7 @@
|
|
301 |
|
302 |
</div>
|
303 |
|
304 |
-
<div class="col-
|
305 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
306 |
<div class="py-0 float-right text-right m-2">
|
307 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -315,7 +315,7 @@
|
|
315 |
</form>
|
316 |
</div>
|
317 |
<div class="sq_col_side sticky">
|
318 |
-
<div class="card col-
|
319 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
320 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
321 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
|
15 |
<?php do_action('sq_form_notices'); ?>
|
16 |
<form method="POST">
|
17 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_sitemap', 'sq_nonce'); ?>
|
18 |
<input type="hidden" name="action" value="sq_seosettings_sitemap"/>
|
19 |
|
20 |
+
<div class="card col-12 p-0">
|
21 |
<?php do_action('sq_subscription_notices'); ?>
|
22 |
|
23 |
<div class="card-body p-2 bg-title rounded-top row">
|
24 |
+
<div class="col-7 text-left m-0 p-0">
|
25 |
<div class="sq_icons_content p-3 py-4">
|
26 |
<div class="sq_icons sq_sitemap_icon m-2"></div>
|
27 |
</div>
|
28 |
<h3 class="card-title py-4"><?php echo esc_html__("Sitemap XML", _SQ_PLUGIN_NAME_); ?>:</h3>
|
29 |
</div>
|
30 |
+
<div class="col-5 text-right">
|
31 |
+
<div class="checker row my-4 py-2 mx-0 px-0 justify-content-end">
|
32 |
+
<div class="sq-switch redgreen sq-switch-sm ">
|
33 |
<label for="sq_auto_sitemap" class="mr-2"><?php echo esc_html__("Activate Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
34 |
<input type="hidden" name="sq_auto_sitemap" value="0"/>
|
35 |
<input type="checkbox" id="sq_auto_sitemap" name="sq_auto_sitemap" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap') ? 'checked="checked"' : '') ?> value="1"/>
|
43 |
$sitemap = SQ_Classes_Helpers_Tools::getOption('sq_sitemap');
|
44 |
$sitemapshow = SQ_Classes_Helpers_Tools::getOption('sq_sitemap_show');
|
45 |
?>
|
46 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_sitemap') ? '' : 'sq_deactivated') ?>">
|
47 |
|
48 |
<div class="card-body p-0">
|
49 |
+
<div class="col-12 m-0 p-0">
|
50 |
+
<div class="card col-12 p-0 border-0 ">
|
51 |
|
52 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
53 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
54 |
+
<div class="col-4 p-1">
|
55 |
<div class="font-weight-bold"><?php echo esc_html__("Blogging Frequency", _SQ_PLUGIN_NAME_); ?>:</div>
|
56 |
<div class="small text-black-50"><?php echo esc_html__("How often do you write new posts?", _SQ_PLUGIN_NAME_); ?></div>
|
57 |
</div>
|
58 |
+
<div class="col-8 p-0 input-group">
|
59 |
<select name="sq_sitemap_frequency" class="form-control bg-input mb-1">
|
60 |
<option value="hourly" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_frequency') == 'hourly') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("every hour", _SQ_PLUGIN_NAME_); ?></option>
|
61 |
<option value="daily" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_frequency') == 'daily') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("every day", _SQ_PLUGIN_NAME_); ?></option>
|
66 |
</div>
|
67 |
</div>
|
68 |
|
69 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
70 |
+
<div class="checker col-12 row my-2 py-1">
|
71 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
72 |
<input type="hidden" name="sq_sitemap_ping" value="0"/>
|
73 |
<input type="checkbox" id="sq_sitemap_ping" name="sq_sitemap_ping" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_ping')) ? 'checked="checked"' : ''); ?> value="1"/>
|
74 |
<label for="sq_sitemap_ping" class="ml-2"><?php echo esc_html__("Ping New Posts to Google", _SQ_PLUGIN_NAME_); ?></label>
|
79 |
</div>
|
80 |
|
81 |
<?php if (function_exists('pll_get_post_translations')) { ?>
|
82 |
+
<div class="col-12 row mb-1 ml-1 sq_advanced">
|
83 |
+
<div class="checker col-12 row my-2 py-1">
|
84 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
85 |
<input type="hidden" name="sq_sitemap_combinelangs" value="0"/>
|
86 |
<input type="checkbox" id="sq_sitemap_combinelangs" name="sq_sitemap_combinelangs" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_combinelangs')) ? 'checked="checked"' : ''); ?> value="1"/>
|
87 |
<label for="sq_sitemap_combinelangs" class="ml-2"><?php echo esc_html__("Combine Languages in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
96 |
|
97 |
<div class="bg-title p-2">
|
98 |
<h3 class="card-title"><?php echo esc_html__("Build Sitemaps for", _SQ_PLUGIN_NAME_); ?>:</h3>
|
99 |
+
<div class="col-12 text-left m-0 p-0">
|
100 |
<div class="card-title-description mb-2"><?php echo sprintf(esc_html__("Check the sitemap you want Squirrly to build for your website. Your sitemap will be %s", _SQ_PLUGIN_NAME_), '<a href="' . SQ_Classes_ObjController::getClass('SQ_Controllers_Sitemaps')->getXmlUrl('sitemap') . '" target="_blank"><strong>' . SQ_Classes_ObjController::getClass('SQ_Controllers_Sitemaps')->getXmlUrl('sitemap') . '</strong></a>'); ?></div>
|
101 |
<div class="card-title-description mb-0"><?php echo esc_html__("Verify your sitemaps after you activate them to have data. Uncheck them if they don't have URLs to avoid Google errors.", _SQ_PLUGIN_NAME_); ?></div>
|
102 |
</div>
|
103 |
</div>
|
104 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
105 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
106 |
+
<div class="col mb-1 ml-1">
|
107 |
+
<div class="checker col-12 row my-2 py-1">
|
108 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
109 |
<input type="checkbox" id="sq_sitemap_home" name="sitemap[sitemap-home]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-home'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
110 |
<label for="sq_sitemap_home" class="ml-2"><?php echo esc_html__("Home Page", _SQ_PLUGIN_NAME_); ?></label>
|
111 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for the home page.", _SQ_PLUGIN_NAME_); ?></div>
|
113 |
</div>
|
114 |
</div>
|
115 |
|
116 |
+
<div class="col mb-1 ml-1">
|
117 |
+
<div class="checker col-12 row my-2 py-1">
|
118 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
119 |
<input type="checkbox" id="sq_sitemap_news" name="sitemap[sitemap-news]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-news'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
120 |
<label for="sq_sitemap_news" class="ml-2"><?php echo esc_html__("Google News", _SQ_PLUGIN_NAME_); ?></label>
|
121 |
<div class="offset-2 small text-black-50"><?php echo sprintf(esc_html__("Only if you have a news website. Make sure you submit your website to %sGoogle News%s first.", _SQ_PLUGIN_NAME_), '<a href="https://partnerdash.google.com/partnerdash/d/news" target="_blank">', '</a>'); ?></div>
|
125 |
</div>
|
126 |
|
127 |
|
128 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
129 |
+
<div class="col mb-1 ml-1">
|
130 |
+
<div class="checker col-12 row my-2 py-1">
|
131 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
132 |
<input type="checkbox" id="sq_sitemap_post" name="sitemap[sitemap-post]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-post'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
133 |
<label for="sq_sitemap_post" class="ml-2"><?php echo esc_html__("Posts", _SQ_PLUGIN_NAME_); ?></label>
|
134 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your posts.", _SQ_PLUGIN_NAME_); ?></div>
|
136 |
</div>
|
137 |
</div>
|
138 |
|
139 |
+
<div class="col mb-1 ml-1">
|
140 |
+
<div class="checker col-12 row my-2 py-1">
|
141 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
142 |
<input type="checkbox" id="sq_sitemap_attachment" name="sitemap[sitemap-attachment]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-attachment'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
143 |
<label for="sq_sitemap_attachment" class="ml-2"><?php echo esc_html__("Attachments", _SQ_PLUGIN_NAME_); ?></label>
|
144 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Only recommended if you have a photography website.", _SQ_PLUGIN_NAME_); ?></div>
|
147 |
</div>
|
148 |
</div>
|
149 |
|
150 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
151 |
+
<div class="col mb-1 ml-1">
|
152 |
+
<div class="checker col-12 row my-2 py-1">
|
153 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
154 |
<input type="checkbox" id="sq_sitemap_category" name="sitemap[sitemap-category]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-category'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
155 |
<label for="sq_sitemap_category" class="ml-2"><?php echo esc_html__("Categories", _SQ_PLUGIN_NAME_); ?></label>
|
156 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your post categories.", _SQ_PLUGIN_NAME_); ?></div>
|
159 |
</div>
|
160 |
|
161 |
|
162 |
+
<div class="col mb-1 ml-1">
|
163 |
+
<div class="checker col-12 row my-2 py-1">
|
164 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
165 |
<input type="checkbox" id="sq_sitemap_post_tag" name="sitemap[sitemap-post_tag]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-post_tag'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
166 |
<label for="sq_sitemap_post_tag" class="ml-2"><?php echo esc_html__("Tags", _SQ_PLUGIN_NAME_); ?></label>
|
167 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your post tags.", _SQ_PLUGIN_NAME_); ?></div>
|
170 |
</div>
|
171 |
</div>
|
172 |
|
173 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
174 |
+
<div class="col mb-1 ml-1">
|
175 |
+
<div class="checker col-12 row my-2 py-1">
|
176 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
177 |
<input type="checkbox" id="sq_sitemap_page" name="sitemap[sitemap-page]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-page'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
178 |
<label for="sq_sitemap_page" class="ml-2"><?php echo esc_html__("Pages", _SQ_PLUGIN_NAME_); ?></label>
|
179 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your pages.", _SQ_PLUGIN_NAME_); ?></div>
|
181 |
</div>
|
182 |
</div>
|
183 |
|
184 |
+
<div class="col mb-1 ml-1">
|
185 |
+
<div class="checker col-12 row my-2 py-1">
|
186 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
187 |
<input type="checkbox" id="sq_sitemap_archive" name="sitemap[sitemap-archive]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-archive'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
188 |
<label for="sq_sitemap_archive" class="ml-2"><?php echo esc_html__("Archive", _SQ_PLUGIN_NAME_); ?></label>
|
189 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your archive links.", _SQ_PLUGIN_NAME_); ?></div>
|
192 |
</div>
|
193 |
</div>
|
194 |
|
195 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
196 |
+
<div class="col mb-1 ml-1">
|
197 |
+
<div class="checker col-12 row my-2 py-1">
|
198 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
199 |
<input type="checkbox" id="sq_sitemap_custom-tax" name="sitemap[sitemap-custom-tax]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-custom-tax'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
200 |
<label for="sq_sitemap_custom-tax" class="ml-2"><?php echo esc_html__("Custom Taxonomies", _SQ_PLUGIN_NAME_); ?></label>
|
201 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your custom post type categories and tags.", _SQ_PLUGIN_NAME_); ?></div>
|
203 |
</div>
|
204 |
</div>
|
205 |
|
206 |
+
<div class="col mb-1 ml-1">
|
207 |
+
<div class="checker col-12 row my-2 py-1">
|
208 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
209 |
<input type="checkbox" id="sq_sitemap_custom-post" name="sitemap[sitemap-custom-post]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-custom-post'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
210 |
<label for="sq_sitemap_custom-post" class="ml-2"><?php echo esc_html__("Custom Posts", _SQ_PLUGIN_NAME_); ?></label>
|
211 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your custom post types (other than WP posts and pages).", _SQ_PLUGIN_NAME_); ?></div>
|
215 |
</div>
|
216 |
|
217 |
<?php if (SQ_Classes_Helpers_Tools::isEcommerce()) { //check for ecommerce product ?>
|
218 |
+
<div class="row mt-3 col-12 border-bottom border-light">
|
219 |
+
<div class="col mb-1 ml-1">
|
220 |
+
<div class="checker col-12 row my-2 py-1">
|
221 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
222 |
<input type="checkbox" id="sq_sitemap_product" name="sitemap[sitemap-product]" class="sq-switch" value="1" <?php echo(($sitemap['sitemap-product'][1] == 1) ? 'checked="checked"' : ''); ?> />
|
223 |
<label for="sq_sitemap_product" class="ml-2"><?php echo esc_html__("Products", _SQ_PLUGIN_NAME_); ?></label>
|
224 |
<div class="offset-2 small text-black-50"><?php echo esc_html__("Build the sitemap for your e-commerce products.", _SQ_PLUGIN_NAME_); ?></div>
|
225 |
</div>
|
226 |
</div>
|
227 |
</div>
|
228 |
+
<div class="col mb-1 ml-1">
|
229 |
+
<div class="checker col-12 row my-2 py-1">
|
230 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
231 |
</div>
|
232 |
</div>
|
233 |
</div>
|
235 |
<?php } ?>
|
236 |
</div>
|
237 |
|
238 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
239 |
+
<div class="col-12 row mb-1 ml-1">
|
240 |
+
<div class="checker col-12 row my-2 py-1">
|
241 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
242 |
<input type="hidden" name="sq_sitemap_show[images]" value="0"/>
|
243 |
<input type="checkbox" id="sq_sitemap_show_images" name="sq_sitemap_show[images]" class="sq-switch" <?php echo(($sitemapshow['images']) ? 'checked="checked"' : ''); ?> value="1"/>
|
244 |
<label for="sq_sitemap_show_images" class="ml-2"><?php echo esc_html__("Include Images in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
247 |
</div>
|
248 |
</div>
|
249 |
|
250 |
+
<div class="col-12 row mb-1 ml-1">
|
251 |
+
<div class="checker col-12 row my-2 py-1">
|
252 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
253 |
<input type="hidden" name="sq_sitemap_show[videos]" value="0"/>
|
254 |
<input type="checkbox" id="sq_sitemap_show_video" name="sq_sitemap_show[videos]" class="sq-switch" <?php echo(($sitemapshow['videos']) ? 'checked="checked"' : ''); ?> value="1"/>
|
255 |
<label for="sq_sitemap_show_video" class="ml-2"><?php echo esc_html__("Include Videos in Sitemap", _SQ_PLUGIN_NAME_); ?></label>
|
261 |
|
262 |
</div>
|
263 |
|
264 |
+
<div class="col-12 py-4 border-bottom tab-panel sq_advanced">
|
265 |
|
266 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
267 |
+
<div class="col-4 p-1">
|
268 |
<div class="font-weight-bold"><?php echo esc_html__("Sitemap Pagination", _SQ_PLUGIN_NAME_); ?>:</div>
|
269 |
<div class="small text-black-50"><?php echo esc_html__("How many Posts per page to show in sitemap?", _SQ_PLUGIN_NAME_); ?></div>
|
270 |
</div>
|
271 |
+
<div class="col-5 p-0 input-group">
|
272 |
<select name="sq_sitemap_perpage" class="form-control bg-input mb-1">
|
273 |
<option value="10" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_perpage') == '10') ? 'selected="selected"' : ''); ?>>10</option>
|
274 |
<option value="50" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_sitemap_perpage') == '50') ? 'selected="selected"' : ''); ?>>50</option>
|
281 |
</div>
|
282 |
|
283 |
|
284 |
+
<div class="col-12 row mb-1 ml-1">
|
285 |
+
<div class="checker col-12 row my-2 py-1">
|
286 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
287 |
<input type="hidden" name="sq_url_fix" value="0"/>
|
288 |
<input type="checkbox" id="sq_url_fix" name="sq_url_fix" class="sq-switch" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_url_fix')) ? 'checked="checked"' : ''); ?> value="1"/>
|
289 |
<label for="sq_url_fix" class="ml-2"><?php echo esc_html__("Fix Relative URLs", _SQ_PLUGIN_NAME_); ?></label>
|
301 |
|
302 |
</div>
|
303 |
|
304 |
+
<div class="col-12 my-3 p-0">
|
305 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
306 |
<div class="py-0 float-right text-right m-2">
|
307 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
315 |
</form>
|
316 |
</div>
|
317 |
<div class="sq_col_side sticky">
|
318 |
+
<div class="card col-12 p-0">
|
319 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
320 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
321 |
</div>
|
view/SeoSettings/Social.php
CHANGED
@@ -4,23 +4,23 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_social', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_social"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_social_icon m-2"></div>
|
26 |
</div>
|
@@ -29,19 +29,19 @@
|
|
29 |
|
30 |
</div>
|
31 |
|
32 |
-
<div id="sq_seosettings" class="card col-
|
33 |
|
34 |
<div class="card-body p-0">
|
35 |
-
<div class="col-
|
36 |
-
<div class="card col-
|
37 |
<?php
|
38 |
$socials = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('socials')));
|
39 |
?>
|
40 |
|
41 |
-
<div class="col-
|
42 |
-
<div class="col-
|
43 |
-
<div class="checker col-
|
44 |
-
<div class="col-
|
45 |
<input type="hidden" name="sq_auto_facebook" value="0"/>
|
46 |
<input type="checkbox" id="sq_auto_facebook" name="sq_auto_facebook" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_facebook') ? 'checked="checked"' : '') ?> value="1"/>
|
47 |
<label for="sq_auto_facebook" class="ml-2"><?php echo esc_html__("Activate Open Graph", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -51,14 +51,14 @@
|
|
51 |
</div>
|
52 |
</div>
|
53 |
</div>
|
54 |
-
<div class="col-
|
55 |
|
56 |
-
<div class="col-
|
57 |
-
<div class="col-
|
58 |
<div class="font-weight-bold"><?php echo esc_html__("Facebook Share Language", _SQ_PLUGIN_NAME_); ?>:</div>
|
59 |
<div class="small text-black-50"><?php echo esc_html__("Use this so that Facebook can automatically translate the text into the reader's language", _SQ_PLUGIN_NAME_); ?></div>
|
60 |
</div>
|
61 |
-
<div class="col-
|
62 |
<select name="sq_og_locale" class="form-control bg-input mb-1">
|
63 |
<option value="en_US">English (US)</option>
|
64 |
<option value="af_ZA">Afrikaans</option>
|
@@ -203,12 +203,12 @@
|
|
203 |
</div>
|
204 |
</div>
|
205 |
|
206 |
-
<div class="col-
|
207 |
-
<div class="col-
|
208 |
<?php echo esc_html__("Facebook App ID", _SQ_PLUGIN_NAME_); ?>:
|
209 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the %sFacebook App ID%s to create a connection between your Facebook Page and your Website.", _SQ_PLUGIN_NAME_), '<a href="https://developers.facebook.com/apps/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
210 |
</div>
|
211 |
-
<div class="col-
|
212 |
<input type="text" class="form-control bg-input" name="socials[fbadminapp]" value="<?php echo(($socials->fbadminapp <> '') ? esc_attr($socials->fbadminapp) : '') ?>"/>
|
213 |
</div>
|
214 |
</div>
|
@@ -218,53 +218,53 @@
|
|
218 |
foreach ($socials->fb_admins as $id => $values) {
|
219 |
if ($id > 0 && !isset($values->id) && !$values) continue;
|
220 |
?>
|
221 |
-
<div class="col-
|
222 |
<?php if ($id > 0) { ?>
|
223 |
<button type="button" class="close" aria-label="Close" onclick="jQuery(this).parent().remove();" style="position: absolute; float: right;right: 10px;top: 15px;left: auto;">
|
224 |
<span aria-hidden="true">×</span>
|
225 |
</button>
|
226 |
<?php } ?>
|
227 |
-
<div class="col-
|
228 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
229 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Similar to Facebook App ID, Facebook Admin ID connects your Facebook Page to your Website.", _SQ_PLUGIN_NAME_); ?></div>
|
230 |
</div>
|
231 |
-
<div class="col-
|
232 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value="<?php echo(isset($values->id) ? esc_attr($values->id) : esc_attr($values)) ?>"/>
|
233 |
</div>
|
234 |
</div>
|
235 |
<?php }
|
236 |
} else {
|
237 |
?>
|
238 |
-
<div class="col-
|
239 |
-
<div class="col-
|
240 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
241 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Similar to Facebook App ID, Facebook Admin ID connects your Facebook Page to your Website.", _SQ_PLUGIN_NAME_); ?></div>
|
242 |
</div>
|
243 |
-
<div class="col-
|
244 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value=""/>
|
245 |
</div>
|
246 |
</div>
|
247 |
<?php } ?>
|
248 |
-
<div class="col-
|
249 |
<button type="button" class="close" aria-label="Close" onclick="jQuery(this).parent().remove();" style="position: absolute; float: right;right: 10px;top: 15px;left: auto;">
|
250 |
<span aria-hidden="true">×</span>
|
251 |
</button>
|
252 |
-
<div class="col-
|
253 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
254 |
</div>
|
255 |
-
<div class="col-
|
256 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value=""/>
|
257 |
</div>
|
258 |
</div>
|
259 |
-
<div class="col-
|
260 |
<button type="button" class="btn rounded-0 btn-default btn-sm p-2 m-0 m-0" onclick="var $clone = jQuery('.sq_fb_admins:last').clone(); jQuery('.sq_fb_admins:last').before($clone); $clone.show();"><?php echo esc_html__("Add multiple Facebook Admin IDs", _SQ_PLUGIN_NAME_); ?></button>
|
261 |
</div>
|
262 |
</div>
|
263 |
|
264 |
-
<div class="col-
|
265 |
-
<div class="col-
|
266 |
-
<div class="checker col-
|
267 |
-
<div class="col-
|
268 |
<input type="hidden" name="sq_auto_twitter" value="0"/>
|
269 |
<input type="checkbox" id="sq_auto_twitter" name="sq_auto_twitter" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_twitter') ? 'checked="checked"' : '') ?> value="1"/>
|
270 |
<label for="sq_auto_twitter" class="ml-2"><?php echo esc_html__("Activate Twitter Card", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -274,9 +274,9 @@
|
|
274 |
</div>
|
275 |
</div>
|
276 |
|
277 |
-
<div class="col-
|
278 |
-
<div class="checker col-
|
279 |
-
<div class="col-
|
280 |
<input type="hidden" name="socials[twitter_card_type]" value="summary"/>
|
281 |
<input type="checkbox" id="twitter_card_type" name="socials[twitter_card_type]" class="sq-switch" <?php echo($socials->twitter_card_type == 'summary_large_image' ? 'checked="checked"' : '') ?> value="summary_large_image"/>
|
282 |
<label for="twitter_card_type" class="ml-2"><?php echo esc_html__("Share Large Images", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -290,69 +290,69 @@
|
|
290 |
|
291 |
<div class="bg-title p-2">
|
292 |
<h3 class="card-title"><?php echo esc_html__("Social Media Accounts", _SQ_PLUGIN_NAME_); ?>:</h3>
|
293 |
-
<div class="col-
|
294 |
<div class="card-title-description mb-0"><?php echo esc_html__("Add your Social Media account for JSON-LD Structured data, Open Graph, and Twitter Card.", _SQ_PLUGIN_NAME_); ?></div>
|
295 |
</div>
|
296 |
</div>
|
297 |
-
<div class="col-
|
298 |
-
<div class="col-
|
299 |
-
<div class="col-
|
300 |
<?php echo esc_html__("Twitter Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
301 |
<div class="small text-black-50 my-1"><?php echo "https://twitter.com/XXXXXXXX"; ?></div>
|
302 |
<div class="small text-danger my-1"><?php echo esc_html__("Required for Twitter Card Validator", _SQ_PLUGIN_NAME_); ?></div>
|
303 |
</div>
|
304 |
-
<div class="col-
|
305 |
<input type="text" class="form-control bg-input" name="socials[twitter_site]" value="<?php echo((isset($socials->twitter_site)) ? esc_attr($socials->twitter_site) : '') ?>"/>
|
306 |
</div>
|
307 |
</div>
|
308 |
|
309 |
-
<div class="col-
|
310 |
-
<div class="col-
|
311 |
<?php echo esc_html__("Facebook Profile or Page URL", _SQ_PLUGIN_NAME_); ?>:
|
312 |
<div class="small text-black-50 my-1"><?php echo "https://facebook.com/XXXXXXXX"; ?></div>
|
313 |
</div>
|
314 |
-
<div class="col-
|
315 |
<input type="text" class="form-control bg-input" name="socials[facebook_site]" value="<?php echo((isset($socials->facebook_site)) ? esc_attr($socials->facebook_site) : '') ?>"/>
|
316 |
</div>
|
317 |
</div>
|
318 |
|
319 |
|
320 |
-
<div class="col-
|
321 |
-
<div class="col-
|
322 |
<?php echo esc_html__("Linkedin Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
323 |
<div class="small text-black-50 my-1"><?php echo "https://linkedin.com/XXXXXXXX"; ?></div>
|
324 |
</div>
|
325 |
-
<div class="col-
|
326 |
<input type="text" class="form-control bg-input" name="socials[linkedin_url]" value="<?php echo((isset($socials->linkedin_url)) ? esc_attr($socials->linkedin_url) : '') ?>"/>
|
327 |
</div>
|
328 |
</div>
|
329 |
|
330 |
-
<div class="col-
|
331 |
-
<div class="col-
|
332 |
<?php echo esc_html__("Pinterest Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
333 |
<div class="small text-black-50 my-1"><?php echo "https://pinterest.com/XXXXXXXX"; ?></div>
|
334 |
</div>
|
335 |
-
<div class="col-
|
336 |
<input type="text" class="form-control bg-input" name="socials[pinterest_url]" value="<?php echo((isset($socials->pinterest_url)) ? esc_attr($socials->pinterest_url) : '') ?>"/>
|
337 |
</div>
|
338 |
</div>
|
339 |
|
340 |
-
<div class="col-
|
341 |
-
<div class="col-
|
342 |
<?php echo esc_html__("Instagram Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
343 |
<div class="small text-black-50 my-1"><?php echo "https://instagram.com/XXXXXXXX"; ?></div>
|
344 |
</div>
|
345 |
-
<div class="col-
|
346 |
<input type="text" class="form-control bg-input" name="socials[instagram_url]" value="<?php echo((isset($socials->instagram_url)) ? esc_attr($socials->instagram_url) : '') ?>"/>
|
347 |
</div>
|
348 |
</div>
|
349 |
|
350 |
-
<div class="col-
|
351 |
-
<div class="col-
|
352 |
<?php echo esc_html__("Youtube Channel URL", _SQ_PLUGIN_NAME_); ?>:
|
353 |
<div class="small text-black-50 my-1"><?php echo "https://youtube.com/channel/XXXXXXXX"; ?></div>
|
354 |
</div>
|
355 |
-
<div class="col-
|
356 |
<input type="text" class="form-control bg-input" name="socials[youtube_url]" value="<?php echo((isset($socials->youtube_url)) ? esc_attr($socials->youtube_url) : '') ?>"/>
|
357 |
</div>
|
358 |
</div>
|
@@ -366,7 +366,7 @@
|
|
366 |
|
367 |
</div>
|
368 |
|
369 |
-
<div class="col-
|
370 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
371 |
<div class="py-0 float-right text-right m-2">
|
372 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
@@ -380,7 +380,7 @@
|
|
380 |
</form>
|
381 |
</div>
|
382 |
<div class="sq_col_side sticky">
|
383 |
-
<div class="card col-
|
384 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
385 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
386 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_social', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_social"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_social_icon m-2"></div>
|
26 |
</div>
|
29 |
|
30 |
</div>
|
31 |
|
32 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_social') ? '' : 'sq_deactivated') ?>">
|
33 |
|
34 |
<div class="card-body p-0">
|
35 |
+
<div class="col-12 m-0 p-0">
|
36 |
+
<div class="card col-12 p-0 border-0 ">
|
37 |
<?php
|
38 |
$socials = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('socials')));
|
39 |
?>
|
40 |
|
41 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
42 |
+
<div class="col-12 row mb-1 ml-1">
|
43 |
+
<div class="checker col-12 row my-2 py-1">
|
44 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
45 |
<input type="hidden" name="sq_auto_facebook" value="0"/>
|
46 |
<input type="checkbox" id="sq_auto_facebook" name="sq_auto_facebook" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_facebook') ? 'checked="checked"' : '') ?> value="1"/>
|
47 |
<label for="sq_auto_facebook" class="ml-2"><?php echo esc_html__("Activate Open Graph", _SQ_PLUGIN_NAME_); ?></label>
|
51 |
</div>
|
52 |
</div>
|
53 |
</div>
|
54 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
55 |
|
56 |
+
<div class="col-12 row py-2 mx-0 my-3 ">
|
57 |
+
<div class="col-4 p-1 pr-3">
|
58 |
<div class="font-weight-bold"><?php echo esc_html__("Facebook Share Language", _SQ_PLUGIN_NAME_); ?>:</div>
|
59 |
<div class="small text-black-50"><?php echo esc_html__("Use this so that Facebook can automatically translate the text into the reader's language", _SQ_PLUGIN_NAME_); ?></div>
|
60 |
</div>
|
61 |
+
<div class="col-8 p-0 input-group">
|
62 |
<select name="sq_og_locale" class="form-control bg-input mb-1">
|
63 |
<option value="en_US">English (US)</option>
|
64 |
<option value="af_ZA">Afrikaans</option>
|
203 |
</div>
|
204 |
</div>
|
205 |
|
206 |
+
<div class="col-12 row py-2 mx-0 my-3 ">
|
207 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
208 |
<?php echo esc_html__("Facebook App ID", _SQ_PLUGIN_NAME_); ?>:
|
209 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the %sFacebook App ID%s to create a connection between your Facebook Page and your Website.", _SQ_PLUGIN_NAME_), '<a href="https://developers.facebook.com/apps/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
210 |
</div>
|
211 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
212 |
<input type="text" class="form-control bg-input" name="socials[fbadminapp]" value="<?php echo(($socials->fbadminapp <> '') ? esc_attr($socials->fbadminapp) : '') ?>"/>
|
213 |
</div>
|
214 |
</div>
|
218 |
foreach ($socials->fb_admins as $id => $values) {
|
219 |
if ($id > 0 && !isset($values->id) && !$values) continue;
|
220 |
?>
|
221 |
+
<div class="col-12 row py-2 mx-0 my-3 ">
|
222 |
<?php if ($id > 0) { ?>
|
223 |
<button type="button" class="close" aria-label="Close" onclick="jQuery(this).parent().remove();" style="position: absolute; float: right;right: 10px;top: 15px;left: auto;">
|
224 |
<span aria-hidden="true">×</span>
|
225 |
</button>
|
226 |
<?php } ?>
|
227 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
228 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
229 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Similar to Facebook App ID, Facebook Admin ID connects your Facebook Page to your Website.", _SQ_PLUGIN_NAME_); ?></div>
|
230 |
</div>
|
231 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
232 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value="<?php echo(isset($values->id) ? esc_attr($values->id) : esc_attr($values)) ?>"/>
|
233 |
</div>
|
234 |
</div>
|
235 |
<?php }
|
236 |
} else {
|
237 |
?>
|
238 |
+
<div class="col-12 row py-2 mx-0 my-3 ">
|
239 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
240 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
241 |
<div class="small text-black-50 my-1"><?php echo esc_html__("Similar to Facebook App ID, Facebook Admin ID connects your Facebook Page to your Website.", _SQ_PLUGIN_NAME_); ?></div>
|
242 |
</div>
|
243 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
244 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value=""/>
|
245 |
</div>
|
246 |
</div>
|
247 |
<?php } ?>
|
248 |
+
<div class="col-12 row py-2 mx-0 my-3 sq_fb_admins" style="display: none">
|
249 |
<button type="button" class="close" aria-label="Close" onclick="jQuery(this).parent().remove();" style="position: absolute; float: right;right: 10px;top: 15px;left: auto;">
|
250 |
<span aria-hidden="true">×</span>
|
251 |
</button>
|
252 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
253 |
<?php echo esc_html__("Facebook Admin ID", _SQ_PLUGIN_NAME_); ?>:
|
254 |
</div>
|
255 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
256 |
<input type="text" class="form-control bg-input" name="socials[fb_admins][]" value=""/>
|
257 |
</div>
|
258 |
</div>
|
259 |
+
<div class="col-12 py-0 text-center">
|
260 |
<button type="button" class="btn rounded-0 btn-default btn-sm p-2 m-0 m-0" onclick="var $clone = jQuery('.sq_fb_admins:last').clone(); jQuery('.sq_fb_admins:last').before($clone); $clone.show();"><?php echo esc_html__("Add multiple Facebook Admin IDs", _SQ_PLUGIN_NAME_); ?></button>
|
261 |
</div>
|
262 |
</div>
|
263 |
|
264 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
265 |
+
<div class="col-12 row mb-1 ml-1">
|
266 |
+
<div class="checker col-12 row my-2 py-1">
|
267 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
268 |
<input type="hidden" name="sq_auto_twitter" value="0"/>
|
269 |
<input type="checkbox" id="sq_auto_twitter" name="sq_auto_twitter" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_twitter') ? 'checked="checked"' : '') ?> value="1"/>
|
270 |
<label for="sq_auto_twitter" class="ml-2"><?php echo esc_html__("Activate Twitter Card", _SQ_PLUGIN_NAME_); ?></label>
|
274 |
</div>
|
275 |
</div>
|
276 |
|
277 |
+
<div class="col-12 row mb-1 ml-1">
|
278 |
+
<div class="checker col-12 row my-2 py-1">
|
279 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
280 |
<input type="hidden" name="socials[twitter_card_type]" value="summary"/>
|
281 |
<input type="checkbox" id="twitter_card_type" name="socials[twitter_card_type]" class="sq-switch" <?php echo($socials->twitter_card_type == 'summary_large_image' ? 'checked="checked"' : '') ?> value="summary_large_image"/>
|
282 |
<label for="twitter_card_type" class="ml-2"><?php echo esc_html__("Share Large Images", _SQ_PLUGIN_NAME_); ?></label>
|
290 |
|
291 |
<div class="bg-title p-2">
|
292 |
<h3 class="card-title"><?php echo esc_html__("Social Media Accounts", _SQ_PLUGIN_NAME_); ?>:</h3>
|
293 |
+
<div class="col-12 text-left m-0 p-0">
|
294 |
<div class="card-title-description mb-0"><?php echo esc_html__("Add your Social Media account for JSON-LD Structured data, Open Graph, and Twitter Card.", _SQ_PLUGIN_NAME_); ?></div>
|
295 |
</div>
|
296 |
</div>
|
297 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
298 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
299 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
300 |
<?php echo esc_html__("Twitter Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
301 |
<div class="small text-black-50 my-1"><?php echo "https://twitter.com/XXXXXXXX"; ?></div>
|
302 |
<div class="small text-danger my-1"><?php echo esc_html__("Required for Twitter Card Validator", _SQ_PLUGIN_NAME_); ?></div>
|
303 |
</div>
|
304 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
305 |
<input type="text" class="form-control bg-input" name="socials[twitter_site]" value="<?php echo((isset($socials->twitter_site)) ? esc_attr($socials->twitter_site) : '') ?>"/>
|
306 |
</div>
|
307 |
</div>
|
308 |
|
309 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
310 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
311 |
<?php echo esc_html__("Facebook Profile or Page URL", _SQ_PLUGIN_NAME_); ?>:
|
312 |
<div class="small text-black-50 my-1"><?php echo "https://facebook.com/XXXXXXXX"; ?></div>
|
313 |
</div>
|
314 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
315 |
<input type="text" class="form-control bg-input" name="socials[facebook_site]" value="<?php echo((isset($socials->facebook_site)) ? esc_attr($socials->facebook_site) : '') ?>"/>
|
316 |
</div>
|
317 |
</div>
|
318 |
|
319 |
|
320 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
321 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
322 |
<?php echo esc_html__("Linkedin Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
323 |
<div class="small text-black-50 my-1"><?php echo "https://linkedin.com/XXXXXXXX"; ?></div>
|
324 |
</div>
|
325 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
326 |
<input type="text" class="form-control bg-input" name="socials[linkedin_url]" value="<?php echo((isset($socials->linkedin_url)) ? esc_attr($socials->linkedin_url) : '') ?>"/>
|
327 |
</div>
|
328 |
</div>
|
329 |
|
330 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
331 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
332 |
<?php echo esc_html__("Pinterest Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
333 |
<div class="small text-black-50 my-1"><?php echo "https://pinterest.com/XXXXXXXX"; ?></div>
|
334 |
</div>
|
335 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
336 |
<input type="text" class="form-control bg-input" name="socials[pinterest_url]" value="<?php echo((isset($socials->pinterest_url)) ? esc_attr($socials->pinterest_url) : '') ?>"/>
|
337 |
</div>
|
338 |
</div>
|
339 |
|
340 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
341 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
342 |
<?php echo esc_html__("Instagram Profile URL", _SQ_PLUGIN_NAME_); ?>:
|
343 |
<div class="small text-black-50 my-1"><?php echo "https://instagram.com/XXXXXXXX"; ?></div>
|
344 |
</div>
|
345 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
346 |
<input type="text" class="form-control bg-input" name="socials[instagram_url]" value="<?php echo((isset($socials->instagram_url)) ? esc_attr($socials->instagram_url) : '') ?>"/>
|
347 |
</div>
|
348 |
</div>
|
349 |
|
350 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
351 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
352 |
<?php echo esc_html__("Youtube Channel URL", _SQ_PLUGIN_NAME_); ?>:
|
353 |
<div class="small text-black-50 my-1"><?php echo "https://youtube.com/channel/XXXXXXXX"; ?></div>
|
354 |
</div>
|
355 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
356 |
<input type="text" class="form-control bg-input" name="socials[youtube_url]" value="<?php echo((isset($socials->youtube_url)) ? esc_attr($socials->youtube_url) : '') ?>"/>
|
357 |
</div>
|
358 |
</div>
|
366 |
|
367 |
</div>
|
368 |
|
369 |
+
<div class="col-12 my-3 p-0">
|
370 |
<?php if (!SQ_Classes_Helpers_Tools::getOption('sq_seoexpert')) { ?>
|
371 |
<div class="py-0 float-right text-right m-2">
|
372 |
<button type="button" class="show_advanced btn rounded-0 btn-link text-black-50 btn-sm p-0 pr-2 m-0"><?php echo esc_html__("Show Advanced Options", _SQ_PLUGIN_NAME_); ?></button>
|
380 |
</form>
|
381 |
</div>
|
382 |
<div class="sq_col_side sticky">
|
383 |
+
<div class="card col-12 p-0">
|
384 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
385 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
386 |
</div>
|
view/SeoSettings/Tracking.php
CHANGED
@@ -4,31 +4,31 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_tracking', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_tracking"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_traffic_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("Tracking Tools", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
-
<div class="col-
|
30 |
-
<div class="checker
|
31 |
-
<div class="
|
32 |
<label for="sq_auto_tracking" class="mr-2"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></label>
|
33 |
<input type="hidden" name="sq_auto_tracking" value="0"/>
|
34 |
<input type="checkbox" id="sq_auto_tracking" name="sq_auto_tracking" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking') ? 'checked="checked"' : '') ?> value="1"/>
|
@@ -39,24 +39,24 @@
|
|
39 |
|
40 |
</div>
|
41 |
|
42 |
-
<div id="sq_seosettings" class="card col-
|
43 |
|
44 |
<div class="card-body p-0">
|
45 |
-
<div class="col-
|
46 |
-
<div class="card col-
|
47 |
<?php
|
48 |
$codes = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('codes')));
|
49 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
50 |
?>
|
51 |
|
52 |
-
<div class="col-
|
53 |
|
54 |
-
<div class="col-
|
55 |
-
<div class="col-
|
56 |
<?php echo esc_html__("Google Analytics ID", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Squirrly adds the Google Tracking script for your Analytics ID. %sGet the Analytics ID%s", _SQ_PLUGIN_NAME_), '<a href="https://analytics.google.com/analytics/web/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
58 |
</div>
|
59 |
-
<div class="col-
|
60 |
<input id="google_analytics" type="text" class="form-control bg-input" name="codes[google_analytics]" value="<?php echo((isset($codes->google_analytics)) ? esc_attr($codes->google_analytics) : '') ?>" placeholder="UA-XXXX or G-XXXX"/>
|
61 |
<?php if (!$connect->google_analytics) { ?>
|
62 |
<div class="sq_step1 my-0 mx-2">
|
@@ -79,32 +79,32 @@
|
|
79 |
</div>
|
80 |
</div>
|
81 |
|
82 |
-
<div class="col-
|
83 |
-
<div class="col-
|
84 |
<?php echo esc_html__("Google Tracking Mode", _SQ_PLUGIN_NAME_); ?>:
|
85 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Choose gtag.js if you use %sGoogle Tag Manager%s or the %sGoogle Analytics 4%s. Otherwise select analytics.js to track the website traffic.", _SQ_PLUGIN_NAME_), '<a href="https://tagmanager.google.com/" target="_blank"><strong>', '</strong></a>', '<a href="https://support.google.com/analytics/answer/10089681" target="_blank"><strong>', '</strong></a>'); ?></div>
|
86 |
</div>
|
87 |
-
<div class="col-
|
88 |
<select name="sq_analytics_google_js" class="form-control bg-input mb-1">
|
89 |
<option value="analytics" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_analytics_google_js') == 'analytics') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("analytics.js", _SQ_PLUGIN_NAME_); ?></option>
|
90 |
<option value="gtag" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_analytics_google_js') == 'gtag') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("gtag.js", _SQ_PLUGIN_NAME_); ?></option>
|
91 |
</select>
|
92 |
</div>
|
93 |
|
94 |
-
<div class="col-
|
95 |
<h6><?php echo sprintf(esc_html__("Need Help Connecting Google Analytics? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/how-do-i-connect-google-analytics-both-tracking-code-and-the-api-connection/" target="_blank">','</a>') ?></h6>
|
96 |
</div>
|
97 |
</div>
|
98 |
</div>
|
99 |
|
100 |
-
<div class="col-
|
101 |
|
102 |
-
<div class="col-
|
103 |
-
<div class="col-
|
104 |
<?php echo esc_html__("Facebook Pixel", _SQ_PLUGIN_NAME_); ?>:
|
105 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Use FB Pixel to track the visitors events and to use Facebook Ads more efficient. %sLearn More%s", _SQ_PLUGIN_NAME_), '<a href="https://www.facebook.com/business/learn/facebook-ads-pixel" target="_blank"><strong>', '</strong></a>'); ?></div>
|
106 |
</div>
|
107 |
-
<div class="col-
|
108 |
<input type="text" class="form-control bg-input" name="codes[facebook_pixel]" value="<?php echo((isset($codes->facebook_pixel)) ? esc_attr($codes->facebook_pixel) : '') ?>" />
|
109 |
</div>
|
110 |
</div>
|
@@ -112,10 +112,10 @@
|
|
112 |
</div>
|
113 |
|
114 |
|
115 |
-
<div class="col-
|
116 |
-
<div class="col-
|
117 |
-
<div class="checker col-
|
118 |
-
<div class="col-
|
119 |
<input type="hidden" name="sq_auto_amp" value="0"/>
|
120 |
<input type="checkbox" id="sq_auto_amp" name="sq_auto_amp" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_amp') ? 'checked="checked"' : '') ?> value="1"/>
|
121 |
<label for="sq_auto_amp" class="ml-2"><?php echo esc_html__("Load Trackings as AMP", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -125,9 +125,9 @@
|
|
125 |
</div>
|
126 |
</div>
|
127 |
|
128 |
-
<div class="col-
|
129 |
-
<div class="checker col-
|
130 |
-
<div class="col-
|
131 |
<input type="hidden" name="sq_tracking_logged_users" value="0"/>
|
132 |
<input type="checkbox" id="sq_tracking_logged_users" name="sq_tracking_logged_users" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_tracking_logged_users') ? 'checked="checked"' : '') ?> value="1"/>
|
133 |
<label for="sq_tracking_logged_users" class="ml-2"><?php echo esc_html__("Load Tracking for Logged Users", _SQ_PLUGIN_NAME_); ?></label>
|
@@ -143,7 +143,7 @@
|
|
143 |
|
144 |
</div>
|
145 |
|
146 |
-
<div class="col-
|
147 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
148 |
</div>
|
149 |
|
@@ -151,7 +151,7 @@
|
|
151 |
</form>
|
152 |
</div>
|
153 |
<div class="sq_col_side sticky">
|
154 |
-
<div class="card col-
|
155 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
156 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
157 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_tracking', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_tracking"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_traffic_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("Tracking Tools", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
+
<div class="col-5 text-right">
|
30 |
+
<div class="checker row my-4 py-2 mx-0 px-0 justify-content-end">
|
31 |
+
<div class="sq-switch redgreen sq-switch-sm ">
|
32 |
<label for="sq_auto_tracking" class="mr-2"><?php echo esc_html__("Activate Trackers", _SQ_PLUGIN_NAME_); ?></label>
|
33 |
<input type="hidden" name="sq_auto_tracking" value="0"/>
|
34 |
<input type="checkbox" id="sq_auto_tracking" name="sq_auto_tracking" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking') ? 'checked="checked"' : '') ?> value="1"/>
|
39 |
|
40 |
</div>
|
41 |
|
42 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_tracking') ? '' : 'sq_deactivated') ?>">
|
43 |
|
44 |
<div class="card-body p-0">
|
45 |
+
<div class="col-12 m-0 p-0">
|
46 |
+
<div class="card col-12 p-0 border-0 ">
|
47 |
<?php
|
48 |
$codes = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('codes')));
|
49 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
50 |
?>
|
51 |
|
52 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
53 |
|
54 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
55 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
56 |
<?php echo esc_html__("Google Analytics ID", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Squirrly adds the Google Tracking script for your Analytics ID. %sGet the Analytics ID%s", _SQ_PLUGIN_NAME_), '<a href="https://analytics.google.com/analytics/web/" target="_blank"><strong>', '</strong></a>'); ?></div>
|
58 |
</div>
|
59 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
60 |
<input id="google_analytics" type="text" class="form-control bg-input" name="codes[google_analytics]" value="<?php echo((isset($codes->google_analytics)) ? esc_attr($codes->google_analytics) : '') ?>" placeholder="UA-XXXX or G-XXXX"/>
|
61 |
<?php if (!$connect->google_analytics) { ?>
|
62 |
<div class="sq_step1 my-0 mx-2">
|
79 |
</div>
|
80 |
</div>
|
81 |
|
82 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
83 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
84 |
<?php echo esc_html__("Google Tracking Mode", _SQ_PLUGIN_NAME_); ?>:
|
85 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Choose gtag.js if you use %sGoogle Tag Manager%s or the %sGoogle Analytics 4%s. Otherwise select analytics.js to track the website traffic.", _SQ_PLUGIN_NAME_), '<a href="https://tagmanager.google.com/" target="_blank"><strong>', '</strong></a>', '<a href="https://support.google.com/analytics/answer/10089681" target="_blank"><strong>', '</strong></a>'); ?></div>
|
86 |
</div>
|
87 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
88 |
<select name="sq_analytics_google_js" class="form-control bg-input mb-1">
|
89 |
<option value="analytics" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_analytics_google_js') == 'analytics') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("analytics.js", _SQ_PLUGIN_NAME_); ?></option>
|
90 |
<option value="gtag" <?php echo((SQ_Classes_Helpers_Tools::getOption('sq_analytics_google_js') == 'gtag') ? 'selected="selected"' : ''); ?>><?php echo esc_html__("gtag.js", _SQ_PLUGIN_NAME_); ?></option>
|
91 |
</select>
|
92 |
</div>
|
93 |
|
94 |
+
<div class="col-12 text-center pt-3 my-0">
|
95 |
<h6><?php echo sprintf(esc_html__("Need Help Connecting Google Analytics? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/how-do-i-connect-google-analytics-both-tracking-code-and-the-api-connection/" target="_blank">','</a>') ?></h6>
|
96 |
</div>
|
97 |
</div>
|
98 |
</div>
|
99 |
|
100 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
101 |
|
102 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
103 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
104 |
<?php echo esc_html__("Facebook Pixel", _SQ_PLUGIN_NAME_); ?>:
|
105 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Use FB Pixel to track the visitors events and to use Facebook Ads more efficient. %sLearn More%s", _SQ_PLUGIN_NAME_), '<a href="https://www.facebook.com/business/learn/facebook-ads-pixel" target="_blank"><strong>', '</strong></a>'); ?></div>
|
106 |
</div>
|
107 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
108 |
<input type="text" class="form-control bg-input" name="codes[facebook_pixel]" value="<?php echo((isset($codes->facebook_pixel)) ? esc_attr($codes->facebook_pixel) : '') ?>" />
|
109 |
</div>
|
110 |
</div>
|
112 |
</div>
|
113 |
|
114 |
|
115 |
+
<div class="col-12 py-4 border-bottom tab-panel">
|
116 |
+
<div class="col-12 row mb-1 ml-1">
|
117 |
+
<div class="checker col-12 row my-2 py-1">
|
118 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm grayred">
|
119 |
<input type="hidden" name="sq_auto_amp" value="0"/>
|
120 |
<input type="checkbox" id="sq_auto_amp" name="sq_auto_amp" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_amp') ? 'checked="checked"' : '') ?> value="1"/>
|
121 |
<label for="sq_auto_amp" class="ml-2"><?php echo esc_html__("Load Trackings as AMP", _SQ_PLUGIN_NAME_); ?></label>
|
125 |
</div>
|
126 |
</div>
|
127 |
|
128 |
+
<div class="col-12 row mb-1 ml-1">
|
129 |
+
<div class="checker col-12 row my-2 py-1">
|
130 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
131 |
<input type="hidden" name="sq_tracking_logged_users" value="0"/>
|
132 |
<input type="checkbox" id="sq_tracking_logged_users" name="sq_tracking_logged_users" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_tracking_logged_users') ? 'checked="checked"' : '') ?> value="1"/>
|
133 |
<label for="sq_tracking_logged_users" class="ml-2"><?php echo esc_html__("Load Tracking for Logged Users", _SQ_PLUGIN_NAME_); ?></label>
|
143 |
|
144 |
</div>
|
145 |
|
146 |
+
<div class="col-12 my-3 p-0">
|
147 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
148 |
</div>
|
149 |
|
151 |
</form>
|
152 |
</div>
|
153 |
<div class="sq_col_side sticky">
|
154 |
+
<div class="card col-12 p-0">
|
155 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
156 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
157 |
</div>
|
view/SeoSettings/Webmaster.php
CHANGED
@@ -4,31 +4,31 @@
|
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
-
echo '<div class="col-
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
-
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white
|
13 |
-
<div class="flex-grow-1
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_webmaster', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_webmaster"/>
|
18 |
|
19 |
-
<div class="card col-
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
-
<div class="col-
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_websites_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("Webmaster Tools", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
-
<div class="col-
|
30 |
-
<div class="checker col-
|
31 |
-
<div class="col-
|
32 |
<label for="sq_auto_webmasters" class="mr-2"><?php echo esc_html__("Activate Webmasters", _SQ_PLUGIN_NAME_); ?></label>
|
33 |
<input type="hidden" name="sq_auto_webmasters" value="0"/>
|
34 |
<input type="checkbox" id="sq_auto_webmasters" name="sq_auto_webmasters" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_webmasters') ? 'checked="checked"' : '') ?> value="1"/>
|
@@ -39,24 +39,24 @@
|
|
39 |
|
40 |
</div>
|
41 |
|
42 |
-
<div id="sq_seosettings" class="card col-
|
43 |
|
44 |
<div class="card-body p-0">
|
45 |
-
<div class="col-
|
46 |
-
<div class="card col-
|
47 |
<?php
|
48 |
$codes = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('codes')));
|
49 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
50 |
?>
|
51 |
|
52 |
-
<div class="col-
|
53 |
|
54 |
-
<div class="col-
|
55 |
-
<div class="col-
|
56 |
<?php echo esc_html__("Google Verification Code", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Google META verification code to connect to %sGoogle Search Console%s and %sWebmaster Tool%s", _SQ_PLUGIN_NAME_), '<a href="https://search.google.com/search-console" target="_blank">', '</a>', '<a href="https://www.google.com/webmasters" target="_blank">', '</a>'); ?></div>
|
58 |
</div>
|
59 |
-
<div class="col-
|
60 |
<input id="google_wt" type="text" class="form-control bg-input" name="codes[google_wt]" value="<?php echo((isset($codes->google_wt)) ? esc_attr($codes->google_wt) : '') ?>" />
|
61 |
<?php if (!$connect->google_search_console) { ?>
|
62 |
<div class="sq_step1 my-0 mx-2">
|
@@ -78,37 +78,37 @@
|
|
78 |
<?php }?>
|
79 |
</div>
|
80 |
|
81 |
-
<div class="col-
|
82 |
<h6><?php echo sprintf(esc_html__("Need Help Connecting Google Search Console? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/need-help-connecting-google-search-console-both-tracking-code-and-api-connection/" target="_blank">','</a>') ?></h6>
|
83 |
</div>
|
84 |
</div>
|
85 |
|
86 |
-
<div class="col-
|
87 |
-
<div class="col-
|
88 |
<?php echo esc_html__("Bing Verification Code", _SQ_PLUGIN_NAME_); ?>:
|
89 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Bing META verification code to connect to %sWebmaster Tool%s", _SQ_PLUGIN_NAME_), '<a href="http://www.bing.com/toolbox/webmaster/" target="_blank">', '</a>'); ?></div>
|
90 |
</div>
|
91 |
-
<div class="col-
|
92 |
<input type="text" class="form-control bg-input" name="codes[bing_wt]" value="<?php echo((isset($codes->bing_wt)) ? esc_attr($codes->bing_wt) : '') ?>" />
|
93 |
</div>
|
94 |
</div>
|
95 |
|
96 |
-
<div class="col-
|
97 |
-
<div class="col-
|
98 |
<?php echo esc_html__("Alexa META Code", _SQ_PLUGIN_NAME_); ?>:
|
99 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Alexa META code to analyze your entire website. Visit the %sAlexa Marketing Tool%s", _SQ_PLUGIN_NAME_), '<a href="http://www.alexa.com/" target="_blank">', '</a>'); ?></div>
|
100 |
</div>
|
101 |
-
<div class="col-
|
102 |
<input type="text" class="form-control bg-input" name="codes[alexa_verify]" value="<?php echo((isset($codes->alexa_verify)) ? esc_attr($codes->alexa_verify) : '') ?>" />
|
103 |
</div>
|
104 |
</div>
|
105 |
|
106 |
-
<div class="col-
|
107 |
-
<div class="col-
|
108 |
<?php echo esc_html__("Pinterest Website Validator Code", _SQ_PLUGIN_NAME_); ?>:
|
109 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Pinterest verification code to connect your website to your Pinterest account. Visit the %sRich Pins Validator%s", _SQ_PLUGIN_NAME_), '<a href="https://developers.pinterest.com/tools/url-debugger/" target="_blank">', '</a>'); ?></div>
|
110 |
</div>
|
111 |
-
<div class="col-
|
112 |
<input type="text" class="form-control bg-input" name="codes[pinterest_verify]" value="<?php echo((isset($codes->pinterest_verify)) ? esc_attr($codes->pinterest_verify) : '') ?>" />
|
113 |
</div>
|
114 |
</div>
|
@@ -122,7 +122,7 @@
|
|
122 |
|
123 |
</div>
|
124 |
|
125 |
-
<div class="col-
|
126 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
127 |
</div>
|
128 |
|
@@ -130,7 +130,7 @@
|
|
130 |
</form>
|
131 |
</div>
|
132 |
<div class="sq_col_side sticky">
|
133 |
-
<div class="card col-
|
134 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
135 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
136 |
</div>
|
4 |
<div class="d-flex flex-row my-0 bg-white" style="clear: both !important;">
|
5 |
<?php
|
6 |
if (!current_user_can('sq_manage_settings')) {
|
7 |
+
echo '<div class="col-12 alert alert-success text-center m-0 p-3">'. esc_html__("You do not have permission to access this page. You need Squirrly SEO Admin role.", _SQ_PLUGIN_NAME_).'</div>';
|
8 |
return;
|
9 |
}
|
10 |
?>
|
11 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Models_Menu')->getAdminTabs(SQ_Classes_Helpers_Tools::getValue('tab'), 'sq_seosettings'); ?>
|
12 |
+
<div class="d-flex flex-row flex-nowrap flex-grow-1 bg-white px-1 m-0">
|
13 |
+
<div class="flex-grow-1 px-1 sq_flex">
|
14 |
<?php do_action('sq_form_notices'); ?>
|
15 |
<form method="POST">
|
16 |
<?php SQ_Classes_Helpers_Tools::setNonce('sq_seosettings_webmaster', 'sq_nonce'); ?>
|
17 |
<input type="hidden" name="action" value="sq_seosettings_webmaster"/>
|
18 |
|
19 |
+
<div class="card col-12 p-0">
|
20 |
<?php do_action('sq_subscription_notices'); ?>
|
21 |
|
22 |
<div class="card-body p-2 bg-title rounded-top row">
|
23 |
+
<div class="col-7 text-left m-0 p-0">
|
24 |
<div class="sq_icons_content p-3 py-4">
|
25 |
<div class="sq_icons sq_websites_icon m-2"></div>
|
26 |
</div>
|
27 |
<h3 class="card-title py-4"><?php echo esc_html__("Webmaster Tools", _SQ_PLUGIN_NAME_); ?>:</h3>
|
28 |
</div>
|
29 |
+
<div class="col-5 text-right">
|
30 |
+
<div class="checker col-12 row my-2 py-1 mx-0 px-0 ">
|
31 |
+
<div class="col-12 p-0 sq-switch redgreen sq-switch-sm ">
|
32 |
<label for="sq_auto_webmasters" class="mr-2"><?php echo esc_html__("Activate Webmasters", _SQ_PLUGIN_NAME_); ?></label>
|
33 |
<input type="hidden" name="sq_auto_webmasters" value="0"/>
|
34 |
<input type="checkbox" id="sq_auto_webmasters" name="sq_auto_webmasters" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_webmasters') ? 'checked="checked"' : '') ?> value="1"/>
|
39 |
|
40 |
</div>
|
41 |
|
42 |
+
<div id="sq_seosettings" class="card col-12 p-0 m-0 border-0 tab-panel border-0 <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_auto_webmasters') ? '' : 'sq_deactivated') ?>">
|
43 |
|
44 |
<div class="card-body p-0">
|
45 |
+
<div class="col-12 m-0 p-0">
|
46 |
+
<div class="card col-12 p-0 border-0 ">
|
47 |
<?php
|
48 |
$codes = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('codes')));
|
49 |
$connect = json_decode(wp_json_encode(SQ_Classes_Helpers_Tools::getOption('connect')));
|
50 |
?>
|
51 |
|
52 |
+
<div class="col-12 pt-0 pb-4 border-bottom tab-panel">
|
53 |
|
54 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
55 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
56 |
<?php echo esc_html__("Google Verification Code", _SQ_PLUGIN_NAME_); ?>:
|
57 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Google META verification code to connect to %sGoogle Search Console%s and %sWebmaster Tool%s", _SQ_PLUGIN_NAME_), '<a href="https://search.google.com/search-console" target="_blank">', '</a>', '<a href="https://www.google.com/webmasters" target="_blank">', '</a>'); ?></div>
|
58 |
</div>
|
59 |
+
<div class="col-8 p-0 input-group input-group-lg">
|
60 |
<input id="google_wt" type="text" class="form-control bg-input" name="codes[google_wt]" value="<?php echo((isset($codes->google_wt)) ? esc_attr($codes->google_wt) : '') ?>" />
|
61 |
<?php if (!$connect->google_search_console) { ?>
|
62 |
<div class="sq_step1 my-0 mx-2">
|
78 |
<?php }?>
|
79 |
</div>
|
80 |
|
81 |
+
<div class="col-12 text-center py-3 mx-auto my-0">
|
82 |
<h6><?php echo sprintf(esc_html__("Need Help Connecting Google Search Console? %sClick Here%s", _SQ_PLUGIN_NAME_),'<a href="https://howto.squirrly.co/faq/need-help-connecting-google-search-console-both-tracking-code-and-api-connection/" target="_blank">','</a>') ?></h6>
|
83 |
</div>
|
84 |
</div>
|
85 |
|
86 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
87 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
88 |
<?php echo esc_html__("Bing Verification Code", _SQ_PLUGIN_NAME_); ?>:
|
89 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Bing META verification code to connect to %sWebmaster Tool%s", _SQ_PLUGIN_NAME_), '<a href="http://www.bing.com/toolbox/webmaster/" target="_blank">', '</a>'); ?></div>
|
90 |
</div>
|
91 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
92 |
<input type="text" class="form-control bg-input" name="codes[bing_wt]" value="<?php echo((isset($codes->bing_wt)) ? esc_attr($codes->bing_wt) : '') ?>" />
|
93 |
</div>
|
94 |
</div>
|
95 |
|
96 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
97 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
98 |
<?php echo esc_html__("Alexa META Code", _SQ_PLUGIN_NAME_); ?>:
|
99 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Alexa META code to analyze your entire website. Visit the %sAlexa Marketing Tool%s", _SQ_PLUGIN_NAME_), '<a href="http://www.alexa.com/" target="_blank">', '</a>'); ?></div>
|
100 |
</div>
|
101 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
102 |
<input type="text" class="form-control bg-input" name="codes[alexa_verify]" value="<?php echo((isset($codes->alexa_verify)) ? esc_attr($codes->alexa_verify) : '') ?>" />
|
103 |
</div>
|
104 |
</div>
|
105 |
|
106 |
+
<div class="col-12 row py-2 mx-0 my-3">
|
107 |
+
<div class="col-4 p-0 pr-3 font-weight-bold">
|
108 |
<?php echo esc_html__("Pinterest Website Validator Code", _SQ_PLUGIN_NAME_); ?>:
|
109 |
<div class="small text-black-50 my-1"><?php echo sprintf(esc_html__("Add the Pinterest verification code to connect your website to your Pinterest account. Visit the %sRich Pins Validator%s", _SQ_PLUGIN_NAME_), '<a href="https://developers.pinterest.com/tools/url-debugger/" target="_blank">', '</a>'); ?></div>
|
110 |
</div>
|
111 |
+
<div class="col-6 p-0 input-group input-group-lg">
|
112 |
<input type="text" class="form-control bg-input" name="codes[pinterest_verify]" value="<?php echo((isset($codes->pinterest_verify)) ? esc_attr($codes->pinterest_verify) : '') ?>" />
|
113 |
</div>
|
114 |
</div>
|
122 |
|
123 |
</div>
|
124 |
|
125 |
+
<div class="col-12 my-3 p-0">
|
126 |
<button type="submit" class="btn rounded-0 btn-success btn-lg px-5 mx-4"><?php echo esc_html__("Save Settings", _SQ_PLUGIN_NAME_); ?></button>
|
127 |
</div>
|
128 |
|
130 |
</form>
|
131 |
</div>
|
132 |
<div class="sq_col_side sticky">
|
133 |
+
<div class="card col-12 p-0">
|
134 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockSupport')->init(); ?>
|
135 |
<?php echo SQ_Classes_ObjController::getClass('SQ_Core_BlockAssistant')->init(); ?>
|
136 |
</div>
|
view/assets/css/audits.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#sq_audits .sq_auditpages_content{min-height:100px}#sq_assistant_modal .modal-body ul li{margin:10px 30px;list-style:initial!important}#sq_audit .sq_audit_header .sq_audit_header_title,#sq_audits .sq_audit_header .sq_audit_header_title{font-size:30px;color:#f1d432}#sq_audit .sq_audit_header .sq_audit_header_score,#sq_audits .sq_audit_header .sq_audit_header_score{font-size:34px;color:#4f1440}#sq_audit .sq_audit_header .sq_audit_header_message,#sq_audits .sq_audit_header .sq_audit_header_message{display:block;width:auto;line-height:24px;height:auto;font-size:18px;font-weight:400;color:#777;text-align:left}#sq_audit td.sq_first_header_column{width:20%}#sq_audit pre{white-space:normal;padding:10px}#sq_audit td{border:0;vertical-align:top;text-align:left}.sqd_blog_list td{width:20%;font-size:16px;line-height:30px}.sqd_blog_list td.td-blue{color:#589ee4}#sq_audit .sq_audit_margin_header{height:340px}#sq_audit .sq_audit_header td{vertical-align:top;height:40px;line-height:22px}.sq_separator{display:block;clear:both;border-bottom:1px dashed #ddd!important;width:90%;height:3px;margin:2px auto}.floatingHeader{position:fixed;display:block;top:32px;left:0;font-size:18px!important;width:100%!important;line-height:15px;margin:0;padding:15px;background:#2680b4;visibility:hidden;z-index:1006;color:#fff!important;text-shadow:1px 1px #333;cursor:pointer}#sq_audit .sq_first_column{width:122px}#sq_audit .sq_second_column{width:528px}#sq_audit .sq_audit_tasks_row>table,#sq_audit .sq_second_column span{width:100%}#sq_audit .sq_third_column{width:300px}#sq_audit .sq_audit_task_completed{position:relative;width:auto;line-height:20px;height:87px;margin:0 auto;padding:15px 10px;text-align:center;font-size:30px;color:#fff;box-shadow:1px 1px 2px 0 #999;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#999');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#999')";border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;-webkit-border-radius:5px 5px 5px 0;z-index:1}#sq_audit .sq_audit_tasks .sq_audit_task_completed{display:block;width:130px;height:95px;font-size:20px;color:#fff;text-shadow:1px 1px #555;line-height:29px;vertical-align:middle}#sq_audit .sq_audit_task_completed:before{content:"";width:0;height:0;position:absolute;bottom:-13px;left:0;border-width:0 0 14px 25px;border-style:solid;z-index:2}#sq_audit .sq_audit_task_completed:after{content:"";width:0;height:0;position:absolute;bottom:-15px;left:0;border-collapse:collapse;border-width:0 0 15px 28px;border-style:solid;border-color:transparent transparent transparent #999}#sq_audit .sq_audit_task_completed_gray{background:#f1f1f1;color:#999!important;text-shadow:1px 1px #f8f8f8!important}#sq_audit .sq_audit_task_completed_gray:before{border-color:transparent transparent transparent #f1f1f1}#sq_audit .sq_audit_task_completed_green_text{color:#1e9a04}#sq_audit .sq_audit_task_completed_green{background:#1e9a04}#sq_audit .sq_audit_task_completed_green:before{border-color:transparent transparent transparent #1e9a04}#sq_audit .sq_audit_task_completed_yellow_text{color:#f1d432}#sq_audit .sq_audit_task_completed_yellow{background:#f1d432}#sq_audit .sq_audit_task_completed_yellow:before{border-color:transparent transparent transparent #f1d432}#sq_audit .sq_audit_task_completed_red_text{color:#bb0d0c}#sq_audit .sq_audit_task_completed_red{background:#bb0d0c}#sq_audit .sq_audit_task_completed_red:before{border-color:transparent transparent transparent #bb0d0c}#sq_audit .sq_audit_header .sq_audit_header_squirrly{color:#f1d432;font-size:36px;padding-left:10px}#sq_audit .sq_audit_margin_header .sq_audit_datetime{color:#999;font-size:14px;float:right;margin-top:-29px}#sq_audit .sq_audit_margin_header .sq_audit_datetime span{margin-right:30px;border-bottom:1px solid #f1f1f1}#sq_audit .sq_audit_margin_header .sq_audit_header_preview{display:block;width:398px;height:300px;background-size:100%;margin:5px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;border:1px solid #ccc;box-shadow:0 0 5px 0 #555}#sq_audit .sq_audit_margin_header .sq_audit_header_preview_pad,#sq_audit .sq_audit_margin_header .sq_audit_header_preview_phone{display:block;float:left;background:url(../img/audit_sprite.png) no-repeat;background-position:-5px -298px;width:125px;height:219px;border:0;padding:45px 12px 37px 15px;margin:10px 0}#sq_audit .sq_audit_margin_header .sq_audit_header_preview_pad{background-position:-136px -298px;width:282px;height:220px;padding:30px 25px 24px 24px}#sq_audit .sq_audit_header .sq_audit_header_logo{display:block;background:url(../img/logo.png) no-repeat;width:85px;height:95px;margin-top:15px}#sq_audit .sq_audit_header .sq_audit_header_text{display:block;background:url(../img/audit_sprite.png) no-repeat;background-position:-162px -22px;width:328px;height:111px;margin:10px 64px 4px 8px;border:0}#sq_audit .sq_audit_header .sq_audit_header_for{display:block;color:#a8a8a8;font-size:24px;height:80px}#sq_audit .sq_audit_header .sq_audit_header_for_text{width:120px}#sq_audit .sq_audit_header .sq_audit_header_domain{color:#6bac43;max-width:380px;line-height:44px;text-overflow:ellipsis}#sq_audit .sq_audit_header .sq_audit_header_for span{display:block;float:left;height:auto;line-height:22px;margin:5px 5px 5px 0}#sq_audit .sq_audit_header_links{display:none;margin:5px;padding:10px 0;width:100%;height:30px;font-size:20px;color:#333;background-color:#e9eae5;box-shadow:2px 2px 3px 0 #c1c1c1;text-align:center;cursor:pointer}#sq_audit .sq_audit_header_competition{display:block;margin:0 21px;padding:5px 0 0 10px;width:auto;line-height:30px;height:auto;font-size:20px;font-weight:400;color:#777;text-align:left}#sq_audit .sq_audit_header_competition span a{color:#555;text-decoration:none;font-weight:400;font-size:21px}#sq_audit .sq_auditr_links_url{max-height:160px;overflow-x:auto;margin-top:13px}#sq_audit .sq_auditr_links_url li{max-width:520px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 0 5px 8px;padding:0}#sq_audit .sq_auditr_links_url li a{font-size:14px;text-decoration:none;color:#777}#sq_audit .sq_audit_header_todo{display:block;margin-top:15px;font-size:24px;color:#333}#sq_audit .sq_audit_header_todo_list{margin-top:15px;max-width:950px}#sq_audit .sq_audit_header_todo_list li{font-size:18px;line-height:22px;margin-bottom:10px;margin-left:15px;color:orange;cursor:pointer}#sq_audit .sq_audit_header_todo_list .sq_audit_header_todo_value_pass{color:#1e9a04}#sq_audit .sq_audit_header_todo_list .sq_audit_header_todo_value_fail{color:#f7681a}#sq_audit .sq_audit_header_todo_list .sq_audit_goto_task{font-size:15px;margin-left:20px;color:#a8a8a8}#sq_audit .sq_audit_tasks{display:table;clear:both;width:100%;height:auto;margin:40px auto 0}#sq_audit .sq_audit_tasks li{float:left;width:33%;height:200px;cursor:pointer}#sq_audit .sq_audit_tasks .sq_audit_task_title{display:block;width:100%;margin-top:25px;font-size:35px;text-align:center}#sq_audit .sq_audit_list>li{margin-top:55px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_tasks_header_title{font-size:36px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed{margin:0 21px!important;padding:10px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed:before{right:4px;left:auto}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed:after{bottom:-15px;right:2px;left:auto;border-width:0 0 15px 26px}#sq_audit li.sq_audit_tasks_row .sq_task i{cursor:pointer}#sq_audit li.sq_audit_tasks_row .sq_task i:before{content:'\f0c8';color:#f2000c;background:#f2000c;display:inline-block;width:26px;height:26px;border-radius:20px;line-height:192%;text-align:center;font-size:13px}#sq_audit li.sq_audit_tasks_row .sq_task.completed i:before{content:'\f00c';color:#fff!important;background:#20bc49!important}#sq_audit li.sq_audit_tasks_row .sq_task.ignore i:before{content:'\f0c8';color:#5f5f5f;background:#5f5f5f}#sq_audit li.sq_audit_tasks_row td{vertical-align:middle}#sq_audit li.sq_audit_tasks_row input.audit_score{box-shadow:none;border:0;background:0 0;width:1px;color:#fff}.sq_audit_tasks_fail,.sq_audit_tasks_pass{display:block;height:100px;width:100px;margin:0 auto}.sq_audit_tasks_pass{background:url(../img/audit_sprite.png) repeat-x;background-position:-7px -176px}.sq_audit_tasks_fail{background:url(../img/audit_sprite.png) no-repeat;background-position:-113px -176px}#sq_audit .sq_audit_tasks_row{width:100%;position:relative;overflow-x:auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_title{font-size:24px;line-height:28px;color:#a8a8a8;padding-right:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact{display:block;float:left;background:url(../img/audit_sprite.png) repeat-x;background-position:-599px -462px;height:25px;width:30px;margin:0 10px 0 0}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact:hover{background-position-y:-487px;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact_1{background-position:-527px -462px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact_2{background-position:-563px -462px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value{font-size:24px;line-height:28px;white-space:normal;word-break:break-word}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value a{white-space:normal;word-break:break-word}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_fail a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_pass a{font-size:15px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_pass{color:#1e9a04}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix strong,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_fail{color:#f7681a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description{padding-top:20px;font-size:14px;line-height:21px;color:#9b9a9a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description span{display:block;margin-bottom:15px;margin-left:0}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_list_success span,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description span.sq_audit_tasks_alias{margin-bottom:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_tasks_value{font-size:15px;line-height:21px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_tip a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description a{text-decoration:none}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description ul li{list-style:initial!important;margin:7px 30px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video{padding:15px 0 0 15px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video a{display:block;width:280px;text-align:center;font-size:15px;margin:0 5px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video_cover_small{display:block;float:right;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-480px -462px;width:42px;height:28px;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video_cover{background:#333 url(../img/audit_sprite.png) no-repeat;background-position:-422px -299px;width:280px;height:158px;border:2px solid #000;border-radius:5px;margin:0 auto;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_link_small a{display:block;float:right;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-430px -462px;width:47px;height:28px;margin:0 5px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_link a{display:block;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-398px -168px;width:191px;height:120px;margin:0 auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_tip{font-size:14px;line-height:19px;color:#333}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social{width:500px;margin:0 auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li>div{float:left;margin-right:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li{clear:both;height:30px;line-height:20px;border-bottom:1px dashed #eee}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li .sq_audit_social_title{font-size:16px;width:195px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li .sq_audit_social_value{font-weight:700;width:75px;text-align:right}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_pages li{list-style:decimal!important}#sq_audit .sq_audit_send_email{width:750px;height:130px;margin:5px auto;background-color:#e9eae5;box-shadow:2px 2px 3px 0 #c1c1c1;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='#c1c1c1');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=2, Direction=270, Color='#c1c1c1')";border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px}#sq_audit .sq_audit_send_email_image{display:block;background:url(../img/audit_sprite.png) repeat-x;background-position:-216px -169px;height:100px;width:165px;margin:15px}#sq_audit .sq_audit_send_email_title{display:block;font-size:25px;color:#a8a8a8;text-shadow:1px 1px #fff;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#fff');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#fff')";margin:12px 0}#sq_audit .sq_audit_send_email_text{display:block;font-size:16px;line-height:20px;color:#333;width:365px}#sq_audit .sq_audit_download_button,#sq_audit .sq_audit_send_email_button{display:block;font-size:14px;font-weight:700;padding:11px 24px;color:#fff;width:auto;height:auto;background-color:#bb0d0c;margin-top:15px;border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px;box-shadow:1px 1px 0 0 #fff;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#fff');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#fff')";text-decoration:none;cursor:pointer}#sq_audit .sq_audit_send_email_button .at-icon-wrapper{background-color:#bb0d0c!important;line-height:24px!important;height:16px!important;width:16px!important}#sq_audit .sq_audit_send_email_button span{background:0 0;text-decoration:none;width:0;height:0;margin-right:2px}#sq_audit .sq_back_to_top{font-size:18px;margin-top:29px;cursor:pointer}#sq_audit .sq_list_error_title,#sq_audit .sq_list_success_title{display:block;font-size:20px;color:#333;height:35px;width:100%;margin:30px 0 10px;border-bottom:5px solid #ccc}#sq_audit .sq_list_error,#sq_audit .sq_list_success{display:block;font-size:15px;font-weight:400;margin-left:0;margin-top:5px;max-height:500px;overflow-y:auto}#sq_audit .sq_list_success{color:#333}#sq_audit .sq_list_error{color:#f7681a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value .sq_list_error,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value .sq_list_success{font-style:italic}#sq_audit .sq_rank_sprite{float:left;display:block;margin:4px;background:url(../img/sprite.png) no-repeat;background-position:20px 0;width:20px;height:20px}#sq_audit .sq_rank_flag_facebook{background-position:-10px -253px}#sq_audit .sq_rank_flag_facebook_like{background-position:-212px -253px}#sq_audit .sq_rank_flag_twitter{background-position:-53px -253px}#sq_audit .sq_rank_flag_googleplus{background-position:-31px -253px}#sq_audit .sq_rank_flag_pinterest{background-position:-74px -253px}#sq_audit .sq_rank_flag_stumbleupon{background-position:-190px -253px}#sq_audit .sq_rank_flag_linkedin{background-position:-231px -253px}#sq_audit .sq_rank_flag_reddit{background-position:-250px -253px}#sq_audit .sq_rank_flag_delicious{background-position:-293px -253px}#sq_audit .sq_audit_todo{position:relative;page-break-before:always}#sq_audit .sq_audit_todo ul,li{list-style:none}#sq_audit .sq_audit_todo ul{overflow:hidden;padding:20px 10px;margin:30px 0}#sq_audit .sq_audit_todo .pin{display:block;border-radius:25px;-webkit-border-radius:25px;-moz-box-border-radius:25px;width:20px;height:20px;-webkit-box-shadow:0 3px 6px rgba(0,0,0,.55);-moz-box-shadow:0 3px 6px rgba(0,0,0,.55);box-shadow:0 3px 6px rgba(0,0,0,.55);margin:2px auto 0}#sq_audit .sq_audit_todo ul li a{text-decoration:none;color:#000;background:#ffc;display:block;height:10em;width:10em;padding:1em;-moz-box-shadow:5px 5px 7px #212121;-webkit-box-shadow:5px 5px 7px rgba(33,33,33,.7);box-shadow:5px 5px 7px rgba(33,33,33,.7);-moz-transition:-moz-transform .15s linear;-o-transition:-o-transform .15s linear;-webkit-transition:-webkit-transform .15s linear}#sq_audit .sq_audit_todo ul li{margin:7px;float:left}#sq_audit .sq_audit_todo ul li p{font-family:Cambria,Georgia,serif;font-size:17px;clear:both;margin-top:25px;-webkit-font-smoothing:antialiased}#sq_audit .sq_audit_todo ul li:nth-child(n) a{transform:rotate(-2deg);-o-transform:rotate(-2deg);-webkit-transform:rotate(-2deg);-moz-transform:rotate(-2deg);-webkit-backface-visibility:hidden;color:#999;top:-10px;background:#cfc}#sq_audit .sq_audit_todo ul li:nth-child(2n) a{transform:rotate(1deg);-o-transform:rotate(1deg);-webkit-transform:rotate(1deg);-moz-transform:rotate(1deg);-webkit-backface-visibility:hidden;color:#999;background:#f8cdcd}#sq_audit .sq_audit_todo ul li:nth-child(3n) a{transform:rotate(-1deg);-o-transform:rotate(-1deg);-webkit-transform:rotate(-1deg);-moz-transform:rotate(-1deg);-webkit-backface-visibility:hidden;color:#999;top:-2px;background:#ccf}#sq_audit .sq_audit_todo ul li:nth-child(4n) a{transform:rotate(2deg);-o-transform:rotate(2deg);-webkit-transform:rotate(2deg);-moz-transform:rotate(2deg);-webkit-backface-visibility:hidden;color:#999;top:3px}#sq_audit .sq_audit_todo ul li a:focus,#sq_audit .sq_audit_todo ul li a:hover{box-shadow:10px 10px 7px rgba(0,0,0,.7);-moz-box-shadow:10px 10px 7px rgba(0,0,0,.7);-webkit-box-shadow:10px 10px 7px rgba(0,0,0,.7);transform:scale(1.1) rotate(0deg);-webkit-transform:scale(1.1) rotate(0deg);-moz-transform:scale(1.1) rotate(0deg);-o-transform:scale(1.1) rotate(0deg);color:#333;position:relative;z-index:5}#sq_audit .sq_audit_todo_preview{position:absolute!important;top:0;left:0;width:900px;padding:15px;border:11px solid #d3d3d3!important;border-radius:5px;background-color:#fff;z-index:1002;overflow:auto}#sq_audit .sq_audit_todo_done{float:right;margin:0 14px;padding:7px 0;font-size:16px;cursor:pointer;line-height:20px}#sq_audit .sq_audit_todo_close{float:right;background-color:gray;border:1px solid gray!important;padding:7px 18px;color:#fff;font-size:18px;font-weight:700;border-radius:5px;text-shadow:1px 1px #555;cursor:pointer}#sq_audit .sq_audit_todo_done span{display:block;float:left;width:25px;height:25px;background:url(../img/audit_sprite.png) no-repeat;background-position:-656px -464px;margin-right:5px;margin-top:0}#sq_audit .sq_audit_todo_done span.clicked{background-position:-689px -464px}#sq_audit .sq_audit_todo_seeall{cursor:pointer;margin-right:15px;font-size:12px;float:right}.black_overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;z-index:1001;-moz-opacity:.8;opacity:.8;filter:alpha(opacity=80)}#sq_audit_loading{position:absolute;width:400px;height:80px;padding:20px 15px;border:11px solid #d3d3d3!important;border-radius:5px;background-color:#fff;z-index:1002;overflow:auto}#sq_audit_loading span{display:block;margin:5px 0}#sq_audit_loading #progressBar{width:400px;height:22px;border:1px solid #111;background-color:#f1f1f1}#sq_audit_loading #progressBar div{height:100%;color:#fff;text-align:right;line-height:22px;width:0;background-color:#4f1440}#sq_audit .table_vals th{padding:10px;font-size:14px;min-width:75px}#sq_audit .table_vals td{font-size:14px;padding:5px 9px;text-overflow:ellipsis;overflow-x:hidden;overflow-y:auto;white-space:nowrap}#sq_audit .sq_custom{text-align:center;margin:22px 50px 150px}#sq_audit .sq_custom .sq_header{text-align:center;font-size:20px;line-height:24px;margin:5px}#sq_audit .sq_custom .sq_body{margin:19px}#sq_audit .sq_custom .sq_body li{text-align:center}#sq_audit .sq_custom .sq_body li:nth-child(2){font-size:28px;line-height:45px}#sq_audit .sq_custom .sq_body li:nth-child(2) label{vertical-align:top;margin-right:6px;font-size:28px;line-height:45px}#sq_audit .sq_custom .sq_body li:nth-child(2) input{line-height:33px;font-size:25px;color:green;width:343px}#sq_audit .sq_custom .sq_body li:nth-child(4){margin:20px}#sq_audit .addthis_button_email .at-icon-wrapper{display:none}#sq_audit .sq_audit_send_email .btn{width:170px}#sq_audit .sq_audit_footer{width:750px;margin:0 auto;padding:80px 0}#sq_audit .sq_audit_footer span{display:block;float:left;font-size:21px;font-weight:700;line-height:20px;margin-top:27px;color:green;text-shadow:1px 1px #fff}#sq_audit .sq_audit_footer .sq_audit_footer_todo{display:block;float:left;width:297px;height:95px;background:url(../img/audit_sprite.png) no-repeat;background-position:-15px -534px;margin:1px 0 0 25px;cursor:pointer}#topcontrol span{display:block;width:30px;height:30px;font-size:16px;margin:0;border:0;background:url(../img/audit_sprite.png) repeat-x;background-position:-474px -496px;cursor:pointer}@media print{#sq_audit .sq_second_column{width:auto!important}#sq_audit .sq_audit_margin_header{padding-bottom:50px!important}#sq_audit .persist-area{padding-top:50px!important;page-break-after:always!important}#sq_audit{position:relative;padding-top:100px!important}#sq_wrap .sq_col{position:relative;display:block;max-width:1020px;margin:0 auto!important}#sq_audit .sq_audit_footer,#sq_audit .sq_audit_send_email,#sq_audit .sq_audit_todo,#sq_audit .sq_third_column,#sq_wrap .sq_col_side,#sq_wrap .sq_nav{display:none!important}}@media only screen and (max-width:1240px){.stickThis.stick{position:relative!important;width:auto!important}}@media only screen and (max-width:1024px){#sq_audit .sq_audit_header .sq_audit_header_text{margin:10px 5px 4px!important}#sq_audit .sq_audit_header .sq_audit_header_domain{max-width:330px!important}#sq_audit .sq_audit_header .sq_audit_header_preview{width:285px!important}#sq_audit .sq_audit_tasks{width:750px!important}}
|
1 |
+
#sq_audits .sq_auditpages_content{min-height:100px}#sq_assistant_modal .modal-body ul li{margin:10px 30px;list-style:initial!important}#sq_audit .sq_audit_header .sq_audit_header_title,#sq_audits .sq_audit_header .sq_audit_header_title{font-size:30px;color:#f1d432}#sq_audit .sq_audit_header .sq_audit_header_score,#sq_audits .sq_audit_header .sq_audit_header_score{font-size:34px;color:#4f1440}#sq_audit .sq_audit_header .sq_audit_header_message,#sq_audits .sq_audit_header .sq_audit_header_message{display:block;width:auto;line-height:24px;height:auto;font-size:18px;font-weight:400;color:#777;text-align:left}#sq_audit td.sq_first_header_column{width:20%}#sq_audit pre{white-space:normal;padding:10px}#sq_audit td{border:0;vertical-align:top;text-align:left}.sqd_blog_list td{width:20%;font-size:16px;line-height:30px}.sqd_blog_list td.td-blue{color:#589ee4}#sq_audit .sq_audit_margin_header{height:340px}#sq_audit .sq_audit_header td{vertical-align:top;height:40px;line-height:22px}.sq_separator{display:block;clear:both;border-bottom:1px dashed #ddd!important;width:90%;height:3px;margin:2px auto}.floatingHeader{position:fixed;display:block;top:32px;left:0;font-size:18px!important;width:100%!important;line-height:15px;margin:0;padding:15px;background:#2680b4;visibility:hidden;z-index:1006;color:#fff!important;text-shadow:1px 1px #333;cursor:pointer}#sq_audit .sq_first_column{width:122px}#sq_audit .sq_second_column{width:528px}#sq_audit .sq_audit_tasks_row>table,#sq_audit .sq_second_column span{width:100%}#sq_audit .sq_third_column{width:300px}#sq_audit .sq_audit_task_completed{position:relative;width:auto;line-height:20px;height:87px;margin:0 auto;padding:15px 10px;text-align:center;font-size:30px;color:#fff;box-shadow:1px 1px 2px 0 #999;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#999');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#999')";border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;-webkit-border-radius:5px 5px 5px 0;z-index:1}#sq_audit .sq_audit_tasks .sq_audit_task_completed{display:block;width:130px;height:95px;font-size:20px;color:#fff;text-shadow:1px 1px #555;line-height:29px;vertical-align:middle}#sq_audit .sq_audit_task_completed:before{content:"";width:0;height:0;position:absolute;bottom:-13px;left:0;border-width:0 0 14px 25px;border-style:solid;z-index:2}#sq_audit .sq_audit_task_completed:after{content:"";width:0;height:0;position:absolute;bottom:-15px;left:0;border-collapse:collapse;border-width:0 0 15px 28px;border-style:solid;border-color:transparent transparent transparent #999}#sq_audit .sq_audit_task_completed_gray{background:#f1f1f1;color:#999!important;text-shadow:1px 1px #f8f8f8!important}#sq_audit .sq_audit_task_completed_gray:before{border-color:transparent transparent transparent #f1f1f1}#sq_audit .sq_audit_task_completed_green_text{color:#1e9a04}#sq_audit .sq_audit_task_completed_green{background:#1e9a04}#sq_audit .sq_audit_task_completed_green:before{border-color:transparent transparent transparent #1e9a04}#sq_audit .sq_audit_task_completed_yellow_text{color:#f1d432}#sq_audit .sq_audit_task_completed_yellow{background:#f1d432}#sq_audit .sq_audit_task_completed_yellow:before{border-color:transparent transparent transparent #f1d432}#sq_audit .sq_audit_task_completed_red_text{color:#bb0d0c}#sq_audit .sq_audit_task_completed_red{background:#bb0d0c}#sq_audit .sq_audit_task_completed_red:before{border-color:transparent transparent transparent #bb0d0c}#sq_audit .sq_audit_header .sq_audit_header_squirrly{color:#f1d432;font-size:36px;padding-left:10px}#sq_audit .sq_audit_margin_header .sq_audit_datetime{color:#999;font-size:14px;float:right;margin-top:-29px}#sq_audit .sq_audit_margin_header .sq_audit_datetime span{margin-right:30px;border-bottom:1px solid #f1f1f1}#sq_audit .sq_audit_margin_header .sq_audit_header_preview{display:block;width:398px;height:300px;background-size:100%;margin:5px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;border:1px solid #ccc;box-shadow:0 0 5px 0 #555}#sq_audit .sq_audit_margin_header .sq_audit_header_preview_pad,#sq_audit .sq_audit_margin_header .sq_audit_header_preview_phone{display:block;float:left;background:url(../img/audit_sprite.png) no-repeat;background-position:-5px -298px;width:125px;height:219px;border:0;padding:45px 12px 37px 15px;margin:10px 0}#sq_audit .sq_audit_margin_header .sq_audit_header_preview_pad{background-position:-136px -298px;width:282px;height:220px;padding:30px 25px 24px 24px}#sq_audit .sq_audit_header .sq_audit_header_logo{display:block;background:url(../img/logo.png) no-repeat;width:85px;height:95px;margin-top:15px}#sq_audit .sq_audit_header .sq_audit_header_text{display:block;background:url(../img/audit_sprite.png) no-repeat;background-position:-162px -22px;width:328px;height:111px;margin:10px 64px 4px 8px;border:0}#sq_audit .sq_audit_header .sq_audit_header_for{display:block;color:#a8a8a8;font-size:24px;height:80px}#sq_audit .sq_audit_header .sq_audit_header_for_text{width:120px}#sq_audit .sq_audit_header .sq_audit_header_domain{color:#6bac43;max-width:380px;line-height:44px;text-overflow:ellipsis}#sq_audit .sq_audit_header .sq_audit_header_for span{display:block;float:left;height:auto;line-height:22px;margin:5px 5px 5px 0}#sq_audit .sq_audit_header_links{display:none;margin:5px;padding:10px 0;width:100%;height:30px;font-size:20px;color:#333;background-color:#e9eae5;box-shadow:2px 2px 3px 0 #c1c1c1;text-align:center;cursor:pointer}#sq_audit .sq_audit_header_competition{display:block;margin:0 21px;padding:5px 0 0 10px;width:auto;line-height:30px;height:auto;font-size:20px;font-weight:400;color:#777;text-align:left}#sq_audit .sq_audit_header_competition span a{color:#555;text-decoration:none;font-weight:400;font-size:21px}#sq_audit .sq_auditr_links_url{max-height:160px;overflow-x:auto;margin-top:13px}#sq_audit .sq_auditr_links_url li{max-width:520px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 0 5px 8px;padding:0}#sq_audit .sq_auditr_links_url li a{font-size:14px;text-decoration:none;color:#777}#sq_audit .sq_audit_header_todo{display:block;margin-top:15px;font-size:24px;color:#333}#sq_audit .sq_audit_header_todo_list{margin-top:15px;max-width:950px}#sq_audit .sq_audit_header_todo_list li{font-size:18px;line-height:22px;margin-bottom:10px;margin-left:15px;color:orange;cursor:pointer}#sq_audit .sq_audit_header_todo_list .sq_audit_header_todo_value_pass{color:#1e9a04}#sq_audit .sq_audit_header_todo_list .sq_audit_header_todo_value_fail{color:#f7681a}#sq_audit .sq_audit_header_todo_list .sq_audit_goto_task{font-size:15px;margin-left:20px;color:#a8a8a8}#sq_audit .sq_audit_tasks{display:table;clear:both;width:100%;height:auto;margin:40px auto 0}#sq_audit .sq_audit_tasks li{float:left;width:33%;height:200px;cursor:pointer}#sq_audit .sq_audit_tasks .sq_audit_task_title{display:block;width:100%;margin-top:25px;font-size:35px;text-align:center}#sq_audit .sq_audit_list>li{margin-top:55px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_tasks_header_title{font-size:36px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed{margin:0 21px!important;padding:10px}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed:before{right:4px;left:auto}#sq_audit .sq_audit_list .sq_audit_tasks_header .sq_audit_task_completed:after{bottom:-15px;right:2px;left:auto;border-width:0 0 15px 26px}#sq_audit li.sq_audit_tasks_row .sq_task i{cursor:pointer}#sq_audit li.sq_audit_tasks_row .sq_task i:before{content:'\f0c8';color:#f2000c;background:#f2000c;display:inline-block;width:26px;height:26px;border-radius:20px;line-height:192%;text-align:center;font-size:13px}#sq_audit li.sq_audit_tasks_row .sq_task.completed i:before{content:'\f00c';color:#fff!important;background:#20bc49!important}#sq_audit li.sq_audit_tasks_row .sq_task.ignore i:before{content:'\f0c8';color:#5f5f5f;background:#5f5f5f}#sq_audit li.sq_audit_tasks_row td{vertical-align:middle}#sq_audit li.sq_audit_tasks_row input.audit_score{box-shadow:none;border:0;background:0 0;width:1px;color:#fff}.sq_audit_tasks_fail,.sq_audit_tasks_pass{display:block;height:100px;width:100px;margin:0 auto}.sq_audit_tasks_pass{background:url(../img/audit_sprite.png) repeat-x;background-position:-7px -176px}.sq_audit_tasks_fail{background:url(../img/audit_sprite.png) no-repeat;background-position:-113px -176px}#sq_audit .sq_audit_tasks_row{width:100%;position:relative;overflow-x:auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_title{font-size:24px;line-height:28px;color:#a8a8a8;padding-right:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact{display:block;float:left;background:url(../img/audit_sprite.png) repeat-x;background-position:-599px -462px;height:25px;width:30px;margin:0 10px 0 0}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact:hover{background-position-y:-487px;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact_1{background-position:-527px -462px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_impact_2{background-position:-563px -462px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value{font-size:24px;line-height:28px;white-space:normal;word-break:break-word}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value a{white-space:normal;word-break:break-word}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_fail a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_pass a{font-size:15px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_pass{color:#1e9a04}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix strong,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value_fail{color:#f7681a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description{padding-top:20px;font-size:14px;line-height:21px;color:#9b9a9a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description span{display:block;margin-bottom:15px;margin-left:0}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_list_success span,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description span.sq_audit_tasks_alias{margin-bottom:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_tasks_value{font-size:15px;line-height:21px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_tip a,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description a{text-decoration:none}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description ul li{list-style:initial!important;margin:7px 30px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video{padding:15px 0 0 15px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video a{display:block;width:280px;text-align:center;font-size:15px;margin:0 5px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video_cover_small{display:block;float:right;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-480px -462px;width:42px;height:28px;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_video_cover{background:#333 url(../img/audit_sprite.png) no-repeat;background-position:-422px -299px;width:280px;height:158px;border:2px solid #000;border-radius:5px;margin:0 auto;cursor:pointer}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_link_small a{display:block;float:right;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-430px -462px;width:47px;height:28px;margin:0 5px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_link a{display:block;background:#fff url(../img/audit_sprite.png) no-repeat;background-position:-398px -168px;width:191px;height:120px;margin:0 auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_fix,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_tip{font-size:14px;line-height:19px;color:#333}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social{width:500px;margin:0 auto}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li>div{float:left;margin-right:10px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li{clear:both;height:30px;line-height:20px;border-bottom:1px dashed #eee}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li .sq_audit_social_title{font-size:16px;width:195px}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_social li .sq_audit_social_value{font-weight:700;width:75px;text-align:right}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_description .sq_audit_pages li{list-style:decimal!important}#sq_audit .sq_audit_send_email{width:750px;height:130px;margin:5px auto;background-color:#e9eae5;box-shadow:2px 2px 3px 0 #c1c1c1;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='#c1c1c1');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=2, Direction=270, Color='#c1c1c1')";border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px}#sq_audit .sq_audit_send_email_image{display:block;background:url(../img/audit_sprite.png) repeat-x;background-position:-216px -169px;height:100px;width:165px;margin:15px}#sq_audit .sq_audit_send_email_title{display:block;font-size:25px;color:#a8a8a8;text-shadow:1px 1px #fff;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#fff');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#fff')";margin:12px 0}#sq_audit .sq_audit_send_email_text{display:block;font-size:16px;line-height:20px;color:#333;width:365px}#sq_audit .sq_audit_download_button,#sq_audit .sq_audit_send_email_button{display:block;font-size:14px;font-weight:700;padding:11px 24px;color:#fff;width:auto;height:auto;background-color:#bb0d0c;margin-top:15px;border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px;box-shadow:1px 1px 0 0 #fff;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color='#fff');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=270, Color='#fff')";text-decoration:none;cursor:pointer}#sq_audit .sq_audit_send_email_button .at-icon-wrapper{background-color:#bb0d0c!important;line-height:24px!important;height:16px!important;width:16px!important}#sq_audit .sq_audit_send_email_button span{background:0 0;text-decoration:none;width:0;height:0;margin-right:2px}#sq_audit .sq_back_to_top{font-size:18px;margin-top:29px;cursor:pointer}#sq_audit .sq_list_error_title,#sq_audit .sq_list_success_title{display:block;font-size:20px;color:#333;height:35px;width:100%;margin:30px 0 10px;border-bottom:5px solid #ccc}#sq_audit .sq_list_error,#sq_audit .sq_list_success{display:block;font-size:15px;font-weight:400;margin-left:0;margin-top:5px;max-height:500px;overflow-y:auto}#sq_audit .sq_list_success{color:#333}#sq_audit .sq_list_error{color:#f7681a}#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value .sq_list_error,#sq_audit .sq_audit_tasks_row .sq_audit_tasks_value .sq_list_success{font-style:italic}#sq_audit .sq_rank_sprite{float:left;display:block;margin:4px;background:url(../img/sprite.png) no-repeat;background-position:20px 0;width:20px;height:20px}#sq_audit .sq_rank_flag_facebook{background-position:-10px -253px}#sq_audit .sq_rank_flag_facebook_like{background-position:-212px -253px}#sq_audit .sq_rank_flag_twitter{background-position:-53px -253px}#sq_audit .sq_rank_flag_googleplus{background-position:-31px -253px}#sq_audit .sq_rank_flag_pinterest{background-position:-74px -253px}#sq_audit .sq_rank_flag_stumbleupon{background-position:-190px -253px}#sq_audit .sq_rank_flag_linkedin{background-position:-231px -253px}#sq_audit .sq_rank_flag_reddit{background-position:-250px -253px}#sq_audit .sq_rank_flag_delicious{background-position:-293px -253px}#sq_audit .sq_audit_todo{position:relative;page-break-before:always}#sq_audit .sq_audit_todo ul,li{list-style:none}#sq_audit .sq_audit_todo ul{overflow:hidden;padding:20px 10px;margin:30px 0}#sq_audit .sq_audit_todo .pin{display:block;border-radius:25px;-webkit-border-radius:25px;-moz-box-border-radius:25px;width:20px;height:20px;-webkit-box-shadow:0 3px 6px rgba(0,0,0,.55);-moz-box-shadow:0 3px 6px rgba(0,0,0,.55);box-shadow:0 3px 6px rgba(0,0,0,.55);margin:2px auto 0}#sq_audit .sq_audit_todo ul li a{text-decoration:none;color:#000;background:#ffc;display:block;height:10em;width:10em;padding:1em;-moz-box-shadow:5px 5px 7px #212121;-webkit-box-shadow:5px 5px 7px rgba(33,33,33,.7);box-shadow:5px 5px 7px rgba(33,33,33,.7);-moz-transition:-moz-transform .15s linear;-o-transition:-o-transform .15s linear;-webkit-transition:-webkit-transform .15s linear}#sq_audit .sq_audit_todo ul li{margin:7px;float:left}#sq_audit .sq_audit_todo ul li p{font-family:Cambria,Georgia,serif;font-size:17px;clear:both;margin-top:25px;-webkit-font-smoothing:antialiased}#sq_audit .sq_audit_todo ul li:nth-child(n) a{transform:rotate(-2deg);-o-transform:rotate(-2deg);-webkit-transform:rotate(-2deg);-moz-transform:rotate(-2deg);-webkit-backface-visibility:hidden;color:#999;top:-10px;background:#cfc}#sq_audit .sq_audit_todo ul li:nth-child(2n) a{transform:rotate(1deg);-o-transform:rotate(1deg);-webkit-transform:rotate(1deg);-moz-transform:rotate(1deg);-webkit-backface-visibility:hidden;color:#999;background:#f8cdcd}#sq_audit .sq_audit_todo ul li:nth-child(3n) a{transform:rotate(-1deg);-o-transform:rotate(-1deg);-webkit-transform:rotate(-1deg);-moz-transform:rotate(-1deg);-webkit-backface-visibility:hidden;color:#999;top:-2px;background:#ccf}#sq_audit .sq_audit_todo ul li:nth-child(4n) a{transform:rotate(2deg);-o-transform:rotate(2deg);-webkit-transform:rotate(2deg);-moz-transform:rotate(2deg);-webkit-backface-visibility:hidden;color:#999;top:3px}#sq_audit .sq_audit_todo ul li a:focus,#sq_audit .sq_audit_todo ul li a:hover{box-shadow:10px 10px 7px rgba(0,0,0,.7);-moz-box-shadow:10px 10px 7px rgba(0,0,0,.7);-webkit-box-shadow:10px 10px 7px rgba(0,0,0,.7);transform:scale(1.1) rotate(0deg);-webkit-transform:scale(1.1) rotate(0deg);-moz-transform:scale(1.1) rotate(0deg);-o-transform:scale(1.1) rotate(0deg);color:#333;position:relative;z-index:5}#sq_audit .sq_audit_todo_preview{position:absolute!important;top:0;left:0;width:900px;padding:15px;border:11px solid #d3d3d3!important;border-radius:5px;background-color:#fff;z-index:1002;overflow:auto}#sq_audit .sq_audit_todo_done{float:right;margin:0 14px;padding:7px 0;font-size:16px;cursor:pointer;line-height:20px}#sq_audit .sq_audit_todo_close{float:right;background-color:gray;border:1px solid gray!important;padding:7px 18px;color:#fff;font-size:18px;font-weight:700;border-radius:5px;text-shadow:1px 1px #555;cursor:pointer}#sq_audit .sq_audit_todo_done span{display:block;float:left;width:25px;height:25px;background:url(../img/audit_sprite.png) no-repeat;background-position:-656px -464px;margin-right:5px;margin-top:0}#sq_audit .sq_audit_todo_done span.clicked{background-position:-689px -464px}#sq_audit .sq_audit_todo_seeall{cursor:pointer;margin-right:15px;font-size:12px;float:right}.black_overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;z-index:1001;-moz-opacity:.8;opacity:.8;filter:alpha(opacity=80)}#sq_audit_loading{position:absolute;width:400px;height:80px;padding:20px 15px;border:11px solid #d3d3d3!important;border-radius:5px;background-color:#fff;z-index:1002;overflow:auto}#sq_audit_loading span{display:block;margin:5px 0}#sq_audit_loading #progressBar{width:400px;height:22px;border:1px solid #111;background-color:#f1f1f1}#sq_audit_loading #progressBar div{height:100%;color:#fff;text-align:right;line-height:22px;width:0;background-color:#4f1440}#sq_audit .table_vals th{padding:10px;font-size:14px;min-width:75px}#sq_audit .table_vals td{font-size:14px;padding:5px 9px;text-overflow:ellipsis;overflow-x:hidden;overflow-y:auto;white-space:nowrap}#sq_audit .sq_custom{text-align:center;margin:22px 50px 150px}#sq_audit .sq_custom .sq_header{text-align:center;font-size:20px;line-height:24px;margin:5px}#sq_audit .sq_custom .sq_body{margin:19px}#sq_audit .sq_custom .sq_body li{text-align:center}#sq_audit .sq_custom .sq_body li:nth-child(2){font-size:28px;line-height:45px}#sq_audit .sq_custom .sq_body li:nth-child(2) label{vertical-align:top;margin-right:6px;font-size:28px;line-height:45px}#sq_audit .sq_custom .sq_body li:nth-child(2) input{line-height:33px;font-size:25px;color:green;width:343px}#sq_audit .sq_custom .sq_body li:nth-child(4){margin:20px}#sq_audit .addthis_button_email .at-icon-wrapper{display:none}#sq_audit .sq_audit_send_email .btn{width:170px}#sq_audit .sq_audit_footer{width:750px;margin:0 auto;padding:80px 0}#sq_audit .sq_audit_footer span{display:block;float:left;font-size:21px;font-weight:700;line-height:20px;margin-top:27px;color:green;text-shadow:1px 1px #fff}#sq_audit .sq_audit_footer .sq_audit_footer_todo{display:block;float:left;width:297px;height:95px;background:url(../img/audit_sprite.png) no-repeat;background-position:-15px -534px;margin:1px 0 0 25px;cursor:pointer}#topcontrol span{display:block;width:30px;height:30px;font-size:16px;margin:0;border:0;background:url(../img/audit_sprite.png) repeat-x;background-position:-474px -496px;cursor:pointer}@media print{#sq_audit .sq_second_column{width:auto!important}#sq_audit .sq_audit_margin_header{padding-bottom:50px!important}#sq_audit .persist-area{padding-top:50px!important;page-break-after:always!important}#sq_audit{position:relative;padding-top:100px!important}#sq_wrap .sq_col{position:relative;display:block;max-width:1020px;margin:0 auto!important}#sq_audit .sq_audit_footer,#sq_audit .sq_audit_send_email,#sq_audit .sq_audit_todo,#sq_audit .sq_third_column,#sq_wrap .sq_col_side,#sq_wrap .sq_nav{display:none!important}}@media only screen and (max-width:1240px){.stickThis.stick{position:relative!important;width:auto!important}}@media only screen and (max-width:1024px){#sq_audit .sq_audit_header .sq_audit_header_text{margin:10px 5px 4px!important}#sq_audit .sq_audit_header .sq_audit_header_domain{max-width:330px!important}#sq_audit .sq_audit_header .sq_audit_header_preview{width:285px!important}}
|
view/assets/css/bootstrap.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@-webkit-keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}:root{--blue: #007bff;--indigo: #6610f2;--purple: #6f42c1;--pink: #e83e8c;--red: #dc3545;--orange: #fd7e14;--yellow: #ffc107;--green: #28a745;--teal: #20c997;--cyan: #17a2b8;--white: #fff;--gray: #6c757d;--gray-dark: #343a40;--primary: #007bff;--secondary: #6c757d;--success: #28a745;--info: #17a2b8;--warning: #ffc107;--danger: #dc3545;--light: #f8f9fa;--dark: #343a40;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}address,hr{margin-bottom:1rem}hr{box-sizing:content-box;height:0;overflow:visible;margin-top:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}dl,h1,h2,h3,h4,h5,h6,ol,p,ul{margin-top:0}dl,ol,p,ul{margin-bottom:1rem}abbr[data-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{font-style:normal;line-height:inherit}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote,figure{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}samp{font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar;display:block;font-size:87.5%;color:#212529}img,svg{vertical-align:middle}img{border-style:none}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.display-1,.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;line-height:1.2}.display-2,.display-3,.display-4{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3,.display-4{font-size:4.5rem}.display-4{font-size:3.5rem}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code,kbd{font-size:87.5%}code{color:#e83e8c;word-break:break-word}a>code,pre code{color:inherit}kbd{padding:.2rem .4rem;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre code{font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.card>hr,.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col-auto{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th,.table-dark.table-bordered{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(2.25rem + 2px);padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder,.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.custom-select.is-valid,.custom-select:valid,.form-control.is-valid,.was-validated,.was-validated .form-control:valid{border-color:#28a745}.custom-select.is-valid:focus,.custom-select:valid:focus,.form-control.is-valid:focus,.was-validated,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.custom-select:valid~.valid-feedback,.custom-select:valid~.valid-tooltip,.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label::after,.was-validated .custom-file-input:valid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.custom-select.is-invalid,.custom-select:invalid,.form-control.is-invalid,.was-validated,.was-validated .form-control:invalid{border-color:#dc3545}.custom-select.is-invalid:focus,.custom-select:invalid:focus,.form-control.is-invalid:focus,.was-validated,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.custom-select:invalid~.invalid-feedback,.custom-select:invalid~.invalid-tooltip,.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label::after,.was-validated .custom-file-input:invalid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check,input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}@media (min-width:576px){.form-inline .form-group,.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline label{-ms-flex-pack:center;justify-content:center}.form-inline .form-group{-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-primary{color:#007bff;background-color:transparent;background-image:none;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;background-color:transparent;background-image:none;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;background-image:none;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;background-image:none;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;background-image:none;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;background-image:none;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;background-image:none;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link,.btn-link:hover{background-color:transparent}.btn-link{font-weight:400;color:#007bff}.btn-link:hover{color:#0056b3;text-decoration:underline;border-color:transparent}.btn-link.focus,.btn-link:focus{text-decoration:underline;border-color:transparent;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}.fade{transition:opacity .15s linear}@media screen and (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media screen and (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after,.dropleft .dropdown-toggle:empty::after,.dropright .dropdown-toggle:empty::after,.dropup .dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-right{right:0;left:auto}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropright .dropdown-toggle::after,.dropup .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid;vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle::before{display:inline-block;width:0;height:0;margin-right:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent;vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:0 1 auto;flex:0 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after,.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label,.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{-ms-flex-align:center;align-items:center}.input-group-append,.input-group-prepend,.input-group>.custom-file{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-prepend{margin-right:-1px}.input-group-append,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0}.custom-control-label::after,.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label::before{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#dee2e6}.custom-control-label::after{background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-lg,.custom-select-sm{height:calc(1.8125rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);font-size:125%}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(2.25rem + 2px)}.custom-file{display:inline-block;margin-bottom:0}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:focus~.custom-file-label::after{border-color:#80bdff}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-label,.custom-file-label::after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label{left:0;z-index:1;height:calc(2.25rem + 2px);background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{bottom:0;z-index:3;display:block;height:2.25rem;content:"Browse";background-color:#e9ecef;border-left:1px solid #ced4da;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;padding-left:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler:not(:disabled):not(.disabled){cursor:pointer}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0;flex:1 0 0;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0;flex:1 0 0;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-right-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-left-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child),.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion .card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion .card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion .card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion .card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.breadcrumb,.pagination{display:-ms-flexbox;display:flex;list-style:none;border-radius:.25rem}.breadcrumb{-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;background-color:#e9ecef}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{padding-left:0}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-link:not(:disabled):not(.disabled){cursor:pointer}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}.progress,.progress-bar{display:-ms-flexbox;display:flex}.progress{height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media screen and (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:not(:disabled):not(.disabled){cursor:pointer}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{color:#000;text-decoration:none;opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal,.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-25%);transform:translate(0,-25%)}@media screen and (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - (.5rem*2))}.modal-dialog-centered::before{display:block;height:calc(100vh - (.5rem*2));content:""}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem*2))}.modal-dialog-centered::before{height:calc(100vh - (1.75rem*2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip,.tooltip .arrow{position:absolute;display:block}.tooltip{z-index:1070;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover,.popover .arrow{position:absolute;display:block}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel,.carousel-inner{position:relative}.carousel-inner{width:100%;overflow:hidden}.carousel-item{position:relative;display:none;-ms-flex-align:center;align-items:center;width:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block;transition:transform .6s ease;transition:transform .6s ease,-webkit-transform .6s ease}@media screen and (prefers-reduced-motion:reduce){.carousel-item-next,.carousel-item-prev,.carousel-item.active{transition:none}}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{-webkit-transform:translateX(100%);transform:translateX(100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-right,.carousel-item-next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translateX(-100%);transform:translateX(-100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.carousel-fade .carousel-item{opacity:0;transition-duration:.6s;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:rgba(255,255,255,.5)}.carousel-indicators li::after,.carousel-indicators li::before{position:absolute;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::before{top:-10px}.carousel-indicators li::after{bottom:-10px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{clear:both}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.clearfix::after,.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-top{top:0}.fixed-bottom{bottom:0}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.text-justify{text-align:justify!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#545b62!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd}thead{display:table-header-group}blockquote,img,pre,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}
|
1 |
+
@-webkit-keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}#wpwrap *,#wpwrap ::after,#wpwrap ::before{box-sizing:border-box}body.squirrly-seo-settings{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}address,hr{margin-bottom:1rem}hr{box-sizing:content-box;height:0;overflow:visible;margin-top:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}dl,h1,h2,h3,h4,h5,h6,ol,p,ul{margin-top:0}dl,ol,p,ul{margin-bottom:1rem}abbr[data-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{font-style:normal;line-height:inherit}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote,figure{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}samp{font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar;display:block;font-size:87.5%;color:#212529}img,svg{vertical-align:middle}img{border-style:none}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.display-1,.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;line-height:1.2}.display-2,.display-3,.display-4{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3,.display-4{font-size:4.5rem}.display-4{font-size:3.5rem}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code,kbd{font-size:87.5%}code{color:#e83e8c;word-break:break-word}a>code,pre code{color:inherit}kbd{padding:.2rem .4rem;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre code{font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.card>hr,.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col-auto{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th,.table-dark.table-bordered{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(2.25rem + 2px);padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder,.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.custom-select.is-valid,.custom-select:valid,.form-control.is-valid,.was-validated,.was-validated .form-control:valid{border-color:#28a745}.custom-select.is-valid:focus,.custom-select:valid:focus,.form-control.is-valid:focus,.was-validated,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.custom-select:valid~.valid-feedback,.custom-select:valid~.valid-tooltip,.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label::after,.was-validated .custom-file-input:valid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.custom-select.is-invalid,.custom-select:invalid,.form-control.is-invalid,.was-validated,.was-validated .form-control:invalid{border-color:#dc3545}.custom-select.is-invalid:focus,.custom-select:invalid:focus,.form-control.is-invalid:focus,.was-validated,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.custom-select:invalid~.invalid-feedback,.custom-select:invalid~.invalid-tooltip,.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label::after,.was-validated .custom-file-input:invalid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check,input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}@media (min-width:576px){.form-inline .form-group,.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline label{-ms-flex-pack:center;justify-content:center}.form-inline .form-group{-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-primary{color:#007bff;background-color:transparent;background-image:none;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;background-color:transparent;background-image:none;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;background-image:none;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;background-image:none;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;background-image:none;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;background-image:none;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;background-image:none;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link,.btn-link:hover{background-color:transparent}.btn-link{font-weight:400;color:#007bff}.btn-link:hover{color:#0056b3;text-decoration:underline;border-color:transparent}.btn-link.focus,.btn-link:focus{text-decoration:underline;border-color:transparent;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}.fade{transition:opacity .15s linear}@media screen and (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media screen and (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after,.dropleft .dropdown-toggle:empty::after,.dropright .dropdown-toggle:empty::after,.dropup .dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-right{right:0;left:auto}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropright .dropdown-toggle::after,.dropup .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid;vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle::before{display:inline-block;width:0;height:0;margin-right:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent;vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:0 1 auto;flex:0 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after,.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label,.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{-ms-flex-align:center;align-items:center}.input-group-append,.input-group-prepend,.input-group>.custom-file{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-prepend{margin-right:-1px}.input-group-append,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0}.custom-control-label::after,.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label::before{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#dee2e6}.custom-control-label::after{background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-lg,.custom-select-sm{height:calc(1.8125rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);font-size:125%}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(2.25rem + 2px)}.custom-file{display:inline-block;margin-bottom:0}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:focus~.custom-file-label::after{border-color:#80bdff}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-label,.custom-file-label::after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label{left:0;z-index:1;height:calc(2.25rem + 2px);background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{bottom:0;z-index:3;display:block;height:2.25rem;content:"Browse";background-color:#e9ecef;border-left:1px solid #ced4da;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;padding-left:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler:not(:disabled):not(.disabled){cursor:pointer}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0;flex:1 0 0;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0;flex:1 0 0;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-right-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-left-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child),.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion .card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion .card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion .card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion .card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.breadcrumb,.pagination{display:-ms-flexbox;display:flex;list-style:none;border-radius:.25rem}.breadcrumb{-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;background-color:#e9ecef}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{padding-left:0}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-link:not(:disabled):not(.disabled){cursor:pointer}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}.progress,.progress-bar{display:-ms-flexbox;display:flex}.progress{height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media screen and (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:not(:disabled):not(.disabled){cursor:pointer}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{color:#000;text-decoration:none;opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal,.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-25%);transform:translate(0,-25%)}@media screen and (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - (.5rem*2))}.modal-dialog-centered::before{display:block;height:calc(100vh - (.5rem*2));content:""}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem*2))}.modal-dialog-centered::before{height:calc(100vh - (1.75rem*2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip,.tooltip .arrow{position:absolute;display:block}.tooltip{z-index:1070;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover,.popover .arrow{position:absolute;display:block}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel,.carousel-inner{position:relative}.carousel-inner{width:100%;overflow:hidden}.carousel-item{position:relative;display:none;-ms-flex-align:center;align-items:center;width:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block;transition:transform .6s ease;transition:transform .6s ease,-webkit-transform .6s ease}@media screen and (prefers-reduced-motion:reduce){.carousel-item-next,.carousel-item-prev,.carousel-item.active{transition:none}}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{-webkit-transform:translateX(100%);transform:translateX(100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-right,.carousel-item-next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translateX(-100%);transform:translateX(-100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.carousel-fade .carousel-item{opacity:0;transition-duration:.6s;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:rgba(255,255,255,.5)}.carousel-indicators li::after,.carousel-indicators li::before{position:absolute;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::before{top:-10px}.carousel-indicators li::after{bottom:-10px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{clear:both}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.clearfix::after,.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-top{top:0}.fixed-bottom{bottom:0}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.text-justify{text-align:justify!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#545b62!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd}thead{display:table-header-group}blockquote,img,pre,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}
|
view/assets/css/bootstrap.rtl.min.css
CHANGED
@@ -1,2 +1 @@
|
|
1 |
-
@-webkit-keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}:root{--blue: #007bff;--indigo: #6610f2;--purple: #6f42c1;--pink: #e83e8c;--red: #dc3545;--orange: #fd7e14;--yellow: #ffc107;--green: #28a745;--teal: #20c997;--cyan: #17a2b8;--white: #fff;--gray: #6c757d;--gray-dark: #343a40;--primary: #007bff;--secondary: #6c757d;--success: #28a745;--info: #17a2b8;--warning: #ffc107;--danger: #dc3545;--light: #f8f9fa;--dark: #343a40;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace
|
2 |
-
}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:right;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}address,hr{margin-bottom:1rem}hr{box-sizing:content-box;height:0;overflow:visible;margin-top:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}dl,h1,h2,h3,h4,h5,h6,ol,p,ul{margin-top:0}dl,ol,p,ul{margin-bottom:1rem}abbr[data-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{font-style:normal;line-height:inherit}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-right:0}blockquote,figure{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;direction:ltr;unicode-bidi:bidi-override}samp{font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar;display:block;font-size:87.5%;color:#212529}img,svg{vertical-align:middle}img{border-style:none}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:right;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.display-1,.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;line-height:1.2}.display-2,.display-3,.display-4{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3,.display-4{font-size:4.5rem}.display-4{font-size:3.5rem}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-right:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-left:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code,kbd{font-size:87.5%}code{color:#e83e8c;word-break:break-word}a>code,pre code{color:inherit}kbd{padding:.2rem .4rem;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre code{font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-left:15px;padding-right:15px;margin-left:auto;margin-right:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-left:15px;padding-right:15px;margin-left:auto;margin-right:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-right:-15px}.card>hr,.no-gutters{margin-left:0;margin-right:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-left:0;padding-right:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{position:relative;width:100%;min-height:1px;padding-left:15px;padding-right:15px}.col-auto{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-left:15px;padding-right:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-right:8.333333%}.offset-2{margin-right:16.666667%}.offset-3{margin-right:25%}.offset-4{margin-right:33.333333%}.offset-5{margin-right:41.666667%}.offset-6{margin-right:50%}.offset-7{margin-right:58.333333%}.offset-8{margin-right:66.666667%}.offset-9{margin-right:75%}.offset-10{margin-right:83.333333%}.offset-11{margin-right:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-right:0}.offset-sm-1{margin-right:8.333333%}.offset-sm-2{margin-right:16.666667%}.offset-sm-3{margin-right:25%}.offset-sm-4{margin-right:33.333333%}.offset-sm-5{margin-right:41.666667%}.offset-sm-6{margin-right:50%}.offset-sm-7{margin-right:58.333333%}.offset-sm-8{margin-right:66.666667%}.offset-sm-9{margin-right:75%}.offset-sm-10{margin-right:83.333333%}.offset-sm-11{margin-right:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-right:0}.offset-md-1{margin-right:8.333333%}.offset-md-2{margin-right:16.666667%}.offset-md-3{margin-right:25%}.offset-md-4{margin-right:33.333333%}.offset-md-5{margin-right:41.666667%}.offset-md-6{margin-right:50%}.offset-md-7{margin-right:58.333333%}.offset-md-8{margin-right:66.666667%}.offset-md-9{margin-right:75%}.offset-md-10{margin-right:83.333333%}.offset-md-11{margin-right:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-right:0}.offset-lg-1{margin-right:8.333333%}.offset-lg-2{margin-right:16.666667%}.offset-lg-3{margin-right:25%}.offset-lg-4{margin-right:33.333333%}.offset-lg-5{margin-right:41.666667%}.offset-lg-6{margin-right:50%}.offset-lg-7{margin-right:58.333333%}.offset-lg-8{margin-right:66.666667%}.offset-lg-9{margin-right:75%}.offset-lg-10{margin-right:83.333333%}.offset-lg-11{margin-right:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-right:0}.offset-xl-1{margin-right:8.333333%}.offset-xl-2{margin-right:16.666667%}.offset-xl-3{margin-right:25%}.offset-xl-4{margin-right:33.333333%}.offset-xl-5{margin-right:41.666667%}.offset-xl-6{margin-right:50%}.offset-xl-7{margin-right:58.333333%}.offset-xl-8{margin-right:66.666667%}.offset-xl-9{margin-right:75%}.offset-xl-10{margin-right:83.333333%}.offset-xl-11{margin-right:91.666667%}}.table{width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th,.table-dark.table-bordered{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(2.25rem + 2px);padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder,.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-5px;margin-right:-5px}.form-row>.col,.form-row>[class*=col-]{padding-left:5px;padding-right:5px}.form-check{position:relative;display:block;padding-right:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-right:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-right:0;margin-left:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-left:.3125rem;margin-right:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.custom-select.is-valid,.form-control.is-valid,.was-validated .custom-select:valid,.was-validated .form-control:valid{border-color:#28a745}.custom-select.is-valid:focus,.form-control.is-valid:focus,.was-validated .custom-select:valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label::after,.was-validated .custom-file-input:valid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.custom-select.is-invalid,.form-control.is-invalid,.was-validated .custom-select:invalid,.was-validated .form-control:invalid{border-color:#dc3545}.custom-select.is-invalid:focus,.form-control.is-invalid:focus,.was-validated .custom-select:invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label::after,.was-validated .custom-file-input:invalid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check,input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}@media (min-width:576px){.form-inline .form-group,.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline label{-ms-flex-pack:center;justify-content:center}.form-inline .form-group{-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-right:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-left:.25rem;margin-right:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-primary{color:#007bff;background-color:transparent;background-image:none;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;background-color:transparent;background-image:none;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;background-image:none;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;background-image:none;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;background-image:none;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;background-image:none;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;background-image:none;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link,.btn-link:hover{background-color:transparent}.btn-link{font-weight:400;color:#007bff}.btn-link:hover{color:#0056b3;text-decoration:underline;border-color:transparent}.btn-link.focus,.btn-link:focus{text-decoration:underline;border-color:transparent;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}.fade{transition:opacity .15s linear}@media screen and (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media screen and (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-left:.3em solid transparent;border-bottom:0;border-right:.3em solid transparent}.dropdown-toggle:empty::after,.dropleft .dropdown-toggle:empty::after,.dropright .dropdown-toggle:empty::after,.dropup .dropdown-toggle:empty::after{margin-right:0}.dropdown-menu{position:absolute;top:100%;left:auto;z-index:1000;display:none;float:right;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:right;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-right{left:0;right:auto}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropright .dropdown-toggle::after,.dropup .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-right:.255em;vertical-align:.255em;content:"";border-top:0;border-left:.3em solid transparent;border-bottom:.3em solid;border-right:.3em solid transparent}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-right:.125rem}.dropright .dropdown-toggle::after{border-top:.3em solid transparent;border-left:0;border-bottom:.3em solid transparent;border-right:.3em solid;vertical-align:0}.dropleft .dropdown-menu{top:0;left:100%;right:auto;margin-top:0;margin-left:.125rem}.dropleft .dropdown-toggle::after{width:0;height:0;margin-right:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle::before{display:inline-block;width:0;height:0;margin-left:.255em;content:"";border-top:.3em solid transparent;border-left:.3em solid;border-bottom:.3em solid transparent;vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{left:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:0 1 auto;flex:0 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-right:-1px}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:first-child{margin-right:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-right-radius:0;border-bottom-right-radius:0}.dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-right:0}.dropleft .dropdown-toggle-split::before{margin-left:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-right:0}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-right-radius:0;border-top-left-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-right:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after,.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label,.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file{-ms-flex-align:center;align-items:center}.input-group-append,.input-group-prepend,.input-group>.custom-file{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-prepend{margin-left:-1px}.input-group-append,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-right:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-right:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-left:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0}.custom-control-label::after,.custom-control-label::before{position:absolute;top:.25rem;right:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label::before{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#dee2e6}.custom-control-label::after{background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(2.25rem + 2px);padding:.375rem .75rem .375rem 1.75rem;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat left .75rem center;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-left:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-lg,.custom-select-sm{height:calc(1.8125rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);font-size:125%}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(2.25rem + 2px)}.custom-file{display:inline-block;margin-bottom:0}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:focus~.custom-file-label::after{border-color:#80bdff}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-label,.custom-file-label::after{position:absolute;top:0;left:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label{right:0;z-index:1;height:calc(2.25rem + 2px);background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{bottom:0;z-index:3;display:block;height:2.25rem;content:"Browse";background-color:#e9ecef;border-right:1px solid #ced4da;border-radius:.25rem 0 0 .25rem}.custom-range{width:100%;padding-right:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-left:.2rem;margin-right:.2rem;background-color:#007bff;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-left:15px;background-color:#dee2e6;border-radius:1rem}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-right:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-right-radius:.25rem;border-top-left-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-left:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-right:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-left:0;padding-right:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler:not(:disabled):not(.disabled){cursor:pointer}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-left:0;padding-right:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-left:0;padding-right:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-left:0;padding-right:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-left:0;padding-right:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-left:0;padding-right:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>.list-group:first-child .list-group-item:first-child{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-right:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-left:-.625rem;margin-right:-.625rem}.card-img-overlay{position:absolute;top:0;left:0;bottom:0;right:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-right-radius:calc(.25rem - 1px);border-top-left-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;flex-flow:row wrap;margin-left:-15px;margin-right:-15px}.card-deck .card{display:-ms-flexbox;display:flex;-ms-flex:1 0 0;flex:1 0 0;-ms-flex-direction:column;flex-direction:column;margin-left:15px;margin-bottom:0;margin-right:15px}}.card-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0;flex:1 0 0;margin-bottom:0}.card-group>.card+.card{margin-right:0;border-right:0}.card-group>.card:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-left-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:last-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-right-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child),.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion .card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion .card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion .card:first-of-type{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.accordion .card:last-of-type{border-top-right-radius:0;border-top-left-radius:0}.breadcrumb,.pagination{display:-ms-flexbox;display:flex;list-style:none;border-radius:.25rem}.breadcrumb{-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;background-color:#e9ecef}.breadcrumb-item+.breadcrumb-item{padding-right:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-left:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{padding-right:0}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-right:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-link:not(:disabled):not(.disabled){cursor:pointer}.page-item:first-child .page-link{margin-right:0;border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item:last-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-left:.6em;padding-right:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-left:0;padding-right:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-left:4rem}.alert-dismissible .close{position:absolute;top:0;left:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}.progress,.progress-bar{display:-ms-flexbox;display:flex}.progress{height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media screen and (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-right:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-right-radius:.25rem;border-top-left-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-flush .list-group-item{border-left:0;border-right:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:left;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:not(:disabled):not(.disabled){cursor:pointer}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{color:#000;text-decoration:none;opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal,.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;bottom:0;right:0;z-index:1050;display:none;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-25%);transform:translate(0,-25%)}@media screen and (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - (.5rem*2))}.modal-dialog-centered::before{display:block;height:calc(100vh - (.5rem*2));content:""}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-right-radius:.3rem;border-top-left-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem auto -1rem -1rem}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.modal-footer>:not(:first-child){margin-right:.25rem}.modal-footer>:not(:last-child){margin-left:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem*2))}.modal-dialog-centered::before{height:calc(100vh - (1.75rem*2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip,.tooltip .arrow{position:absolute;display:block}.tooltip{z-index:1070;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:right;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover,.popover .arrow{position:absolute;display:block}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:right;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px)*-1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;right:50%;display:block;width:1rem;margin-right:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px)*-1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-right-radius:calc(.3rem - 1px);border-top-left-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel,.carousel-inner{position:relative}.carousel-inner{width:100%;overflow:hidden}.carousel-item{position:relative;display:none;-ms-flex-align:center;align-items:center;width:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block;transition:transform .6s ease;transition:transform .6s ease,-webkit-transform .6s ease}@media screen and (prefers-reduced-motion:reduce){.carousel-item-next,.carousel-item-prev,.carousel-item.active{transition:none}}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{-webkit-transform:translateX(-100%);transform:translateX(-100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-right,.carousel-item-next{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translateX(100%);transform:translateX(100%)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.carousel-fade .carousel-item{opacity:0;transition-duration:.6s;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{right:0}.carousel-control-next{left:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;left:0;bottom:10px;right:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-right:0;margin-left:15%;margin-right:15%;list-style:none}.carousel-indicators li{position:relative;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-left:3px;margin-right:3px;text-indent:-999px;cursor:pointer;background-color:rgba(255,255,255,.5)}.carousel-indicators li::after,.carousel-indicators li::before{position:absolute;right:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::before{top:-10px}.carousel-indicators li::after{bottom:-10px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;left:15%;bottom:20px;right:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-left:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-right:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-left:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-right:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-right,.rounded-top{border-top-left-radius:.25rem!important}.rounded-top{border-top-right-radius:.25rem!important}.rounded-right{border-bottom-left-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-right-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{clear:both}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.clearfix::after,.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;right:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self
|
|
|
|