Version Description
- Updated 20/10/2020
- Update getting started page to include a CTA to open FooBox demo
- Added new setting to force the FooBox trial notice admin banner to never show
- Updated settings page with ratings CTA and included details of other plugins
Download this release
Release Info
Developer | bradvin |
Plugin | FooBox Image Lightbox WordPress Plugin |
Version | 2.7.15 |
Comparing to | |
See all releases |
Code changes from version 2.7.11 to 2.7.15
- foobox-free.php +3 -3
- free/css/admin-foobox_page_foobox-settings.css +1 -4
- free/css/font/foobox.eot +0 -0
- free/css/font/foobox.svg +0 -80
- free/css/font/foobox.ttf +0 -0
- free/css/font/foobox.woff +0 -0
- free/css/foobox.free.min.css +1 -1
- free/css/foobox.noie7.min.css +0 -8
- free/foobox-free.php +21 -6
- free/includes/class-script-generator.php +0 -3
- free/includes/class-settings.php +93 -8
- free/includes/foopluginbase/views/settings.php +3 -1
- free/includes/view-getting-started.php +11 -3
- free/js/foobox.free.min.js +5 -4
- freemius/assets/css/admin/account.css +1 -1
- freemius/assets/css/admin/add-ons.css +1 -1
- freemius/assets/css/admin/common.css +2 -2
- freemius/assets/css/admin/connect.css +1 -1
- freemius/assets/css/admin/debug.css +1 -1
- freemius/assets/css/admin/dialog-boxes.css +2 -2
- freemius/assets/css/admin/plugins.css +1 -1
- freemius/assets/css/customizer.css +1 -1
- freemius/includes/class-freemius.php +733 -99
- freemius/includes/class-fs-api.php +1 -1
- freemius/includes/class-fs-storage.php +1 -0
- freemius/includes/customizer/class-fs-customizer-support-section.php +2 -2
- freemius/includes/customizer/class-fs-customizer-upsell-control.php +160 -160
- freemius/includes/entities/class-fs-entity.php +158 -158
- freemius/includes/entities/class-fs-payment.php +2 -2
- freemius/includes/entities/class-fs-plugin-license.php +330 -323
- freemius/includes/entities/class-fs-plugin.php +158 -158
- freemius/includes/entities/class-fs-pricing.php +156 -156
- freemius/includes/entities/class-fs-site.php +235 -232
- freemius/includes/entities/class-fs-subscription.php +146 -146
- freemius/includes/fs-essential-functions.php +37 -20
- freemius/includes/fs-plugin-info-dialog.php +20 -13
- freemius/includes/managers/class-fs-admin-menu-manager.php +1005 -1000
- freemius/includes/managers/class-fs-cache-manager.php +325 -325
- freemius/includes/managers/class-fs-option-manager.php +521 -521
- freemius/includes/sdk/FreemiusBase.php +1 -1
- freemius/includes/sdk/FreemiusWordPress.php +15 -11
- freemius/includes/supplements/fs-essential-functions-1.1.7.1.php +1 -1
- freemius/languages/freemius-cs_CZ.po +0 -2546
- freemius/languages/freemius-da_DK.mo +0 -0
- freemius/languages/freemius-da_DK.po +0 -2548
- freemius/languages/freemius-en.mo +0 -0
- freemius/languages/freemius-en.po +0 -2422
- freemius/languages/freemius-es_ES.mo +0 -0
- freemius/languages/freemius-es_ES.po +0 -816
foobox-free.php
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
|
3 |
/*
|
4 |
Plugin Name: FooBox Image Lightbox
|
5 |
-
Plugin URI: http://fooplugins.com/
|
6 |
Description: The best responsive lightbox for WordPress.
|
7 |
-
Version: 2.7.
|
8 |
Author: FooPlugins
|
9 |
Author URI: http://fooplugins.com
|
10 |
License: GPL2
|
@@ -24,7 +24,7 @@ if ( function_exists( 'foobox_fs' ) ) {
|
|
24 |
define( 'FOOBOX_BASE_ACTIVATION_REDIRECT_TRANSIENT_KEY', '_foobox_activation_redirect' );
|
25 |
define( 'FOOBOX_BASE_PATH', plugin_dir_path( __FILE__ ) );
|
26 |
define( 'FOOBOX_BASE_URL', plugin_dir_url( __FILE__ ) );
|
27 |
-
define( 'FOOBOX_BASE_VERSION', '2.7.
|
28 |
// Create a helper function for easy SDK access.
|
29 |
function foobox_fs()
|
30 |
{
|
2 |
|
3 |
/*
|
4 |
Plugin Name: FooBox Image Lightbox
|
5 |
+
Plugin URI: http://fooplugins.com/foobox/
|
6 |
Description: The best responsive lightbox for WordPress.
|
7 |
+
Version: 2.7.15
|
8 |
Author: FooPlugins
|
9 |
Author URI: http://fooplugins.com
|
10 |
License: GPL2
|
24 |
define( 'FOOBOX_BASE_ACTIVATION_REDIRECT_TRANSIENT_KEY', '_foobox_activation_redirect' );
|
25 |
define( 'FOOBOX_BASE_PATH', plugin_dir_path( __FILE__ ) );
|
26 |
define( 'FOOBOX_BASE_URL', plugin_dir_url( __FILE__ ) );
|
27 |
+
define( 'FOOBOX_BASE_VERSION', '2.7.15' );
|
28 |
// Create a helper function for easy SDK access.
|
29 |
function foobox_fs()
|
30 |
{
|
free/css/admin-foobox_page_foobox-settings.css
CHANGED
@@ -65,11 +65,8 @@ a.nav-tab:focus {
|
|
65 |
}
|
66 |
|
67 |
#foobox-free-settings-sidebar {
|
68 |
-
margin: 0;
|
69 |
-
width:250px;
|
70 |
-
padding: 0 0 0 20px;
|
71 |
position: absolute;
|
72 |
-
right:
|
73 |
}
|
74 |
|
75 |
#foobox-free-settings-header {
|
65 |
}
|
66 |
|
67 |
#foobox-free-settings-sidebar {
|
|
|
|
|
|
|
68 |
position: absolute;
|
69 |
+
right: 10px;
|
70 |
}
|
71 |
|
72 |
#foobox-free-settings-header {
|
free/css/font/foobox.eot
DELETED
Binary file
|
free/css/font/foobox.svg
DELETED
@@ -1,80 +0,0 @@
|
|
1 |
-
<?xml version="1.0" standalone="no"?>
|
2 |
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
-
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
-
<metadata>Generated by IcoMoon</metadata>
|
5 |
-
<defs>
|
6 |
-
<font id="foobox" horiz-adv-x="1024">
|
7 |
-
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
8 |
-
<missing-glyph horiz-adv-x="1024" />
|
9 |
-
<glyph unicode=" " horiz-adv-x="512" d="" />
|
10 |
-
<glyph unicode="/" glyph-name="stumble-upon" horiz-adv-x="1340" d="M0 249.344v185.344h229.376v-183.296q0-28.672 20.48-49.664t50.176-20.992 50.688 20.48 20.992 50.176v433.152q0 119.808 88.576 204.288t210.432 84.48 210.432-84.992 88.576-205.824v-94.208l-137.216-40.96-91.136 43.008v81.92q0 29.696-20.48 50.176t-50.176 20.48-50.688-20.48-20.992-50.176v-427.008q0-122.88-88.064-209.408t-210.944-86.528q-123.904 0-211.968 87.552t-88.064 212.48zM741.376 246.272v187.392l91.136-43.008 137.216 40.96v-188.416q0-29.696 20.48-50.688t50.176-20.992 50.176 20.992 20.48 50.688v191.488h229.376v-185.344q0-123.904-87.552-211.968t-211.456-88.064-211.968 87.040-88.064 209.92z" />
|
11 |
-
<glyph unicode=";" glyph-name="digg" horiz-adv-x="1148" d="M-1.024 189.952v380.928q0 13.312 13.312 13.312h180.224v132.096q0 14.336 13.312 14.336h100.352v-526.336q0-14.336-12.288-14.336h-294.912zM110.592 274.944h68.608q13.312 0 13.312 14.336v210.944h-68.608q-13.312 0-13.312-14.336v-210.944zM340.992 189.952v380.928q0 13.312 13.312 13.312h100.352v-379.904q0-14.336-12.288-14.336h-101.376zM340.992 645.632v70.656q0 14.336 12.288 14.336h101.376v-70.656q0-14.336-12.288-14.336h-101.376zM493.568 189.952v380.928q0 13.312 13.312 13.312h294.912v-516.096q0-13.312-13.312-13.312h-294.912l1.024 70.656q0 14.336 12.288 14.336h180.224v50.176h-193.536zM606.208 274.944h68.608q12.288 0 12.288 14.336v210.944h-68.608q-12.288 0-12.288-14.336v-210.944zM840.704 125.44q0 14.336 13.312 14.336h180.224v50.176h-193.536v380.928q0 13.312 13.312 13.312h293.888v-516.096q0-13.312-12.288-13.312h-294.912v70.656zM952.32 274.944h68.608q13.312 0 13.312 14.336v210.944h-68.608q-13.312 0-13.312-14.336v-210.944z" />
|
12 |
-
<glyph unicode=">" glyph-name="reddit" horiz-adv-x="1232" d="M0 467.456q0 63.488 50.688 108.544t115.2 45.056q63.488 0 107.52-36.864h5.12q137.216 83.968 343.040 83.968l5.12 4.096 71.68 273.408 247.808-36.864q0-1.024 2.048-1.024 1.024 0 0 1.024 2.048 1.024 11.776 15.872t14.848 18.944q34.816 32.768 83.968 32.768 50.176 0 84.48-33.28t34.304-83.456-34.304-86.016-84.48-35.84q-58.368 0-89.088 39.424t-30.72 98.816q-2.048-1.024-99.84 13.312t-112.128 17.408h-3.072q-2.048-2.048-16.896-54.784t-30.72-111.616-17.92-65.024v-3.072l5.12-4.096q73.728 0 151.040-20.992t133.632-58.88l3.072-2.048q1.024 1.024 2.048 1.024t2.048 1.024q25.6 18.432 36.352 25.6t30.208 13.312 44.032 6.144q69.632 0 118.784-49.152t49.152-119.808q0-48.128-27.136-88.064t-71.168-61.44q0-199.68-266.24-310.272-41.984-18.432-57.344-23.552-32.768-10.24-93.184-19.456t-95.232-9.216q-122.88 0-236.544 35.84-2.048 2.048-73.728 38.912-97.28 52.224-156.16 118.784t-58.88 159.744h-5.12q-33.792 17.408-60.416 51.2l-9.216 12.288q-15.36 27.648-19.456 46.592t-4.096 51.712zM34.816 455.168q0-67.584 58.368-114.688 5.12 60.416 49.152 118.784t103.424 103.424q-37.888 26.624-83.968 26.624-50.176 0-88.576-41.472t-38.4-92.672zM139.264 305.664q0-55.296 31.744-106.496t81.408-87.552 104.96-60.928 107.52-34.816q76.8-14.336 149.504-14.336 125.952 0 238.592 40.448t189.44 125.44h-3.072q30.72 38.912 44.032 70.144t13.312 74.24q0 55.296-27.136 105.472t-71.168 86.016-94.208 61.952-102.4 39.424q-87.040 23.552-185.344 23.552-75.776 0-155.136-18.432t-153.6-55.296-121.344-101.888-47.104-146.944zM329.728 380.416q0 37.888 23.040 60.928t60.928 23.040 63.488-23.040 25.6-60.928q0-36.864-26.112-61.44t-62.976-24.576-60.416 24.576-23.552 61.44zM366.592 212.48h45.056q25.6-46.080 81.408-70.144t114.176-24.064q59.392 0 112.64 24.064t86.016 70.144h41.984q-25.6-63.488-95.232-98.304t-145.408-34.816q-73.728 0-144.896 35.328t-95.744 97.792zM710.656 380.416q0 38.912 23.552 61.44t62.464 22.528q34.816 0 59.392-24.576t24.576-59.392-24.576-60.416-59.392-25.6q-37.888 0-61.952 24.064t-24.064 61.952zM971.776 859.648q0-35.84 25.6-61.44t61.44-25.6q36.864 0 60.416 25.088t23.552 61.952q0 34.816-24.576 59.392t-59.392 24.576-60.928-25.088-26.112-58.88zM986.112 571.904q56.32-36.864 97.28-94.72t57.344-122.368q60.416 44.032 60.416 98.304 0 59.392-36.352 102.4t-94.72 43.008q-46.080 0-83.968-26.624z" />
|
13 |
-
<glyph unicode="t" glyph-name="tumbler" horiz-adv-x="630" d="M0 556.544v145.408q61.44 20.48 103.424 56.32 41.984 33.792 68.608 88.064 26.624 52.224 35.84 130.048h146.432v-259.072h242.688v-160.768h-242.688v-262.144q0-88.064 9.216-114.688 9.216-24.576 34.816-39.936 34.816-20.48 77.824-20.48 78.848 0 154.624 50.176v-160.768q-64.512-31.744-118.784-44.032-53.248-12.288-114.688-12.288-69.632 0-124.928 17.408-56.32 19.456-91.136 51.2-36.864 31.744-53.248 69.632-14.336 34.816-14.336 107.52v358.4h-113.664z" />
|
14 |
-
<glyph unicode="" glyph-name="arrows-default-prev" horiz-adv-x="876" d="M876.856 448v-73.142q0-30.286-18.572-51.714t-48.286-21.428h-402.286l167.428-168q21.714-20.572 21.714-51.428t-21.714-51.428l-42.858-43.428q-21.142-21.142-51.428-21.142-29.714 0-52 21.142l-372 372.572q-21.142 21.142-21.142 51.428 0 29.714 21.142 52l372 371.428q21.714 21.714 52 21.714 29.714 0 51.428-21.714l42.858-42.286q21.714-21.714 21.714-52t-21.714-52l-167.428-167.428h402.286q29.714 0 48.286-21.428t18.572-51.714z" />
|
15 |
-
<glyph unicode="" glyph-name="next-default-next" horiz-adv-x="876" d="M840.286 411.428q0-30.858-21.142-52l-372-372q-22.286-21.142-52-21.142-29.142 0-51.428 21.142l-42.858 42.858q-21.714 21.714-21.714 52t21.714 52l167.428 167.428h-402.286q-29.714 0-48.286 21.428t-18.572 51.714v73.142q0 30.286 18.572 51.714t48.286 21.428h402.286l-167.428 168q-21.714 20.572-21.714 51.428t21.714 51.428l42.858 42.858q21.714 21.714 51.428 21.714 30.286 0 52-21.714l372-372q21.142-20 21.142-51.428z" />
|
16 |
-
<glyph unicode="" glyph-name="close-default" horiz-adv-x="804" d="M741.428 204.572q0-22.858-16-38.858l-77.714-77.714q-16-16-38.858-16t-38.858 16l-168 168-168-168q-16-16-38.858-16t-38.858 16l-77.714 77.714q-16 16-16 38.858t16 38.858l168 168-168 168q-16 16-16 38.858t16 38.858l77.714 77.714q16 16 38.858 16t38.858-16l168-168 168 168q16 16 38.858 16t38.858-16l77.714-77.714q16-16 16-38.858t-16-38.858l-168-168 168-168q16-16 16-38.858z" />
|
17 |
-
<glyph unicode="" glyph-name="play-default" horiz-adv-x="804" d="M790.572 430.286l-758.858-421.714q-13.142-7.428-22.572-1.714t-9.428 20.572v841.142q0 14.858 9.428 20.572t22.572-1.714l758.858-421.714q13.142-7.428 13.142-17.714t-13.142-17.714z" />
|
18 |
-
<glyph unicode="" glyph-name="pause-default" horiz-adv-x="876" d="M876.856 850.286v-804.572q0-14.858-10.858-25.714t-25.714-10.858h-292.572q-14.858 0-25.714 10.858t-10.858 25.714v804.572q0 14.858 10.858 25.714t25.714 10.858h292.572q14.858 0 25.714-10.858t10.858-25.714zM364.856 850.286v-804.572q0-14.858-10.858-25.714t-25.714-10.858h-292.572q-14.858 0-25.714 10.858t-10.858 25.714v804.572q0 14.858 10.858 25.714t25.714 10.858h292.572q14.858 0 25.714-10.858t10.858-25.714z" />
|
19 |
-
<glyph unicode="" glyph-name="spinner-1" horiz-adv-x="896" d="M283.428 192q0-34.286-24.286-58.286t-58-24q-34.286 0-58.286 24t-24 58.286 24 58.286 58.286 24q33.714 0 58-24t24.286-58.286zM530.286 82.286q0-30.286-21.428-51.714t-51.714-21.428-51.714 21.428-21.428 51.714 21.428 51.714 51.714 21.428 51.714-21.428 21.428-51.714zM182.858 448q0-37.714-26.858-64.572t-64.572-26.858-64.572 26.858-26.858 64.572 26.858 64.572 64.572 26.858 64.572-26.858 26.858-64.572zM777.142 192q0-26.286-18.858-45.142t-45.142-18.858-45.142 18.858-18.858 45.142 18.858 45.142 45.142 18.858 45.142-18.858 18.858-45.142zM301.714 704q0-41.714-29.428-71.142t-71.142-29.428-71.142 29.428-29.428 71.142 29.428 71.142 71.142 29.428 71.142-29.428 29.428-71.142zM566.858 813.714q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM877.714 448q0-22.858-16-38.858t-38.858-16-38.858 16-16 38.858 16 38.858 38.858 16 38.858-16 16-38.858zM758.858 704q0-18.858-13.428-32.286t-32.286-13.428-32.286 13.428-13.428 32.286 13.428 32.286 32.286 13.428 32.286-13.428 13.428-32.286z" />
|
20 |
-
<glyph unicode="" glyph-name="google-plus" horiz-adv-x="1212" d="M0 135.786q0 89.058 91.104 158.666t220.084 69.608h55.278q-42.994 40.946-42.994 88.034 0 29.686 16.378 59.372-10.236-1.024-29.686-1.024-106.46 0-174.020 66.538t-67.56 163.784q0 93.152 83.94 162.76t191.422 69.608h317.332l-70.632-51.182h-100.318q48.112-18.426 75.238-69.608t27.126-113.626q0-95.2-90.082-165.832-37.876-29.686-49.136-47.088t-11.26-42.994q0-19.45 27.638-49.136t55.278-50.158q62.442-44.016 86.498-90.082t24.056-115.672q0-92.128-83.94-160.202t-227.25-68.072q-136.146 0-230.32 51.182t-94.176 135.122zM114.648 169.568q0-70.632 59.884-120.278t148.94-49.646q121.814 0 176.58 45.040t54.766 119.766q0 19.45-4.094 32.756-3.070 11.26-7.166 20.984t-12.284 19.45-14.332 16.378-19.962 16.89-20.984 15.354-25.592 17.914-26.614 17.914q-39.922 12.284-78.82 12.284-92.128 1.024-161.224-48.112t-69.096-116.696zM182.21 741.786q11.26-80.868 61.93-139.216t112.090-59.372q60.396-2.048 96.222 53.23t25.592 136.146-60.908 137.168-112.090 58.348-97.246-52.206-25.592-134.098zM750.334 717.22v51.182h204.73v204.73h51.182v-204.73h205.754v-51.182h-205.754v-205.754h-51.182v205.754h-204.73z" />
|
21 |
-
<glyph unicode="" glyph-name="pinterest" horiz-adv-x="793" d="M0 589.312q0 64.512 27.136 128t77.824 117.76 133.12 88.064 182.784 33.792q162.816 0 267.264-100.352t104.448-236.544q0-175.104-88.576-289.28t-228.864-114.176q-46.080 0-86.528 21.504t-56.832 52.224l-40.96-161.792q-5.12-19.456-13.312-39.424t-17.92-38.4-19.456-34.816-19.456-30.72-16.896-24.064-13.312-16.896l-6.144-8.192q-3.072-4.096-8.192-3.072t-6.144 6.144q0 1.024-1.536 14.336t-3.072 28.16-3.072 38.4-1.024 45.568 3.072 48.64 7.68 49.152q11.264 48.128 75.776 320.512-8.192 16.384-13.312 39.424t-5.12 37.376l-1.024 15.36q0 65.536 33.28 109.056t80.384 43.52q37.888 0 58.88-25.088t20.992-62.976q0-23.552-8.704-57.856t-23.040-78.848-20.48-72.192q-10.24-46.080 17.92-79.872t75.264-33.792q80.896 0 133.632 91.648t52.736 221.696q0 99.328-64.512 162.304t-180.224 62.976q-129.024 0-209.408-82.944t-80.384-198.656q0-68.608 38.912-115.712 13.312-15.36 8.192-32.768-2.048-5.12-6.144-23.552t-6.144-23.552q-2.048-11.264-10.24-14.848t-18.432 0.512q-60.416 24.576-90.624 84.48t-30.208 139.776z" />
|
22 |
-
<glyph unicode="" glyph-name="linkedin" horiz-adv-x="1064" d="M-5.116 852.114q0 51.154 35.808 84.404t93.1 33.25q56.27 0 91.054-32.738 35.808-33.762 35.808-87.984 0-49.108-34.784-81.846-35.808-33.762-94.124-33.762h-1.024q-56.27 0-91.054 33.762t-34.784 84.916zM8.184-43.078v683.416h227.124v-683.416h-227.124zM361.146-43.078h227.124v381.608q0 35.808 8.184 55.246 14.324 34.784 43.48 58.826t73.15 24.042q114.584 0 114.584-154.484v-365.238h227.124v391.838q0 151.416-71.616 229.68t-189.27 78.266q-131.976 0-205.638-113.562v-2.046h-1.024l1.024 2.046v97.192h-227.124q2.046-32.738 2.046-203.592t-2.046-479.824z" />
|
23 |
-
<glyph unicode="" glyph-name="twitter" horiz-adv-x="1258" d="M0 52.19q30.682-3.068 61.366-3.068 180.006 0 321.148 110.458-83.866 1.022-150.346 51.138t-91.026 127.846q20.456-4.092 48.070-4.092 35.796 0 68.526 9.204-90.004 17.386-148.812 88.47t-58.808 164.154v3.068q54.206-30.682 117.618-31.706-53.184 34.774-84.378 91.538t-31.194 123.244q0 69.548 35.796 129.892 96.14-119.664 234.724-190.746t297.114-79.264q-7.16 33.752-7.16 59.32 0 106.368 75.684 182.052t183.074 75.684q111.482 0 188.188-81.822 88.98 18.41 163.642 63.412-28.638-93.072-112.504-143.186 74.662 9.204 147.278 40.91-49.092-76.708-127.846-133.982v-33.752q0-103.3-30.172-207.11t-92.048-198.416-147.79-168.244-206.086-117.106-258.248-43.468q-213.758 0-395.81 115.572z" />
|
24 |
-
<glyph unicode="" glyph-name="facebook" horiz-adv-x="836" d="M286.416 426.496v195.584h157.696v98.304q0 106.496 69.12 181.248t167.424 74.752h156.672v-195.584h-156.672q-15.36 0-27.648-16.896t-12.288-41.472v-100.352h196.608v-195.584h-196.608v-474.112h-196.608v474.112h-157.696z" />
|
25 |
-
<glyph unicode="" glyph-name="buffer" horiz-adv-x="1002" d="M0 163.328q11.264 15.36 32.256 26.112t50.176 20.48 41.472 15.872q19.456 0 34.304-4.608t34.304-15.36 25.6-12.8q48.128-21.504 266.24-121.856 19.456-4.096 36.352 0t40.448 17.92 24.576 14.848q20.48 9.216 78.336 35.328t89.6 40.448q4.096 2.048 42.496 21.504t61.952 24.576q13.312 2.048 28.16-1.024t24.064-7.68 23.552-13.312 18.432-10.752 15.872-6.144 18.944-8.192 11.264-11.264q3.072-4.096 4.096-14.336-10.24-13.312-31.744-24.576t-52.224-22.528-40.96-16.384q-44.032-20.48-131.584-62.976t-131.584-62.976q-7.168-3.072-21.504-11.776t-24.064-13.312-26.112-11.264-28.16-7.168-30.208 1.536l-270.336 125.952q-6.144 3.072-32.768 14.336t-52.736 22.528-54.784 24.576-47.616 24.064-22.016 16.896q-4.096 4.096-4.096 13.312zM0 437.76q11.264 15.36 32.256 25.6t51.2 20.48 42.496 15.36q19.456 0 34.816-4.608t35.328-15.36 26.112-13.824q43.008-19.456 129.536-59.392t130.56-60.416q19.456-5.12 37.888-0.512t39.936 17.408 25.6 14.848q69.632 32.768 163.84 73.728 11.264 5.12 32.256 16.896t39.424 19.968 36.864 11.264q16.384 3.072 32.256-1.024t38.4-17.408 23.552-13.312q5.12-3.072 15.872-6.656t18.432-8.192 11.776-10.752q3.072-5.12 4.096-14.336-10.24-14.336-32.256-26.112t-53.76-23.040-41.984-16.384q-49.152-23.552-138.752-66.56t-125.44-60.416q-7.168-3.072-26.624-14.336t-29.696-15.36-33.28-10.24-36.352 0q-219.136 103.424-266.24 124.928-6.144 3.072-45.056 19.456t-71.168 30.72-62.976 30.208-34.816 23.040q-4.096 4.096-4.096 14.336zM0 711.168q10.24 15.36 32.256 27.136t53.76 23.040 41.984 16.384l356.352 165.888q30.72 0 54.784-7.168t57.856-26.624 40.96-22.528q39.936-18.432 119.808-55.808t119.808-55.808q4.096-2.048 37.376-15.36t55.808-24.576 27.648-20.48q3.072-4.096 4.096-13.312-9.216-13.312-26.624-23.040t-44.544-19.456-35.328-13.824q-48.128-22.528-143.36-68.096t-142.336-68.096q-6.144-3.072-20.48-11.264t-23.552-12.8-25.6-10.752-27.648-6.144-28.672 1.024q-250.88 116.736-262.144 121.856-4.096 2.048-64.512 28.16t-104.448 47.616-49.152 30.72q-4.096 4.096-4.096 13.312z" />
|
26 |
-
<glyph unicode="" glyph-name="external-link" d="M704 384l128 128v-512h-768v768h512l-128-128h-256v-512h512zM960 896v-352l-130.744 130.744-354.746-354.744h-90.51v90.512l354.744 354.744-130.744 130.744z" />
|
27 |
-
<glyph unicode="" glyph-name="minimize" d="M64 384h384v-384l-138.26 138.26-202-202-107.48 107.48 202 202zM821.74 245.74l202-202-107.48-107.48-202 202-138.26-138.26v384h384zM960 512h-384v384l138.26-138.26 202 202 107.48-107.48-202-202zM309.74 757.74l138.26 138.26v-384h-384l138.26 138.26-202 202 107.48 107.48z" />
|
28 |
-
<glyph unicode="" glyph-name="maximize" d="M1024 960v-384l-138.26 138.26-212-212-107.48 107.48 212 212-138.26 138.26zM245.74 821.74l212-212-107.48-107.48-212 212-138.26-138.26v384h384zM885.74 181.74l138.26 138.26v-384h-384l138.26 138.26-212 212 107.48 107.48zM457.74 286.26l-212-212 138.26-138.26h-384v384l138.26-138.26 212 212z" />
|
29 |
-
<glyph unicode="" glyph-name="download" d="M512 384l256 256h-192v256h-128v-256h-192zM744.726 488.728l-71.74-71.742 260.080-96.986-421.066-157.018-421.066 157.018 260.080 96.986-71.742 71.742-279.272-104.728v-256l512-192 512 192v256z" />
|
30 |
-
<glyph unicode="" glyph-name="email" d="M960 832h-896c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h896c35.2 0 64 28.8 64 64v640c0 35.2-28.8 64-64 64zM896 704v-46l-384-226.286-384 226.286v46h768zM128 192v354.572l384-226.286 384 226.286v-354.572h-768z" />
|
31 |
-
<glyph unicode="" glyph-name="spinner-2" d="M1024 448c-1.278 66.862-15.784 133.516-42.576 194.462-26.704 61-65.462 116.258-113.042 161.92-47.552 45.696-103.944 81.82-164.984 105.652-61.004 23.924-126.596 35.352-191.398 33.966-64.81-1.282-129.332-15.374-188.334-41.356-59.048-25.896-112.542-63.47-156.734-109.576-44.224-46.082-79.16-100.708-102.186-159.798-23.114-59.062-34.128-122.52-32.746-185.27 1.286-62.76 14.964-125.148 40.134-182.206 25.088-57.1 61.476-108.828 106.11-151.548 44.61-42.754 97.472-76.504 154.614-98.72 57.118-22.304 118.446-32.902 179.142-31.526 60.708 1.29 120.962 14.554 176.076 38.914 55.15 24.282 105.116 59.48 146.366 102.644 41.282 43.14 73.844 94.236 95.254 149.43 13.034 33.458 21.88 68.4 26.542 103.798 1.246-0.072 2.498-0.12 3.762-0.12 35.346 0 64 28.652 64 64 0 1.796-0.094 3.572-0.238 5.332h0.238zM922.306 278.052c-23.472-53.202-57.484-101.4-99.178-141.18-41.67-39.81-91-71.186-144.244-91.79-53.228-20.678-110.29-30.452-166.884-29.082-56.604 1.298-112.596 13.736-163.82 36.474-51.25 22.666-97.684 55.49-135.994 95.712-38.338 40.198-68.528 87.764-88.322 139.058-19.87 51.284-29.228 106.214-27.864 160.756 1.302 54.552 13.328 108.412 35.254 157.69 21.858 49.3 53.498 93.97 92.246 130.81 38.73 36.868 84.53 65.87 133.874 84.856 49.338 19.060 102.136 28.006 154.626 26.644 52.5-1.306 104.228-12.918 151.562-34.034 47.352-21.050 90.256-51.502 125.624-88.782 35.396-37.258 63.21-81.294 81.39-128.688 18.248-47.392 26.782-98.058 25.424-148.496h0.238c-0.144-1.76-0.238-3.536-0.238-5.332 0-33.012 24.992-60.174 57.086-63.624-6.224-34.822-16.53-68.818-30.78-100.992z" />
|
32 |
-
<glyph unicode="" glyph-name="spinner-default" d="M192 448c0 12.18 0.704 24.196 2.030 36.022l-184.98 60.104c-5.916-31.14-9.050-63.264-9.050-96.126 0-147.23 62.166-279.922 161.654-373.324l114.284 157.296c-52.124 56.926-83.938 132.758-83.938 216.028zM832 448c0-83.268-31.812-159.102-83.938-216.028l114.284-157.296c99.488 93.402 161.654 226.094 161.654 373.324 0 32.862-3.132 64.986-9.048 96.126l-184.98-60.104c1.324-11.828 2.028-23.842 2.028-36.022zM576 761.592c91.934-18.662 169.544-76.742 214.45-155.826l184.978 60.102c-73.196 155.42-222.24 268.060-399.428 290.156v-194.432zM233.55 605.768c44.906 79.084 122.516 137.164 214.45 155.826v194.43c-177.188-22.096-326.23-134.736-399.426-290.154l184.976-60.102zM644.556 156.672c-40.39-18.408-85.272-28.672-132.556-28.672s-92.166 10.264-132.554 28.67l-114.292-157.31c73.206-40.366 157.336-63.36 246.846-63.36s173.64 22.994 246.848 63.36l-114.292 157.312z" />
|
33 |
-
<glyph unicode="" glyph-name="spinner-4" d="M384 832c0 70.692 57.308 128 128 128s128-57.308 128-128c0-70.692-57.308-128-128-128s-128 57.308-128 128zM655.53 719.53c0 70.692 57.308 128 128 128s128-57.308 128-128c0-70.692-57.308-128-128-128s-128 57.308-128 128zM832 448c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM719.53 176.47c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM448.002 64c0 0 0 0 0 0 0 35.346 28.654 64 64 64s64-28.654 64-64c0 0 0 0 0 0 0-35.346-28.654-64-64-64s-64 28.654-64 64zM176.472 176.47c0 0 0 0 0 0 0 35.346 28.654 64 64 64s64-28.654 64-64c0 0 0 0 0 0 0-35.346-28.654-64-64-64s-64 28.654-64 64zM144.472 719.53c0 0 0 0 0 0 0 53.019 42.981 96 96 96s96-42.981 96-96c0 0 0 0 0 0 0-53.019-42.981-96-96-96s-96 42.981-96 96zM56 448c0 39.765 32.235 72 72 72s72-32.235 72-72c0-39.765-32.235-72-72-72s-72 32.235-72 72z" />
|
34 |
-
<glyph unicode="" glyph-name="spinner-5" d="M512 960c-278.748 0-505.458-222.762-511.848-499.974 5.92 241.864 189.832 435.974 415.848 435.974 229.75 0 416-200.576 416-448 0-53.020 42.98-96 96-96s96 42.98 96 96c0 282.77-229.23 512-512 512zM512-64c278.748 0 505.458 222.762 511.848 499.974-5.92-241.864-189.832-435.974-415.848-435.974-229.75 0-416 200.576-416 448 0 53.020-42.98 96-96 96s-96-42.98-96-96c0-282.77 229.23-512 512-512z" />
|
35 |
-
<glyph unicode="" glyph-name="spinner-6" d="M0.042 446.382l-0.022-0.004c0 0 0.012-0.090 0.028-0.222 0.11-3.878 0.55-7.676 1.322-11.352 0.204-1.746 0.428-3.66 0.674-5.774 0.222-1.886 0.46-3.914 0.718-6.078 0.374-2.566 0.77-5.292 1.19-8.176 0.856-5.746 1.8-12.124 2.908-18.958 1.348-6.446 2.804-13.414 4.364-20.864 0.71-3.718 1.776-7.504 2.786-11.406 1.024-3.89 2.078-7.894 3.16-12.004 0.566-2.042 1.040-4.132 1.708-6.208 0.656-2.074 1.32-4.176 1.988-6.3 1.348-4.234 2.726-8.566 4.136-12.988 0.352-1.106 0.708-2.21 1.064-3.324 0.408-1.102 0.814-2.208 1.226-3.316 0.826-2.218 1.658-4.458 2.502-6.714 1.696-4.496 3.422-9.078 5.18-13.742 1.968-4.566 3.97-9.214 6.004-13.934 1.018-2.348 2.044-4.714 3.078-7.098 1.048-2.376 2.27-4.704 3.408-7.074 2.322-4.714 4.678-9.496 7.062-14.332 2.47-4.786 5.208-9.512 7.846-14.328 1.336-2.398 2.68-4.808 4.028-7.23 1.368-2.41 2.902-4.75 4.356-7.14 2.95-4.738 5.93-9.524 8.934-14.348 12.64-18.894 26.676-37.566 42.21-55.278 15.712-17.578 32.726-34.25 50.692-49.602 18.18-15.136 37.264-28.902 56.726-41.114 19.604-12.036 39.644-22.312 59.376-31.144 5.004-2.040 9.964-4.062 14.878-6.066 2.462-0.972 4.868-2.032 7.336-2.918 2.47-0.868 4.93-1.734 7.376-2.594 4.898-1.684 9.678-3.468 14.484-4.992 4.832-1.43 9.604-2.844 14.312-4.242 2.356-0.672 4.66-1.426 7.004-2.012 2.346-0.574 4.676-1.14 6.986-1.704 4.606-1.118 9.142-2.214 13.604-3.296 4.5-0.868 8.926-1.722 13.27-2.558 2.166-0.41 4.31-0.82 6.434-1.222 1.062-0.2 2.118-0.398 3.166-0.598 1.060-0.148 2.118-0.292 3.166-0.442 4.192-0.582 8.292-1.152 12.3-1.71 1.998-0.274 3.972-0.546 5.922-0.816 1.946-0.286 3.904-0.378 5.814-0.57 3.822-0.336 7.544-0.664 11.164-0.98 3.616-0.304 7.104-0.688 10.526-0.738 0.23-0.008 0.452-0.016 0.682-0.026 0.614-34.812 29.008-62.846 63.968-62.846 0.542 0 1.080 0.028 1.62 0.042v-0.022c0 0 0.090 0.012 0.224 0.028 3.878 0.11 7.674 0.55 11.35 1.322 1.748 0.204 3.662 0.426 5.776 0.672 1.884 0.222 3.912 0.462 6.076 0.718 2.566 0.376 5.292 0.772 8.176 1.192 5.746 0.856 12.124 1.8 18.958 2.908 6.446 1.348 13.414 2.804 20.864 4.362 3.718 0.712 7.504 1.778 11.406 2.786 3.892 1.026 7.894 2.080 12.004 3.162 2.044 0.566 4.132 1.040 6.208 1.708 2.074 0.656 4.174 1.318 6.3 1.988 4.232 1.348 8.564 2.726 12.988 4.134 1.104 0.354 2.21 0.708 3.324 1.066 1.1 0.406 2.206 0.814 3.316 1.226 2.216 0.824 4.456 1.658 6.714 2.5 4.496 1.698 9.078 3.424 13.74 5.182 4.568 1.968 9.216 3.97 13.936 6.004 2.348 1.018 4.714 2.044 7.098 3.078 2.376 1.048 4.702 2.27 7.074 3.408 4.714 2.322 9.494 4.678 14.33 7.062 4.786 2.47 9.512 5.208 14.328 7.846 2.398 1.336 4.808 2.678 7.23 4.028 2.41 1.366 4.75 2.9 7.14 4.354 4.738 2.952 9.524 5.93 14.35 8.936 18.89 12.64 37.564 26.674 55.278 42.21 17.574 15.712 34.248 32.726 49.602 50.69 15.136 18.182 28.902 37.264 41.112 56.728 12.036 19.602 22.314 39.644 31.142 59.376 2.042 5.002 4.062 9.964 6.068 14.878 0.974 2.462 2.032 4.868 2.918 7.334 0.87 2.472 1.732 4.932 2.592 7.376 1.686 4.898 3.468 9.678 4.994 14.484 1.432 4.832 2.846 9.604 4.24 14.31 0.674 2.358 1.43 4.66 2.016 7.004 0.57 2.348 1.138 4.676 1.702 6.988 1.118 4.606 2.216 9.14 3.296 13.602 0.868 4.502 1.72 8.928 2.558 13.272 0.41 2.164 0.818 4.308 1.222 6.434 0.2 1.060 0.398 2.116 0.596 3.164 0.148 1.062 0.296 2.118 0.444 3.168 0.582 4.19 1.152 8.292 1.708 12.3 0.278 1.996 0.55 3.97 0.82 5.922 0.284 1.946 0.376 3.902 0.568 5.812 0.336 3.822 0.664 7.546 0.98 11.164 0.304 3.616 0.686 7.106 0.738 10.528 0.020 0.534 0.040 1.044 0.058 1.574 35.224 0.146 63.732 28.738 63.732 63.992 0 0.542-0.028 1.080-0.042 1.62h0.022c0 0-0.012 0.090-0.028 0.224-0.11 3.878-0.55 7.674-1.322 11.35-0.204 1.748-0.428 3.662-0.674 5.776-0.222 1.886-0.46 3.914-0.718 6.076-0.374 2.566-0.77 5.294-1.19 8.176-0.856 5.746-1.8 12.124-2.908 18.958-1.348 6.444-2.804 13.414-4.364 20.862-0.71 3.72-1.776 7.506-2.786 11.408-1.024 3.892-2.078 7.894-3.16 12.002-0.566 2.044-1.040 4.134-1.708 6.208-0.656 2.076-1.32 4.174-1.988 6.3-1.348 4.234-2.726 8.566-4.136 12.99-0.352 1.102-0.708 2.21-1.064 3.324-0.408 1.1-0.814 2.206-1.226 3.316-0.826 2.216-1.658 4.454-2.502 6.714-1.696 4.498-3.422 9.080-5.18 13.74-1.968 4.57-3.97 9.216-6.004 13.936-1.020 2.348-2.044 4.714-3.078 7.098-1.048 2.376-2.27 4.702-3.408 7.076-2.322 4.714-4.678 9.494-7.062 14.33-2.47 4.786-5.208 9.512-7.846 14.328-1.336 2.398-2.68 4.808-4.028 7.23-1.368 2.41-2.902 4.75-4.356 7.14-2.95 4.74-5.93 9.524-8.934 14.35-12.64 18.892-26.676 37.564-42.21 55.278-15.712 17.576-32.726 34.25-50.692 49.602-18.18 15.136-37.264 28.902-56.726 41.112-19.604 12.036-39.644 22.314-59.376 31.142-5.004 2.040-9.964 4.062-14.878 6.068-2.462 0.974-4.868 2.032-7.336 2.918-2.47 0.87-4.93 1.734-7.376 2.592-4.898 1.684-9.678 3.468-14.484 4.994-4.832 1.432-9.604 2.846-14.312 4.242-2.356 0.672-4.66 1.428-7.004 2.014-2.346 0.572-4.676 1.138-6.986 1.702-4.606 1.118-9.142 2.216-13.604 3.298-4.5 0.868-8.926 1.72-13.27 2.558-2.166 0.412-4.31 0.82-6.434 1.222-1.062 0.2-2.118 0.398-3.166 0.596-1.060 0.148-2.118 0.296-3.166 0.442-4.192 0.584-8.292 1.154-12.3 1.71-1.998 0.276-3.972 0.55-5.922 0.82-1.946 0.284-3.904 0.376-5.814 0.57-3.822 0.336-7.544 0.664-11.164 0.98-3.616 0.304-7.104 0.686-10.526 0.738-0.852 0.032-1.674 0.062-2.512 0.092-0.65 34.78-29.028 62.778-63.966 62.778-0.542 0-1.080-0.028-1.62-0.042l-0.002 0.022c0 0-0.090-0.012-0.222-0.028-3.878-0.11-7.676-0.55-11.352-1.322-1.748-0.204-3.662-0.426-5.776-0.672-1.884-0.222-3.912-0.462-6.076-0.718-2.566-0.376-5.292-0.772-8.176-1.192-5.746-0.856-12.124-1.8-18.958-2.908-6.446-1.348-13.414-2.804-20.864-4.362-3.718-0.712-7.504-1.778-11.406-2.786-3.892-1.026-7.894-2.080-12.004-3.162-2.044-0.566-4.132-1.040-6.208-1.708-2.074-0.656-4.174-1.318-6.3-1.988-4.232-1.348-8.564-2.726-12.988-4.134-1.104-0.354-2.21-0.708-3.324-1.066-1.1-0.406-2.206-0.814-3.316-1.226-2.216-0.824-4.456-1.658-6.714-2.5-4.496-1.698-9.078-3.424-13.74-5.182-4.568-1.968-9.216-3.97-13.936-6.004-2.348-1.018-4.714-2.044-7.098-3.078-2.376-1.048-4.702-2.27-7.074-3.408-4.714-2.322-9.494-4.678-14.33-7.062-4.786-2.47-9.512-5.208-14.328-7.846-2.398-1.336-4.808-2.678-7.23-4.028-2.41-1.366-4.75-2.9-7.14-4.354-4.738-2.952-9.524-5.93-14.35-8.936-18.89-12.64-37.564-26.674-55.278-42.21-17.574-15.712-34.248-32.726-49.602-50.69-15.136-18.182-28.902-37.264-41.112-56.728-12.036-19.602-22.314-39.644-31.142-59.376-2.042-5.002-4.062-9.964-6.068-14.878-0.974-2.462-2.032-4.868-2.918-7.334-0.87-2.472-1.732-4.932-2.592-7.376-1.686-4.898-3.468-9.678-4.994-14.484-1.432-4.832-2.846-9.604-4.24-14.31-0.674-2.358-1.43-4.66-2.016-7.004-0.57-2.348-1.138-4.676-1.702-6.988-1.118-4.606-2.216-9.14-3.296-13.602-0.868-4.502-1.72-8.928-2.558-13.272-0.41-2.164-0.818-4.308-1.222-6.434-0.2-1.060-0.398-2.116-0.596-3.164-0.148-1.062-0.296-2.118-0.444-3.168-0.582-4.19-1.152-8.292-1.708-12.3-0.278-1.996-0.55-3.97-0.82-5.922-0.284-1.946-0.376-3.902-0.568-5.812-0.336-3.822-0.664-7.546-0.98-11.164-0.304-3.616-0.686-7.106-0.738-10.528-0.020-0.548-0.040-1.076-0.058-1.62-34.376-1.112-61.902-29.304-61.902-63.946 0-0.542 0.028-1.078 0.042-1.618zM73.518 511.294c0.042 0.196 0.086 0.384 0.128 0.58 0.644 3.248 1.632 6.542 2.556 9.942 0.934 3.388 1.894 6.876 2.88 10.454 0.516 1.78 0.934 3.602 1.546 5.406 0.596 1.802 1.202 3.628 1.81 5.476 1.218 3.682 2.464 7.45 3.736 11.294 0.316 0.958 0.634 1.924 0.956 2.892 0.37 0.954 0.74 1.914 1.114 2.876 0.746 1.924 1.5 3.868 2.26 5.83 1.52 3.904 3.070 7.882 4.646 11.93 1.768 3.96 3.566 7.99 5.392 12.080 0.908 2.038 1.824 4.090 2.746 6.156 0.932 2.060 2.036 4.072 3.052 6.126 2.070 4.084 4.17 8.222 6.294 12.412 2.202 4.142 4.654 8.224 6.998 12.392 1.184 2.074 2.374 4.16 3.57 6.256 1.21 2.086 2.586 4.102 3.876 6.166 2.616 4.098 5.256 8.232 7.918 12.402 11.234 16.298 23.632 32.398 37.33 47.638 13.874 15.104 28.842 29.404 44.598 42.548 15.974 12.928 32.686 24.65 49.676 35.022 17.13 10.194 34.6 18.838 51.734 26.258 4.35 1.7 8.662 3.382 12.934 5.050 2.136 0.812 4.216 1.71 6.36 2.444 2.146 0.714 4.28 1.428 6.404 2.136 4.25 1.386 8.382 2.888 12.548 4.142 4.184 1.174 8.314 2.332 12.392 3.474 2.038 0.55 4.026 1.19 6.054 1.662 2.030 0.458 4.044 0.914 6.044 1.368 3.978 0.91 7.896 1.806 11.748 2.688 3.888 0.686 7.71 1.36 11.462 2.022 1.868 0.33 3.716 0.658 5.546 0.98 0.914 0.162 1.824 0.324 2.728 0.484 0.916 0.112 1.828 0.222 2.734 0.332 3.612 0.448 7.148 0.882 10.604 1.31 1.72 0.216 3.422 0.432 5.102 0.644 1.674 0.226 3.364 0.266 5.010 0.408 3.292 0.238 6.498 0.472 9.616 0.7 3.11 0.218 6.11 0.524 9.058 0.508 5.848 0.132 11.32 0.256 16.38 0.372 4.664-0.168 8.948-0.324 12.818-0.462 1.914-0.054 3.726-0.108 5.432-0.156 2.122-0.134 4.108-0.26 5.958-0.378 2.13-0.138 4.060-0.266 5.82-0.38 3.256-0.51 6.592-0.782 9.99-0.782 0.466 0 0.93 0.026 1.396 0.036 0.132-0.008 0.224-0.014 0.224-0.014v0.020c31.14 0.778 56.75 23.784 61.556 53.754 0.542-0.12 1.064-0.236 1.612-0.356 3.246-0.644 6.542-1.632 9.942-2.556 3.386-0.934 6.876-1.894 10.454-2.88 1.778-0.516 3.602-0.934 5.404-1.546 1.802-0.596 3.63-1.202 5.478-1.812 3.68-1.218 7.448-2.464 11.292-3.736 0.96-0.316 1.924-0.634 2.892-0.956 0.956-0.37 1.914-0.74 2.876-1.112 1.926-0.746 3.868-1.5 5.83-2.26 3.904-1.52 7.884-3.070 11.932-4.646 3.96-1.768 7.988-3.566 12.080-5.392 2.038-0.908 4.088-1.824 6.156-2.746 2.060-0.932 4.072-2.036 6.126-3.054 4.082-2.070 8.222-4.17 12.41-6.294 4.144-2.202 8.226-4.654 12.394-6.998 2.074-1.184 4.16-2.374 6.256-3.572 2.086-1.21 4.102-2.586 6.166-3.876 4.098-2.616 8.23-5.256 12.402-7.918 16.296-11.234 32.398-23.632 47.636-37.33 15.104-13.874 29.406-28.842 42.55-44.598 12.928-15.974 24.648-32.686 35.020-49.676 10.196-17.13 18.84-34.6 26.26-51.736 1.698-4.348 3.382-8.662 5.050-12.932 0.812-2.136 1.71-4.216 2.444-6.36 0.714-2.146 1.428-4.28 2.136-6.404 1.386-4.25 2.888-8.384 4.142-12.548 1.174-4.184 2.33-8.316 3.474-12.392 0.55-2.038 1.19-4.026 1.66-6.054 0.46-2.030 0.916-4.046 1.368-6.046 0.91-3.978 1.808-7.896 2.688-11.748 0.688-3.888 1.362-7.71 2.024-11.462 0.33-1.868 0.656-3.716 0.98-5.548 0.162-0.914 0.324-1.824 0.484-2.728 0.11-0.916 0.222-1.828 0.332-2.734 0.446-3.612 0.882-7.148 1.31-10.604 0.216-1.72 0.432-3.42 0.642-5.1 0.226-1.674 0.268-3.364 0.41-5.010 0.238-3.292 0.472-6.498 0.7-9.616 0.218-3.11 0.524-6.11 0.508-9.058 0.132-5.848 0.256-11.32 0.372-16.38-0.168-4.664-0.324-8.948-0.462-12.818-0.054-1.914-0.108-3.726-0.156-5.432-0.134-2.122-0.26-4.108-0.378-5.958-0.138-2.13-0.266-4.060-0.38-5.82-0.498-3.256-0.768-6.592-0.768-9.99 0-0.468 0.026-0.93 0.036-1.396-0.008-0.132-0.016-0.224-0.016-0.224h0.022c0.768-30.766 23.236-56.128 52.682-61.37-0.066-0.296-0.13-0.584-0.198-0.884-0.644-3.248-1.632-6.542-2.556-9.942-0.934-3.388-1.894-6.876-2.88-10.454-0.516-1.78-0.934-3.602-1.546-5.406-0.596-1.802-1.202-3.628-1.81-5.476-1.218-3.682-2.464-7.45-3.736-11.294-0.316-0.958-0.634-1.924-0.956-2.892-0.37-0.954-0.74-1.914-1.114-2.876-0.746-1.924-1.5-3.868-2.26-5.83-1.52-3.904-3.070-7.882-4.646-11.93-1.768-3.96-3.566-7.99-5.392-12.080-0.908-2.038-1.824-4.090-2.746-6.156-0.932-2.060-2.036-4.072-3.052-6.126-2.070-4.084-4.17-8.222-6.294-12.412-2.202-4.142-4.654-8.224-6.998-12.392-1.184-2.074-2.374-4.16-3.57-6.256-1.21-2.086-2.586-4.102-3.876-6.166-2.616-4.098-5.256-8.232-7.918-12.402-11.234-16.298-23.632-32.398-37.33-47.638-13.874-15.104-28.842-29.404-44.598-42.548-15.974-12.928-32.686-24.65-49.676-35.022-17.13-10.194-34.6-18.838-51.734-26.258-4.35-1.7-8.662-3.382-12.934-5.050-2.136-0.812-4.216-1.71-6.36-2.444-2.146-0.714-4.28-1.428-6.404-2.136-4.25-1.386-8.382-2.888-12.548-4.142-4.184-1.174-8.314-2.332-12.392-3.474-2.038-0.55-4.026-1.19-6.054-1.662-2.030-0.458-4.044-0.914-6.044-1.368-3.978-0.91-7.896-1.806-11.748-2.688-3.888-0.686-7.71-1.36-11.462-2.022-1.868-0.33-3.716-0.658-5.546-0.98-0.914-0.162-1.824-0.324-2.728-0.484-0.916-0.112-1.828-0.222-2.734-0.332-3.612-0.448-7.148-0.882-10.604-1.31-1.72-0.216-3.422-0.432-5.102-0.644-1.674-0.226-3.364-0.266-5.010-0.408-3.292-0.238-6.498-0.472-9.616-0.7-3.11-0.218-6.11-0.524-9.058-0.508-5.848-0.132-11.32-0.256-16.38-0.372-4.664 0.168-8.948 0.324-12.818 0.462-1.914 0.054-3.726 0.108-5.432 0.156-2.122 0.134-4.108 0.26-5.958 0.378-2.13 0.138-4.060 0.266-5.82 0.38-3.256 0.51-6.592 0.782-9.99 0.782-0.466 0-0.93-0.026-1.396-0.036-0.132 0.008-0.224 0.014-0.224 0.014v-0.020c-31.004-0.774-56.524-23.586-61.488-53.364-3.2 0.64-6.446 1.61-9.792 2.522-3.386 0.934-6.876 1.894-10.454 2.878-1.778 0.516-3.602 0.938-5.404 1.546-1.802 0.598-3.63 1.204-5.478 1.812-3.68 1.218-7.448 2.464-11.292 3.738-0.96 0.316-1.924 0.632-2.892 0.954-0.956 0.372-1.914 0.742-2.876 1.114-1.926 0.746-3.868 1.5-5.83 2.258-3.904 1.524-7.884 3.070-11.932 4.648-3.96 1.77-7.988 3.566-12.080 5.39-2.038 0.91-4.088 1.824-6.156 2.746-2.060 0.934-4.072 2.036-6.126 3.054-4.082 2.070-8.222 4.172-12.41 6.296-4.144 2.2-8.226 4.652-12.394 6.996-2.074 1.184-4.16 2.376-6.256 3.57-2.086 1.21-4.102 2.586-6.166 3.878-4.098 2.614-8.23 5.254-12.402 7.918-16.296 11.23-32.398 23.632-47.636 37.328-15.104 13.876-29.406 28.84-42.55 44.598-12.928 15.972-24.648 32.684-35.020 49.676-10.196 17.128-18.84 34.602-26.26 51.734-1.698 4.352-3.382 8.664-5.050 12.934-0.812 2.136-1.71 4.218-2.444 6.36-0.714 2.148-1.428 4.282-2.136 6.406-1.386 4.25-2.888 8.382-4.142 12.546-1.174 4.184-2.33 8.316-3.474 12.394-0.55 2.036-1.19 4.024-1.66 6.054-0.46 2.028-0.916 4.042-1.368 6.042-0.91 3.98-1.808 7.898-2.688 11.75-0.688 3.886-1.362 7.71-2.024 11.46-0.33 1.868-0.656 3.718-0.98 5.546-0.162 0.914-0.324 1.824-0.484 2.73-0.11 0.914-0.222 1.828-0.332 2.734-0.446 3.61-0.882 7.148-1.31 10.602-0.216 1.722-0.432 3.422-0.642 5.102-0.226 1.676-0.268 3.364-0.41 5.012-0.238 3.29-0.472 6.496-0.7 9.614-0.218 3.11-0.524 6.11-0.508 9.058-0.132 5.848-0.256 11.32-0.372 16.382 0.168 4.664 0.324 8.946 0.462 12.816 0.054 1.914 0.108 3.726 0.156 5.434 0.134 2.122 0.26 4.106 0.378 5.958 0.138 2.128 0.266 4.058 0.38 5.82 0.496 3.26 0.766 6.596 0.766 9.994 0 0.466-0.026 0.93-0.036 1.396 0.008 0.132 0.016 0.224 0.016 0.224h-0.022c-0.78 31.38-24.134 57.154-54.44 61.674z" />
|
36 |
-
<glyph unicode="" glyph-name="spinner-7" d="M1024 544l-225.738 22.574 143.66 175.582-135.766 135.764-175.582-143.658-22.574 225.738h-192l-22.574-225.738-175.582 143.658-135.764-135.764 143.658-175.582-225.738-22.574v-192l225.738-22.574-143.658-175.582 135.764-135.766 175.582 143.66 22.574-225.738h192l22.574 225.738 175.582-143.66 135.766 135.766-143.66 175.582 225.738 22.574v192zM704 527.528v-159.056l-112.472-112.472h-159.056l-112.472 112.472v159.056l112.47 112.472h159.056l112.474-112.472z" />
|
37 |
-
<glyph unicode="" glyph-name="spinner-8" d="M874.022 810.020c-92.652 92.656-220.636 149.98-362.022 149.98-219.488 0-406.69-138.128-479.498-332.188l119.876-44.954c54.604 145.546 195.006 249.142 359.622 249.142 106.040 0 202.020-43 271.506-112.494l-143.506-143.506h384v384l-149.978-149.98zM512 64c-106.040 0-202.026 42.992-271.512 112.488l143.512 143.512h-384v-384l149.994 149.994c92.646-92.662 220.618-149.994 362.006-149.994 219.49 0 406.692 138.128 479.5 332.188l-119.876 44.954c-54.604-145.546-195.006-249.142-359.624-249.142z" />
|
38 |
-
<glyph unicode="" glyph-name="spinner-9" d="M512 752c-100.252 0-189.54-46.802-246.326-119.256l-76.776 57.582c74.32 95.764 191.494 157.674 323.102 157.674v112l160-160-160-160v112zM512 144c100.254 0 189.542 46.802 246.326 119.256l76.776-57.582c-74.32-95.764-191.494-157.674-323.102-157.674v-112l-160 160 160 160v-112zM201.6 448c0-100.364 49.928-189.508 126.724-244.902l-57.584-76.78c-100.108 72.928-165.14 189.966-165.14 321.682h-105.6l160 160 160-160h-118.4zM918.4 448h105.6l-160-160-160 160h118.4c0 100.364-49.928 189.508-126.724 244.902l57.584 76.778c100.108-72.926 165.14-189.962 165.14-321.68z" />
|
39 |
-
<glyph unicode="" glyph-name="spinner-10" d="M831.924 753.296v0 0zM834.050 448c104.384 99.81 155.082 197.58 121.354 256-19.26 33.356-63.36 49.296-123.48 49.296v-48c42.144 0 72.766-9.458 81.912-25.296 7.218-12.504 3.2-31.73-1.446-45.658-8.906-26.71-28.288-58.664-56.042-92.404-16.848-20.478-36.27-41.122-57.874-61.642-29.764 25.698-62.876 51.258-98.796 76.058-3.514 43.48-9.090 84.916-16.458 123.518 56.19 16.666 107.186 25.418 148.682 25.422l0.022 48c-0.008 0-0.018 0-0.026 0-45.174-0.004-99.396-9.032-158.874-26.404-34.24 140.318-93.566 233.11-161.024 233.11s-126.784-92.792-161.028-233.102c-59.474 17.372-113.698 26.398-158.872 26.398-60.12 0-104.248-15.942-123.506-49.296-33.73-58.42 16.966-156.19 121.352-256-104.386-99.808-155.082-197.58-121.352-256 19.26-33.36 63.37-49.294 123.506-49.294 45.172 0 99.396 9.030 158.872 26.4 34.244-140.314 93.568-233.106 161.028-233.106 67.458 0 126.784 92.792 161.028 233.102 59.474-17.374 113.7-26.398 158.874-26.398 60.12 0 104.248 15.944 123.506 49.296 33.724 58.418-16.97 156.192-121.358 256zM762.542 448c-18.62-15.876-38.454-31.584-59.358-46.988 0.53 15.476 0.816 31.142 0.816 46.988 0 15.844-0.286 31.51-0.812 46.988 20.904-15.404 40.738-31.112 59.354-46.988zM637.292 231.132c-23.054 8.196-46.562 17.52-70.27 27.868 13.626 7.262 27.294 14.824 40.974 22.722 13.722 7.922 27.146 16 40.288 24.198-2.882-25.766-6.562-50.76-10.992-74.788zM584 323.292c-23.782-13.728-47.876-26.63-72-38.616-24.124 11.982-48.22 24.884-72 38.616-23.976 13.844-47.192 28.226-69.498 43.012-1.65 26.712-2.502 54.010-2.502 81.696s0.852 54.984 2.502 81.694c22.306 14.786 45.522 29.17 69.498 43.014 23.78 13.728 47.876 26.63 72 38.614 24.124-11.982 48.218-24.884 72-38.614 23.976-13.842 47.192-28.23 69.498-43.014 1.65-26.71 2.502-54.008 2.502-81.694s-0.852-54.984-2.502-81.696c-22.306-14.784-45.522-29.172-69.498-43.012zM375.712 305.92c13.14-8.198 26.564-16.276 40.288-24.198 13.68-7.898 27.346-15.46 40.974-22.722-23.704-10.348-47.214-19.67-70.266-27.864-4.43 24.026-8.112 49.020-10.996 74.784zM320.812 401.010c-20.904 15.406-40.74 31.116-59.358 46.99 18.618 15.876 38.454 31.584 59.358 46.99-0.528-15.48-0.812-31.144-0.812-46.99s0.284-31.512 0.812-46.99zM386.708 664.864c23.052-8.194 46.562-17.518 70.266-27.864-13.626-7.262-27.294-14.824-40.974-22.722-13.722-7.922-27.146-16.002-40.288-24.198 2.884 25.764 6.566 50.758 10.996 74.784zM608 614.278c-13.68 7.898-27.346 15.46-40.972 22.722 23.706 10.346 47.212 19.668 70.268 27.862 4.43-24.024 8.11-49.016 10.992-74.782-13.142 8.196-26.566 16.274-40.288 24.198zM421.18 793.184c15.34 40.908 33.322 73.668 52.002 94.736 9.738 10.986 24.378 24.080 38.818 24.080 14.442 0 29.078-13.094 38.818-24.080 18.68-21.068 36.658-53.828 52.002-94.736 9.312-24.834 17.478-51.978 24.45-80.952-37.136-12.926-75.832-28.824-115.268-47.532-39.438 18.71-78.132 34.608-115.27 47.536 6.97 28.972 15.136 56.116 24.448 80.948zM167.65 541.938c-27.756 33.74-47.136 65.692-56.042 92.404-4.644 13.926-8.664 33.154-1.444 45.658 9.144 15.838 39.776 25.294 81.938 25.296h0.004c41.492 0 92.486-8.752 148.674-25.418-7.368-38.604-12.942-80.040-16.456-123.522-35.92-24.798-69.036-50.36-98.8-76.058-21.604 20.52-41.026 41.162-57.874 61.64zM192.1 190.708c-42.162 0-72.792 9.456-81.936 25.292-7.22 12.504-3.2 31.73 1.444 45.658 8.906 26.708 28.286 58.662 56.042 92.4 16.848 20.48 36.27 41.124 57.874 61.644 29.762-25.702 62.878-51.262 98.798-76.058 3.514-43.482 9.088-84.916 16.456-123.524-56.19-16.662-107.184-25.412-148.678-25.412zM602.82 102.816c-15.342-40.91-33.322-73.668-52.002-94.738-9.74-10.984-24.376-24.078-38.818-24.078-14.44 0-29.080 13.094-38.818 24.078-18.68 21.070-36.662 53.828-52.002 94.736-9.312 24.834-17.478 51.978-24.45 80.952 37.138 12.93 75.832 28.824 115.268 47.536 39.44-18.71 78.13-34.61 115.27-47.538-6.972-28.972-15.136-56.116-24.448-80.948zM912.39 261.656c4.642-13.926 8.664-33.152 1.446-45.656-9.146-15.84-39.778-25.296-81.938-25.296-41.496 0-92.49 8.754-148.678 25.418 7.368 38.606 12.944 80.042 16.458 123.524 35.92 24.8 69.036 50.362 98.796 76.058 21.604-20.522 41.026-41.164 57.874-61.64 27.758-33.744 47.136-65.696 56.042-92.408zM432 448c0 44.183 35.817 80 80 80s80-35.817 80-80c0-44.183-35.817-80-80-80s-80 35.817-80 80z" />
|
40 |
-
<glyph unicode="" glyph-name="spinner-11" d="M466.038 402.038l-320 320-146.038-146.038v384h384l-146.038-146.038 320-320zM512 960c282.77 0 512-229.23 512-512s-229.23-512-512-512c-282.77 0-512 229.23-512 512h128c0-212.078 171.922-384 384-384s384 171.922 384 384c0 212.078-171.922 384-384 384v128z" />
|
41 |
-
<glyph unicode="" glyph-name="arrows-1-prev" d="M640-64l192 192-320 320 320 320-192 192-512-512z" />
|
42 |
-
<glyph unicode="" glyph-name="arrows-1-next" d="M384 960l-192-192 320-320-320-320 192-192 512 512z" />
|
43 |
-
<glyph unicode="" glyph-name="arrows-2-prev" d="M0 448l1024-448-192 448 192 448z" />
|
44 |
-
<glyph unicode="" glyph-name="arrows-2-next" d="M1024 448l-1024 448 192-448-192-448z" />
|
45 |
-
<glyph unicode="" glyph-name="arrows-3-prev" d="M768 960l-512-512 512-512-255.998 512z" />
|
46 |
-
<glyph unicode="" glyph-name="arrows-3-next" d="M256-64l512 512-512 512 256-512z" />
|
47 |
-
<glyph unicode="" glyph-name="arrows-4-prev" d="M640.002 704l-256-256 256-256.002z" />
|
48 |
-
<glyph unicode="" glyph-name="arrows-4-next" d="M384.002 192l256 256-256 256z" />
|
49 |
-
<glyph unicode="" glyph-name="arrows-5-prev" d="M0 448.002l512-512.002v320h511.998l0.002 384h-512v320l-512-511.998zM152 509.492l16 16v-154.98l-16 16v122.98zM136 402.512l-16 16v58.98l16 16v-90.98zM184 541.492l16 16v-218.982l-16 16v186.982zM216 573.492l16 16v-282.982l-16 16v250.982zM248 605.492l16 16v-346.982l-16 16v314.982zM280 637.492l16 15.998v-410.98l-16 16v378.982zM312 669.49l16 16v-474.98l-16 16v442.98zM344 701.49l16 16v-538.98l-16 16v506.98zM376 733.49l16 16v-602.98l-16 16v570.98zM408 765.49l16 16v-666.98l-16 16v634.98zM104 461.492v-26.98l-13.49 13.49 13.49 13.49zM472 320v256h16v-256h-16zM504 320v256h16v-256h-16zM536 320v256h16v-256h-16zM568 320v256h16v-256h-16zM600 320v256h16v-256h-16zM632 320v256h16v-256h-16zM664 320v256h16v-256h-16zM696 320v256h16v-256h-16zM728 320v256h16v-256h-16zM760 320v256h16v-256h-16zM792 320v256h16v-256h-16zM824 320v256h16v-256h-16zM856 320v256h16v-256h-16zM888 320v256h16v-256h-16zM920 320v256h16v-256h-16zM959.998 320h-7.998v256h8l-0.002-256zM448 576h8v-256h-8v-229.49l-8 8v698.98l8 8v-229.49z" />
|
50 |
-
<glyph unicode="" glyph-name="arrows-5-next" d="M1024 447.998l-512 512.002v-320h-511.998l-0.002-384h512v-320l512 511.998zM872 386.508l-16-16v154.98l16-16v-122.98zM888 493.488l16-16v-58.98l-16-16v90.98zM840 354.508l-16-16v218.982l16-16v-186.982zM808 322.508l-16-16v282.982l16-16v-250.982zM776 290.508l-16-16v346.982l16-16v-314.982zM744 258.508l-16-15.998v410.98l16-16v-378.982zM712 226.51l-16-16v474.98l16-16v-442.98zM680 194.51l-16-16v538.98l16-16v-506.98zM648 162.51l-16-16v602.98l16-16v-570.98zM616 130.51l-16-16v666.98l16-16v-634.98zM920 434.508v26.98l13.49-13.49-13.49-13.49zM552 576v-256h-16v256h16zM520 576v-256h-16v256h16zM488 576v-256h-16v256h16zM456 576v-256h-16v256h16zM424 576v-256h-16v256h16zM392 576v-256h-16v256h16zM360 576v-256h-16v256h16zM328 576v-256h-16v256h16zM296 576v-256h-16v256h16zM264 576v-256h-16v256h16zM232 576v-256h-16v256h16zM200 576v-256h-16v256h16zM168 576v-256h-16v256h16zM136 576v-256h-16v256h16zM104 576v-256h-16v256h16zM64.002 576h7.998v-256h-8l0.002 256zM576 320h-8v256h8v229.49l8-8v-698.98l-8-8v229.49z" />
|
51 |
-
<glyph unicode="" glyph-name="arrows-6-prev" d="M0 448l512-512v320h511.998l0.002 384h-512v320z" />
|
52 |
-
<glyph unicode="" glyph-name="arrows-6-next" d="M1024 448l-512 512v-320h-511.998l-0.002-384h512v-320z" />
|
53 |
-
<glyph unicode="" glyph-name="spinner-3" d="M448 704c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM512 128c-35.348 0-64 28.652-64 64s28.652 64 64 64c35.346 0 64-28.652 64-64s-28.654-64-64-64zM512 448c-114.876 0-208-93.124-208-208s93.124-208 208-208c-229.75 0-416 186.25-416 416s186.25 416 416 416c114.876 0 208-93.124 208-208s-93.124-208-208-208z" />
|
54 |
-
<glyph unicode="" glyph-name="error" d="M512 864c-111.118 0-215.584-43.272-294.156-121.844s-121.844-183.038-121.844-294.156c0-111.118 43.272-215.584 121.844-294.156s183.038-121.844 294.156-121.844c111.118 0 215.584 43.272 294.156 121.844s121.844 183.038 121.844 294.156c0 111.118-43.272 215.584-121.844 294.156s-183.038 121.844-294.156 121.844zM512 960v0c282.77 0 512-229.23 512-512s-229.23-512-512-512c-282.77 0-512 229.23-512 512s229.23 512 512 512zM448 256h128v-128h-128zM448 768h128v-384h-128z" />
|
55 |
-
<glyph unicode="" glyph-name="flat-pause" d="M598 724.667h170v-596h-170v596zM256 128.667v596h170v-596h-170z" />
|
56 |
-
<glyph unicode="" glyph-name="flat-play" d="M342 724.667l468-298-468-298v596z" />
|
57 |
-
<glyph unicode="" glyph-name="flat-prev" d="M426.667 768q17.667 0 30.167-12.5t12.5-30.167q0-18-12.667-30.333l-225.667-225.667h665q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-665l225.667-225.667q12.667-12.333 12.667-30.333 0-17.667-12.5-30.167t-30.167-12.5q-18 0-30.333 12.333l-298.667 298.667q-12.333 13-12.333 30.333t12.333 30.333l298.667 298.667q12.667 12.333 30.333 12.333z" />
|
58 |
-
<glyph unicode="" glyph-name="flat-next" d="M597.333 768q18 0 30.333-12.333l298.667-298.667q12.333-12.333 12.333-30.333t-12.333-30.333l-298.667-298.667q-12.333-12.333-30.333-12.333-18.333 0-30.5 12.167t-12.167 30.5q0 18 12.333 30.333l226 225.667h-665q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5h665l-226 225.667q-12.333 12.333-12.333 30.333 0 18.333 12.167 30.5t30.5 12.167z" />
|
59 |
-
<glyph unicode="" glyph-name="flat-loader" d="M693.333 288.334q17.333 0 30-12.667l120.667-120.667q12.667-12.667 12.667-30.333 0-17.333-12.667-30t-30-12.667q-17.667 0-30.333 12.667l-120.667 120.667q-12.333 12.333-12.333 30.333 0 17.667 12.5 30.167t30.167 12.5zM331 288.334q17.667 0 30.167-12.5t12.5-30.167-12.667-30.333l-120.667-120.667q-12.667-12.667-30-12.667-17.667 0-30.167 12.5t-12.5 30.167q0 18 12.333 30.333l120.667 120.667q12.667 12.667 30.333 12.667zM85.333 469.334h170.667q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-170.667q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM512 213.334q17.667 0 30.167-12.5t12.5-30.167v-170.667q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v170.667q0 17.667 12.5 30.167t30.167 12.5zM210.333 771.334q17.333 0 30-12.667l120.667-120.667q12.667-12.667 12.667-30 0-17.667-12.5-30.167t-30.167-12.5q-18 0-30.333 12.333l-120.667 120.667q-12.333 12.333-12.333 30.333 0 17.667 12.5 30.167t30.167 12.5zM768 469.334h170.667q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-170.667q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM512 896q17.667 0 30.167-12.5t12.5-30.167v-170.667q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v170.667q0 17.667 12.5 30.167t30.167 12.5zM814 771.334q17.333 0 30-12.667t12.667-30q0-17.667-12.667-30.333l-120.667-120.667q-12.333-12.333-30-12.333-18.333 0-30.5 12.167t-12.167 30.5q0 17.667 12.333 30l120.667 120.667q12.667 12.667 30.333 12.667z" />
|
60 |
-
<glyph unicode="" glyph-name="flat-maximize" d="M725.333 896h128q53 0 90.5-37.5t37.5-90.5v-128q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v128q0 17.667-12.5 30.167t-30.167 12.5h-128q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM85.333 256q17.667 0 30.167-12.5t12.5-30.167v-128q0-17.667 12.5-30.167t30.167-12.5h128q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-128q-53 0-90.5 37.5t-37.5 90.5v128q0 17.667 12.5 30.167t30.167 12.5zM170.667 896h128q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-128q-17.667 0-30.167-12.5t-12.5-30.167v-128q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v128q0 53 37.5 90.5t90.5 37.5zM938.667 256q17.667 0 30.167-12.5t12.5-30.167v-128q0-53-37.5-90.5t-90.5-37.5h-128q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5h128q17.667 0 30.167 12.5t12.5 30.167v128q0 17.667 12.5 30.167t30.167 12.5z" />
|
61 |
-
<glyph unicode="" glyph-name="flat-minimize" d="M725.333 896q17.667 0 30.167-12.5t12.5-30.167v-128q0-17.667 12.5-30.167t30.167-12.5h128q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-128q-53 0-90.5 37.5t-37.5 90.5v128q0 17.667 12.5 30.167t30.167 12.5zM85.333 256h128q53 0 90.5-37.5t37.5-90.5v-128q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v128q0 17.667-12.5 30.167t-30.167 12.5h-128q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM298.667 896q17.667 0 30.167-12.5t12.5-30.167v-128q0-53-37.5-90.5t-90.5-37.5h-128q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5h128q17.667 0 30.167 12.5t12.5 30.167v128q0 17.667 12.5 30.167t30.167 12.5zM810.667 256h128q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-128q-17.667 0-30.167-12.5t-12.5-30.167v-128q0-17.667-12.5-30.167t-30.167-12.5-30.167 12.5-12.5 30.167v128q0 53 37.5 90.5t90.5 37.5z" />
|
62 |
-
<glyph unicode="" glyph-name="flat-close" d="M810.667 768q18.333 0 30.5-12.167t12.167-30.5q0-18-12.333-30.333l-268.667-268.333 268.667-268.333q12.333-12.333 12.333-30.333 0-18.333-12.167-30.5t-30.5-12.167q-18 0-30.333 12.333l-268.333 268.667-268.333-268.667q-12.333-12.333-30.333-12.333-18.333 0-30.5 12.167t-12.167 30.5q0 18 12.333 30.333l268.667 268.333-268.667 268.333q-12.333 12.333-12.333 30.333 0 18.333 12.167 30.5t30.5 12.167q18 0 30.333-12.333l268.333-268.667 268.333 268.667q12.333 12.333 30.333 12.333z" />
|
63 |
-
<glyph unicode="" glyph-name="arrows-11-next" d="M512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM512 32c-229.75 0-416 186.25-416 416s186.25 416 416 416 416-186.25 416-416-186.25-416-416-416zM813.256 493.254l-256.002 256c-24.992 24.994-65.514 24.994-90.508 0s-24.994-65.516 0-90.51l146.744-146.744h-357.49c-35.346 0-64-28.654-64-64s28.654-64 64-64h357.49l-146.746-146.744c-24.994-24.994-24.994-65.518 0-90.512 12.498-12.496 28.878-18.744 45.256-18.744s32.758 6.248 45.254 18.744l256.002 256c24.992 24.994 24.992 65.518 0 90.51z" />
|
64 |
-
<glyph unicode="" glyph-name="arrows-11-prev" d="M512 960c282.77 0 512-229.23 512-512s-229.23-512-512-512-512 229.23-512 512 229.23 512 512 512zM512 32c229.75 0 416 186.25 416 416s-186.25 416-416 416-416-186.25-416-416 186.25-416 416-416zM210.744 493.254l256.002 256c24.992 24.994 65.514 24.994 90.508 0s24.994-65.516 0-90.51l-146.744-146.744h357.49c35.346 0 64-28.654 64-64s-28.654-64-64-64h-357.49l146.746-146.744c24.994-24.994 24.994-65.518 0-90.512-12.498-12.496-28.878-18.744-45.256-18.744s-32.758 6.248-45.254 18.744l-256.002 256c-24.992 24.994-24.992 65.518 0 90.51z" />
|
65 |
-
<glyph unicode="" glyph-name="arrows-7-next" d="M512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM813.256 402.744l-256.002-256c-12.496-12.496-28.876-18.744-45.254-18.744s-32.758 6.248-45.254 18.744c-24.994 24.994-24.994 65.518 0 90.512l146.744 146.744h-357.49c-35.346 0-64 28.654-64 64s28.654 64 64 64h357.49l-146.746 146.746c-24.994 24.994-24.994 65.516 0 90.51s65.516 24.994 90.508 0l256.002-256c24.994-24.994 24.994-65.518 0.002-90.512z" />
|
66 |
-
<glyph unicode="" glyph-name="arrows-7-prev" d="M512 960c282.77 0 512-229.23 512-512s-229.23-512-512-512-512 229.23-512 512 229.23 512 512 512zM210.744 402.744l256.002-256c12.496-12.496 28.876-18.744 45.254-18.744s32.758 6.248 45.254 18.744c24.994 24.994 24.994 65.518 0 90.512l-146.744 146.744h357.49c35.346 0 64 28.654 64 64s-28.654 64-64 64h-357.49l146.746 146.746c24.994 24.994 24.994 65.516 0 90.51s-65.516 24.994-90.508 0l-256.002-256c-24.994-24.994-24.994-65.518-0.002-90.512z" />
|
67 |
-
<glyph unicode="" glyph-name="arrows-8-next" d="M1023.998-64h-1023.998v1024h1024l-0.002-1024zM128 832v-768h767.998l0.002 768h-768zM576 224l224 224-224 224v-160h-320v-128h320v-160z" />
|
68 |
-
<glyph unicode="" glyph-name="arrows-8-prev" d="M0.002-64h1023.998v1024h-1024l0.002-1024zM896 832v-768h-767.998l-0.002 768h768zM448 224l-224 224 224 224v-160h320v-128h-320v-160z" />
|
69 |
-
<glyph unicode="" glyph-name="arrows-10-next" d="M512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM576 224v160h-320v128h320v160l224-224-224-224z" />
|
70 |
-
<glyph unicode="" glyph-name="arrows-10-prev" d="M512 960c282.77 0 512-229.23 512-512s-229.23-512-512-512-512 229.23-512 512 229.23 512 512 512zM448 224v160h320v128h-320v160l-224-224 224-224z" />
|
71 |
-
<glyph unicode="" glyph-name="arrows-9-next" d="M0 640h64v-384h-64zM128 640h64v-384h-64zM256 640h64v-384h-64zM1024 448l-448 448v-256h-192v-384h192v-256z" />
|
72 |
-
<glyph unicode="" glyph-name="arrows-9-prev" d="M960 640h64v-384h-64zM832 640h64v-384h-64zM704 640h64v-384h-64zM0 448l448 448v-256h192v-384h-192v-256z" />
|
73 |
-
<glyph unicode="" glyph-name="share" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
|
74 |
-
<glyph unicode="" glyph-name="vk" horiz-adv-x="1119" d="M1095.429 653.714c8.571-23.429-18.286-78.286-85.714-168-110.857-147.429-122.857-133.714-31.429-218.857 88-81.714 106.286-121.143 109.143-126.286 0 0 36.571-64-40.571-64.571l-146.286-2.286c-31.429-6.286-73.143 22.286-73.143 22.286-54.857 37.714-106.286 135.429-146.286 122.857 0 0-41.143-13.143-40-101.143 0.571-18.857-8.571-29.143-8.571-29.143s-10.286-10.857-30.286-12.571h-65.714c-144.571-9.143-272 124-272 124s-139.429 144-261.714 431.429c-8 18.857 0.571 28 0.571 28s8.571 10.857 32.571 10.857l156.571 1.143c14.857-2.286 25.143-10.286 25.143-10.286s9.143-6.286 13.714-18.286c25.714-64 58.857-122.286 58.857-122.286 57.143-117.714 96-137.714 118.286-125.714 0 0 29.143 17.714 22.857 160-2.286 51.429-16.571 74.857-16.571 74.857-13.143 17.714-37.714 22.857-48.571 24.571-8.571 1.143 5.714 21.714 24.571 30.857 28 13.714 77.714 14.286 136.571 13.714 46.286-0.571 59.429-3.429 77.143-7.429 54.286-13.143 36-63.429 36-184.571 0-38.857-7.429-93.143 20.571-110.857 12-8 41.714-1.143 114.857 123.429 0 0 34.286 59.429 61.143 128.571 4.571 12.571 14.286 17.714 14.286 17.714s9.143 5.143 21.714 3.429l164.571 1.143c49.714 6.286 57.714-16.571 57.714-16.571z" />
|
75 |
-
<glyph unicode="" glyph-name="delicious" horiz-adv-x="1033" d="M0-64v513.024h513.024v-513.024h-513.024zM521.216 446.976v513.024h512v-513.024h-512z" />
|
76 |
-
<glyph unicode="" glyph-name="delicious" horiz-adv-x="1033" d="M0-64v513.024h513.024v-513.024h-513.024zM521.216 446.976v513.024h512v-513.024h-512z" />
|
77 |
-
<glyph unicode="" glyph-name="share" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
|
78 |
-
<glyph unicode="play_arrow" glyph-name="flat-play" d="M342 724.667l468-298-468-298v596z" />
|
79 |
-
<glyph unicode="pause" glyph-name="flat-pause" d="M598 724.667h170v-596h-170v596zM256 128.667v596h170v-596h-170z" />
|
80 |
-
</font></defs></svg>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
free/css/font/foobox.ttf
DELETED
Binary file
|
free/css/font/foobox.woff
DELETED
Binary file
|
free/css/foobox.free.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.fbx-modal,.fbx-modal *{box-sizing:content-box}.fbx-modal{position:fixed;top:0;left:0;z-index:9000001;visibility:hidden;width:100%;height:100%;font-family:"Segoe UI",Helvetica,Arial,"Sans Serif",serif;line-height:normal;outline:0!important;transform:translate3d(0,0,0);perspective:0}.fbx-modal.fbx-loading,.fbx-modal.fbx-show{visibility:visible}.fbx-no-scroll{overflow:hidden!important}.fbx-inner-spacer{display:none;padding:40px}.fbx-inner,.fbx-loader{position:absolute;top:50%;left:50%}.fbx-inner{visibility:hidden;overflow:visible!important;margin-top:-5px;margin-left:-5px;min-width:100px;min-height:100px;width:100px;height:100px;z-index:100002}.fbx-show .fbx-inner{visibility:visible}.fbx-loader{visibility:hidden;z-index:100005;margin-top:-40px;margin-left:-40px;width:80px;height:80px;font-size:16px;box-shadow:0 0 3px rgba(0,0,0,.4)}.fbx-loading .fbx-loader,.fbx-show .fbx-caption{visibility:visible}.fbx-phone.fbx-portrait .fbx-loader{margin-top:-18px}.fbx-loader>div{margin:10px;width:60px;height:60px}.fbx-item-current,.fbx-item-next,.fbx-stage{left:0;margin:0;width:100%;height:100%;padding:0;outline:0;position:absolute;border:none;top:0}.fbx-stage{overflow:hidden}.fbx-item-current,.fbx-item-next{-webkit-user-drag:none;overflow:auto}.fbx-loading .fbx-item-current,.fbx-loading .fbx-item-next{overflow:hidden}.fbx-item-next{z-index:100001}.fbx-item-current{z-index:100002}.fbx-error-msg{width:200px;height:200px;position:absolute;top:50%;left:50%;margin-top:-100px;margin-left:-100px}.fbx-error-msg>span{line-height:200px;width:100%;height:100%;display:block}.fbx-error-msg>p{position:absolute;top:100%;text-align:center;width:100%;margin:0}.fbx-item-embed,.fbx-item-iframe,.fbx-item-image,.fbx-item-video{margin:0;padding:0;width:100%;height:100%;outline:0;border:none;display:block}.fbx-item-video>.fbx-video{background-color:#000}.fbx-item-embed embed,.fbx-item-embed iframe,.fbx-item-embed object{margin-bottom:0}.fbx-item-embed>embed,.fbx-item-embed>iframe,.fbx-item-embed>object{max-width:100%;max-height:100%}.fbx-ios-12-or-below .fbx-item-current{-webkit-overflow-scrolling:touch!important;overflow:auto!important}.fbx-ios-12-or-below .fbx-item-iframe{width:1px;min-width:100%}.fbx-close,.fbx-next,.fbx-prev{position:absolute;z-index:100006;display:block;outline:0!important;text-decoration:none;cursor:pointer}.fbx-close:hover,.fbx-next:hover,.fbx-prev:hover{text-decoration:none}.fbx-no-buttons .fbx-next,.fbx-no-buttons .fbx-prev{display:none!important}.fbx-phone .fbx-count,.fbx-phone .fbx-credit em,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-next,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-prev,.fbx-rounded .fbx-next.fbx-disabled,.fbx-rounded .fbx-prev.fbx-disabled{display:none}.fbx-credit{position:absolute;z-index:100003;text-transform:lowercase;font-size:10px}.fbx-credit em{font-style:normal;font-size:10px}.fbx-credit a{text-decoration:none;font-size:10px}.fbx-credit a:hover span{text-decoration:underline}.fbx-credit a span{letter-spacing:1px;font-size:10px;color:#fff}.fbx-count{position:absolute;z-index:100002;width:100%;text-align:center;font-size:10px}.fbx-btn-transition,.fbx-btn-transition:before{transition-property:color,border-color,opacity,box-shadow;transition-duration:.2s,.2s,.2s,.2s;transition-timing-function:ease-in,linear,ease-in,ease-in;outline:0}.fbx-modal.fbx-phone .fbx-inner{border:none}.fbx-modal.fbx-phone .fbx-close,.fbx-modal.fbx-phone .fbx-next,.fbx-modal.fbx-phone .fbx-prev{position:fixed}.fbx-modal.fbx-phone .fbx-credit{bottom:2px;left:2px}.fbx-modal.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:45px 5px 5px}.fbx-modal.fbx-phone.fbx-portrait .fbx-close,.fbx-modal.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{border:none;opacity:1;margin:0;top:0;bottom:auto;width:auto;height:40px;border-radius:0;line-height:40px}.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{left:0;right:66%}.fbx-modal.fbx-phone.fbx-portrait .fbx-next{left:33%;right:33%}.fbx-modal.fbx-phone.fbx-portrait .fbx-close{left:66%;right:0}.fbx-modal.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close{left:0;right:0}.fbx-modal.fbx-phone.fbx-landscape{border-right-width:46px;border-right-style:solid;box-sizing:border-box}.fbx-modal.fbx-phone.fbx-landscape .fbx-inner-spacer{padding:5px}.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{bottom:auto;left:auto;right:-45px;width:44px;height:44px;line-height:44px;border:none;opacity:1;margin:0}.fbx-modal.fbx-phone.fbx-landscape .fbx-close{top:0;height:60px}.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{top:62px}.fbx-modal.fbx-phone.fbx-landscape .fbx-next{top:108px}@font-face{font-family:foobox;src:url(font/foobox.eot);src:url(font/foobox.eot?#iefix) format('embedded-opentype'),url(font/foobox.woff) format('woff'),url(font/foobox.ttf) format('truetype'),url(font/foobox.svg#foobox) format('svg');font-weight:400;font-style:normal;font-display:fallback}.foobox_font_preload{font-family:foobox!important;color:transparent!important;position:absolute!important;top:-9999px!important;left:-9999px!important;visibility:hidden!important;opacity:0!important}.fbx-modal .fbx-error-msg>span,.fbx-modal .fbx-loader>div,.fbx-modal a.fbx-close,.fbx-modal a.fbx-next,.fbx-modal a.fbx-prev{font-family:foobox;font-size:16px;font-weight:400;text-align:center;outline:0}.fbx-modal .fbx-loader>div{font-size:300%;line-height:60px}.fbx-modal.fbx-loading .fbx-loader>div{animation:spin 2s infinite linear}.fbx-modal .fbx-error-msg>span{font-size:1000%}.fbx-modal .fbx-error-msg>span:before{content:"\e028"}.fbx-close:before{content:"\e002"}.fbx-prev:before{content:"\e000"}.fbx-next:before{content:"\e001"}.fbx-loader>div:before{content:"\e012"}.fbx-flat .fbx-close:before{content:"\e117"}.fbx-flat .fbx-prev:before{content:"\e094"}.fbx-flat .fbx-next:before{content:"\e095"}.fbx-flat .fbx-loader>div:before{content:"\e105"}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}}.fbx-rounded .fbx-prev.fbx-btn-shadow,.fbx-rounded .fbx-prev.fbx-btn-shadow:hover{box-shadow:-2px 0 2px rgba(0,0,0,.4)}.fbx-rounded .fbx-next.fbx-btn-shadow,.fbx-rounded .fbx-next.fbx-btn-shadow:hover{box-shadow:2px 0 2px rgba(0,0,0,.4)}.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-inner-shadow,.fbx-rounded .fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev.fbx-btn-shadow:before,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow{box-shadow:0 0 12px rgba(0,0,0,.4)}.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-rounded .fbx-btn-shadow:hover,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev.fbx-btn-shadow:hover:before,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover{box-shadow:0 0 6px rgba(0,0,0,.4)}.fbx-flat .fbx-inner-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow:before,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow:before,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow:hover{box-shadow:none}.fbx-rounded .fbx-inner{border:8px solid transparent;border-radius:6px}.fbx-rounded .fbx-item-current,.fbx-rounded .fbx-item-image,.fbx-rounded .fbx-item-next{border-radius:3px}.fbx-rounded .fbx-loader,.fbx-rounded .fbx-loader>div{border-radius:50%}.fbx-rounded .fbx-error-msg{margin-top:-115px}.fbx-rounded .fbx-close{top:-21px;right:-21px;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%}.fbx-rounded .fbx-next,.fbx-rounded .fbx-prev{position:absolute;top:50%;margin-top:-50px;width:30px;height:100px;line-height:100px;border:3px solid transparent}.fbx-rounded .fbx-prev{left:-40px;border-radius:6px 0 0 6px}.fbx-rounded .fbx-next{right:-40px;border-radius:0 6px 6px 0}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled{display:block;cursor:default}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled:before,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled:before{opacity:0}.fbx-rounded.fbx-desktop .fbx-next,.fbx-rounded.fbx-desktop .fbx-prev{position:absolute}.fbx-rounded .fbx-count,.fbx-rounded .fbx-credit{bottom:-25px}.fbx-rounded .fbx-inner-spacer{padding:40px 40px 50px}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:45px 5px 5px}.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;margin-top:-50px;width:40px;height:100px;line-height:100px}.fbx-rounded.fbx-sticky-buttons .fbx-prev{left:0;border-radius:0 6px 6px 0}.fbx-rounded.fbx-sticky-buttons .fbx-next{right:0;border-radius:6px 0 0 6px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:40px 80px}.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:45px 5px 5px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:5px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:0;border-radius:0;width:4%;min-width:45px;height:auto;opacity:.3}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:fixed;width:4%;min-width:45px;height:30px;line-height:30px;top:50%;margin-top:-15px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{left:0;right:auto}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before{left:auto;right:0}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:relative;width:auto;min-width:0;height:auto;line-height:inherit;top:auto;margin-top:auto}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:auto;border-radius:0;width:auto;min-width:0;height:auto;opacity:1}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:0;right:66%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:33%;right:33%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:66%;right:0}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:0;right:0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{bottom:auto;width:34px;height:80px;opacity:.5}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:62px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{top:108px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{border-radius:0 6px 6px 0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{border-radius:6px 0 0 6px}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{z-index:100003;position:absolute;top:0;bottom:0;height:100%;width:25%;margin:0;border-radius:0;background-color:transparent;box-sizing:border-box}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{left:0}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next{right:0}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev:before{width:28px;height:28px;border-radius:50%;position:absolute;top:50%;margin-top:-14px;line-height:28px;border-width:3px;border-style:solid;opacity:0}.fbx-rounded.fbx-inset-buttons .fbx-prev:before{left:10px}.fbx-rounded.fbx-inset-buttons .fbx-next:before{right:10px}.fbx-rounded.fbx-inset-buttons .fbx-next:hover:before,.fbx-rounded.fbx-inset-buttons .fbx-prev:hover:before{opacity:1}.fbx-light,.fbx-light .fbx-caption,.fbx-light .fbx-open-caption,.fbx-light.fbx-phone .fbx-social{background-color:rgba(0,0,0,.7)}.fbx-light .fbx-progress{background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-light{background-color:#d3d3d3}.fbx-light .fbx-inner,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before,.fbx-light.fbx-modal,.fbx-modal.fbx-light.fbx-phone .fbx-close:hover,.fbx-modal.fbx-light.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-light.fbx-phone .fbx-next:hover,.fbx-modal.fbx-light.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-light.fbx-phone .fbx-play:hover,.fbx-modal.fbx-light.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-light.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-light .fbx-close,.fbx-rounded.fbx-light .fbx-fullscreen-toggle,.fbx-rounded.fbx-light .fbx-pause,.fbx-rounded.fbx-light .fbx-play,.fbx-rounded.fbx-light .fbx-social-toggle{border-color:#FFF}.fbx-light .fbx-close,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-inner,.fbx-light .fbx-loader,.fbx-light .fbx-next,.fbx-light .fbx-pause,.fbx-light .fbx-play,.fbx-light .fbx-prev,.fbx-light .fbx-social-toggle,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before{background-color:#FFF}.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-social-toggle,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-prev:before{background-color:transparent}.fbx-flat.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-prev:before{border-color:transparent}.fbx-flat.fbx-light.fbx-modal{border-color:rgba(0,0,0,.2)}.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-close,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-fullscreen-toggle,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-next,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-pause,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-play,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-prev,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-social-toggle{background-color:rgba(0,0,0,.2)}.fbx-light .fbx-close,.fbx-light .fbx-close:before,.fbx-light .fbx-error-msg,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-fullscreen-toggle:before,.fbx-light .fbx-loader,.fbx-light .fbx-loader:before,.fbx-light .fbx-next,.fbx-light .fbx-next:before,.fbx-light .fbx-pause,.fbx-light .fbx-pause:before,.fbx-light .fbx-play,.fbx-light .fbx-play:before,.fbx-light .fbx-prev,.fbx-light .fbx-prev:before,.fbx-light .fbx-social-toggle,.fbx-light .fbx-social-toggle:before,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before,.fbx-metro.fbx-light .fbx-count,.fbx-metro.fbx-light .fbx-credit a{color:#666!important}.fbx-close-caption,.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-close:before,.fbx-flat.fbx-light .fbx-count,.fbx-flat.fbx-light .fbx-credit a,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-fullscreen-toggle:before,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-next:before,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-pause:before,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-play:before,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-prev:before,.fbx-flat.fbx-light .fbx-social-toggle,.fbx-flat.fbx-light .fbx-social-toggle:before,.fbx-open-caption{color:#FFF!important}.fbx-light .fbx-close:hover,.fbx-light .fbx-close:hover:before,.fbx-light .fbx-fullscreen-toggle:hover,.fbx-light .fbx-fullscreen-toggle:hover:before,.fbx-light .fbx-next:hover,.fbx-light .fbx-next:hover:before,.fbx-light .fbx-pause:hover,.fbx-light .fbx-pause:hover:before,.fbx-light .fbx-play:hover,.fbx-light .fbx-play:hover:before,.fbx-light .fbx-prev:hover,.fbx-light .fbx-prev:hover:before,.fbx-light .fbx-social-toggle:hover,.fbx-light .fbx-social-toggle:hover:before,.fbx-light.fbx-inset-buttons .fbx-next:hover:before,.fbx-light.fbx-inset-buttons .fbx-prev:hover:before,.fbx-metro.fbx-light .fbx-credit a:hover{color:#bababa!important}.fbx-metro.fbx-light .fbx-close:hover,.fbx-metro.fbx-light .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-light .fbx-next:hover,.fbx-metro.fbx-light .fbx-pause:hover,.fbx-metro.fbx-light .fbx-play:hover,.fbx-metro.fbx-light .fbx-prev:hover,.fbx-metro.fbx-light .fbx-social-toggle:hover{border-color:#bababa}.fbx-flat.fbx-light .fbx-count,.fbx-flat.fbx-light .fbx-credit a,.fbx-rounded.fbx-light .fbx-count,.fbx-rounded.fbx-light .fbx-credit a{color:#888}.fbx-flat.fbx-light .fbx-credit a:hover span,.fbx-rounded.fbx-light .fbx-credit a:hover span{color:#ddd}.fbx-light .fbx-caption{color:#FFF}.fbx-light .fbx-caption-desc,.fbx-light .fbx-caption-desc a{color:#eee}.fbx-light .fbx-item-current::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-thumb{background:rgba(0,0,0,.5)}.fbx-light .fbx-item-current::-webkit-scrollbar,.fbx-light .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track,.fbx-light .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-corner,.fbx-light .fbx-item-current::-webkit-scrollbar-thumb,.fbx-light .fbx-item-next::-webkit-scrollbar-corner,.fbx-light .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-caption{position:absolute;top:auto;right:auto;bottom:0;left:0;z-index:100004;width:100%;text-align:center;font-size:14px;transition:visibility .3s ease,opacity .3s ease,transform .3s ease;opacity:1;transform:translateY(0)}.fbx-open-caption,.fbx-show .fbx-caption.fbx-fade-caption{opacity:0;visibility:hidden}.fbx-caption.fbx-hide-caption{transition:none}.fbx-caption.fbx-slide-caption{transform:translateY(100%)}.fbx-loading .fbx-caption.fbx-hide-caption,.fbx-show .fbx-caption.fbx-hide-caption{visibility:hidden}.fbx-fullscreen-mode .fbx-caption,.fbx-sticky-caption .fbx-caption{position:fixed;z-index:100007}.fbx-close-caption,.fbx-open-caption{position:absolute;font-size:24px;text-decoration:none;cursor:pointer;line-height:20px}.fbx-rounded .fbx-caption{border-radius:0 0 3px 3px}.fbx-modal.fbx-phone .fbx-caption,.fbx-sticky-caption.fbx-rounded .fbx-caption{border-radius:0}.fbx-close-caption{top:0;right:0;padding:3px 3px 10px 10px}.fbx-open-caption{z-index:100004;bottom:0;right:5px;padding:0 10px 10px;transition:opacity .3s ease;border-top-left-radius:6px;border-top-right-radius:6px}.fbx-caption-toggle-only.fbx-captions-hidden .fbx-open-caption,.fbx-pannable-item.fbx-captions-hidden .fbx-open-caption{opacity:1;visibility:visible}.fbx-caption-title{font-size:15px;padding:15px}.fbx-caption-desc{font-size:12px;line-height:20px;padding:15px}.fbx-caption-desc a{font-size:12px}.fbx-caption-title+.fbx-caption-desc{margin-top:-30px}.fbx-phone .fbx-caption{min-height:20px;font-size:12px;line-height:20px}.fbx-phone .fbx-caption-title{font-size:13px;padding:10px}.fbx-phone .fbx-caption-desc{font-size:11px;line-height:15px;padding:10px}.fbx-phone .fbx-caption-title+.fbx-caption-desc{margin-top:-20px}.fbx-modal.fbx-phone .fbx-caption{z-index:100004;bottom:0;position:fixed}.fbx-modal.fbx-phone.fbx-landscape .fbx-caption,.fbx-phone.fbx-landscape.fbx-sticky-caption .fbx-caption{z-index:100004}.fbx-pannable{cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.fbx-pannable.fbx-panning{cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.fbx-pannable>div>img.fbx-item{max-width:none;max-height:none}.fbx-pan-overview{cursor:pointer;max-width:150px;max-height:150px;overflow:hidden;background-position:top left;background-size:cover;position:absolute;z-index:100006;border:2px solid #666;box-shadow:0 0 12px rgba(0,0,0,.8)}.fbx-pan-overview.fbx-top-left{top:20px;left:20px}.fbx-pan-overview.fbx-top-right{top:20px;right:32px}.fbx-pan-overview.fbx-bottom-left{bottom:32px;left:20px}.fbx-pan-overview.fbx-bottom-right{bottom:32px;right:32px}.fbx-pan-viewport{position:absolute;top:0;left:0;box-shadow:0 0 300px 300px rgba(0,0,0,.7)}.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle{right:1px!important}
|
1 |
+
.fbx-modal,.fbx-modal *{box-sizing:content-box}.fbx-modal{position:fixed;top:0;left:0;z-index:9000001;visibility:hidden;width:100%;height:100%;font-family:"Segoe UI",Helvetica,Arial,"Sans Serif",serif;line-height:normal;outline:0!important;transform:translate3d(0,0,0);perspective:0}.fbx-inner,.fbx-loader{position:absolute;top:50%;left:50%}.fbx-icon,.fbx-loader{transform:translateX(-50%) translateY(-50%)}.fbx-modal.fbx-loading,.fbx-modal.fbx-show{visibility:visible}.fbx-no-scroll{overflow:hidden!important}.fbx-inner-spacer{display:none;padding:40px}.fbx-inner{visibility:hidden;overflow:visible!important;margin-top:-5px;margin-left:-5px;min-width:100px;min-height:100px;width:100px;height:100px;z-index:100002}.fbx-show .fbx-inner{visibility:visible}.fbx-loader{visibility:hidden;z-index:100005;width:80px;height:80px;font-size:16px;box-shadow:0 0 3px rgba(0,0,0,.4)}.fbx-loading .fbx-loader,.fbx-show .fbx-caption{visibility:visible}.fbx-loader .fbx-icon{width:48px;height:48px;margin-top:-24px;margin-left:-24px;transform:none}.fbx-loading .fbx-loader .fbx-icon{animation:spin 2s infinite linear}.fbx-phone.fbx-portrait .fbx-loader{top:calc(50% + 20px)}.fbx-item-current,.fbx-item-next,.fbx-stage{position:absolute;top:0;left:0;width:100%;height:100%;padding:0;border:none;margin:0}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}}.fbx-stage{outline:0;overflow:hidden}.fbx-item-current,.fbx-item-next{-webkit-user-drag:none;outline:0;overflow:auto}.fbx-loading .fbx-item-current,.fbx-loading .fbx-item-next{overflow:hidden}.fbx-item-next{z-index:100001}.fbx-item-current{z-index:100002}.fbx-error-msg{width:240px;height:240px;position:relative}.fbx-error-msg>svg{width:auto;height:150px;display:block;top:calc(50% - 20px)}.fbx-error-msg>p{position:absolute;bottom:24px;text-align:center;width:100%;margin:0}.fbx-item-embed,.fbx-item-iframe,.fbx-item-image,.fbx-item-video{margin:0;padding:0;width:100%;height:100%;outline:0;border:none;display:block}.fbx-item-video>.fbx-video{background-color:#000}.fbx-item-embed embed,.fbx-item-embed iframe,.fbx-item-embed object{margin-bottom:0}.fbx-item-embed>embed,.fbx-item-embed>iframe,.fbx-item-embed>object{max-width:100%;max-height:100%}.fbx-ios-12-or-below .fbx-item-current{-webkit-overflow-scrolling:touch!important;overflow:auto!important}.fbx-ios-12-or-below .fbx-item-iframe{width:1px;min-width:100%}.fbx-close,.fbx-next,.fbx-prev{position:absolute;z-index:100006;display:block;outline:0!important;text-decoration:none;cursor:pointer}.fbx-close:hover,.fbx-next:hover,.fbx-prev:hover{text-decoration:none}.fbx-no-buttons .fbx-next,.fbx-no-buttons .fbx-prev{display:none!important}.fbx-credit{position:absolute;z-index:100003;text-transform:lowercase;font-size:10px}.fbx-credit em{font-style:normal;font-size:10px}.fbx-credit a{text-decoration:none;font-size:10px}.fbx-credit a:hover span{text-decoration:underline}.fbx-credit a span{letter-spacing:1px;font-size:10px}.fbx-count{position:absolute;z-index:100002;width:100%;text-align:center;font-size:10px}.fbx-btn-transition{transition-property:color,border-color,opacity,box-shadow,filter,-webkit-filter;transition-duration:.2s,.2s,.2s,.2s,.2s,.2s;transition-timing-function:ease-in,linear,ease-in,ease-in,ease-in,ease-in;outline:0}.fbx-phone .fbx-count,.fbx-phone .fbx-credit em,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-next,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-prev{display:none}.fbx-modal.fbx-phone .fbx-inner{border:none}.fbx-modal.fbx-phone .fbx-close,.fbx-modal.fbx-phone .fbx-next,.fbx-modal.fbx-phone .fbx-prev{position:fixed}.fbx-modal.fbx-phone .fbx-credit{bottom:2px;left:2px}.fbx-modal.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:45px 5px 5px}.fbx-modal.fbx-phone.fbx-portrait .fbx-close,.fbx-modal.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{border:none;opacity:1;margin:0;top:0;bottom:auto;width:auto;height:40px;border-radius:0;line-height:40px}.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{left:0;right:66%}.fbx-modal.fbx-phone.fbx-portrait .fbx-next{left:33%;right:33%}.fbx-modal.fbx-phone.fbx-portrait .fbx-close{left:66%;right:0}.fbx-modal.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close{left:0;right:0}.fbx-modal.fbx-phone.fbx-landscape{border-right-width:46px;border-right-style:solid;box-sizing:border-box}.fbx-modal.fbx-phone.fbx-landscape .fbx-inner-spacer{padding:5px}.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{bottom:auto;left:auto;right:-45px;width:44px;height:44px;line-height:44px;border:none;opacity:1;margin:0}.fbx-modal.fbx-phone.fbx-landscape .fbx-close{top:0;height:60px}.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{top:62px}.fbx-modal.fbx-phone.fbx-landscape .fbx-next{top:108px}.fbx-icon{display:inline-block;fill:currentColor;position:absolute;top:50%;left:50%}.fbx-icon-close path{display:none}.fbx-flat .fbx-icon-close-flat,.fbx-metro .fbx-icon-close-default,.fbx-rounded .fbx-icon-close-default{display:inline}.fbx-flat .fbx-pause .fbx-icon-play-flat,.fbx-flat .fbx-play .fbx-icon-pause-flat,.fbx-icon-slideshow path,.fbx-metro .fbx-pause .fbx-icon-play-default,.fbx-metro .fbx-play .fbx-icon-pause-default,.fbx-rounded .fbx-pause .fbx-icon-play-default,.fbx-rounded .fbx-play .fbx-icon-pause-default{display:none}.fbx-flat .fbx-pause .fbx-icon-pause-flat,.fbx-flat .fbx-play .fbx-icon-play-flat,.fbx-metro .fbx-pause .fbx-icon-pause-default,.fbx-metro .fbx-play .fbx-icon-play-default,.fbx-rounded .fbx-pause .fbx-icon-pause-default,.fbx-rounded .fbx-play .fbx-icon-play-default{display:inline}.fbx-flat .fbx-maximize .fbx-icon-minimize-flat,.fbx-flat .fbx-minimize .fbx-icon-maximize-flat,.fbx-icon-fullscreen path,.fbx-metro .fbx-maximize .fbx-icon-minimize-default,.fbx-metro .fbx-minimize .fbx-icon-maximize-default,.fbx-rounded .fbx-maximize .fbx-icon-minimize-default,.fbx-rounded .fbx-minimize .fbx-icon-maximize-default{display:none}.fbx-flat .fbx-maximize .fbx-icon-maximize-flat,.fbx-flat .fbx-minimize .fbx-icon-minimize-flat,.fbx-metro .fbx-maximize .fbx-icon-maximize-default,.fbx-metro .fbx-minimize .fbx-icon-minimize-default,.fbx-rounded .fbx-maximize .fbx-icon-maximize-default,.fbx-rounded .fbx-minimize .fbx-icon-minimize-default{display:inline}.fbx-flat.fbx-arrows-1 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-10 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-11 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-2 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-3 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-4 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-5 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-6 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-7 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-8 .fbx-icon-arrows-flat,.fbx-flat.fbx-arrows-9 .fbx-icon-arrows-flat,.fbx-icon-next path,.fbx-icon-prev path,.fbx-metro.fbx-arrows-1 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-10 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-11 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-2 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-3 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-4 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-5 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-6 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-7 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-8 .fbx-icon-arrows-default,.fbx-metro.fbx-arrows-9 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-1 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-10 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-11 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-2 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-3 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-4 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-5 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-6 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-7 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-8 .fbx-icon-arrows-default,.fbx-rounded.fbx-arrows-9 .fbx-icon-arrows-default{display:none}.fbx-arrows-1 .fbx-icon-arrows-1,.fbx-arrows-10 .fbx-icon-arrows-10,.fbx-arrows-11 .fbx-icon-arrows-11,.fbx-arrows-2 .fbx-icon-arrows-2,.fbx-arrows-3 .fbx-icon-arrows-3,.fbx-arrows-4 .fbx-icon-arrows-4,.fbx-arrows-5 .fbx-icon-arrows-5,.fbx-arrows-6 .fbx-icon-arrows-6,.fbx-arrows-7 .fbx-icon-arrows-7,.fbx-arrows-8 .fbx-icon-arrows-8,.fbx-arrows-9 .fbx-icon-arrows-9,.fbx-flat .fbx-icon-arrows-flat,.fbx-metro .fbx-icon-arrows-default,.fbx-rounded .fbx-icon-arrows-default{display:inline}.fbx-flat.fbx-spinner-1 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-10 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-11 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-2 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-3 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-4 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-5 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-6 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-7 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-8 .fbx-icon-spinner-flat,.fbx-flat.fbx-spinner-9 .fbx-icon-spinner-flat,.fbx-icon-spinner path,.fbx-metro.fbx-spinner-1 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-10 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-11 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-2 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-3 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-4 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-5 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-6 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-7 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-8 .fbx-icon-spinner-default,.fbx-metro.fbx-spinner-9 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-1 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-10 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-11 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-2 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-3 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-4 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-5 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-6 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-7 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-8 .fbx-icon-spinner-default,.fbx-rounded.fbx-spinner-9 .fbx-icon-spinner-default{display:none}.fbx-flat .fbx-icon-spinner-flat,.fbx-metro .fbx-icon-spinner-default,.fbx-rounded .fbx-icon-spinner-default,.fbx-spinner-1 .fbx-icon-spinner-1,.fbx-spinner-10 .fbx-icon-spinner-10,.fbx-spinner-11 .fbx-icon-spinner-11,.fbx-spinner-2 .fbx-icon-spinner-2,.fbx-spinner-3 .fbx-icon-spinner-3,.fbx-spinner-4 .fbx-icon-spinner-4,.fbx-spinner-5 .fbx-icon-spinner-5,.fbx-spinner-6 .fbx-icon-spinner-6,.fbx-spinner-7 .fbx-icon-spinner-7,.fbx-spinner-8 .fbx-icon-spinner-8,.fbx-spinner-9 .fbx-icon-spinner-9{display:inline}.fbx-rounded .fbx-prev.fbx-btn-shadow,.fbx-rounded .fbx-prev.fbx-btn-shadow:hover{box-shadow:-2px 0 2px rgba(0,0,0,.4)}.fbx-rounded .fbx-next.fbx-btn-shadow,.fbx-rounded .fbx-next.fbx-btn-shadow:hover{box-shadow:2px 0 2px rgba(0,0,0,.4)}.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-inner-shadow,.fbx-rounded .fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons.fbx-desktop:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-desktop:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow .fbx-icon,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow{box-shadow:0 0 12px rgba(0,0,0,.4)}.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-rounded .fbx-btn-shadow:hover,.fbx-rounded.fbx-inset-buttons.fbx-desktop:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow:hover .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-desktop:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow:hover .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow:hover .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow:hover .fbx-icon,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover{box-shadow:0 0 6px rgba(0,0,0,.4)}.fbx-flat .fbx-inner-shadow,.fbx-flat .fbx-loader,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow .fbx-icon,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow .fbx-icon,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-next.fbx-btn-shadow:hover,.fbx-rounded.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-prev.fbx-btn-shadow:hover{box-shadow:none}.fbx-flat .fbx-loader .fbx-icon,.fbx-flat:not(.fbx-phone) .fbx-btn-shadow .fbx-icon{filter:drop-shadow(0 0 3px rgba(0, 0, 0, 1))}.fbx-flat:not(.fbx-phone) .fbx-btn-shadow:hover .fbx-icon{filter:drop-shadow(0 0 1px rgba(0, 0, 0, 1))}.fbx-rounded .fbx-inner{border:8px solid transparent;border-radius:6px}.fbx-rounded .fbx-item-current,.fbx-rounded .fbx-item-image,.fbx-rounded .fbx-item-next{border-radius:3px}.fbx-rounded .fbx-loader{border-radius:50%}.fbx-rounded .fbx-close{top:-21px;right:-21px;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%}.fbx-rounded .fbx-next,.fbx-rounded .fbx-prev{position:absolute;top:50%;margin-top:-50px;width:30px;height:100px;line-height:100px;border:3px solid transparent}.fbx-rounded .fbx-prev{left:-40px;border-radius:6px 0 0 6px}.fbx-rounded .fbx-next{right:-40px;border-radius:0 6px 6px 0}.fbx-rounded .fbx-next.fbx-disabled,.fbx-rounded .fbx-prev.fbx-disabled{display:none}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled{display:block;cursor:default}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled .fbx-icon,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled .fbx-icon{opacity:.3}.fbx-rounded.fbx-desktop .fbx-next,.fbx-rounded.fbx-desktop .fbx-prev{position:absolute}.fbx-rounded .fbx-count,.fbx-rounded .fbx-credit{bottom:-25px}.fbx-rounded .fbx-inner-spacer{padding:40px 40px 50px}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:45px 5px 5px}.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;margin-top:-50px;width:40px;height:100px;line-height:100px}.fbx-rounded.fbx-sticky-buttons .fbx-prev{left:0;border-radius:0 6px 6px 0}.fbx-rounded.fbx-sticky-buttons .fbx-next{right:0;border-radius:6px 0 0 6px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:40px 80px}.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:45px 5px 5px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:5px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:0;border-radius:0;width:55px;height:auto;opacity:.3}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons:not(.fbx-fullscreen-mode) .fbx-next .fbx-icon,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons:not(.fbx-fullscreen-mode) .fbx-prev .fbx-icon{height:32px;width:auto}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:auto;border-radius:0;width:auto;min-width:0;height:40px;opacity:1}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next .fbx-icon,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev .fbx-icon{height:16px;width:auto}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:0;right:66%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:33%;right:33%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:66%;right:0}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:0;right:0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{bottom:auto;width:34px;height:80px;opacity:.5}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:62px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{top:108px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{border-radius:0 6px 6px 0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{border-radius:6px 0 0 6px}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{z-index:100003;position:absolute;top:0;bottom:0;height:100%;width:25%;margin:0;border-radius:0;box-sizing:border-box;opacity:0}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next:hover,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev:hover,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next:hover,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{left:0;right:auto}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next{right:0;left:auto}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev .fbx-icon{width:16px;height:16px;border-radius:50%;position:absolute;top:50%;padding:5px;border-width:3px;border-style:solid;transform:translateY(-50%)}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev .fbx-icon{left:10px;right:auto}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next .fbx-icon,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next .fbx-icon{right:10px;left:auto}.fbx-light,.fbx-light .fbx-caption,.fbx-light .fbx-open-caption,.fbx-light.fbx-phone .fbx-social{background-color:rgba(0,0,0,.7)}.fbx-light .fbx-progress{background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-light{background-color:grey}.fbx-light .fbx-inner,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-next .fbx-icon,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-prev .fbx-icon,.fbx-light.fbx-modal,.fbx-modal.fbx-light.fbx-phone .fbx-close:hover,.fbx-modal.fbx-light.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-light.fbx-phone .fbx-next:hover,.fbx-modal.fbx-light.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-light.fbx-phone .fbx-play:hover,.fbx-modal.fbx-light.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-light.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-light .fbx-close,.fbx-rounded.fbx-light .fbx-fullscreen-toggle,.fbx-rounded.fbx-light .fbx-pause,.fbx-rounded.fbx-light .fbx-play,.fbx-rounded.fbx-light .fbx-social-toggle{border-color:#FFF}.fbx-light .fbx-close,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-inner,.fbx-light .fbx-loader,.fbx-light .fbx-next,.fbx-light .fbx-pause,.fbx-light .fbx-play,.fbx-light .fbx-prev,.fbx-light .fbx-social-toggle,.fbx-light.fbx-inset-buttons.fbx-phone:not(.fbx-fullscreen-mode) .fbx-next,.fbx-light.fbx-inset-buttons.fbx-phone:not(.fbx-fullscreen-mode) .fbx-prev,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-next .fbx-icon,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-prev .fbx-icon{background-color:#FFF}.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-loader,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-social-toggle,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-next .fbx-icon,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-prev .fbx-icon,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-next,.fbx-light.fbx-inset-buttons:not(.fbx-fullscreen-mode) .fbx-prev{background-color:transparent}.fbx-flat.fbx-light.fbx-inset-buttons .fbx-next .fbx-icon,.fbx-flat.fbx-light.fbx-inset-buttons .fbx-prev .fbx-icon{border-color:transparent}.fbx-flat.fbx-light.fbx-modal{border-color:rgba(0,0,0,.2)}.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-close,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-fullscreen-toggle,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-next,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-pause,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-play,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-prev,.fbx-flat.fbx-light.fbx-phone.fbx-portrait .fbx-social-toggle{background-color:rgba(0,0,0,.2)}.fbx-light .fbx-close,.fbx-light .fbx-error-msg,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-loader,.fbx-light .fbx-next,.fbx-light .fbx-pause,.fbx-light .fbx-play,.fbx-light .fbx-prev,.fbx-light .fbx-social-toggle,.fbx-metro.fbx-light .fbx-count,.fbx-metro.fbx-light .fbx-credit a{color:#666!important}.fbx-close-caption,.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-close:hover,.fbx-flat.fbx-light .fbx-count,.fbx-flat.fbx-light .fbx-credit a,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-fullscreen-toggle:hover,.fbx-flat.fbx-light .fbx-loader,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-next:hover,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-pause:hover,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-play:hover,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-prev:hover,.fbx-flat.fbx-light .fbx-social-toggle,.fbx-flat.fbx-light .fbx-social-toggle:hover,.fbx-open-caption{color:#FFF!important}.fbx-light .fbx-close:hover,.fbx-light .fbx-fullscreen-toggle:hover,.fbx-light .fbx-next:hover,.fbx-light .fbx-pause:hover,.fbx-light .fbx-play:hover,.fbx-light .fbx-prev:hover,.fbx-light .fbx-social-toggle:hover,.fbx-metro.fbx-light .fbx-credit a:hover{color:#bababa!important}.fbx-metro.fbx-light .fbx-close:hover,.fbx-metro.fbx-light .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-light .fbx-next:hover,.fbx-metro.fbx-light .fbx-pause:hover,.fbx-metro.fbx-light .fbx-play:hover,.fbx-metro.fbx-light .fbx-prev:hover,.fbx-metro.fbx-light .fbx-social-toggle:hover{border-color:#bababa}.fbx-flat.fbx-light .fbx-count,.fbx-flat.fbx-light .fbx-credit a,.fbx-rounded.fbx-light .fbx-count,.fbx-rounded.fbx-light .fbx-credit a{color:#888}.fbx-flat.fbx-light .fbx-credit a:hover span,.fbx-rounded.fbx-light .fbx-credit a:hover span{color:#ddd}.fbx-light .fbx-caption{color:#FFF}.fbx-light .fbx-caption-desc,.fbx-light .fbx-caption-desc a{color:#eee}.fbx-light .fbx-item-current::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-thumb{background:rgba(0,0,0,.5)}.fbx-light .fbx-item-current::-webkit-scrollbar,.fbx-light .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track,.fbx-light .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-corner,.fbx-light .fbx-item-current::-webkit-scrollbar-thumb,.fbx-light .fbx-item-next::-webkit-scrollbar-corner,.fbx-light .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-caption{position:absolute;top:auto;right:auto;bottom:0;left:0;z-index:100004;width:100%;text-align:center;font-size:14px;transition:visibility .3s ease,opacity .3s ease,transform .3s ease;opacity:1;transform:translateY(0)}.fbx-open-caption,.fbx-show .fbx-caption.fbx-fade-caption{opacity:0;visibility:hidden}.fbx-caption.fbx-hide-caption{transition:none}.fbx-caption.fbx-slide-caption{transform:translateY(100%)}.fbx-loading .fbx-caption.fbx-hide-caption,.fbx-show .fbx-caption.fbx-hide-caption{visibility:hidden}.fbx-fullscreen-mode .fbx-caption,.fbx-sticky-caption .fbx-caption{position:fixed;z-index:100007}.fbx-close-caption,.fbx-open-caption{position:absolute;font-size:24px;text-decoration:none;cursor:pointer;line-height:20px}.fbx-rounded .fbx-caption{border-radius:0 0 3px 3px}.fbx-modal.fbx-phone .fbx-caption,.fbx-sticky-caption.fbx-rounded .fbx-caption{border-radius:0}.fbx-close-caption{top:0;right:0;padding:3px 3px 10px 10px}.fbx-open-caption{z-index:100004;bottom:0;right:5px;padding:0 10px 10px;transition:opacity .3s ease;border-top-left-radius:6px;border-top-right-radius:6px}.fbx-caption-toggle-only.fbx-captions-hidden .fbx-open-caption,.fbx-pannable-item.fbx-captions-hidden .fbx-open-caption{opacity:1;visibility:visible}.fbx-caption-title{font-size:15px;padding:15px}.fbx-caption-desc{font-size:12px;line-height:20px;padding:15px}.fbx-caption-desc a{font-size:12px}.fbx-caption-title+.fbx-caption-desc{margin-top:-30px}.fbx-phone .fbx-caption{min-height:20px;font-size:12px;line-height:20px}.fbx-phone .fbx-caption-title{font-size:13px;padding:10px}.fbx-phone .fbx-caption-desc{font-size:11px;line-height:15px;padding:10px}.fbx-phone .fbx-caption-title+.fbx-caption-desc{margin-top:-20px}.fbx-modal.fbx-phone .fbx-caption{z-index:100004;bottom:0;position:fixed}.fbx-modal.fbx-phone.fbx-landscape .fbx-caption,.fbx-phone.fbx-landscape.fbx-sticky-caption .fbx-caption{z-index:100004}.fbx-pannable{cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.fbx-pannable.fbx-panning{cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.fbx-pannable>div>img.fbx-item{max-width:none;max-height:none}.fbx-pan-overview{cursor:pointer;max-width:150px;max-height:150px;overflow:hidden;background-position:top left;background-size:cover;position:absolute;z-index:100006;border:2px solid #666;box-shadow:0 0 12px rgba(0,0,0,.8)}.fbx-pan-overview.fbx-top-left{top:20px;left:20px}.fbx-pan-overview.fbx-top-right{top:20px;right:32px}.fbx-pan-overview.fbx-bottom-left{bottom:32px;left:20px}.fbx-pan-overview.fbx-bottom-right{bottom:32px;right:32px}.fbx-pan-viewport{position:absolute;top:0;left:0;box-shadow:0 0 300px 300px rgba(0,0,0,.7)}.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie10.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie11.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-fullscreen-toggle,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-pause,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-play,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-prev,.fbx-ie9.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle{right:1px!important}
|
free/css/foobox.noie7.min.css
DELETED
@@ -1,8 +0,0 @@
|
|
1 |
-
/*!
|
2 |
-
* FooBox - A jQuery plugin for responsive lightboxes
|
3 |
-
* @version 2.1.7
|
4 |
-
* @link http://fooplugins.com/plugins/foobox-jquery
|
5 |
-
* @copyright Steven Usher & Brad Vincent 2014
|
6 |
-
* @license Released under the MIT license.
|
7 |
-
* You are free to use FooBox jQuery in personal projects as long as this copyright header is left intact.
|
8 |
-
*/.fbx-close:hover,.fbx-credit a,.fbx-next:hover,.fbx-prev:hover{text-decoration:none}.fbx-effect-5,.fbx-effect-6{-webkit-perspective:1300px;-moz-perspective:1300px;-ms-perspective:1300px;-o-perspective:1300px}.fbx-modal,.fbx-modal *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.fbx-modal{position:fixed;top:0;left:0;z-index:9000001;visibility:hidden;width:100%;height:100%;font-family:"Segoe UI",Helvetica,Arial,"Sans Serif";line-height:normal;outline:0!important}.fbx-modal.fbx-loading,.fbx-modal.fbx-show{visibility:visible}.fbx-inner-spacer{display:none;padding:40px}.fbx-inner,.fbx-loader{position:absolute;top:50%;left:50%}.fbx-inner{visibility:hidden;overflow:visible!important;margin-top:-5px;margin-left:-5px;min-width:100px;min-height:100px;width:100px;height:100px;z-index:100002}.fbx-show .fbx-inner{visibility:visible}.fbx-loader{visibility:hidden;z-index:100005;margin-top:-40px;margin-left:-40px;width:80px;height:80px;font-size:16px;-moz-box-shadow:0 0 3px #000;-moz-box-shadow:0 0 3px rgba(0,0,0,.4);-webkit-box-shadow:0 0 3px #000;-webkit-box-shadow:0 0 3px rgba(0,0,0,.4);box-shadow:0 0 3px #000;box-shadow:0 0 3px rgba(0,0,0,.4)}.fbx-loading .fbx-loader,.fbx-show .fbx-caption{visibility:visible}.fbx-loader>div{margin:10px;width:60px;height:60px}.fbx-item-current,.fbx-item-next,.fbx-stage{top:0;left:0;margin:0;width:100%;height:100%;padding:0;outline:0;position:absolute;border:none}.fbx-stage{overflow:hidden}.fbx-item-current,.fbx-item-next{-webkit-user-drag:none;overflow:auto}.fbx-loading .fbx-item-current,.fbx-loading .fbx-item-next{overflow:hidden}.fbx-item-next{z-index:100001}.fbx-item-current{z-index:100002}.fbx-error-msg{width:200px;height:200px;position:absolute;top:50%;left:50%;margin-top:-100px;margin-left:-100px}.fbx-error-msg>span{line-height:200px;width:100%;height:100%;display:block}.fbx-error-msg>p{position:absolute;top:100%;text-align:center;width:100%;margin:0}.fbx-item-iframe,.fbx-item-image,.fbx-item-video{margin:0;padding:0;width:100%;height:100%;outline:0;border:none;display:block}.fbx-item-video>.fbx-video{background-color:#000}.fbx-ios .fbx-item-current{-webkit-overflow-scrolling:touch!important;overflow:auto!important}.fbx-ios .fbx-item-iframe{width:1px;min-width:100%}.fbx-close,.fbx-next,.fbx-prev{position:absolute;z-index:100006;display:block;outline:0!important;text-decoration:none;cursor:pointer}.fbx-no-buttons .fbx-next,.fbx-no-buttons .fbx-prev{display:none!important}.fbx-metro.fbx-inset-buttons .fbx-next.fbx-disabled,.fbx-metro.fbx-inset-buttons .fbx-prev.fbx-disabled,.fbx-metro.fbx-sticky-buttons .fbx-next.fbx-disabled,.fbx-metro.fbx-sticky-buttons .fbx-prev.fbx-disabled,.fbx-phone .fbx-count,.fbx-phone .fbx-credit em,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-next,.fbx-phone.fbx-landscape.fbx-no-nav .fbx-prev{display:none}.fbx-credit{position:absolute;z-index:100003;text-transform:lowercase;font-size:10px}.fbx-credit em{font-style:normal;font-size:10px}.fbx-credit a{font-size:10px}.fbx-credit a:hover span{text-decoration:underline}.fbx-credit a span{letter-spacing:1px;font-size:10px;color:#fff}.fbx-count{position:absolute;z-index:100002;width:100%;text-align:center;font-size:10px}.fbx-btn-transition,.fbx-btn-transition:before{-webkit-transition-property:color,border-color,opacity,-webkit-box-shadow;-moz-transition-property:color,border-color,opacity,-moz-box-shadow;-o-transition-property:color,border-color,opacity,-o-box-shadow;transition-property:color,border-color,opacity,box-shadow;-webkit-transition-duration:.2s,.2s,.2s,.2s;-moz-transition-duration:.2s,.2s,.2s,.2s;-o-transition-duration:.2s,.2s,.2s,.2s;transition-duration:.2s,.2s,.2s,.2s;-webkit-transition-timing-function:ease-in,linear,ease-in,ease-in;-moz-transition-timing-function:ease-in,linear,ease-in,ease-in;-o-transition-timing-function:ease-in,linear,ease-in,ease-in;transition-timing-function:ease-in,linear,ease-in,ease-in;outline:0}.fbx-modal.fbx-phone .fbx-inner{border:none}.fbx-modal.fbx-phone .fbx-close,.fbx-modal.fbx-phone .fbx-next,.fbx-modal.fbx-phone .fbx-prev{position:fixed}.fbx-modal.fbx-phone .fbx-prev{border-radius:0 6px 6px 0}.fbx-modal.fbx-phone .fbx-next{border-radius:6px 0 0 6px}.fbx-modal.fbx-phone .fbx-close{top:0;right:0;opacity:.5;border-radius:0 0 0 25%;-webkit-border-bottom-left-radius:25%;-moz-border-radius-bottomleft:25%}.fbx-modal.fbx-phone .fbx-close:hover{opacity:1}.fbx-modal.fbx-phone .fbx-credit{bottom:2px;left:2px}.fbx-modal.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:35px 5px 15px}.fbx-modal.fbx-phone.fbx-portrait .fbx-close,.fbx-modal.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{border:none;opacity:1;margin:0;top:0;bottom:auto;width:auto;height:40px;border-radius:0;line-height:40px}.fbx-modal.fbx-phone.fbx-portrait .fbx-prev{left:0;right:66%}.fbx-modal.fbx-phone.fbx-portrait .fbx-next{left:33%;right:33%}.fbx-modal.fbx-phone.fbx-portrait .fbx-close{left:66%;right:0}.fbx-modal.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close{left:0;right:0}.fbx-modal.fbx-phone.fbx-landscape{border-right-width:46px;border-right-style:solid;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fbx-modal.fbx-phone.fbx-landscape .fbx-inner-spacer{padding:5px}.fbx-modal.fbx-phone.fbx-landscape .fbx-close,.fbx-modal.fbx-phone.fbx-landscape .fbx-next,.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{bottom:auto;left:auto;right:1px;width:44px;height:44px;line-height:44px;border:none;opacity:1;margin:0;border-radius:0}.fbx-modal.fbx-phone.fbx-landscape .fbx-close{top:0;height:60px}.fbx-modal.fbx-phone.fbx-landscape .fbx-prev{top:62px}.fbx-modal.fbx-phone.fbx-landscape .fbx-next{top:108px}@font-face{font-family:foobox;src:url(font/foobox.eot);src:url(font/foobox.eot?#iefix) format('embedded-opentype'),url(font/foobox.woff) format('woff'),url(font/foobox.ttf) format('truetype'),url(font/foobox.svg#foobox) format('svg');font-weight:400;font-style:normal}@media screen and (-webkit-min-device-pixel-ratio:0){@font-face{font-family:foobox;src:url(font/foobox.svg#foobox) format('svg');font-weight:400;font-style:normal}}.fbx-modal .fbx-error-msg>span,.fbx-modal .fbx-loader>div,.fbx-modal a.fbx-close,.fbx-modal a.fbx-next,.fbx-modal a.fbx-prev{font-family:foobox;font-size:16px;font-weight:400;text-align:center;outline:0;-webkit-font-smoothing:antialiased}.fbx-modal .fbx-loader>div{font-size:300%;line-height:60px}.fbx-modal.fbx-loading .fbx-loader>div{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-ms-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}.fbx-modal .fbx-error-msg>span{font-size:1000%}.fbx-modal .fbx-error-msg>span:before{content:"\e028"}.fbx-close:before{content:"\e002"}.fbx-prev:before{content:"\e000"}.fbx-next:before{content:"\e001"}.fbx-loader>div:before{content:"\e012"}.fbx-flat .fbx-close:before{content:"\e117"}.fbx-flat .fbx-prev:before{content:"\e094"}.fbx-flat .fbx-next:before{content:"\e095"}.fbx-flat .fbx-loader>div:before{content:"\e105"}@-moz-keyframes spin{0%{-moz-transform:rotate(0)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}}.fbx-modal a.fbx-fullscreen-toggle,.fbx-modal a.fbx-pause,.fbx-modal a.fbx-play,.fbx-modal a.fbx-social-toggle{font-family:foobox;font-size:16px;font-weight:400;text-align:center;outline:0;-webkit-font-smoothing:antialiased}.fbx-modal a.fbx-pause,.fbx-modal a.fbx-play{font-size:90%}.fbx-modal.fbx-fullscreen-mode.fbx-playpause-center a.fbx-pause,.fbx-modal.fbx-fullscreen-mode.fbx-playpause-center a.fbx-play{font-size:340%}.fbx-modal.fbx-arrows-1 .fbx-prev:before{content:"\e01b"}.fbx-modal.fbx-arrows-1 .fbx-next:before{content:"\e01c"}.fbx-modal.fbx-arrows-2 .fbx-prev:before{content:"\e01d"}.fbx-modal.fbx-arrows-2 .fbx-next:before{content:"\e01e"}.fbx-modal.fbx-arrows-3 .fbx-prev:before{content:"\e01f"}.fbx-modal.fbx-arrows-3 .fbx-next:before{content:"\e020"}.fbx-modal.fbx-arrows-4 .fbx-prev:before{content:"\e021"}.fbx-modal.fbx-arrows-4 .fbx-next:before{content:"\e022"}.fbx-modal.fbx-arrows-5 .fbx-prev:before{content:"\e023"}.fbx-modal.fbx-arrows-5 .fbx-next:before{content:"\e024"}.fbx-modal.fbx-arrows-6 .fbx-prev:before{content:"\e025"}.fbx-modal.fbx-arrows-6 .fbx-next:before{content:"\e026"}.fbx-modal.fbx-arrows-7 .fbx-prev:before{content:"\e3d7"}.fbx-modal.fbx-arrows-7 .fbx-next:before{content:"\e3d3"}.fbx-modal.fbx-arrows-8 .fbx-prev:before{content:"\e3e7"}.fbx-modal.fbx-arrows-8 .fbx-next:before{content:"\e3e3"}.fbx-modal.fbx-arrows-9 .fbx-prev:before{content:"\e417"}.fbx-modal.fbx-arrows-9 .fbx-next:before{content:"\e415"}.fbx-modal.fbx-arrows-10 .fbx-prev:before{content:"\e40b"}.fbx-modal.fbx-arrows-10 .fbx-next:before{content:"\e409"}.fbx-modal.fbx-arrows-11 .fbx-prev:before{content:"\e3cf"}.fbx-modal.fbx-arrows-11 .fbx-next:before{content:"\e3cb"}.fbx-social-toggle:before{content:"\e48c"}.fbx-play:before{content:"\e003";position:relative;left:1px}.fbx-pause:before{content:"\e004"}.fbx-fullscreen-toggle:before{content:"\e00e"}.fbx-fullscreen-mode .fbx-fullscreen-toggle:before{content:"\e00d"}.fbx-spinner-1 .fbx-loader>div:before{content:"\e005"}.fbx-spinner-2 .fbx-loader>div:before{content:"\e011"}.fbx-spinner-3 .fbx-loader>div:before{content:"\e027"}.fbx-spinner-4 .fbx-loader>div:before{content:"\e013"}.fbx-spinner-5 .fbx-loader>div:before{content:"\e014"}.fbx-spinner-6 .fbx-loader>div:before{content:"\e015"}.fbx-spinner-7 .fbx-loader>div:before{content:"\e016"}.fbx-spinner-8 .fbx-loader>div:before{content:"\e017"}.fbx-spinner-9 .fbx-loader>div:before{content:"\e018"}.fbx-spinner-10 .fbx-loader>div:before{content:"\e019"}.fbx-spinner-11 .fbx-loader>div:before{content:"\e01a"}.fbx-fullscreen-mode.fbx-playpause-center .fbx-play:before{position:relative;left:5px}.fbx-flat .fbx-play:before{content:"\e037";position:relative;left:auto}.fbx-flat .fbx-pause:before{content:"\e034"}.fbx-flat .fbx-fullscreen-toggle:before{content:"\e110"}.fbx-flat.fbx-fullscreen-mode .fbx-fullscreen-toggle:before{content:"\e111"}.fbx-social a{font-family:foobox;font-weight:400;text-align:center;-webkit-font-smoothing:antialiased}.fbx-facebook:before{content:"\e00a"}.fbx-google-plus:before{content:"\e006"}.fbx-twitter:before{content:"\e009"}.fbx-pinterest:before{content:"\e007"}.fbx-linkedin:before{content:"\e008"}.fbx-buffer:before{content:"\e00b"}.fbx-download:before{content:"\e00f"}.fbx-email:before{content:"\e010"}.fbx-reddit:before{content:"\003e"}.fbx-digg:before{content:"\003b"}.fbx-tumblr:before{content:"\0074"}.fbx-stumble-upon:before{content:"\002f"}.fbx-rounded .fbx-prev.fbx-btn-shadow,.fbx-rounded .fbx-prev.fbx-btn-shadow:hover{-moz-box-shadow:-2px 0 2px #000;-moz-box-shadow:-2px 0 2px rgba(0,0,0,.8);-webkit-box-shadow:-2px 0 2px #000;-webkit-box-shadow:-2px 0 2px rgba(0,0,0,.8);box-shadow:-2px 0 2px #000;box-shadow:-2px 0 2px rgba(0,0,0,.8)}.fbx-rounded .fbx-next.fbx-btn-shadow,.fbx-rounded .fbx-next.fbx-btn-shadow:hover{-moz-box-shadow:2px 0 2px #000;-moz-box-shadow:2px 0 2px rgba(0,0,0,.8);-webkit-box-shadow:2px 0 2px #000;-webkit-box-shadow:2px 0 2px rgba(0,0,0,.8);box-shadow:2px 0 2px #000;box-shadow:2px 0 2px rgba(0,0,0,.8)}.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-inner-shadow,.fbx-rounded .fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next.fbx-btn-shadow:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev.fbx-btn-shadow:before,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow{-moz-box-shadow:0 0 12px #000;-moz-box-shadow:0 0 12px rgba(0,0,0,.8);-webkit-box-shadow:0 0 12px #000;-webkit-box-shadow:0 0 12px rgba(0,0,0,.8);box-shadow:0 0 12px #000;box-shadow:0 0 12px rgba(0,0,0,.8)}.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-rounded .fbx-btn-shadow:hover,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next.fbx-btn-shadow:hover:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev.fbx-btn-shadow:hover:before,.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover{-moz-box-shadow:0 0 6px #000;-moz-box-shadow:0 0 6px rgba(0,0,0,.8);-webkit-box-shadow:0 0 6px #000;-webkit-box-shadow:0 0 6px rgba(0,0,0,.8);box-shadow:0 0 6px #000;box-shadow:0 0 6px rgba(0,0,0,.8)}.fbx-flat .fbx-inner-shadow,.fbx-flat .fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-next.fbx-btn-shadow:hover,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-flat.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow:hover,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded .fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow:before,.fbx-modal.fbx-phone.fbx-rounded.fbx-inset-buttons .fbx-prev.fbx-btn-shadow:before,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,.fbx-modal.fbx-phone.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,.fbx-rounded.fbx-inset-buttons .fbx-next.fbx-btn-shadow{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.fbx-metro .fbx-inner{border:15px solid transparent;border-top-width:50px;border-bottom-width:20px}.fbx-metro .fbx-loader,.fbx-metro .fbx-loader>div{border-radius:3px}.fbx-metro .fbx-error-msg{margin-top:-130px}.fbx-metro .fbx-close,.fbx-metro .fbx-next,.fbx-metro .fbx-prev{top:-41px;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%}.fbx-metro .fbx-close{right:0}.fbx-metro .fbx-prev{left:0}.fbx-metro .fbx-next{left:40px}.fbx-metro .fbx-count,.fbx-metro .fbx-credit{bottom:-15px}.fbx-metro .fbx-next.fbx-disabled,.fbx-metro .fbx-prev.fbx-disabled{cursor:default}.fbx-modal.fbx-metro .fbx-next.fbx-disabled:hover,.fbx-modal.fbx-metro .fbx-prev.fbx-disabled:hover{border-color:transparent}.fbx-metro .fbx-next.fbx-disabled:before,.fbx-metro .fbx-prev.fbx-disabled:before{opacity:.2}.fbx-metro.fbx-phone .fbx-next.fbx-disabled:before,.fbx-metro.fbx-phone .fbx-prev.fbx-disabled:before{opacity:0}.fbx-metro.fbx-phone.fbx-inset-buttons .fbx-next.fbx-disabled,.fbx-metro.fbx-phone.fbx-inset-buttons .fbx-prev.fbx-disabled,.fbx-metro.fbx-phone.fbx-sticky-buttons .fbx-next.fbx-disabled,.fbx-metro.fbx-phone.fbx-sticky-buttons .fbx-prev.fbx-disabled{display:block}.fbx-metro .fbx-inner-spacer{padding:0 40px 90px}.fbx-metro.fbx-tablet .fbx-inner-spacer{padding:0 10px 90px}.fbx-modal.fbx-metro.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:60px 5px 0}.fbx-metro.fbx-sticky-buttons .fbx-next,.fbx-metro.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;left:auto;right:auto;margin-top:-50px;width:40px;height:100px;line-height:100px;border:none;border-radius:0}.fbx-metro.fbx-sticky-buttons .fbx-prev{left:0}.fbx-metro.fbx-sticky-buttons .fbx-next{right:0}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:40px 60px}.fbx-metro.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:35px 5px 15px}.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:5px}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:0;border-radius:0;width:4%;min-width:45px;height:auto;opacity:.3}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:fixed;width:4%;min-width:45px;height:30px;line-height:30px;top:50%;margin-top:-15px}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev,.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{left:0;right:auto}.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before{left:auto;right:0}.fbx-metro.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-metro.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:relative;width:auto;min-width:0;height:auto;line-height:inherit;top:auto;margin-top:auto}.fbx-metro.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-metro.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:auto;border-radius:0;width:auto;min-width:0;height:auto;opacity:1}.fbx-metro.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:0;right:66%}.fbx-metro.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:33%;right:33%}.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:50%;bottom:auto;width:34px;height:80px;opacity:.5}.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{border-radius:0 6px 6px 0}.fbx-metro.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{border-radius:6px 0 0 6px}.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-next,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-prev{z-index:100003;position:absolute;top:0;bottom:0;height:100%;width:25%;margin:0;border-radius:0;background-color:transparent;box-sizing:border-box;border:none}.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-prev{left:0;right:auto}.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-next{left:auto;right:0}.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-next:before,.fbx-metro.fbx-inset-buttons.fbx-desktop .fbx-prev:before,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-next:before,.fbx-metro.fbx-inset-buttons.fbx-tablet .fbx-prev:before{width:28px;height:28px;border-radius:50%;position:absolute;top:50%;margin-top:-14px;line-height:28px;border-width:3px;border-style:solid;opacity:0}.fbx-metro.fbx-inset-buttons .fbx-prev:before{left:10px}.fbx-metro.fbx-inset-buttons .fbx-next:before{right:10px}.fbx-metro.fbx-inset-buttons .fbx-next:hover:before,.fbx-metro.fbx-inset-buttons .fbx-prev:hover:before{opacity:1}.fbx-rounded .fbx-inner{border:8px solid transparent;border-radius:6px}.fbx-rounded .fbx-item-current,.fbx-rounded .fbx-item-image,.fbx-rounded .fbx-item-next{border-radius:3px}.fbx-rounded .fbx-loader,.fbx-rounded .fbx-loader>div{border-radius:50%}.fbx-rounded .fbx-error-msg{margin-top:-115px}.fbx-rounded .fbx-close{top:-21px;right:-21px;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%}.fbx-rounded .fbx-next,.fbx-rounded .fbx-prev{position:absolute;top:50%;margin-top:-50px;width:30px;height:100px;line-height:100px;border:3px solid transparent}.fbx-rounded .fbx-prev{left:-40px;border-radius:6px 0 0 6px}.fbx-rounded .fbx-next{right:-40px;border-radius:0 6px 6px 0}.fbx-rounded .fbx-next.fbx-disabled,.fbx-rounded .fbx-prev.fbx-disabled{display:none}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled{display:block;cursor:default}.fbx-rounded.fbx-phone .fbx-next.fbx-disabled:before,.fbx-rounded.fbx-phone .fbx-prev.fbx-disabled:before{opacity:0}.fbx-rounded.fbx-desktop .fbx-next,.fbx-rounded.fbx-desktop .fbx-prev{position:absolute}.fbx-rounded .fbx-count,.fbx-rounded .fbx-credit{bottom:-25px}.fbx-rounded .fbx-inner-spacer{padding:40px 40px 50px}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:60px 5px 0}.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;margin-top:-50px;width:40px;height:100px;line-height:100px}.fbx-rounded.fbx-sticky-buttons .fbx-prev{left:0;border-radius:0 6px 6px 0}.fbx-rounded.fbx-sticky-buttons .fbx-next{right:0;border-radius:6px 0 0 6px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:40px 60px}.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:35px 5px 15px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:5px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:0;border-radius:0;width:4%;min-width:45px;height:auto;opacity:.3}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:fixed;width:4%;min-width:45px;height:30px;line-height:30px;top:50%;margin-top:-15px}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{left:0;right:auto}.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before{left:auto;right:0}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:relative;width:auto;min-width:0;height:auto;line-height:inherit;top:auto;margin-top:auto}.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:auto;border-radius:0;width:auto;min-width:0;height:auto;opacity:1}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:0;right:66%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:33%;right:33%}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:66%;right:0}.fbx-modal.fbx-rounded.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:0;right:0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{bottom:auto;width:34px;height:80px;opacity:.5}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-prev,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:62px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-next,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{top:108px}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{border-radius:0 6px 6px 0}.fbx-rounded.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{border-radius:6px 0 0 6px}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{z-index:100003;position:absolute;top:0;bottom:0;height:100%;width:25%;margin:0;border-radius:0;background-color:transparent;box-sizing:border-box}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev{left:0}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next{right:0}.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next:before,.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next:before,.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev:before{width:28px;height:28px;border-radius:50%;position:absolute;top:50%;margin-top:-14px;line-height:28px;border-width:3px;border-style:solid;opacity:0}.fbx-rounded.fbx-inset-buttons .fbx-prev:before{left:10px}.fbx-rounded.fbx-inset-buttons .fbx-next:before{right:10px}.fbx-rounded.fbx-inset-buttons .fbx-next:hover:before,.fbx-rounded.fbx-inset-buttons .fbx-prev:hover:before{opacity:1}.fbx-modal.fbx-flat.fbx-phone.fbx-landscape{border-color:transparent}.fbx-flat .fbx-loader,.fbx-flat .fbx-loader>div{border-radius:50%}.fbx-flat .fbx-error-msg{margin-top:-115px}.fbx-flat .fbx-inner-spacer{padding:80px}.fbx-modal.fbx-flat.fbx-phone.fbx-portrait .fbx-inner-spacer{padding:60px 5px 0}.fbx-modal.fbx-flat .fbx-close,.fbx-modal.fbx-flat .fbx-fullscreen-toggle,.fbx-modal.fbx-flat .fbx-next,.fbx-modal.fbx-flat .fbx-pause,.fbx-modal.fbx-flat .fbx-play,.fbx-modal.fbx-flat .fbx-prev,.fbx-modal.fbx-flat .fbx-social-toggle{font-size:24px}.fbx-modal.fbx-flat.fbx-phone .fbx-close,.fbx-modal.fbx-flat.fbx-phone .fbx-fullscreen-toggle,.fbx-modal.fbx-flat.fbx-phone .fbx-next,.fbx-modal.fbx-flat.fbx-phone .fbx-pause,.fbx-modal.fbx-flat.fbx-phone .fbx-play,.fbx-modal.fbx-flat.fbx-phone .fbx-prev,.fbx-modal.fbx-flat.fbx-phone .fbx-social-toggle{font-size:18px}.fbx-flat .fbx-close{top:-40px;right:-40px;width:32px;height:32px;line-height:32px}.fbx-flat .fbx-next,.fbx-flat .fbx-prev{position:absolute;top:50%;margin-top:-50px;width:32px;height:100px;line-height:100px}.fbx-flat .fbx-prev{left:-40px}.fbx-flat .fbx-next{right:-40px}.fbx-flat .fbx-next.fbx-disabled,.fbx-flat .fbx-prev.fbx-disabled{display:none}.fbx-flat.fbx-phone .fbx-next.fbx-disabled,.fbx-flat.fbx-phone .fbx-prev.fbx-disabled{display:block;cursor:default}.fbx-flat.fbx-phone .fbx-next.fbx-disabled:before,.fbx-flat.fbx-phone .fbx-prev.fbx-disabled:before{opacity:0}.fbx-flat.fbx-desktop .fbx-next,.fbx-flat.fbx-desktop .fbx-prev{position:absolute}.fbx-flat .fbx-count,.fbx-flat .fbx-credit{bottom:-25px}.fbx-flat.fbx-sticky-buttons .fbx-close{top:0;right:0;width:63px;height:63px;line-height:63px}.fbx-flat.fbx-sticky-buttons .fbx-next,.fbx-flat.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;margin-top:-50px;width:63px;height:100px;line-height:100px}.fbx-flat.fbx-sticky-buttons .fbx-prev{left:0}.fbx-flat.fbx-sticky-buttons .fbx-next{right:0}.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:80px}.fbx-flat.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:35px 5px 15px}.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-inner-spacer{padding:5px}.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:0;height:auto}.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:absolute;height:32px;width:32px;line-height:32px;top:50%;margin-top:-16px}.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{right:4px}.fbx-flat.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before{left:4px}.fbx-flat.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-flat.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:relative;width:auto;min-width:0;height:auto;line-height:inherit;top:auto;margin-top:auto}.fbx-flat.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-flat.fbx-phone.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:0;bottom:auto;border-radius:0;width:auto;min-width:0;height:auto;opacity:1}.fbx-modal.fbx-flat.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:0;right:66%}.fbx-modal.fbx-flat.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:33%;right:33%}.fbx-modal.fbx-flat.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:66%;right:0}.fbx-modal.fbx-flat.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:0;right:0}.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{bottom:auto;width:34px;height:80px;opacity:.5}.fbx-flat.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-prev,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-prev,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{top:62px}.fbx-flat.fbx-phone.fbx-landscape.fbx-full-buttons .fbx-next,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-next,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next{top:108px}.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next:hover,.fbx-flat.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:hover{opacity:1}.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-next,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-prev{z-index:100003;position:absolute;top:0;bottom:0;height:100%;width:25%;margin:0;border-radius:0;background-color:transparent;box-sizing:border-box}.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-prev,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-prev{left:0}.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-next,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-next{right:0}.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-next:before,.fbx-flat.fbx-inset-buttons.fbx-desktop .fbx-prev:before,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-next:before,.fbx-flat.fbx-inset-buttons.fbx-tablet .fbx-prev:before{width:28px;height:28px;border-radius:50%;position:absolute;top:50%;margin-top:-14px;line-height:28px;border-width:3px;border-style:solid;opacity:0}.fbx-flat.fbx-inset-buttons .fbx-prev:before{left:10px}.fbx-flat.fbx-inset-buttons .fbx-next:before{right:10px}.fbx-flat.fbx-inset-buttons .fbx-next:hover:before,.fbx-flat.fbx-inset-buttons .fbx-prev:hover:before{opacity:1}.fbx-blue,.fbx-blue .fbx-caption,.fbx-blue .fbx-open-caption,.fbx-blue.fbx-phone .fbx-social{background-color:#000;background-color:rgba(0,0,0,.7)}.fbx-ie7.fbx-blue,.fbx-ie7.fbx-blue .fbx-caption,.fbx-ie8.fbx-blue,.fbx-ie8.fbx-blue .fbx-caption,.fbx-ie8.fbx-blue.fbx-phone .fbx-social{background:0 0;-ms-filter:'progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff)';filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#B2000000, endColorstr=#B2000000);zoom:1}.fbx-blue .fbx-progress{background-color:#838383;background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-blue{background-color:#133e81}.fbx-blue .fbx-caption,.fbx-blue .fbx-inner,.fbx-blue .fbx-social,.fbx-blue.fbx-inset-buttons .fbx-next:before,.fbx-blue.fbx-inset-buttons .fbx-prev:before,.fbx-blue.fbx-modal,.fbx-modal.fbx-blue.fbx-phone .fbx-close:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-next:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-play:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-blue.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-blue .fbx-close,.fbx-rounded.fbx-blue .fbx-fullscreen-toggle,.fbx-rounded.fbx-blue .fbx-pause,.fbx-rounded.fbx-blue .fbx-play,.fbx-rounded.fbx-blue .fbx-social-toggle{border-color:#1b58b7}.fbx-blue .fbx-close,.fbx-blue .fbx-fullscreen-toggle,.fbx-blue .fbx-inner,.fbx-blue .fbx-loader,.fbx-blue .fbx-next,.fbx-blue .fbx-pause,.fbx-blue .fbx-play,.fbx-blue .fbx-prev,.fbx-blue .fbx-social-toggle,.fbx-blue.fbx-inset-buttons .fbx-next:before,.fbx-blue.fbx-inset-buttons .fbx-prev:before{background-color:#1b58b7}.fbx-blue .fbx-close,.fbx-blue .fbx-close:hover,.fbx-blue .fbx-error-msg,.fbx-blue .fbx-fullscreen-toggle,.fbx-blue .fbx-fullscreen-toggle:hover,.fbx-blue .fbx-loader,.fbx-blue .fbx-next,.fbx-blue .fbx-next:hover,.fbx-blue .fbx-pause,.fbx-blue .fbx-pause:hover,.fbx-blue .fbx-play,.fbx-blue .fbx-play:hover,.fbx-blue .fbx-prev,.fbx-blue .fbx-prev:hover,.fbx-blue .fbx-social-toggle,.fbx-blue .fbx-social-toggle:hover,.fbx-blue.fbx-inset-buttons .fbx-next:before,.fbx-blue.fbx-inset-buttons .fbx-next:hover:before,.fbx-blue.fbx-inset-buttons .fbx-prev:before,.fbx-blue.fbx-inset-buttons .fbx-prev:hover:before,.fbx-metro.fbx-blue .fbx-count,.fbx-metro.fbx-blue .fbx-credit a,.fbx-metro.fbx-blue .fbx-credit a:hover{color:#FFF!important}.fbx-metro.fbx-blue .fbx-close:hover,.fbx-metro.fbx-blue .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-blue .fbx-next:hover,.fbx-metro.fbx-blue .fbx-pause:hover,.fbx-metro.fbx-blue .fbx-play:hover,.fbx-metro.fbx-blue .fbx-prev:hover,.fbx-metro.fbx-blue .fbx-social-toggle:hover{border-color:#FFF}.fbx-rounded.fbx-blue .fbx-count,.fbx-rounded.fbx-blue .fbx-credit a{color:#888}.fbx-rounded.fbx-blue .fbx-credit a:hover span{color:#ddd}.fbx-blue .fbx-caption{color:#FFF}.fbx-blue .fbx-caption-desc,.fbx-blue .fbx-caption-desc a{color:#eee}.fbx-blue .fbx-item-current::-webkit-scrollbar,.fbx-blue .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-blue .fbx-item-current::-webkit-scrollbar-track,.fbx-blue .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-blue .fbx-item-current::-webkit-scrollbar-corner,.fbx-blue .fbx-item-current::-webkit-scrollbar-thumb,.fbx-blue .fbx-item-next::-webkit-scrollbar-corner,.fbx-blue .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-dark,.fbx-dark .fbx-caption,.fbx-dark .fbx-open-caption,.fbx-dark.fbx-phone .fbx-social{background-color:#000;background-color:rgba(0,0,0,.7)}.fbx-ie7.fbx-dark,.fbx-ie7.fbx-dark .fbx-caption,.fbx-ie8.fbx-dark,.fbx-ie8.fbx-dark .fbx-caption,.fbx-ie8.fbx-dark.fbx-phone .fbx-social{background:0 0;-ms-filter:'progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff)';filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#B2000000, endColorstr=#B2000000);zoom:1}.fbx-dark .fbx-progress{background-color:#838383;background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-dark{background-color:#0f0f0f}.fbx-dark .fbx-caption,.fbx-dark .fbx-inner,.fbx-dark .fbx-social,.fbx-dark.fbx-inset-buttons .fbx-next:before,.fbx-dark.fbx-inset-buttons .fbx-prev:before,.fbx-dark.fbx-modal,.fbx-modal.fbx-dark.fbx-phone .fbx-close:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-next:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-play:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-dark.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-dark .fbx-close,.fbx-rounded.fbx-dark .fbx-fullscreen-toggle,.fbx-rounded.fbx-dark .fbx-pause,.fbx-rounded.fbx-dark .fbx-play,.fbx-rounded.fbx-dark .fbx-social-toggle{border-color:#1b1b1b}.fbx-dark .fbx-close,.fbx-dark .fbx-fullscreen-toggle,.fbx-dark .fbx-inner,.fbx-dark .fbx-loader,.fbx-dark .fbx-next,.fbx-dark .fbx-pause,.fbx-dark .fbx-play,.fbx-dark .fbx-prev,.fbx-dark .fbx-social-toggle,.fbx-dark.fbx-inset-buttons .fbx-next:before,.fbx-dark.fbx-inset-buttons .fbx-prev:before{background-color:#1b1b1b}.fbx-dark .fbx-close,.fbx-dark .fbx-error-msg,.fbx-dark .fbx-fullscreen-toggle,.fbx-dark .fbx-loader,.fbx-dark .fbx-next,.fbx-dark .fbx-pause,.fbx-dark .fbx-play,.fbx-dark .fbx-prev,.fbx-dark .fbx-social-toggle,.fbx-dark.fbx-inset-buttons .fbx-next:before,.fbx-dark.fbx-inset-buttons .fbx-prev:before,.fbx-metro.fbx-dark .fbx-count,.fbx-metro.fbx-dark .fbx-credit a{color:#636463!important}.fbx-dark .fbx-close:hover,.fbx-dark .fbx-fullscreen-toggle:hover,.fbx-dark .fbx-next:hover,.fbx-dark .fbx-pause:hover,.fbx-dark .fbx-play:hover,.fbx-dark .fbx-prev:hover,.fbx-dark .fbx-social-toggle:hover,.fbx-dark.fbx-inset-buttons .fbx-next:hover:before,.fbx-dark.fbx-inset-buttons .fbx-prev:hover:before,.fbx-metro.fbx-dark .fbx-credit a:hover{color:#FFF!important}.fbx-metro.fbx-dark .fbx-close:hover,.fbx-metro.fbx-dark .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-dark .fbx-next:hover,.fbx-metro.fbx-dark .fbx-pause:hover,.fbx-metro.fbx-dark .fbx-play:hover,.fbx-metro.fbx-dark .fbx-prev:hover,.fbx-metro.fbx-dark .fbx-social-toggle:hover{border-color:#FFF}.fbx-rounded.fbx-dark .fbx-count,.fbx-rounded.fbx-dark .fbx-credit a{color:#888}.fbx-rounded.fbx-dark .fbx-credit a:hover span{color:#ddd}.fbx-dark .fbx-caption{color:#FFF}.fbx-dark .fbx-caption-desc,.fbx-dark .fbx-caption-desc a{color:#eee}.fbx-dark .fbx-item-current::-webkit-scrollbar,.fbx-dark .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-dark .fbx-item-current::-webkit-scrollbar-track,.fbx-dark .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-dark .fbx-item-current::-webkit-scrollbar-corner,.fbx-dark .fbx-item-current::-webkit-scrollbar-thumb,.fbx-dark .fbx-item-next::-webkit-scrollbar-corner,.fbx-dark .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-fullscreen-mode.fbx-dark .fbx-btn-shadow,.fbx-fullscreen-mode.fbx-dark .fbx-social a,.fbx-fullscreen-mode.fbx-dark.fbx-rounded .fbx-btn-shadow{-moz-box-shadow:0 0 12px #888;-moz-box-shadow:0 0 12px rgba(128,128,128,.8);-webkit-box-shadow:0 0 12px #888;-webkit-box-shadow:0 0 12px rgba(128,128,128,.8);box-shadow:0 0 12px #888;box-shadow:0 0 12px rgba(128,128,128,.8)}.fbx-fullscreen-mode.fbx-dark .fbx-btn-shadow:hover,.fbx-fullscreen-mode.fbx-dark .fbx-social a:hover,.fbx-fullscreen-mode.fbx-dark.fbx-rounded .fbx-btn-shadow:hover{-moz-box-shadow:0 0 6px #888;-moz-box-shadow:0 0 6px rgba(128,128,128,.8);-webkit-box-shadow:0 0 6px #888;-webkit-box-shadow:0 0 6px rgba(128,128,128,.8);box-shadow:0 0 6px #888;box-shadow:0 0 6px rgba(128,128,128,.8)}.fbx-green,.fbx-green .fbx-caption,.fbx-green .fbx-open-caption,.fbx-green.fbx-phone .fbx-social{background-color:#000;background-color:rgba(0,0,0,.7)}.fbx-ie7.fbx-green,.fbx-ie7.fbx-green .fbx-caption,.fbx-ie8.fbx-green,.fbx-ie8.fbx-green .fbx-caption,.fbx-ie8.fbx-green.fbx-phone .fbx-social{background:0 0;-ms-filter:'progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff)';filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#B2000000, endColorstr=#B2000000);zoom:1}.fbx-green .fbx-progress{background-color:#838383;background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-green{background-color:#2a7e2a}.fbx-green .fbx-caption,.fbx-green .fbx-inner,.fbx-green .fbx-social,.fbx-green.fbx-inset-buttons .fbx-next:before,.fbx-green.fbx-inset-buttons .fbx-prev:before,.fbx-green.fbx-modal,.fbx-modal.fbx-green.fbx-phone .fbx-close:hover,.fbx-modal.fbx-green.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-green.fbx-phone .fbx-next:hover,.fbx-modal.fbx-green.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-green.fbx-phone .fbx-play:hover,.fbx-modal.fbx-green.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-green.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-green .fbx-close,.fbx-rounded.fbx-green .fbx-fullscreen-toggle,.fbx-rounded.fbx-green .fbx-pause,.fbx-rounded.fbx-green .fbx-play,.fbx-rounded.fbx-green .fbx-social-toggle{border-color:#393}.fbx-light .fbx-caption,.fbx-light .fbx-inner,.fbx-light .fbx-social,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before,.fbx-light.fbx-modal,.fbx-metro.fbx-green .fbx-close:hover,.fbx-metro.fbx-green .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-green .fbx-next:hover,.fbx-metro.fbx-green .fbx-pause:hover,.fbx-metro.fbx-green .fbx-play:hover,.fbx-metro.fbx-green .fbx-prev:hover,.fbx-metro.fbx-green .fbx-social-toggle:hover,.fbx-modal.fbx-light.fbx-phone .fbx-close:hover,.fbx-modal.fbx-light.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-light.fbx-phone .fbx-next:hover,.fbx-modal.fbx-light.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-light.fbx-phone .fbx-play:hover,.fbx-modal.fbx-light.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-light.fbx-phone .fbx-social-toggle:hover,.fbx-rounded.fbx-light .fbx-close,.fbx-rounded.fbx-light .fbx-fullscreen-toggle,.fbx-rounded.fbx-light .fbx-pause,.fbx-rounded.fbx-light .fbx-play,.fbx-rounded.fbx-light .fbx-social-toggle{border-color:#FFF}.fbx-green .fbx-close,.fbx-green .fbx-fullscreen-toggle,.fbx-green .fbx-inner,.fbx-green .fbx-loader,.fbx-green .fbx-next,.fbx-green .fbx-pause,.fbx-green .fbx-play,.fbx-green .fbx-prev,.fbx-green .fbx-social-toggle,.fbx-green.fbx-inset-buttons .fbx-next:before,.fbx-green.fbx-inset-buttons .fbx-prev:before{background-color:#393}.fbx-green .fbx-close,.fbx-green .fbx-close:hover,.fbx-green .fbx-error-msg,.fbx-green .fbx-fullscreen-toggle,.fbx-green .fbx-fullscreen-toggle:hover,.fbx-green .fbx-loader,.fbx-green .fbx-next,.fbx-green .fbx-next:hover,.fbx-green .fbx-pause,.fbx-green .fbx-pause:hover,.fbx-green .fbx-play,.fbx-green .fbx-play:hover,.fbx-green .fbx-prev,.fbx-green .fbx-prev:hover,.fbx-green .fbx-social-toggle,.fbx-green .fbx-social-toggle:hover,.fbx-green.fbx-inset-buttons .fbx-next:before,.fbx-green.fbx-inset-buttons .fbx-next:hover:before,.fbx-green.fbx-inset-buttons .fbx-prev:before,.fbx-green.fbx-inset-buttons .fbx-prev:hover:before,.fbx-metro.fbx-green .fbx-count,.fbx-metro.fbx-green .fbx-credit a,.fbx-metro.fbx-green .fbx-credit a:hover{color:#FFF!important}.fbx-rounded.fbx-green .fbx-count,.fbx-rounded.fbx-green .fbx-credit a{color:#888}.fbx-rounded.fbx-green .fbx-credit a:hover span{color:#ddd}.fbx-green .fbx-caption{color:#FFF}.fbx-green .fbx-caption-desc,.fbx-green .fbx-caption-desc a{color:#eee}.fbx-green .fbx-item-current::-webkit-scrollbar,.fbx-green .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-green .fbx-item-current::-webkit-scrollbar-track,.fbx-green .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-green .fbx-item-current::-webkit-scrollbar-corner,.fbx-green .fbx-item-current::-webkit-scrollbar-thumb,.fbx-green .fbx-item-next::-webkit-scrollbar-corner,.fbx-green .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-light,.fbx-light .fbx-caption,.fbx-light .fbx-open-caption,.fbx-light.fbx-phone .fbx-social{background-color:#000;background-color:rgba(0,0,0,.7)}.fbx-ie7.fbx-light,.fbx-ie7.fbx-light .fbx-caption,.fbx-ie8.fbx-light,.fbx-ie8.fbx-light .fbx-caption,.fbx-ie8.fbx-light.fbx-phone .fbx-social{background:0 0;-ms-filter:'progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff)';filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#B2000000, endColorstr=#B2000000);zoom:1}.fbx-fullscreen-mode.fbx-light{background-color:#d3d3d3}.fbx-light .fbx-close,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-inner,.fbx-light .fbx-loader,.fbx-light .fbx-next,.fbx-light .fbx-pause,.fbx-light .fbx-play,.fbx-light .fbx-prev,.fbx-light .fbx-social-toggle,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before{background-color:#FFF}.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-social-toggle{background-color:transparent}.fbx-light .fbx-close,.fbx-light .fbx-error-msg,.fbx-light .fbx-fullscreen-toggle,.fbx-light .fbx-loader,.fbx-light .fbx-next,.fbx-light .fbx-pause,.fbx-light .fbx-play,.fbx-light .fbx-prev,.fbx-light .fbx-social-toggle,.fbx-light.fbx-inset-buttons .fbx-next:before,.fbx-light.fbx-inset-buttons .fbx-prev:before,.fbx-metro.fbx-light .fbx-count,.fbx-metro.fbx-light .fbx-credit a{color:#666!important}.fbx-flat.fbx-light .fbx-close,.fbx-flat.fbx-light .fbx-count,.fbx-flat.fbx-light .fbx-credit a,.fbx-flat.fbx-light .fbx-fullscreen-toggle,.fbx-flat.fbx-light .fbx-next,.fbx-flat.fbx-light .fbx-pause,.fbx-flat.fbx-light .fbx-play,.fbx-flat.fbx-light .fbx-prev,.fbx-flat.fbx-light .fbx-social-toggle{color:#FFF!important}.fbx-light .fbx-close:hover,.fbx-light .fbx-fullscreen-toggle:hover,.fbx-light .fbx-next:hover,.fbx-light .fbx-pause:hover,.fbx-light .fbx-play:hover,.fbx-light .fbx-prev:hover,.fbx-light .fbx-social-toggle:hover,.fbx-light.fbx-inset-buttons .fbx-next:hover:before,.fbx-light.fbx-inset-buttons .fbx-prev:hover:before,.fbx-metro.fbx-light .fbx-credit a:hover{color:#bababa!important}.fbx-metro.fbx-light .fbx-close:hover,.fbx-metro.fbx-light .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-light .fbx-next:hover,.fbx-metro.fbx-light .fbx-pause:hover,.fbx-metro.fbx-light .fbx-play:hover,.fbx-metro.fbx-light .fbx-prev:hover,.fbx-metro.fbx-light .fbx-social-toggle:hover{border-color:#bababa}.fbx-rounded.fbx-light .fbx-count,.fbx-rounded.fbx-light .fbx-credit a{color:#888}.fbx-rounded.fbx-light .fbx-credit a:hover span{color:#ddd}.fbx-light .fbx-caption{color:#FFF}.fbx-light .fbx-caption-desc,.fbx-light .fbx-caption-desc a{color:#eee}.fbx-light .fbx-item-current::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-thumb{background:rgba(0,0,0,.5)}.fbx-light .fbx-item-current::-webkit-scrollbar,.fbx-light .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-light .fbx-item-current::-webkit-scrollbar-track,.fbx-light .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-light .fbx-item-current::-webkit-scrollbar-corner,.fbx-light .fbx-item-current::-webkit-scrollbar-thumb,.fbx-light .fbx-item-next::-webkit-scrollbar-corner,.fbx-light .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-pink,.fbx-pink .fbx-caption,.fbx-pink .fbx-open-caption,.fbx-pink.fbx-phone .fbx-social{background-color:#000;background-color:rgba(0,0,0,.7)}.fbx-ie7.fbx-pink,.fbx-ie7.fbx-pink .fbx-caption,.fbx-ie8.fbx-pink,.fbx-ie8.fbx-pink .fbx-caption,.fbx-ie8.fbx-pink.fbx-phone .fbx-social{background:0 0;-ms-filter:'progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff)';filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#B2000000, endColorstr=#B2000000);zoom:1}.fbx-light .fbx-progress{background-color:#838383;background-color:rgba(255,255,255,.5)}.fbx-fullscreen-mode.fbx-pink{background-color:#a64a87}.fbx-modal.fbx-pink.fbx-phone .fbx-close:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-fullscreen-toggle:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-next:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-pause:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-play:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-prev:hover,.fbx-modal.fbx-pink.fbx-phone .fbx-social-toggle:hover,.fbx-pink .fbx-caption,.fbx-pink .fbx-inner,.fbx-pink .fbx-social,.fbx-pink.fbx-inset-buttons .fbx-next:before,.fbx-pink.fbx-inset-buttons .fbx-prev:before,.fbx-pink.fbx-modal,.fbx-rounded.fbx-pink .fbx-close,.fbx-rounded.fbx-pink .fbx-fullscreen-toggle,.fbx-rounded.fbx-pink .fbx-pause,.fbx-rounded.fbx-pink .fbx-play,.fbx-rounded.fbx-pink .fbx-social-toggle{border-color:#df64b6}.fbx-pink .fbx-close,.fbx-pink .fbx-fullscreen-toggle,.fbx-pink .fbx-inner,.fbx-pink .fbx-loader,.fbx-pink .fbx-next,.fbx-pink .fbx-pause,.fbx-pink .fbx-play,.fbx-pink .fbx-prev,.fbx-pink .fbx-social-toggle,.fbx-pink.fbx-inset-buttons .fbx-next:before,.fbx-pink.fbx-inset-buttons .fbx-prev:before{background-color:#df64b6}.fbx-metro.fbx-pink .fbx-count,.fbx-metro.fbx-pink .fbx-credit a,.fbx-metro.fbx-pink .fbx-credit a:hover,.fbx-pink .fbx-close,.fbx-pink .fbx-close:hover,.fbx-pink .fbx-error-msg,.fbx-pink .fbx-fullscreen-toggle,.fbx-pink .fbx-fullscreen-toggle:hover,.fbx-pink .fbx-loader,.fbx-pink .fbx-next,.fbx-pink .fbx-next:hover,.fbx-pink .fbx-pause,.fbx-pink .fbx-pause:hover,.fbx-pink .fbx-play,.fbx-pink .fbx-play:hover,.fbx-pink .fbx-prev,.fbx-pink .fbx-prev:hover,.fbx-pink .fbx-social-toggle,.fbx-pink .fbx-social-toggle:hover,.fbx-pink.fbx-inset-buttons .fbx-next:before,.fbx-pink.fbx-inset-buttons .fbx-next:hover:before,.fbx-pink.fbx-inset-buttons .fbx-prev:before,.fbx-pink.fbx-inset-buttons .fbx-prev:hover:before{color:#FFF!important}.fbx-metro.fbx-pink .fbx-close:hover,.fbx-metro.fbx-pink .fbx-fullscreen-toggle:hover,.fbx-metro.fbx-pink .fbx-next:hover,.fbx-metro.fbx-pink .fbx-pause:hover,.fbx-metro.fbx-pink .fbx-play:hover,.fbx-metro.fbx-pink .fbx-prev:hover,.fbx-metro.fbx-pink .fbx-social-toggle:hover{border-color:#FFF}.fbx-rounded.fbx-pink .fbx-count,.fbx-rounded.fbx-pink .fbx-credit a{color:#888}.fbx-rounded.fbx-pink .fbx-credit a:hover span{color:#ddd}.fbx-pink .fbx-caption{color:#FFF}.fbx-pink .fbx-caption-desc,.fbx-pink .fbx-caption-desc a{color:#eee}.fbx-pink .fbx-item-current::-webkit-scrollbar,.fbx-pink .fbx-item-next::-webkit-scrollbar{width:12px;height:12px}.fbx-pink .fbx-item-current::-webkit-scrollbar-track,.fbx-pink .fbx-item-next::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.fbx-pink .fbx-item-current::-webkit-scrollbar-corner,.fbx-pink .fbx-item-current::-webkit-scrollbar-thumb,.fbx-pink .fbx-item-next::-webkit-scrollbar-corner,.fbx-pink .fbx-item-next::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}.fbx-caption{position:absolute;top:auto;right:auto;bottom:0;left:0;z-index:100004;width:100%;text-align:center;font-size:14px;transition:visible .3s ease,opacity .3s ease,transform .3s ease;opacity:1;transform:translateY(0)}.fbx-show .fbx-caption.fbx-fade-caption{opacity:0;visibility:hidden}.fbx-caption.fbx-slide-caption{transform:translateY(100%)}.fbx-loading .fbx-caption.fbx-hide-caption,.fbx-show .fbx-caption.fbx-hide-caption{visibility:hidden}.fbx-fullscreen-mode .fbx-caption,.fbx-sticky-caption .fbx-caption{position:fixed;z-index:100007}.fbx-close-caption,.fbx-open-caption{position:absolute;color:#FFF;font-size:24px;line-height:20px;text-decoration:none}.fbx-rounded .fbx-caption{border-radius:0 0 3px 3px}.fbx-modal.fbx-phone .fbx-caption,.fbx-sticky-caption.fbx-rounded .fbx-caption{border-radius:0}.fbx-close-caption{top:0;right:0;padding:3px 3px 10px 10px}.fbx-open-caption{z-index:100004;bottom:0;right:5px;padding:0 10px 10px;opacity:0;transition:opacity .3s ease;border-top-left-radius:6px;border-top-right-radius:6px}.fbx-effect-1 .fbx-inner,.fbx-effect-3 .fbx-inner{-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s}.fbx-captions-hidden .fbx-open-caption{opacity:1}.fbx-caption-title{font-size:15px;padding:15px}.fbx-caption-desc{font-size:12px;line-height:20px;padding:15px}.fbx-caption-desc a{font-size:12px}.fbx-caption-title+.fbx-caption-desc{margin-top:-30px}.fbx-phone .fbx-caption{min-height:20px;font-size:12px;line-height:20px}.fbx-phone .fbx-caption-title{font-size:13px;padding:10px}.fbx-phone .fbx-caption-desc{font-size:11px;line-height:15px;padding:10px}.fbx-phone .fbx-caption-title+.fbx-caption-desc{margin-top:-20px}.fbx-modal.fbx-phone .fbx-caption{z-index:100004;bottom:0;position:fixed}.fbx-modal.fbx-phone.fbx-landscape .fbx-caption,.fbx-phone.fbx-landscape.fbx-sticky-caption .fbx-caption{z-index:100004}.fbx-modal.fbx-phone.fbx-landscape .fbx-caption{border-right-width:46px;border-right-style:solid;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fbx-modal.fbx-flat.fbx-phone.fbx-landscape .fbx-caption{border-right-width:0}.fbx-fullscreen-toggle{display:none}.fbx-fullscreen .fbx-fullscreen-toggle{position:absolute;z-index:100007;display:block;outline:0;text-decoration:none;cursor:pointer;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%}.fbx-fullscreen .fbx-fullscreen-toggle:hover{text-decoration:none}.fbx-flat.fbx-fullscreen .fbx-fullscreen-toggle{width:32px;height:32px;line-height:32px;top:-40px;left:-40px;border:none;border-radius:0}.fbx-flat.fbx-fullscreen.fbx-sticky-buttons .fbx-fullscreen-toggle{width:63px;height:63px;line-height:63px;top:0;left:0}.fbx-metro.fbx-fullscreen .fbx-fullscreen-toggle{top:-41px;left:0}.fbx-rounded.fbx-fullscreen .fbx-fullscreen-toggle{top:-21px;left:-21px}.fbx-metro.fbx-fullscreen .fbx-prev{left:40px}.fbx-metro.fbx-fullscreen .fbx-next{left:80px}.fbx-metro.fbx-sticky-buttons.fbx-fullscreen .fbx-prev{left:0}.fbx-metro.fbx-sticky-buttons.fbx-fullscreen .fbx-next{left:auto;right:0}.fbx-metro.fbx-inset-buttons.fbx-fullscreen .fbx-prev{left:0}.fbx-metro.fbx-inset-buttons.fbx-fullscreen .fbx-next{left:auto;right:0}.fbx-rounded.fbx-fullscreen.fbx-phone .fbx-fullscreen-toggle{display:none}.fbx-fullscreen-mode.fbx-desktop .fbx-inner-spacer,.fbx-fullscreen-mode.fbx-metro.fbx-desktop .fbx-inner-spacer,.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-inner-spacer,.fbx-fullscreen-mode.fbx-rounded.fbx-desktop .fbx-inner-spacer,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-inner-spacer,.fbx-fullscreen-mode.fbx-tablet .fbx-inner-spacer{padding:10px}.fbx-fullscreen-mode .fbx-inner,.fbx-fullscreen-mode.fbx-metro .fbx-inner,.fbx-fullscreen-mode.fbx-rounded .fbx-inner{border:none}.fbx-fullscreen-mode .fbx-caption,.fbx-fullscreen-mode .fbx-inner,.fbx-fullscreen-mode .fbx-item-current,.fbx-fullscreen-mode .fbx-item-image,.fbx-fullscreen-mode .fbx-item-next,.fbx-fullscreen-mode.fbx-rounded .fbx-caption,.fbx-fullscreen-mode.fbx-rounded .fbx-inner,.fbx-fullscreen-mode.fbx-rounded .fbx-item-current,.fbx-fullscreen-mode.fbx-rounded .fbx-item-image,.fbx-fullscreen-mode.fbx-rounded .fbx-item-next{border-radius:0}.fbx-fullscreen-mode.fbx-flat .fbx-next,.fbx-fullscreen-mode.fbx-flat .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-inset-buttons .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-inset-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro .fbx-next,.fbx-fullscreen-mode.fbx-metro .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-rounded .fbx-next,.fbx-fullscreen-mode.fbx-rounded .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev{position:fixed;top:50%;margin-top:-40px;width:28px;height:80px;line-height:80px;border-radius:6px;border:3px solid transparent;opacity:.5;min-width:0;box-sizing:content-box}.fbx-slideshow .fbx-progress,.fbx-social{-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.fbx-fullscreen-mode.fbx-flat .fbx-next:hover,.fbx-fullscreen-mode.fbx-flat .fbx-prev:hover,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons .fbx-next:hover,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons .fbx-prev:hover,.fbx-fullscreen-mode.fbx-metro .fbx-next:hover,.fbx-fullscreen-mode.fbx-metro .fbx-prev:hover,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next:hover,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev:hover,.fbx-fullscreen-mode.fbx-rounded .fbx-next:hover,.fbx-fullscreen-mode.fbx-rounded .fbx-prev:hover,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next:hover,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev:hover{opacity:1}.fbx-error.fbx-fullscreen-mode.fbx-metro .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-rounded .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-flat .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-rounded .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev{left:25px}.fbx-error.fbx-fullscreen-mode.fbx-metro .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-rounded .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-flat .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-next{right:25px;left:auto}.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-prev,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-tablet .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons .fbx-prev,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev{left:20px}.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-next,.fbx-error.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-tablet .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons .fbx-next,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-next{right:20px;left:auto}.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{position:relative;display:inline-block;min-width:0;width:28px;height:auto;line-height:inherit;bottom:auto;right:auto;margin-top:0;border:3px solid transparent;border-radius:6px;opacity:1}.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-next:before,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-full-buttons .fbx-prev:before{top:-3px;left:-3px}.fbx-fullscreen-mode.fbx-flat .fbx-close,.fbx-fullscreen-mode.fbx-flat .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-metro .fbx-close,.fbx-fullscreen-mode.fbx-metro .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-rounded .fbx-close,.fbx-fullscreen-mode.fbx-rounded .fbx-fullscreen-toggle{position:fixed;opacity:.5;border-radius:6px}.fbx-fullscreen-mode.fbx-flat .fbx-close:hover,.fbx-fullscreen-mode.fbx-flat .fbx-fullscreen-toggle:hover,.fbx-fullscreen-mode.fbx-metro .fbx-close:hover,.fbx-fullscreen-mode.fbx-metro .fbx-fullscreen-toggle:hover,.fbx-fullscreen-mode.fbx-rounded .fbx-close:hover,.fbx-fullscreen-mode.fbx-rounded .fbx-fullscreen-toggle:hover{opacity:1}.fbx-fullscreen-mode.fbx-flat .fbx-close,.fbx-fullscreen-mode.fbx-flat.fbx-desktop .fbx-close,.fbx-fullscreen-mode.fbx-metro .fbx-close,.fbx-fullscreen-mode.fbx-metro.fbx-desktop .fbx-close,.fbx-fullscreen-mode.fbx-rounded .fbx-close,.fbx-fullscreen-mode.fbx-rounded.fbx-desktop .fbx-close{right:25px;top:25px;left:auto}.fbx-fullscreen-mode.fbx-flat .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-flat.fbx-desktop .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-metro .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-metro.fbx-desktop .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-rounded .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-rounded.fbx-desktop .fbx-fullscreen-toggle{left:25px;top:25px}.fbx-modal.fbx-fullscreen-mode.fbx-flat.fbx-tablet .fbx-close,.fbx-modal.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-close,.fbx-modal.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-close{right:20px;top:20px;left:auto}.fbx-fullscreen-mode.fbx-metro.fbx-flat .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-metro.fbx-tablet .fbx-fullscreen-toggle,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet .fbx-fullscreen-toggle{left:20px;top:20px}.fbx-fullscreen-mode .fbx-caption{position:fixed;bottom:0}.fbx-fullscreen-mode.fbx-metro .fbx-close:hover,.fbx-fullscreen-mode.fbx-metro .fbx-fullscreen-toggle:hover,.fbx-fullscreen-mode.fbx-metro .fbx-next:hover,.fbx-fullscreen-mode.fbx-metro .fbx-prev:hover{border:3px solid transparent}.fbx-fullscreen-mode .fbx-credit{left:10px}.fbx-fullscreen-mode.fbx-flat .fbx-count,.fbx-fullscreen-mode.fbx-flat .fbx-credit,.fbx-fullscreen-mode.fbx-metro .fbx-count,.fbx-fullscreen-mode.fbx-metro .fbx-credit,.fbx-fullscreen-mode.fbx-rounded .fbx-count,.fbx-fullscreen-mode.fbx-rounded .fbx-credit{bottom:5px}.fbx-fullscreen-mode .fbx-social.fbx-above,.fbx-fullscreen-mode .fbx-social.fbx-aboveleft,.fbx-fullscreen-mode .fbx-social.fbx-aboveright,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-above,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-aboveleft,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-aboveright{top:-45px;margin:0}.fbx-fullscreen-mode .fbx-social.fbx-below,.fbx-fullscreen-mode .fbx-social.fbx-belowleft,.fbx-fullscreen-mode .fbx-social.fbx-belowright,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-below,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-belowleft,.fbx-fullscreen-mode.fbx-metro .fbx-social.fbx-belowright{bottom:-45px;margin:0}.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen .fbx-play{position:fixed;opacity:.5;border:3px solid transparent;border-radius:6px;z-index:100008;width:28px;height:28px;line-height:28px}.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play{top:auto;bottom:25px;right:25px;left:auto}.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play{top:auto;bottom:20px;right:20px;left:auto}.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-flat.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-metro.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-pause,.fbx-fullscreen-mode.fbx-rounded.fbx-tablet.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen.fbx-playpause-center .fbx-play{position:fixed;top:50%;left:50%;bottom:auto;right:auto;margin-top:-40px;margin-left:-40px;width:80px;height:80px;line-height:80px;opacity:.5;border:3px solid transparent;border-radius:6px}.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause:hover,.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play:hover,.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause:hover,.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play:hover,.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause:hover,.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play:hover{opacity:1}.fbx-error.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-error.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play,.fbx-error.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-error.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play,.fbx-error.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-error.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play,.fbx-loading.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-loading.fbx-flat.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play,.fbx-loading.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-loading.fbx-metro.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play,.fbx-loading.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-pause,.fbx-loading.fbx-rounded.fbx-slideshow.fbx-fullscreen.fbx-fullscreen-mode .fbx-play{display:none!important}.fbx-slideshow .fbx-progress{z-index:100005;width:0;position:absolute;display:none;top:auto;left:0;bottom:0;height:5px;-ms-box-sizing:border-box;box-sizing:border-box}.fbx-fullscreen-mode.fbx-slideshow .fbx-progress,.fbx-sticky-caption.fbx-slideshow .fbx-progress{position:fixed;z-index:100008}.fbx-slideshow .fbx-pause:hover,.fbx-slideshow .fbx-play:hover{text-decoration:none}.fbx-slideshow .fbx-pause,.fbx-slideshow .fbx-play{z-index:100007;width:28px;height:28px;line-height:28px;border:3px solid transparent;border-radius:50%;position:absolute;text-align:center;text-decoration:none;display:block;outline:0;cursor:pointer}.fbx-no-buttons .fbx-pause,.fbx-no-buttons .fbx-play,.fbx-no-buttons .fbx-progress{display:none!important}.fbx-metro.fbx-slideshow .fbx-pause,.fbx-metro.fbx-slideshow .fbx-play{top:-41px;left:40px}.fbx-rounded.fbx-slideshow .fbx-pause,.fbx-rounded.fbx-slideshow .fbx-play{right:-21px;bottom:-21px}.fbx-flat.fbx-slideshow .fbx-pause,.fbx-flat.fbx-slideshow .fbx-play{width:32px;height:32px;line-height:32px;right:-40px;bottom:-40px;border:none;border-radius:0}.fbx-flat.fbx-slideshow.fbx-sticky-buttons .fbx-pause,.fbx-flat.fbx-slideshow.fbx-sticky-buttons .fbx-play{width:63px;height:63px;line-height:63px;right:0;bottom:0}.fbx-metro.fbx-slideshow .fbx-next,.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-play{left:80px}.fbx-metro.fbx-slideshow.fbx-fullscreen .fbx-next{left:120px}.fbx-metro.fbx-slideshow.fbx-no-fullscreen .fbx-prev{left:0}.fbx-metro.fbx-slideshow.fbx-no-fullscreen .fbx-pause,.fbx-metro.fbx-slideshow.fbx-no-fullscreen .fbx-play{left:40px}.fbx-metro.fbx-slideshow.fbx-no-fullscreen .fbx-next{left:80px}.fbx-metro.fbx-inset-buttons.fbx-slideshow .fbx-prev,.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-prev,.fbx-metro.fbx-sticky-buttons.fbx-slideshow .fbx-prev,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-prev{left:0;right:auto}.fbx-metro.fbx-inset-buttons.fbx-slideshow .fbx-pause,.fbx-metro.fbx-inset-buttons.fbx-slideshow .fbx-play,.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-pause,.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-play,.fbx-metro.fbx-sticky-buttons.fbx-slideshow .fbx-pause,.fbx-metro.fbx-sticky-buttons.fbx-slideshow .fbx-play,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-pause,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-play{left:0}.fbx-metro.fbx-inset-buttons.fbx-slideshow .fbx-next,.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-next,.fbx-metro.fbx-sticky-buttons.fbx-slideshow .fbx-next,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-no-fullscreen .fbx-next{left:auto;right:0}.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-play,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-pause,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-play{left:40px}.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-prev{left:0;right:auto}.fbx-metro.fbx-inset-buttons.fbx-slideshow.fbx-fullscreen .fbx-next,.fbx-metro.fbx-sticky-buttons.fbx-slideshow.fbx-fullscreen .fbx-next{left:auto;right:0}.fbx-modal.fbx-phone .fbx-progress{height:3px;bottom:0;position:fixed}.fbx-modal.fbx-phone .fbx-pause,.fbx-modal.fbx-phone .fbx-play{position:fixed;border-radius:0}.fbx-modal.fbx-phone.fbx-portrait .fbx-pause,.fbx-modal.fbx-phone.fbx-portrait .fbx-play{border:none;top:0;bottom:auto;left:25%;right:50%;width:auto;height:40px;line-height:40px}.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait .fbx-prev,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-prev,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{right:75%;left:0}.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-next,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{right:25%;left:50%}.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{right:0;left:75%}.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{right:0;left:0}.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-next,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-pause,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-play,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-prev,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-no-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-no-buttons.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-next,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-pause,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-play,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons .fbx-prev,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-close,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-next,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-play,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{bottom:auto;left:auto;right:1px;width:44px;height:44px;line-height:44px;border:none;opacity:1;margin:0;border-radius:0}.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-pause,.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-play{top:154px}.fbx-progress{background-color:#838383;background-color:rgba(255,255,255,.5)}.fbx-effects .fbx-inner{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;backface-visibility:hidden}.fbx-effect-1 .fbx-inner{-webkit-transform:scale(.5);-moz-transform:scale(.5);-ms-transform:scale(.5);-o-transform:scale(.5);transform:scale(.5);-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s;transition:transform .3s,opacity .3s;opacity:0}.fbx-animate.fbx-effect-1 .fbx-inner{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}.fbx-effect-2 .fbx-inner{-webkit-transform:translateX(100%);-moz-transform:translateX(100%);-ms-transform:translateX(100%);-o-transform:translateX(100%);transform:translateX(100%);-webkit-transition:-webkit-transform .3s cubic-bezier(.25,.5,.5,.9),opacity .3s linear;-moz-transition:-moz-transform .3s cubic-bezier(.25,.5,.5,.9),opacity .3s linear;-ms-transition:-ms-transform .3s cubic-bezier(.25,.5,.5,.9),opacity .3s linear;-o-transition:-o-transform .3s cubic-bezier(.25,.5,.5,.9),opacity .3s linear;transition:transform .3s cubic-bezier(.25,.5,.5,.9),opacity .3s linear;opacity:0}.fbx-effect-3 .fbx-inner,.fbx-effect-4 .fbx-inner{-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s}.fbx-animate.fbx-effect-2 .fbx-inner{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);opacity:1}.fbx-effect-3 .fbx-inner{-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-ms-transform:translateY(100%);-o-transform:translateY(100%);transform:translateY(100%);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-4 .fbx-inner,.fbx-effect-5 .fbx-inner{-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s}.fbx-animate.fbx-effect-3 .fbx-inner{-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0);opacity:1}.fbx-effect-4 .fbx-inner{-webkit-transform:scale(0) rotate(720deg);-moz-transform:scale(0) rotate(720deg);-ms-transform:scale(0) rotate(720deg);-o-transform:scale(0) rotate(720deg);transform:scale(0) rotate(720deg);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-5 .fbx-inner,.fbx-effect-6 .fbx-inner{-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s}.fbx-animate.fbx-effect-4 .fbx-inner{-webkit-transform:scale(1) rotate(0);-moz-transform:scale(1) rotate(0);-ms-transform:scale(1) rotate(0);transform:scale(1) rotate(0);opacity:1}.fbx-effect-5{perspective:1300px}.fbx-effect-5 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translateZ(600px) rotateX(20deg);-moz-transform:translateZ(600px) rotateX(20deg);-ms-transform:translateZ(600px) rotateX(20deg);-o-transform:translateZ(600px) rotateX(20deg);transform:translateZ(600px) rotateX(20deg);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-6 .fbx-inner,.fbx-effect-7 .fbx-inner{-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s}.fbx-animate.fbx-effect-5 .fbx-inner{-webkit-transform:translateZ(0) rotateX(0);-moz-transform:translateZ(0) rotateX(0);-ms-transform:translateZ(0) rotateX(0);-o-transform:translateZ(0) rotateX(0);transform:translateZ(0) rotateX(0);opacity:1}.fbx-effect-6{perspective:1300px}.fbx-effect-7,.fbx-effect-8{-webkit-perspective:1300px;-moz-perspective:1300px;-ms-perspective:1300px;-o-perspective:1300px}.fbx-effect-6 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translate(30%) translateZ(600px) rotate(10deg);-moz-transform:translate(30%) translateZ(600px) rotate(10deg);-ms-transform:translate(30%) translateZ(600px) rotate(10deg);-o-transform:translate(30%) translateZ(600px) rotate(10deg);transform:translate(30%) translateZ(600px) rotate(10deg);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-7 .fbx-inner,.fbx-effect-8 .fbx-inner{-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s}.fbx-animate.fbx-effect-6 .fbx-inner{-webkit-transform:translate(0) translateZ(0) rotate(0);-moz-transform:translate(0) translateZ(0) rotate(0);-ms-transform:translate(0) translateZ(0) rotate(0);-o-transform:translate(0) translateZ(0) rotate(0);transform:translate(0) translateZ(0) rotate(0);opacity:1}.fbx-effect-7{perspective:1300px}.fbx-effect-7 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateY(-70deg);-moz-transform:rotateY(-70deg);-ms-transform:rotateY(-70deg);-o-transform:rotateY(-70deg);transform:rotateY(-70deg);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-8 .fbx-inner,.fbx-effect-9 .fbx-inner{-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s}.fbx-animate.fbx-effect-7 .fbx-inner{-webkit-transform:rotateY(0);-moz-transform:rotateY(0);-ms-transform:rotateY(0);-o-transform:rotateY(0);transform:rotateY(0);opacity:1}.fbx-effect-8{perspective:1300px}.fbx-effect-11,.fbx-effect-9{-webkit-perspective:1300px;-moz-perspective:1300px;-ms-perspective:1300px;-o-perspective:1300px}.fbx-effect-8 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateX(-70deg);-moz-transform:rotateX(-70deg);-ms-transform:rotateX(-70deg);-o-transform:rotateX(-70deg);transform:rotateX(-70deg);transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-10 .fbx-inner,.fbx-effect-9 .fbx-inner{-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s}.fbx-animate.fbx-effect-8 .fbx-inner{-webkit-transform:rotateX(0);-moz-transform:rotateX(0);-ms-transform:rotateX(0);-o-transform:rotateX(0);transform:rotateX(0);opacity:1}.fbx-effect-9{perspective:1300px}.fbx-effect-9 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateX(-60deg);-moz-transform:rotateX(-60deg);-ms-transform:rotateX(-60deg);-o-transform:rotateX(-60deg);transform:rotateX(-60deg);-webkit-transform-origin:50% 0;-moz-transform-origin:50% 0;-ms-transform-origin:50% 0;-o-transform-origin:50% 0;transform-origin:50% 0;transition:transform .3s,opacity .3s;opacity:0}.fbx-effect-10 .fbx-inner,.fbx-effect-11 .fbx-inner{-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s}.fbx-animate.fbx-effect-9 .fbx-inner{-webkit-transform:rotateX(0);-moz-transform:rotateX(0);-ms-transform:rotateX(0);-o-transform:rotateX(0);transform:rotateX(0);opacity:1}.fbx-effect-10 .fbx-inner{-webkit-transform:scale(2);-moz-transform:scale(2);-ms-transform:scale(2);-o-transform:scale(2);transform:scale(2);transition:transform .3s,opacity .3s;opacity:0}.fbx-animate.fbx-effect-10 .fbx-inner{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}.fbx-effect-11{perspective:1300px}.fbx-effect-11 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translateY(100%) rotateX(90deg);-moz-transform:translateY(100%) rotateX(90deg);-ms-transform:translateY(100%) rotateX(90deg);-o-transform:translateY(100%) rotateX(90deg);transform:translateY(100%) rotateX(90deg);-webkit-transform-origin:0 100%;-moz-transform-origin:0 100%;-ms-transform-origin:0 100%;-o-transform-origin:0 100%;transform-origin:0 100%;-webkit-transition:-webkit-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s;transition:transform .3s,opacity .3s;opacity:0}.fbx-animate.fbx-effect-11 .fbx-inner{-webkit-transform:translateY(0) rotateX(0);-moz-transform:translateY(0) rotateX(0);-ms-transform:translateY(0) rotateX(0);-o-transform:translateY(0) rotateX(0);transform:translateY(0) rotateX(0);opacity:1}.fbx-effect-12{-webkit-perspective:1300px;-moz-perspective:1300px;-ms-perspective:1300px;-o-perspective:1300px;perspective:1300px}.fbx-effect-12 .fbx-inner{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translateZ(100px) translateX(-30%) rotateY(90deg);-moz-transform:translateZ(100px) translateX(-30%) rotateY(90deg);-ms-transform:translateZ(100px) translateX(-30%) rotateY(90deg);-o-transform:translateZ(100px) translateX(-30%) rotateY(90deg);transform:translateZ(100px) translateX(-30%) rotateY(90deg);-webkit-transform-origin:0 100%;-moz-transform-origin:0 100%;-ms-transform-origin:0 100%;-o-transform-origin:0 100%;transform-origin:0 100%;-webkit-transition:-webkit-transform .3s,opacity .3s;-moz-transition:-moz-transform .3s,opacity .3s;-ms-transition:-ms-transform .3s,opacity .3s;-o-transition:-o-transform .3s,opacity .3s;transition:transform .3s,opacity .3s;opacity:0}.fbx-animate.fbx-effect-12 .fbx-inner{-webkit-transform:translateZ(0) translateX(0) rotateY(0);-moz-transform:translateZ(0) translateX(0) rotateY(0);-ms-transform:translateZ(0) translateX(0) rotateY(0);-o-transform:translateZ(0) translateX(0) rotateY(0);transform:translateZ(0) translateX(0) rotateY(0);opacity:1}.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-social-toggle,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-11.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-12.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-5.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-6.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-7.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-8.fbx-full-buttons .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9 .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9 .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9 .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9 .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9 .fbx-prev,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9.fbx-full-buttons .fbx-close,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9.fbx-full-buttons .fbx-next,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9.fbx-full-buttons .fbx-pause,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9.fbx-full-buttons .fbx-play,.fbx-modal.fbx-phone.fbx-landscape.fbx-sticky-buttons.fbx-effect-9.fbx-full-buttons .fbx-prev{right:-45px}.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-11 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-12 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-5 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-6 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-7 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-8 .fbx-social,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-caption,.fbx-modal.fbx-phone.fbx-landscape.fbx-effect-9 .fbx-social{border-right:none}.fbx-social{z-index:100005;position:absolute;width:100%;left:0;display:none;padding:5px 0 0 5px;box-sizing:border-box}.fbx-social-share .fbx-social{display:block}.fbx-social-toggle{display:none}.fbx-sticky-social .fbx-social{position:fixed}.fbx-social.fbx-top{top:0;text-align:center}.fbx-social.fbx-topleft{top:0;text-align:left}.fbx-social.fbx-topright{top:0;text-align:right}.fbx-social.fbx-bottom{bottom:0;text-align:center}.fbx-social.fbx-bottomleft{bottom:0;text-align:left}.fbx-social.fbx-bottomright{bottom:0;text-align:right}.fbx-social.fbx-above{top:-55px;text-align:center}.fbx-social.fbx-aboveleft{top:-55px;text-align:left}.fbx-social.fbx-aboveright{top:-55px;text-align:right}.fbx-metro .fbx-social.fbx-above,.fbx-metro .fbx-social.fbx-aboveleft,.fbx-metro .fbx-social.fbx-aboveright{top:-95px}.fbx-social.fbx-below{bottom:-70px;text-align:center}.fbx-social.fbx-belowleft{bottom:-70px;text-align:left}.fbx-social.fbx-belowright{bottom:-70px;right:0;text-align:right}.fbx-metro .fbx-social.fbx-below,.fbx-metro .fbx-social.fbx-belowleft,.fbx-metro .fbx-social.fbx-belowright{bottom:-65px}.fbx-social a{width:32px;height:32px;margin:0 5px 5px 0;opacity:.5;display:inline-block;line-height:32px;-webkit-transition-property:opacity,color,background-color,-webkit-transform,-webkit-box-shadow;-moz-transition-property:opacity,color,background-color,-moz-transform,-moz-box-shadow;-o-transition-property:opacity,color,background-color,-o-transform,-o-box-shadow;transition-property:opacity,color,background-color,transform,box-shadow;-webkit-transition-duration:.2s,.2s,.2s,.2s,.2s;-moz-transition-duration:.2s,.2s,.2s,.2s,.2s;-o-transition-duration:.2s,.2s,.2s,.2s,.2s;transition-duration:.2s,.2s,.2s,.2s,.2s;-webkit-transition-timing-function:ease-in,linear,linear,linear,linear;-moz-transition-timing-function:ease-in,linear,linear,linear,linear;-o-transition-timing-function:ease-in,linear,linear,linear,linear;transition-timing-function:ease-in,linear,linear,linear,linear}.fbx-social.fbx-stacked{display:inline-block;width:auto;padding:5px}.fbx-social.fbx-stacked a{display:block}.fbx-social.fbx-stacked.fbx-bottomright,.fbx-social.fbx-stacked.fbx-topright{left:auto;right:0}.fbx-social.fbx-stacked.fbx-bottomright a,.fbx-social.fbx-stacked.fbx-topright a{margin:0 0 5px}.fbx-modal.fbx-phone .fbx-social a{width:48px;height:48px;line-height:48px;font-size:32px}.fbx-modal.fbx-social-share.fbx-phone .fbx-social-toggle{display:block;top:0;left:0;opacity:.5;position:fixed;border-radius:0 0 25%;-webkit-border-bottom-right-radius:25%;-moz-border-radius-bottomright:25%;text-decoration:none;cursor:pointer;width:28px;height:28px;line-height:28px;border:3px solid transparent;z-index:100006}.fbx-modal.fbx-social-share.fbx-phone .fbx-social-toggle:hover{opacity:1}.fbx-modal.fbx-phone .fbx-social{position:fixed;top:0;left:0;width:100%;height:100%}.fbx-modal.fbx-phone .fbx-social a{float:left;margin:10px;opacity:1}.fbx-modal.fbx-phone.fbx-portrait .fbx-social{padding:50px 10px 0}.fbx-modal.fbx-phone.fbx-landscape .fbx-social{padding:10px;border-right-width:46px;border-right-style:solid;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fbx-flat.fbx-modal.fbx-phone.fbx-landscape .fbx-social{border-color:transparent}.fbx-modal.fbx-phone.fbx-portrait .fbx-social-toggle{opacity:1;margin:0;border:0;top:0;bottom:auto;width:auto;height:40px;border-radius:0;line-height:40px}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait .fbx-social-toggle{left:0;right:75%}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-social-toggle{left:0;right:50%}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait .fbx-close,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:75%;right:0}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:50%;right:0}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait .fbx-prev,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-prev,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:25%;right:50%}.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons .fbx-next,.fbx-modal.fbx-social-share.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:50%;right:25%}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-social-toggle{left:0;right:80%}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-social-toggle{left:0;right:50%}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-close{left:80%;right:0}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons .fbx-close,.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons .fbx-close,.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-no-buttons.fbx-sticky-buttons.fbx-full-buttons .fbx-close{left:50%;right:0}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-pause,.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-play{left:40%;right:40%}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-prev,.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-prev{left:20%;right:60%}.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait .fbx-next,.fbx-modal.fbx-social-share.fbx-slideshow.fbx-phone.fbx-portrait.fbx-sticky-buttons.fbx-full-buttons .fbx-next{left:60%;right:20%}.fbx-modal.fbx-phone.fbx-landscape .fbx-social-toggle{top:154px;bottom:auto;left:auto;right:1px;width:44px;height:44px;line-height:44px;border:none;opacity:1;margin:0;border-radius:0}.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape .fbx-social-toggle{top:200px}.fbx-modal.fbx-slideshow.fbx-phone.fbx-landscape.fbx-no-buttons .fbx-social-toggle{top:62px}.fbx-social a{text-decoration:none;border-radius:3px;border:1px solid #777;border-color:rgba(0,0,0,.2);border-bottom-color:#333;border-bottom-color:rgba(0,0,0,.4);font-size:24px;-moz-box-shadow:0 0 12px #000;-moz-box-shadow:0 0 12px rgba(0,0,0,.8);-webkit-box-shadow:0 0 12px #000;-webkit-box-shadow:0 0 12px rgba(0,0,0,.8);box-shadow:0 0 12px #000;box-shadow:0 0 12px rgba(0,0,0,.8)}.fbx-social:hover a{opacity:1}.fbx-social a:hover{text-decoration:none;-moz-box-shadow:0 0 6px #000;-moz-box-shadow:0 0 6px rgba(0,0,0,.8);-webkit-box-shadow:0 0 6px #000;-webkit-box-shadow:0 0 6px rgba(0,0,0,.8);box-shadow:0 0 6px #000;box-shadow:0 0 6px rgba(0,0,0,.8);transform:scale(1.1);-moz-transform:scale(1.1);-ms-transform:scale(1.1);-webkit-transform:scale(1.1);-o-transform:scale(1.1)}.fbx-social a:before,.fbx-social a:hover:before{color:#fff!important}.fbx-social .fbx-facebook{background-color:#4863ae}.fbx-social .fbx-google-plus{background-color:#dd4b39}.fbx-social .fbx-twitter{background-color:#46c0fb}.fbx-social .fbx-pinterest{background-color:#c91618}.fbx-social .fbx-linkedin{background-color:#0083a8}.fbx-social .fbx-buffer{background-color:#000}.fbx-social .fbx-download{background-color:#FFF}.fbx-social a.fbx-download:before,.fbx-social a.fbx-download:hover:before{color:#000!important}.fbx-social .fbx-email{background-color:#888}.fbx-social .fbx-digg{background-color:#164673}.fbx-social .fbx-reddit{background-color:#FFF;color:red!important}.fbx-social a.fbx-reddit:before,.fbx-social a.fbx-reddit:hover:before{color:red!important}.fbx-social .fbx-tumblr{background-color:#374a61}.fbx-social .fbx-stumble-upon{background-color:#eb4924}.fbx-social .fbx-myspace{background-color:#000}.fbx-pannable{cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.fbx-pannable.fbx-panning{cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.fbx-pannable>div>img.fbx-item{max-width:none;max-height:none}.fbx-pan-overview{cursor:pointer;max-width:150px;max-height:150px;overflow:hidden;background-position:top left;background-size:cover;position:absolute;z-index:100006;border:2px solid #666;-moz-box-shadow:0 0 12px rgba(0,0,0,.8);-webkit-box-shadow:0 0 12px rgba(0,0,0,.8);box-shadow:0 0 12px rgba(0,0,0,.8)}.fbx-pan-overview.fbx-top-left{top:20px;left:20px}.fbx-pan-overview.fbx-top-right{top:20px;right:32px}.fbx-pan-overview.fbx-bottom-left{bottom:32px;left:20px}.fbx-pan-overview.fbx-bottom-right{bottom:32px;right:32px}.fbx-pan-viewport{position:absolute;top:0;left:0;box-shadow:0 0 300px 300px rgba(0,0,0,.7)}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
free/foobox-free.php
CHANGED
@@ -21,7 +21,6 @@ if (!class_exists('Foobox_Free')) {
|
|
21 |
|
22 |
const JS = 'foobox.free.min.js';
|
23 |
const CSS = 'foobox.free.min.css';
|
24 |
-
const CSS_NOIE7 = 'foobox.noie7.min.css';
|
25 |
const FOOBOX_URL = 'http://fooplugins.com/plugins/foobox/?utm_source=fooboxfreeplugin&utm_medium=fooboxfreeprolink&utm_campaign=foobox_free_pro_tab';
|
26 |
const BECOME_AFFILIATE_URL = 'http://fooplugins.com/affiliate-program/';
|
27 |
|
@@ -55,6 +54,9 @@ if (!class_exists('Foobox_Free')) {
|
|
55 |
|
56 |
add_action( 'enqueue_block_editor_assets', array( $this, 'enqueue_block_editor_assets' ) );
|
57 |
|
|
|
|
|
|
|
58 |
} else {
|
59 |
|
60 |
// Render JS to the front-end pages
|
@@ -71,6 +73,23 @@ if (!class_exists('Foobox_Free')) {
|
|
71 |
new FooBox_Free_Exclude();
|
72 |
}
|
73 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
function enqueue_block_editor_assets() {
|
75 |
$this->frontend_print_scripts();
|
76 |
$this->frontend_print_styles();
|
@@ -131,11 +150,7 @@ if (!class_exists('Foobox_Free')) {
|
|
131 |
if ( !apply_filters('foobox_enqueue_styles', true) ) return;
|
132 |
|
133 |
//enqueue foobox CSS
|
134 |
-
|
135 |
-
$this->register_and_enqueue_css(self::CSS_NOIE7);
|
136 |
-
} else {
|
137 |
-
$this->register_and_enqueue_css(self::CSS);
|
138 |
-
}
|
139 |
}
|
140 |
|
141 |
function frontend_print_scripts() {
|
21 |
|
22 |
const JS = 'foobox.free.min.js';
|
23 |
const CSS = 'foobox.free.min.css';
|
|
|
24 |
const FOOBOX_URL = 'http://fooplugins.com/plugins/foobox/?utm_source=fooboxfreeplugin&utm_medium=fooboxfreeprolink&utm_campaign=foobox_free_pro_tab';
|
25 |
const BECOME_AFFILIATE_URL = 'http://fooplugins.com/affiliate-program/';
|
26 |
|
54 |
|
55 |
add_action( 'enqueue_block_editor_assets', array( $this, 'enqueue_block_editor_assets' ) );
|
56 |
|
57 |
+
add_filter( 'fs_show_trial_foobox-image-lightbox', array( $this, 'force_trial_hide' ) );
|
58 |
+
add_action( 'admin_init', array( $this, 'force_hide_trial_notice' ), 99 );
|
59 |
+
|
60 |
} else {
|
61 |
|
62 |
// Render JS to the front-end pages
|
73 |
new FooBox_Free_Exclude();
|
74 |
}
|
75 |
|
76 |
+
function force_trial_hide( $show_trial ) {
|
77 |
+
if ( $this->options()->is_checked( 'force_hide_trial', false ) ) {
|
78 |
+
$show_trial = false;
|
79 |
+
}
|
80 |
+
|
81 |
+
return $show_trial;
|
82 |
+
}
|
83 |
+
|
84 |
+
function force_hide_trial_notice() {
|
85 |
+
if ( $this->options()->is_checked( 'force_hide_trial', false ) ) {
|
86 |
+
$freemius_sdk = foobox_fs();
|
87 |
+
$plugin_id = $freemius_sdk->get_slug();
|
88 |
+
$admin_notice_manager = FS_Admin_Notice_Manager::instance( $plugin_id );
|
89 |
+
$admin_notice_manager->remove_sticky( 'trial_promotion' );
|
90 |
+
}
|
91 |
+
}
|
92 |
+
|
93 |
function enqueue_block_editor_assets() {
|
94 |
$this->frontend_print_scripts();
|
95 |
$this->frontend_print_styles();
|
150 |
if ( !apply_filters('foobox_enqueue_styles', true) ) return;
|
151 |
|
152 |
//enqueue foobox CSS
|
153 |
+
$this->register_and_enqueue_css(self::CSS);
|
|
|
|
|
|
|
|
|
154 |
}
|
155 |
|
156 |
function frontend_print_scripts() {
|
free/includes/class-script-generator.php
CHANGED
@@ -162,7 +162,6 @@ if ( !class_exists( 'FooBox_Free_Script_Generator' ) ) {
|
|
162 |
$js_options = self::generate_js_options( $fbx_options );
|
163 |
$disable_others = self::is_option_checked( $fbx_options, 'disable_others', false );
|
164 |
$foobox_ready_event = apply_filters( 'foobox_generate_javascript_ready_event', true );
|
165 |
-
$preload_foobox_font = apply_filters( 'foobox_generate_javascript_preload_font', false );
|
166 |
if ( $debug ) {
|
167 |
$pre_js = apply_filters( 'foobox_generate_javascript_pre', 'console.log("FooBox - Custom JavaScript (Pre)");' );
|
168 |
$post_js = apply_filters( 'foobox_generate_javascript_post', 'console.log("FooBox - Custom JavaScript (Post)");' );
|
@@ -177,7 +176,6 @@ if ( !class_exists( 'FooBox_Free_Script_Generator' ) ) {
|
|
177 |
$js = sprintf( '/* Run FooBox FREE (v%s) */
|
178 |
var FOOBOX = window.FOOBOX = {
|
179 |
ready: %s,
|
180 |
-
preloadFont: %s,
|
181 |
disableOthers: %s,
|
182 |
o: %s,
|
183 |
selectors: [
|
@@ -200,7 +198,6 @@ var FOOBOX = window.FOOBOX = {
|
|
200 |
};',
|
201 |
$info['version'],
|
202 |
$foobox_ready_event ? 'true' : 'false',
|
203 |
-
$preload_foobox_font ? 'true' : 'false',
|
204 |
$disable_others ? 'true' : 'false',
|
205 |
$js_options,
|
206 |
'"' . implode($seperator, $foobox_selectors) . '"',
|
162 |
$js_options = self::generate_js_options( $fbx_options );
|
163 |
$disable_others = self::is_option_checked( $fbx_options, 'disable_others', false );
|
164 |
$foobox_ready_event = apply_filters( 'foobox_generate_javascript_ready_event', true );
|
|
|
165 |
if ( $debug ) {
|
166 |
$pre_js = apply_filters( 'foobox_generate_javascript_pre', 'console.log("FooBox - Custom JavaScript (Pre)");' );
|
167 |
$post_js = apply_filters( 'foobox_generate_javascript_post', 'console.log("FooBox - Custom JavaScript (Post)");' );
|
176 |
$js = sprintf( '/* Run FooBox FREE (v%s) */
|
177 |
var FOOBOX = window.FOOBOX = {
|
178 |
ready: %s,
|
|
|
179 |
disableOthers: %s,
|
180 |
o: %s,
|
181 |
selectors: [
|
198 |
};',
|
199 |
$info['version'],
|
200 |
$foobox_ready_event ? 'true' : 'false',
|
|
|
201 |
$disable_others ? 'true' : 'false',
|
202 |
$js_options,
|
203 |
'"' . implode($seperator, $foobox_selectors) . '"',
|
free/includes/class-settings.php
CHANGED
@@ -6,6 +6,8 @@ if ( !class_exists( 'FooBox_Free_Settings' ) ) {
|
|
6 |
|
7 |
function __construct() {
|
8 |
add_filter('foobox-free-admin_settings', array($this, 'create_settings'));
|
|
|
|
|
9 |
}
|
10 |
|
11 |
function create_settings() {
|
@@ -135,14 +137,6 @@ if ( !class_exists( 'FooBox_Free_Settings' ) ) {
|
|
135 |
'tab' => 'advanced'
|
136 |
);
|
137 |
|
138 |
-
$settings[] = array(
|
139 |
-
'id' => 'dropie7support',
|
140 |
-
'title' => __( 'Drop IE7 Support', 'foobox' ),
|
141 |
-
'desc' => __( 'Drop support for IE7, which removes some CSS hacks to get things working in IE7. This also allows the FooBox CSS to pass CSS validation.', 'foobox-image-lightbox' ),
|
142 |
-
'type' => 'checkbox',
|
143 |
-
'tab' => 'advanced'
|
144 |
-
);
|
145 |
-
|
146 |
$settings[] = array(
|
147 |
'id' => 'disable_others',
|
148 |
'title' => __( 'Disable Other Lightboxes', 'foobox-image-lightbox' ),
|
@@ -159,6 +153,14 @@ if ( !class_exists( 'FooBox_Free_Settings' ) ) {
|
|
159 |
'tab' => 'advanced'
|
160 |
);
|
161 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
$settings[] = array(
|
163 |
'id' => 'excludebydefault',
|
164 |
'title' => __( 'Exclude FooBox Assets', 'foobox-image-lightbox' ),
|
@@ -211,5 +213,88 @@ if ( !class_exists( 'FooBox_Free_Settings' ) ) {
|
|
211 |
'settings' => $settings
|
212 |
);
|
213 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
214 |
}
|
215 |
}
|
6 |
|
7 |
function __construct() {
|
8 |
add_filter('foobox-free-admin_settings', array($this, 'create_settings'));
|
9 |
+
|
10 |
+
add_action( 'foobox-free-settings-sidebar', array( $this, 'settings_sidebar' ) );
|
11 |
}
|
12 |
|
13 |
function create_settings() {
|
137 |
'tab' => 'advanced'
|
138 |
);
|
139 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
$settings[] = array(
|
141 |
'id' => 'disable_others',
|
142 |
'title' => __( 'Disable Other Lightboxes', 'foobox-image-lightbox' ),
|
153 |
'tab' => 'advanced'
|
154 |
);
|
155 |
|
156 |
+
$settings[] = array(
|
157 |
+
'id' => 'force_hide_trial',
|
158 |
+
'title' => __( 'Force Hide Trial Notice', 'foobox-image-lightbox' ),
|
159 |
+
'desc' => __( 'Force the FooBox trial notice admin banner to never show', 'foobox-image-lightbox' ),
|
160 |
+
'type' => 'checkbox',
|
161 |
+
'tab' => 'advanced'
|
162 |
+
);
|
163 |
+
|
164 |
$settings[] = array(
|
165 |
'id' => 'excludebydefault',
|
166 |
'title' => __( 'Exclude FooBox Assets', 'foobox-image-lightbox' ),
|
213 |
'settings' => $settings
|
214 |
);
|
215 |
}
|
216 |
+
|
217 |
+
function build_install_url( $slug ) {
|
218 |
+
$action = 'install-plugin';
|
219 |
+
return wp_nonce_url(
|
220 |
+
add_query_arg(
|
221 |
+
array(
|
222 |
+
'action' => $action,
|
223 |
+
'plugin' => $slug
|
224 |
+
),
|
225 |
+
admin_url( 'update.php' )
|
226 |
+
),
|
227 |
+
$action . '_' . $slug
|
228 |
+
);
|
229 |
+
}
|
230 |
+
|
231 |
+
function settings_sidebar() {
|
232 |
+
$install_foobox = $this->build_install_url( 'foobox-image-lightbox' );
|
233 |
+
$install_foogallery = $this->build_install_url( 'foogallery' );
|
234 |
+
$install_foobar = $this->build_install_url( 'foobar-notifications-lite' );
|
235 |
+
|
236 |
+
?>
|
237 |
+
<style>
|
238 |
+
.settings-sidebar-promo {
|
239 |
+
width: 280px;
|
240 |
+
border: 1px solid #ccd0d4;
|
241 |
+
border-left-width: 4px;
|
242 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
243 |
+
background: #fff;
|
244 |
+
border-left-color: #007cba;
|
245 |
+
padding: 10px;
|
246 |
+
margin-bottom: 10px;
|
247 |
+
text-align: center;
|
248 |
+
}
|
249 |
+
|
250 |
+
.settings-sidebar-promo.please-rate {
|
251 |
+
border-left-color: #ff69b4;
|
252 |
+
}
|
253 |
+
|
254 |
+
.settings-sidebar-promo h2 {
|
255 |
+
margin-top: 0;
|
256 |
+
}
|
257 |
+
|
258 |
+
.settings-sidebar-promo h2 .dashicons {
|
259 |
+
color: #ff69b4;
|
260 |
+
margin-right: 5px;
|
261 |
+
}
|
262 |
+
|
263 |
+
.settings-sidebar-promo img {
|
264 |
+
padding: 0;
|
265 |
+
margin: 0;
|
266 |
+
}
|
267 |
+
</style>
|
268 |
+
|
269 |
+
<div class="settings-sidebar-promo please-rate">
|
270 |
+
<h2><i class="dashicons dashicons-heart"></i>Thanks for using FooBox!</h2>
|
271 |
+
<p>
|
272 |
+
If you love FooBox, please consider giving it a 5 star rating on WordPress.org. Your positive ratings help spread the word and help us grow.
|
273 |
+
</p>
|
274 |
+
|
275 |
+
<a class="button button-primary button-large" target="_blank" href="https://wordpress.org/support/plugin/foobox-image-lightbox/reviews/#new-post">Rate FooBox on WordPress.org</a>
|
276 |
+
</div>
|
277 |
+
|
278 |
+
<div class="settings-sidebar-promo">
|
279 |
+
<h2>Grow Your Business</h2>
|
280 |
+
<img src="https://foocdn.s3.amazonaws.com/logos/foobar-128x128.png" />
|
281 |
+
<p>
|
282 |
+
FooBar allows you to create unlimited eye-catching notification bars, announcements and cookie notices that catch your visitor's attention.
|
283 |
+
</p>
|
284 |
+
<a class="button button-primary button-large" target="_blank" href="<?php echo $install_foobar; ?>">Install FooBar</a>
|
285 |
+
<a class="button button-large" target="_blank" href="https://wordpress.org/plugins/foobar-notifications-lite/">View Details</a>
|
286 |
+
</div>
|
287 |
+
|
288 |
+
<div class="settings-sidebar-promo">
|
289 |
+
<h2>Create Beautiful Galleries</h2>
|
290 |
+
<img src="https://foocdn.s3.amazonaws.com/logos/foogallery-128x128.png" />
|
291 |
+
<p>
|
292 |
+
Make gallery management in WordPress great again! With FooGallery you can easily add a stunning photo gallery to your website in minutes.
|
293 |
+
</p>
|
294 |
+
<a class="button button-primary button-large" target="_blank" href="<?php echo $install_foogallery; ?>">Install FooGallery</a>
|
295 |
+
<a class="button button-large" target="_blank" href="https://wordpress.org/plugins/foogallery">View Details</a>
|
296 |
+
</div>
|
297 |
+
<?php
|
298 |
+
}
|
299 |
}
|
300 |
}
|
free/includes/foopluginbase/views/settings.php
CHANGED
@@ -98,7 +98,9 @@ $plugin_slug = $plugin_info['slug'];
|
|
98 |
</form>
|
99 |
</div>
|
100 |
<div id="<?php echo $plugin_slug; ?>-settings-sidebar" class="postbox-container">
|
101 |
-
<?php
|
|
|
|
|
102 |
</div>
|
103 |
</div>
|
104 |
</div>
|
98 |
</form>
|
99 |
</div>
|
100 |
<div id="<?php echo $plugin_slug; ?>-settings-sidebar" class="postbox-container">
|
101 |
+
<?php
|
102 |
+
do_action($plugin_slug . '-settings-sidebar' );
|
103 |
+
?>
|
104 |
</div>
|
105 |
</div>
|
106 |
</div>
|
free/includes/view-getting-started.php
CHANGED
@@ -26,6 +26,11 @@ $button_text = $show_trial_message ? __( 'Already convinced? Upgrade to PRO!', '
|
|
26 |
</a>
|
27 |
</h2>
|
28 |
<div id="getting-started_tab" class="feature-section nav-container">
|
|
|
|
|
|
|
|
|
|
|
29 |
<div>
|
30 |
<h2><?php _e( 'Zero Configuration', 'foobox-image-lightbox' );?></h2>
|
31 |
<p><?php _e( 'FooBox FREE works out-of-the-box with the following standard features:', 'foobox-image-lightbox' );?></p>
|
@@ -36,9 +41,9 @@ $button_text = $show_trial_message ? __( 'Already convinced? Upgrade to PRO!', '
|
|
36 |
<p>
|
37 |
<?php _e( 'No configuration for the above is needed! But you can still customize the plugin from the settings page if you want to.', 'foobox-image-lightbox' ); ?>
|
38 |
</p>
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
</div>
|
43 |
<div>
|
44 |
<h2><?php _e( 'class="foobox"', 'foobox-image-lightbox' );?></h2>
|
@@ -104,6 +109,9 @@ $button_text = $show_trial_message ? __( 'Already convinced? Upgrade to PRO!', '
|
|
104 |
</div>
|
105 |
</div>
|
106 |
<div id="demo_tab" class="feature-section nav-container" style="display: none">
|
|
|
|
|
|
|
107 |
<?php
|
108 |
$size = 70;
|
109 |
$location = 'https://s3.amazonaws.com/foocdn/';
|
26 |
</a>
|
27 |
</h2>
|
28 |
<div id="getting-started_tab" class="feature-section nav-container">
|
29 |
+
<div>
|
30 |
+
<h2><?php _e( 'See FooBox In Action', 'foobox-image-lightbox' );?></h2>
|
31 |
+
<h4><?php printf( '<a rel="foobox" class="foobox" href="%s">%s</a>', esc_url ( foobox_asset_url( 'img/foobot_red.png' ) ), __( 'Click to open FooBox!', 'foobox-image-lightbox' ) ); ?></h4>
|
32 |
+
<p style="text-align: center; font-size:0.9em;"><?php _e( 'You know you want to...😉', 'foobox-image-lightbox' );?></p>
|
33 |
+
</div>
|
34 |
<div>
|
35 |
<h2><?php _e( 'Zero Configuration', 'foobox-image-lightbox' );?></h2>
|
36 |
<p><?php _e( 'FooBox FREE works out-of-the-box with the following standard features:', 'foobox-image-lightbox' );?></p>
|
41 |
<p>
|
42 |
<?php _e( 'No configuration for the above is needed! But you can still customize the plugin from the settings page if you want to.', 'foobox-image-lightbox' ); ?>
|
43 |
</p>
|
44 |
+
<h4>
|
45 |
+
<?php printf( '<a href="%s">%s</a>', esc_url ( foobox_settings_url() ), __( 'Visit the FooBox settings page', 'foobox-image-lightbox' ) ); ?>
|
46 |
+
</h4>
|
47 |
</div>
|
48 |
<div>
|
49 |
<h2><?php _e( 'class="foobox"', 'foobox-image-lightbox' );?></h2>
|
109 |
</div>
|
110 |
</div>
|
111 |
<div id="demo_tab" class="feature-section nav-container" style="display: none">
|
112 |
+
<p>
|
113 |
+
<?php _e( 'Click on an image:', 'foobox-image-lightbox' );?>
|
114 |
+
</p>
|
115 |
<?php
|
116 |
$size = 70;
|
117 |
$location = 'https://s3.amazonaws.com/foocdn/';
|
free/js/foobox.free.min.js
CHANGED
@@ -1,10 +1,11 @@
|
|
1 |
/**!
|
2 |
* FooBox - A jQuery responsive lightbox plugin
|
3 |
-
* @version 2.
|
4 |
* @link http://fooplugins.com/plugins/foobox-jquery
|
5 |
-
* @copyright Steven Usher & Brad Vincent
|
6 |
* @license Released under the MIT license.
|
7 |
* You are free to use FooBox jQuery in personal projects as long as this copyright header is left intact.
|
8 |
*/
|
9 |
-
!function(a,b,c,undefined){if(a&&b){b.FooBox={defaults:{affiliate:{enabled:!0,prefix:"Powered by ",url:"http://fooplugins.com/plugins/foobox/"},alwaysInit:!1,closeOnOverlayClick:!0,containerCssClass:"fbx-instance",countMessage:"item %index of %total",error:"Could not load the item",excludes:".fbx-link, .nofoobox",externalSelector:"a[data-foobox],input[data-foobox]",fitToScreen:!1,hideScrollbars:!0,loadDelay:0,loaderTimeout:600,modalClass:"",preload:!1,rel:null,resizeSpeed:300,selector:"a",showButtons:!0,showCount:!0,style:"fbx-rounded",theme:"fbx-light",transitionInSpeed:200,transitionOutSpeed:200,initCallback:null,loop:!0},version:"2.0.10",instances:[],ready:function(b){(Function("/*@cc_on return true@*/")()?"complete"===document.readyState:"loading"!==document.readyState)?b(a):setTimeout(function(){FooBox.ready(b)},1)}},FooBox.$=a,FooBox.format=function(a,b,c){var d,e,f=arguments[0];for(d=0;d<arguments.length-1;d++)e=new RegExp("\\{"+d+"\\}","gm"),f=f.replace(e,arguments[d+1]);return f},FooBox.browser={isIE:!1,isChrome:!1,isSafari:!1,isLtSafari10:!1,version:0,css:"",iOS:!1,Mac:!1,isMobile:function(a){return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))}(navigator.userAgent||navigator.vendor||b.opera),check:function(){var a=navigator.appVersion.toLowerCase(),c=navigator.userAgent.toLowerCase(),d=navigator.platform;FooBox.browser.iOS=/(iPad|iPhone|iPod)/g.test(d),FooBox.browser.iOS12OrBelow=!1,FooBox.browser.iOS&&(FooBox.browser.css+=" fbx-ios",FooBox.browser.iOS12OrBelow=function(){var b=a.match(/OS (\d+)_(\d+)_?(\d+)?/i);return b=[parseInt(b[1],10),parseInt(b[2],10),parseInt(b[3]||0,10)],b[0]<=12}(),FooBox.browser.iOS12OrBelow&&(FooBox.browser.css+=" fbx-ios-12-or-below")),FooBox.browser.Mac=/(Mac)/g.test(d),FooBox.browser.Mac&&(FooBox.browser.css+=" fbx-mac"),FooBox.browser.isChrome=a.indexOf("chrome")>-1||a.indexOf("crios")>-1,FooBox.browser.isChrome&&(FooBox.browser.css+=" fbx-chrome"),FooBox.browser.isSafari=a.indexOf("safari")>-1&&!FooBox.browser.isChrome,FooBox.browser.isSafari&&(FooBox.browser.css+=" fbx-safari",FooBox.browser.isLtSafari10=/constructor/i.test(b.HTMLElement)),FooBox.browser.isFirefox=c.indexOf("firefox")>-1,FooBox.browser.isFirefox&&(FooBox.browser.css+=" fbx-firefox");var e=c.indexOf("msie "),f=c.indexOf("trident/"),g=c.indexOf("edge/");if(FooBox.browser.isIE=e>-1||f>-1||g>-1,FooBox.browser.isIE){if(e>-1)FooBox.browser.version=parseInt(c.substring(e+5,c.indexOf(".",e)),10);else if(f>-1){var h=c.indexOf("rv:");FooBox.browser.version=parseInt(c.substring(h+3,c.indexOf(".",h)),10)}else g>-1&&(FooBox.browser.version=parseInt(c.substring(g+5,c.indexOf(".",g)),10));FooBox.browser.css="fbx-ie fbx-ie"+FooBox.browser.version}},supportsTransitions:function(){var a,b=document.body||document.documentElement,c=b.style,d="transition";if("string"==typeof c[d])return!0;a=["Moz","Webkit","Khtml","O","ms"],d=d.charAt(0).toUpperCase()+d.substr(1);for(var e=0;e<a.length;e++)if("string"==typeof c[a[e]+d])return!0;return!1},transitionEnd:function(){var a,b=document.createElement("fakeelement"),c={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(a in c)if(c.hasOwnProperty(a)&&b.style[a]!==undefined)return c[a];return null}},FooBox.browser.check(),FooBox.qualifiedURL=function(a){var b=document.createElement("a");return b.href=a,b.href},c||(c={}),c.log=c.log||function(){},c.warn=c.warn||function(){},c.error=c.error||function(){},c.info=c.info||function(){};var d={write:function(){c.log(FooBox.format.apply(d,arguments))},error:function(){1===arguments.length&&arguments[0]instanceof Error?c.error(arguments[0]):c.error(FooBox.format.apply(d,arguments))}};jQuery.Event.prototype.fb={instance:null,modal:null,options:null},FooBox.raise=function(b,c,d){d=d||{};var e=a.Event(c);return e.fb={},e.fb.instance=b,e.fb.modal=b.modal.element,e.fb.options=b.options,a.extend(!0,e.fb,d),b.element.one(c,function(a){a.stopPropagation()}).trigger(e),e},FooBox.isjQuery=function(a){return a instanceof jQuery?!0:a&&a.jquery},FooBox.options={isMultipart:function(a,b){return"string"==typeof a&&a.length>0&&-1!==a.indexOf(b)},hasProperties:function(a){if("object"!=typeof a)return!1;var b;for(b in a)if(a.hasOwnProperty(b))return!0;return!1},get:function(a,b){if(FooBox.options.isMultipart(b,".")){var c=b.substring(0,b.indexOf(".")),d=b.substring(b.indexOf(".")+1);return a[c]=a[c]||{},FooBox.options.get(a[c],d)}return a[b]},set:function(a,b,c){if(FooBox.options.isMultipart(b,".")){var d=b.substring(0,b.indexOf(".")),e=b.substring(b.indexOf(".")+1);a[d]=a[d]||{},FooBox.options.set(a[d],e,c)}else a[b]=c},merge:function(a,b,c){var d,e=Array.prototype.slice.call(arguments);for(a=e.shift(),b=e.shift(),FooBox.options._merge(a,b),d=0;d<e.length;d++)c=e[d],FooBox.options._merge(a,c);return a},_merge:function(b,c){var d;for(d in c)c.hasOwnProperty(d)&&(FooBox.options.hasProperties(c[d])&&!a.isArray(c[d])?(b[d]=b[d]||{},FooBox.options._merge(b[d],c[d])):a.isArray(c[d])?(b[d]=[],a.extend(!0,b[d],c[d])):b[d]=c[d])}},FooBox.objects={registered:{},ensure:function(a){return FooBox.objects.registered[a]=FooBox.objects.registered[a]||[]},register:function(b,c,d){var e=FooBox.objects.ensure(b);return e.push(c),"object"==typeof d&&a.extend(!0,FooBox.defaults,d),!0},load:function(a,b){var c,e,f=[],g=FooBox.objects.ensure(a);for(e=0;e<g.length;e++)try{c=g[e],f.push(new c(b))}catch(h){d.error(h)}b.objects=b.objects||{},b.objects[a]=f},call:function(b,c,e,f,g){var h,i=Array.prototype.slice.call(arguments);b=i.shift(),c=i.shift(),e=i.shift();for(var j=c.objects[b]||[],k=0;k<j.length;k++)try{if(h=j[k],!a.isFunction(h[e]))continue;h[e].apply(h,i)}catch(l){d.error(l)}},get:function(b,c,d){var e,f=c.objects[b];if(!f||!a.isFunction(d))return null;for(e=0;e<f.length;e++)if(d(f[e]))return f[e];return null}},FooBox.addons={_ns:"addons",validate:function(b){return a.isFunction(b)?!0:(d.error('Expected type "function", received type "{0}".',typeof b),!1)},register:function(a,b){return FooBox.addons.validate(a)?FooBox.objects.register(FooBox.addons._ns,a,b):(d.error("Failed to register the addon."),!1)},load:function(a){FooBox.objects.load(FooBox.addons._ns,a)},call:function(a,b,c,d){var e=Array.prototype.slice.call(arguments);e.unshift(FooBox.addons._ns),FooBox.objects.call.apply(this,e)}},FooBox.handlers={_ns:"handlers",validate:function(b){if(!a.isFunction(b))return d.error('Expected type "function", received type "{0}".',typeof b),!1;var c=new b;return a.isFunction(c.handles)?a.isFunction(c.defaults)?a.isFunction(c.parse)?a.isFunction(c.load)?a.isFunction(c.getSize)?a.isFunction(c.hasChanged)?a.isFunction(c.preload)?!0:(d.error('The required "preload" method is not implemented.'),!1):(d.error('The required "hasChanged" method is not implemented.'),!1):(d.error('The required "getSize" method is not implemented.'),!1):(d.error('The required "load" method is not implemented.'),!1):(d.error('The required "parse" method is not implemented.'),!1):(d.error('The required "defaults" method is not implemented.'),!1):(d.error('The required "handles" method is not implemented.'),!1)},register:function(a,b){return FooBox.handlers.validate(a)?FooBox.objects.register(FooBox.handlers._ns,a,b):(d.error("Failed to register the handler."),!1)},load:function(a){FooBox.objects.load(FooBox.handlers._ns,a)},call:function(a,b,c,d){var e=Array.prototype.slice.call(arguments);e.unshift(FooBox.handlers._ns),FooBox.objects.call.apply(this,e)},get:function(a,b){return FooBox.objects.get(FooBox.handlers._ns,a,function(a){return a.type==b})}},FooBox.Item=function(b,c,d){return this.type=b,this.element=FooBox.isjQuery(c)?c:a(c),this.handler=d,this.width=null,this.height=null,this.url=null,this.overflow=!1,this.preloaded=!1,this.proportion=!1,this.error=!1,this},FooBox.Size=function(a,b){return this.width="number"==typeof a?a:parseInt(a,0),this.height="number"==typeof b?b:parseInt(b,0),this.equalTo=function(a){return this.width==a.width&&this.height==a.height},this},FooBox.Size.check=function(a){return"number"==typeof a?a:isNaN(parseInt(a))?null:parseInt(a)},FooBox.Timer=function(){this.id=null,this.busy=!1;var a=this;return this.start=function(b,c,d){d=d||b,a.stop(),a.id=setTimeout(function(){b.call(d),a.id=null,a.busy=!1},c),a.busy=!0},this.stop=function(){null!==a.id&&a.busy!==!1&&(clearTimeout(a.id),a.id=null,a.busy=!1)},this},a.fn.foobox=function(b){return b=b||{},this.each(function(){var c=a(this),d=c.data("fbx_instance"),e=c.data("__FooGallery__"),f=a.extend(!0,{},b,c.data("foobox"));if(d instanceof FooBox.Instance)if(d.options.alwaysInit===!0||e){var g=d.options;g.alwaysInit=!0,d.destroy(),d=new FooBox.Instance(d.id),d.init(this,a.extend(!0,g,f))}else d.reinit(f);else{if(d=a(this).data("fbx_p_instance"),d instanceof FooBox.Instance)return;d=new FooBox.Instance,d.init(this,f)}})},FooBox.Modal=function(c){this.FooBox=c,this.element=null,this.loaderTimeout=new FooBox.Timer,this._first=!1,this._busy=!1,this._closed=!1;var e=this;return this.init=function(a,b){e.setup.html(),e.setup.options(b),e.setup.bind()},this.reinit=function(a){e.setup.options(a)},this.destroy=function(){FooBox.isjQuery(e.element)&&e.element.remove()},this.setup={html:function(){if(!FooBox.isjQuery(e.element)){e.element=a('<div class="fbx-modal"></div>'),e.element.append('<div class="fbx-inner-spacer"></div>');var b=a('<div class="fbx-stage"></div>');b.append('<div class="fbx-item-current"></div>'),b.append('<div class="fbx-item-next"></div>');var c=a('<div class="fbx-inner fbx-inner-shadow"></div>');c.append(b),c.append('<a class="fbx-prev fbx-btn-transition fbx-btn-shadow"></a>'),c.append('<div class="fbx-credit"><a target="_blank" href=""><em></em><span> FooBox</span></a></div>'),c.append('<span class="fbx-count" />'),c.append('<a class="fbx-next fbx-btn-transition fbx-btn-shadow"></a>'),c.append('<a class="fbx-close fbx-btn-transition fbx-btn-shadow"></a>'),e.element.append('<div class="fbx-loader"><div></div></div>'),e.element.append(c),e.FooBox.raise("foobox.setupHtml"),a("body").append(e.element)}},options:function(a){var b;e.element.removeClass().addClass("fbx-modal").addClass("fbx-"+e.FooBox.id).addClass(e.FooBox.element.data("style")||a.style).addClass(e.FooBox.element.data("theme")||a.theme).addClass(e.FooBox.element.data("modal-class")).addClass(a.modalClass).data("fbx_instance",e.FooBox),e.element.addClass(FooBox.browser.css),b=a.affiliate.enabled?"":"none",e.element.find(".fbx-credit").css("display",b),a.affiliate.enabled&&(e.element.find(".fbx-credit > a").attr("href",a.affiliate.url),e.element.find(".fbx-credit > a > em").text(a.affiliate.prefix)),b=a.showCount&&e.FooBox.items.multiple()?"":"none",e.element.find(".fbx-count").css("display",b),a.showButtons&&e.FooBox.items.multiple()||e.element.addClass("fbx-no-buttons"),e.FooBox.raise("foobox.setupOptions")},bind:function(){1==e.FooBox.options.closeOnOverlayClick&&e.element.off("click.foobox").on("click.foobox",function(b){1==e.FooBox.options.closeOnOverlayClick&&a(b.target).is(".fbx-modal")&&e.close()}),e.element.find(".fbx-close").off("click.foobox").on("click.foobox",function(a){a.preventDefault(),a.stopPropagation(),e.close()}).end().find(".fbx-prev").off("click.foobox").on("click.foobox",function(b){b.preventDefault(),b.stopPropagation(),a(this).hasClass("fbx-disabled")||e.prev()}).end().find(".fbx-next").off("click.foobox").on("click.foobox",function(b){b.preventDefault(),b.stopPropagation(),a(this).hasClass("fbx-disabled")||e.next()})}},this.prioritize=function(){FooBox.instances.length>1&&e.element.nextAll(".fbx-modal:last").after(e.element)},this.preload=function(){if(1==e.FooBox.options.preload){var a=e.FooBox.items.prev();a&&a.handler.preload(a);var b=e.FooBox.items.next();b&&b.handler.preload(b)}},this.show=function(b){function c(a){if(e.loaderTimeout.stop(),e.element.removeClass("fbx-loading"),e._busy=!1,d.error(a),!e.FooBox.raise("foobox.onError",{error:a}).isDefaultPrevented()){var c=e.FooBox.items.error(f.index);null!=c&&e.show(b)}}var f=e.FooBox.items.current();if(f){if(b=b||!1,e._first=b,e._busy=!0,e._closed=!1,a("body").addClass("fbx-active"),e.FooBox.options.hideScrollbars&&a("html").addClass("fbx-no-scroll"),1==f.error?e.element.addClass("fbx-error"):e.element.removeClass("fbx-error"),!e.element.hasClass("fbx-show")){e.prioritize();var g=e.getMaxSize();e.element.addClass("fbx-loading").find(".fbx-inner").css({width:g.width,height:g.height,"margin-top":g.marginTop,"margin-left":g.marginLeft})}var h=e.element.find(".fbx-item-current"),i=e.element.find(".fbx-item-next");if(i.css({opacity:0,visibility:"hidden"}),e.element.find(".fbx-count").text(e.FooBox.options.countMessage.replace("%index",""+(e.FooBox.items.indexes.current+1)).replace("%total",""+e.FooBox.items.array.length)),e.FooBox.raise("foobox.beforeLoad",{item:f}).isDefaultPrevented())return void(e._busy=!1);if(f.handler.hasChanged(f)){var j=f.index,k=f.element.get(0);f=f.handler.parse(f.element);var l=e.FooBox.raise("foobox.parseItem",{element:f.element,item:f});k.index=l.fb.item.index=j,e.FooBox.items.array[j]=l.fb.item}e.preload(),e.loaderTimeout.start(function(){e.element.addClass("fbx-loading")},e.FooBox.options.loaderTimeout),setTimeout(function(){e.checkForLoop(f),f.handler.load(f,i,function(a){return 1==e._closed?void(e._busy=!1):void e.transitionOut(h,function(){return h.find("video").each(function(){this.pause(),this.removeAttribute("src"),this.load()}),1==e._closed?void(e._busy=!1):void e.resize(a,i,function(){return 1==e._closed?void(e._busy=!1):(e.loaderTimeout.stop(),i.css({opacity:"",visibility:""}),void e.transitionIn(i,function(){return 1==e._closed?void(e._busy=!1):(i.add(h).toggleClass("fbx-item-next fbx-item-current"),h.empty(),void(e.element.hasClass("fbx-show")?(e.element.removeClass("fbx-loading"),e.FooBox.raise("foobox.afterLoad",{item:f}),e.triggerFooGalleryLayout(i),e._busy=!1):e.FooBox.raise("foobox.beforeShow",{item:f}).isDefaultPrevented()||(e.element.removeClass("fbx-loading").addClass("fbx-show"),e.FooBox.raise("foobox.afterShow",{item:f}),e.FooBox.raise("foobox.afterLoad",{item:f}),e.triggerFooGalleryLayout(i),e._busy=!1)))},c))},c)},c)},c)},e.FooBox.options.loadDelay)}},this.triggerFooGalleryLayout=function(c){b.FooGallery&&c.find(".foogallery").each(function(){var b=a(this).data("__FooGallery__");b&&b.initialized&&b.layout()})},this.checkForLoop=function(a){1!=e.FooBox.options.loop&&(e.element.find(".fbx-prev, .fbx-next").removeClass("fbx-disabled"),e.FooBox.items.is.first(a)&&e.element.find(".fbx-prev").addClass("fbx-disabled"),e.FooBox.items.is.last(a)&&e.element.find(".fbx-next").addClass("fbx-disabled"))},this.getMaxSize=function(){var a=e.element.find(".fbx-inner"),b=e.element.find(".fbx-inner-spacer"),c=parseInt(b.css("padding-top"),0),d=parseInt(b.css("padding-bottom"),0),f=parseInt(b.css("padding-left"),0),g=parseInt(b.css("padding-right"),0),h=parseInt(a.css("border-top-width"),0),i=parseInt(a.css("border-bottom-width"),0),j=parseInt(a.css("border-left-width"),0),k=parseInt(a.css("border-right-width"),0),l=parseInt(a.css("padding-left"),0),m=c+d+2*l+h+i,n=f+g+2*l+j+k,o=new FooBox.Size(e.element.width()-n,e.element.height()-m);return o.marginTop=-(o.height/2+l+(i+h)/2+d/2-c/2),o.marginLeft=-(o.width/2+l+(k+j)/2+g/2-f/2),o},this.resize=function(b,c,d,f){try{if(0===b.width||0===b.height)return void(a.isFunction(f)&&f("Invalid size supplied. Width = "+b.width+", Height = "+b.height));var g=e.FooBox.items.current(),h=new FooBox.Size(b.width,b.height),i=e.element.find(".fbx-inner"),j=e.element.find(".fbx-inner-spacer"),k=parseInt(j.css("padding-top"),0),l=parseInt(j.css("padding-bottom"),0),m=parseInt(j.css("padding-left"),0),n=parseInt(j.css("padding-right"),0),o=parseInt(i.css("border-top-width"),0),p=parseInt(i.css("border-bottom-width"),0),q=parseInt(i.css("border-left-width"),0),r=parseInt(i.css("border-right-width"),0),s=parseInt(i.css("padding-left"),0),t=k+l+2*s+o+p,u=m+n+2*s+q+r,v=new FooBox.Size(parseInt(i.css("width"),0),parseInt(i.css("height"),0)),w=new FooBox.Size(e.element.width()-u,e.element.height()-t),x=w.width/b.width;b.height*x>w.height&&(x=w.height/b.height),e.FooBox.options.fitToScreen===!0||1==g.proportion&&(b.height>w.height||b.width>w.width)?(b.height=Math.floor(b.height*x),b.width=Math.floor(b.width*x)):0==g.proportion&&(b.height>w.height&&(b.height=w.height),b.width>w.width&&(b.width=w.width)),b.height<100&&(b.height=100),b.width<100&&(b.width=100);var y=-(b.height/2+s+(p+o)/2+l/2-k/2),z=-(b.width/2+s+(r+q)/2+n/2-m/2);if(v.equalTo(b))i.css({height:b.height,width:b.width,"margin-top":y,"margin-left":z}),e.overflow(g,h,b,c),e.FooBox.raise("foobox.afterResize",{item:g,size:b}),a.isFunction(d)&&d();else if(!e.FooBox.raise("foobox.beforeResize",{item:g,size:b,offset:{top:y,left:z},error:f,success:d}).isDefaultPrevented())if(y=-(b.height/2+s+(p+o)/2+l/2-k/2),z=-(b.width/2+s+(r+q)/2+n/2-m/2),e.element.hasClass("fbx-show"))if(FooBox.browser.supportsTransitions()){var A=e.FooBox.options.resizeSpeed/1e3,B="all "+A+"s ease-in-out";i.css({WebkitTransition:B,MozTransition:B,MsTransition:B,OTransition:B,transition:B}),i.css({height:b.height,width:b.width,"margin-top":y,"margin-left":z}),setTimeout(function(){i.css({WebkitTransition:"",MozTransition:"",MsTransition:"",OTransition:"",transition:""}),e.overflow(g,h,b,c),e.FooBox.raise("foobox.afterResize",{item:g,size:b}),a.isFunction(d)&&d(b)},e.FooBox.options.resizeSpeed)}else i.animate({height:b.height,width:b.width,"margin-top":y,"margin-left":z},e.FooBox.options.resizeSpeed,function(){e.overflow(g,h,b,c),e.FooBox.raise("foobox.afterResize",{item:g,size:b}),a.isFunction(d)&&d(b)});else i.css({height:b.height,width:b.width,"margin-top":y,"margin-left":z}),e.overflow(g,h,b,c),e.FooBox.raise("foobox.afterResize",{item:g,size:b}),a.isFunction(d)&&d()}catch(C){a.isFunction(f)&&f(C)}},this.overflow=function(a,b,c,d){var f=d.find(".fbx-item");a.overflow&&(c.width<.8*b.width||c.height<.8*b.height)||a.overflow&&!a.proportion&&(c.width<b.width||c.height<b.height)||a.overflow&&"html"===a.type?("html"===a.type?(f.css({width:"100%",height:"auto",overflow:""}),d.css("overflow","auto")):(f.css({width:b.width,height:b.height,overflow:""}),d.css({"overflow-x":b.width<=c.width?"hidden":"","overflow-y":b.height<=c.height?"hidden":""})),e.FooBox.raise("foobox.showOverflow",{item:a,container:d})):(f.css({width:"",height:"",overflow:f.is("iframe")?"":"hidden"}),d.css({"overflow-x":"","overflow-y":"",overflow:"hidden"}),e.FooBox.raise("foobox.hideOverflow",{item:a,container:d}))},this.transitionOut=function(b,c,d){try{if(!e.element.hasClass("fbx-show"))return void(a.isFunction(c)&&c());b.animate({opacity:0},b.is(":visible")?e.FooBox.options.transitionOutSpeed:0,function(){a.isFunction(c)&&c()})}catch(f){a.isFunction(d)&&d(f)}},this.transitionIn=function(b,c,d){try{if(!e.element.hasClass("fbx-show"))return b.css({opacity:1}),void(a.isFunction(c)&&c());b.animate({opacity:1},e.FooBox.options.transitionInSpeed,function(){a.isFunction(c)&&c()})}catch(f){a.isFunction(d)&&d(f)}},this.close=function(){e.FooBox.raise("foobox.beforeClose").isDefaultPrevented()||(e._closed=!0,e._busy=!1,e.element.removeClass("fbx-loading fbx-show"),a("body").removeClass("fbx-active"),e.FooBox.raise("foobox.close"),e.element.find(".fbx-item-current video, .fbx-item-next video").each(function(){this.pause(),this.removeAttribute("src"),this.load()}),e.element.find(".fbx-item-current, .fbx-item-next").empty(),a("html").removeClass("fbx-no-scroll"),e.FooBox.raise("foobox.afterClose"))},this.prev=function(a){if(1!=e._busy){if(e.FooBox.items.indexes.set(e.FooBox.items.indexes.prev),"string"==typeof a)for(var b=e.FooBox.items.current();b.type!=a;)e.FooBox.items.indexes.set(e.FooBox.items.indexes.prev),b=e.FooBox.items.current();e.show(!1),e.FooBox.raise("foobox.previous")}},this.next=function(a){if(1!=e._busy){if(e.FooBox.items.indexes.set(e.FooBox.items.indexes.next),"string"==typeof a)for(var b=e.FooBox.items.current();b.type!=a;)e.FooBox.items.indexes.set(e.FooBox.items.indexes.next),b=e.FooBox.items.current();e.show(!1),e.FooBox.raise("foobox.next")}},this},FooBox.Instance=function(b){this.id=null,"number"==typeof b?(this.id=b,FooBox.instances[b-1]=this):this.id=FooBox.instances.push(this),this.element=null,this.options=a.extend(!0,{},FooBox.defaults),this.modal=new FooBox.Modal(this),this.objects={},FooBox.addons.load(this),FooBox.handlers.load(this);var c=this;return this.raise=function(a,b){return FooBox.raise(c,a,b)},this.init=function(b,d){c.element=FooBox.isjQuery(b)?b:a(b),c.options=FooBox.options.merge(c.options,d||{}),FooBox.addons.call(c,"preinit",c.element,c.options),c.items.init(),c.items.array.length>0?(c.element.data("fbx_instance",c),c.options.containerCssClass&&c.element.addClass(c.options.containerCssClass),c.setup.bind(),c.modal.init(b,c.options),FooBox.handlers.call(c,"init",c.element,c.options),c.raise("foobox.initialized"),a.isFunction(c.options.initCallback)&&c.options.initCallback.call(c)):c.destroy()},this.reinit=function(a){c.options=FooBox.options.merge(c.options,a||{}),c.items.init(!0),c.items.array.length>0?(c.setup.bind(),c.modal.reinit(c.options),FooBox.handlers.call(c,"reinit",c.options),c.raise("foobox.reinitialized")):c.destroy()},this.destroy=function(){FooBox.addons.call(c,"destroy"),FooBox.handlers.call(c,"destroy"),c.items.destroy(),c.modal.destroy(),c.element.removeClass("fbx-instance fbx-item").data({fbx_instance:null,fbx_p_instance:null}),c.id==FooBox.instances.length?FooBox.instances.splice(c.id-1,1):FooBox.instances[c.id-1]=null,c.raise("foobox.destroy")},this.setup={bind:function(){a(c.options.externalSelector).off("click.fooboxExternal").on("click.fooboxExternal",function(b){b.preventDefault();var c=a(this).data("foobox"),d=a(c),e=d.data("fbx_instance")||d.data("fbx_p_instance");return d.length>0&&e instanceof FooBox.Instance&&e.modal instanceof FooBox.Modal&&e.modal.show(!0),!1})}},this.items={array:[],indexes:{prev:-1,current:0,next:1,direction:"*",set:function(a){var b=c.items.indexes.current;a=a||0,a=a>c.items.array.length-1?0:0>a?c.items.array.length-1:a;var d=a-1,e=a+1;c.items.indexes.current=a,c.items.indexes.prev=0>d?c.items.array.length-1:d,c.items.indexes.next=e>c.items.array.length-1?0:e,c.items.indexes.direction=c.items.indexes._direction(b,a,c.items.array.length-1)},_direction:function(a,b,c){return 0==b&&a==c?">":b==c&&0==a?"<":b>a?">":a>b?"<":"*"}},new_array:function(b){b=b||!1;var d,e,f,g=0;if(1==b){if(c.items.array.length>0){for(var h=0;h<c.items.array.length;h++)d=c.items.array[h],FooBox.isjQuery(d.element)?0==d.element.parents(":first").length&&(c.items.array.splice(h,1),h-=1):d.option||(c.items.array.splice(h,1),h-=1);for(var i=0;i<c.items.array.length;i++)d=c.items.array[i],FooBox.isjQuery(d.element)?(f=d.element.get(0),f.index=d.index=i):d.index=i}}else c.items.array=[];if(a.isArray(c.options.items))for(var j=0;j<c.options.items.length;j++)if(d=c.options.items[j],-1==c.items.indexOf(d))for(var k=0;k<c.objects.handlers.length;k++)if(c.objects.handlers[k].type==d.type){d.index=g,d.option=!0,d.handler=c.objects.handlers[k],d.handler.defaults(d),e=c.raise("foobox.parseItem",{element:null,item:d}),c.items.array.push(e.fb.item),g++;break}},init:function(b){b=b||!1,c.items.new_array(b);var d,e;if(c.element.is(c.options.selector)&&!c.element.is(c.options.excludes)&&c.items.add(c.element))c.element.off("click.item").on("click.item",c.items.clicked);else if(c.element.is(".foogallery")&&(d=c.element.data("__FooGallery__"))&&d.items&&(e=d.items.all()).length>0){d.filter&&a.isArray(d.filter.items)&&(e=d.filter.items.slice(0));var f=a.map(e,function(a){return a.$anchor?a.$anchor.get(0):null});a(f).not(c.options.excludes).off("click.item").filter(function(){return c.items.add(this)}).on("click.item",c.items.clicked),c.element.on("click.item",".fbx-link",c.items.clicked)}else c.element.find(c.options.selector).not(c.options.excludes).off("click.item").filter(function(){return c.items.add(this)}).on("click.item",c.items.clicked),c.element.on("click.item",".fbx-link",c.items.clicked);c.items.rel()},destroy:function(){c.element.off("click.item",".fbx-link",c.items.clicked);var b,d;for(d=0;d<c.items.array.length;d++)b=c.items.array[d],a.isFunction(b.destroy)&&b.destroy(),FooBox.isjQuery(b.element)&&b.element.off("click.item").removeClass("fbx-link").data("fbx_p_instance",null);c.items.array=[]},rel:function(){var b=c.options.rel||c.element.attr("rel")||(c.items.first(function(a){return FooBox.isjQuery(a.element)?"string"==typeof a.element.attr("rel"):!1})||{element:a()}).element.attr("rel");"string"==typeof b&&a('[rel="'+b+'"]').not(c.options.excludes).not(c.element).off("click.item").filter(function(){return c.items.add(this)}).on("click.item",c.items.clicked)},indexOf:function(a,b){if(!a)return-1;b=b||"url";var d;for(d=0;d<c.items.array.length;d++)if(c.items.array[d][b]==a[b])return d;return-1},is:{first:function(a){return c.items.array&&0!=c.items.array.length?c.items.array[0].index==a.index:!1},last:function(a){return c.items.array&&0!=c.items.array.length?c.items.array[c.items.array.length-1].index==a.index:!1}},add:function(b){b=FooBox.isjQuery(b)?b:a(b);var d=c.items.parse(b,c.items.array.length);if(null===d)return!1;var e=b.get(0),f=c.items.indexOf(d);-1!=f?(d=c.items.array[f],e.index=d.index):e.index=d.index=c.items.array.push(d)-1;var g=b.addClass("fbx-link").data("fbx_p_instance");return g instanceof FooBox.Instance||b.data("fbx_p_instance",c),!0},get:function(b){b=FooBox.isjQuery(b)?b:a(b);var d=null,e=b.get(0).index;return e&&e>0&&e<=c.items.array.length-1&&(d=c.items.array[e]),d},parse:function(b,d){b=FooBox.isjQuery(b)?b:a(b);for(var e,f,g=0;g<c.objects.handlers.length;g++)if(c.objects.handlers[g].handles(b,c.element)){e=c.objects.handlers[g].parse(b),isNaN(d)||(e.index=d),f=c.raise("foobox.parseItem",{element:b,item:e});break}return"undefined"!=typeof f&&f.fb.item?f.fb.item:null},error:function(b){function d(b){var c=this;return c.FooBox=b,c.type="error",c.handles=function(){return!1},c.hasChanged=function(){return!1},c.defaults=function(){},c.parse=function(){},c.load=function(b,d,e,f){try{d.empty().append(b.content),a.isFunction(e)&&e(c.getSize(b))}catch(g){a.isFunction(f)&&f(g)}},c.getSize=function(a){return new FooBox.Size(a.width,a.height)},c}if(c.items.array.length>b&&1==c.items.array[b].error)return c.items.array[b];var e,f,g=FooBox.handlers.get(c,"html"),h=!1;if(null==g&&(g=new d(c)),null!==c.options.error.match(/^#/i)&&a(c.options.error).length>0)e=a(c.options.error),h=!0;else{var i='<div class="fbx-error-msg" data-width="240" data-height="240"><span></span><p>'+c.options.error+"</p></div>";e=a(i)}return f=new FooBox.Item(g.type,e.get(0),g),f.selector=1==h?c.options.error:null,f.index=b,f.error=!0,f.title=e.data("title")||null,f.description=e.data("description")||null,f.width=e.data("width")||240||null,f.height=e.data("height")||240||null,f.content=1==h?null:e,f.fullscreen=!0,f.handler=g,c.items.array[b]=f,f},first:function(a){for(var b=null,d=0;d<c.items.array.length;d++)if(a(c.items.array[d])){b=c.items.array[d];break}return b},current:function(){return c.items.array[c.items.indexes.current]},prev:function(){return c.items.array[c.items.indexes.prev]},next:function(){return c.items.array[c.items.indexes.next]},multiple:function(){return c.items.array.length>1},clicked:function(a){return a.preventDefault(),c.items.indexes.set(this.index),c.modal.show(!0),!1}},this},FooBox.open=function(b){var c,d=null;if("object"==typeof b){var e=document.createElement("a");a(e).foobox(b),d=a(e).data("fbx_instance")}else"number"==typeof b?c=b:(c=parseInt(b||0),c=isNaN(c)?0:c),c=c>FooBox.instances.length-1?FooBox.instances.length-1:0>c?0:c,d=FooBox.instances[c];return null!=d&&d.modal instanceof FooBox.Modal?(d.modal.show(!0),d):null},FooBox.close=function(){var a,b=[],c=null;for(a=0;a<FooBox.instances.length;a++)c=FooBox.instances[a],null!=c&&c.modal instanceof FooBox.Modal&&FooBox.isjQuery(c.modal.element)&&c.modal.element.hasClass("fbx-show")&&b.push(c);for(a=0;a<b.length;a++)c=b[a],c.modal.close()},FooBox.resize=function(c,d){if(c||d){var e,f,g,h;for(e=0;e<FooBox.instances.length;e++)f=FooBox.instances[e],null!=f&&f.modal instanceof FooBox.Modal&&FooBox.isjQuery(f.modal.element)&&f.modal.element.hasClass("fbx-show")&&(g=f.items.current(),h=new FooBox.Size(c||g.width||0,d||g.height||0),g.width=h.width,g.height=h.height,f.modal.resize(h,f.modal.element.find(".fbx-item-current")))}else a(b).trigger("resize.foobox")},FooBox.lateBind=function(c,d){var e=a.extend(!0,{},FooBox.defaults,d||b.FOOBOX&&FOOBOX.o||{}),f=a(c);f.on("click.foobox",e.selector,function(a){a.preventDefault();var b=f.data("fbx_instance");b||(b=f.foobox(e).data("fbx_instance")),b instanceof FooBox.Instance&&"number"==typeof this.index&&(b.items.indexes.set(this.index),b.modal.show(!0))})}}}(jQuery,window,window.console),function(a,b){var c={images:{noRightClick:!1,attr:"href",overflow:!1,fullscreen:!0,showCaptions:!0,regex:/https?:\/\/.*?\/.*?\.(jpg|jpeg|png|gif|bmp|webp|svg)/i,maxWidth:-1,maxHeight:-1,findUrl:function(a,c){if(!c)return"";if(c.data("image"))return c.data("image");var d=c.attr(a.options.images.attr);return"string"==typeof d?b.qualifiedURL(c.attr(a.options.images.attr)):""}}};b.Item.prototype.image=null,b.Item.prototype.maxWidth=null,b.Item.prototype.maxHeight=null,b.ImageHandler=function(c){this.FooBox=c,this.type="image";var d=this;this.handles=function(a){var b=d.FooBox.options.images.findUrl(d.FooBox,a),c="string"==typeof b&&null!=b.match(d.FooBox.options.images.regex),e=d.FooBox.raise("foobox.handlesImage",{element:a,handle:c});return e.fb.handle},this.defaults=function(a){a.fullscreen=a.fullscreen||d.FooBox.options.images.fullscreen,a.captions=a.captions||d.FooBox.options.images.showCaptions,a.social=a.social||!0,a.overflow=a.overflow||d.FooBox.options.images.overflow,a.proportion=a.proportion||!0,a.maxWidth=a.maxWidth||d.FooBox.options.images.maxWidth,a.maxHeight=a.maxHeight||d.FooBox.options.images.maxHeight},this.parse=function(a){var c=new b.Item(d.type,a,this);return d.defaults(c),c.url=d.FooBox.options.images.findUrl(d.FooBox,a)||null,
|
10 |
-
c.width=b.Size.check(a.data("width")||c.width||null),c.height=b.Size.check(a.data("height")||c.height||null),c.fullscreen="boolean"==typeof a.data("fullscreen")?a.data("fullscreen"):c.fullscreen,c.overflow="boolean"==typeof a.data("overflow")?a.data("overflow"):c.overflow,c.proportion="boolean"==typeof a.data("proportion")?a.data("proportion"):c.proportion,c.maxWidth="number"==typeof a.data("maxWidth")?a.data("maxWidth"):c.maxWidth,c.maxHeight="number"==typeof a.data("maxHeight")?a.data("maxHeight"):c.maxHeight,c.image=null,c.image_url=c.url,c},this.load=function(b,c,e,f){try{var g=function(){var f=a(b.image).addClass("fbx-item fbx-item-image");d.FooBox.options.images.noRightClick&&f.on("contextmenu",function(a){return a.preventDefault(),!1}),c.empty().append(f),a.isFunction(e)&&e(d.getSize(b))};b.image&&null!==b.image?g():(b.image=new Image,b.image.onload=function(){b.image.onload=b.image.onerror=null,b.width&&b.height||(b.height=b.image.height,b.width=b.image.width),g()},b.image.onerror=function(){b.image.onload=b.image.onerror=null,b.image=null,a.isFunction(f)&&f("An error occurred attempting to load the image.")},b.image.src=b.url)}catch(h){a.isFunction(f)&&f(h)}},this.preload=function(a){if(1!=a.preloaded){var b=new Image;b.src=a.url,a.preloaded=!0}},this.getSize=function(a){if(null!=a.width&&null!=a.height){if(a.maxWidth>0&&a.maxHeight>0&&(a.width>a.maxWidth||a.height>a.maxHeight)){var c=a.width>a.height?a.maxWidth/a.width:a.maxHeight/a.height;a.width*=c,a.height*=c}return new b.Size(a.width,a.height)}return new b.Size(0,0)},this.hasChanged=function(a){if(b.isjQuery(a.element)){var c=d.FooBox.options.images.findUrl(d.FooBox,a.element);return a.url!=c}return!1}},b.handlers.register(b.ImageHandler,c)}(jQuery,window.FooBox),function(a,b){var c={keyboard:{enabled:!0,preventDefault:!1,stopPropagation:!1}};b.Keyboard=function(a){this.FooBox=a;var c=this;this.preinit=function(a){c.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":c.handlers.initialized,"foobox.setupHtml":c.handlers.setupHtml})},this.destroy=function(){c.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&c.FooBox.element.off({"foobox.initialized foobox.reinitialized":c.handlers.initialized,"foobox.setupHtml":c.handlers.setupHtml}),c.FooBox.element.off("foobox.afterLoad",c.handlers.afterLoad),b.isjQuery(c.FooBox.modal.element)&&c.FooBox.modal.element.off("keydown.foobox",c.handlers.onKeydown)},initialized:function(){c.handlers.unbind(),1==c.FooBox.options.keyboard.enabled&&(c.FooBox.element.on("foobox.afterLoad",c.handlers.afterLoad),b.isjQuery(c.FooBox.modal.element)&&c.FooBox.modal.element.on("keydown.foobox",c.handlers.onKeydown))},setupHtml:function(a){a.fb.modal.attr("tabindex",0)},afterLoad:function(a){a.fb.modal.focus()},onKeydown:function(a){var b=c.FooBox.modal,d=c.FooBox.options.keyboard;b.element.hasClass("fbx-show")&&(b.element.hasClass("fbx-fullscreen-mode")||27!==a.which?c.FooBox.items.multiple()&&37===a.which?b.prev():c.FooBox.items.multiple()&&39===a.which&&b.next():b.close(),1==d.preventDefault&&a.preventDefault(),1==d.stopPropagation&&a.stopPropagation(),c.FooBox.raise("foobox.keydown",{keyCode:a.which}))}}},b.addons.register(b.Keyboard,c)}(jQuery,window.FooBox),function(a,b){var c={hideNavOnMobile:!1,resizeTimeout:300,breakpoints:{phone:812,tablet:1366},iosInterval:200};b.BPInfo=function(b){var c=a(window);this.width=c.width(),this.height=c.height(),this.orientation=this.width>this.height?"fbx-landscape":"fbx-portrait";var d,e=null;if(a.isArray(b))for(var f=0;f<b.length;f++)if(d=b[f],d&&d.width&&this.width<=d.width){e=d;break}this.breakpoint=null==e?"fbx-desktop":e.name},b.Responsive=function(c){this.FooBox=c,this.breakpoint={values:[],names:""},this.timers={resize:new b.Timer,ios:new b.Timer};var d=this,e=null;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.initialized foobox.reinitialized",d.handlers.initialized)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(b){b=b||!1,b&&d.FooBox.element.off("foobox.initialized foobox.reinitialized",d.handlers.initialized),a(window).off("resize.foobox",d.handlers.resize),d.FooBox.element.off({"foobox.beforeShow":d.handlers.iosBeforeShow,"foobox.close":d.handlers.iosClose})},initialized:function(){d.handlers.unbind(),d.setup.breakpoints(),d.style(),a(window).on("resize.foobox",d.handlers.resize),b.browser.iOS12OrBelow&&(b.browser.isSafari||b.browser.isChrome)&&d.FooBox.element.on({"foobox.beforeShow":d.handlers.iosBeforeShow,"foobox.close":d.handlers.iosClose})},resize:function(){d.timers.resize.start(function(){d.style();var a=d.FooBox,b=d.FooBox.items.current();if(a.modal.element.has("fbx-show")&&null!=b){var c=b.handler.getSize(b),e=a.modal.element.find(".fbx-item-current");a.modal.resize(c,e,function(){a.modal.triggerFooGalleryLayout(e);var c=b.handler.getSize(b),d=e.height();d!=c.height&&a.modal.resize(c,e,function(){a.modal.triggerFooGalleryLayout(e)})})}},d.FooBox.options.resizeTimeout)},iosBeforeShow:function(){d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval)},iosClose:function(){d.timers.ios.stop()},ios:function(){if(!d.FooBox.modal.element.hasClass("fbx-show"))return void d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval);var a=window.orientation||0,c=window.innerHeight,f=90===a||-90===a,g=0,h=0,i=f?screen.availWidth:screen.availHeight;b.browser.isChrome?(g=i-(f?76:56),h=i-(f?0:20)):b.browser.isSafari&&(g=i-88,h=i-(f?0:19)),(null==e||e===!1)&&g>=c?(e=!0,d.iosRedraw()):(null==e||e===!0)&&c>=h&&(e=!1,d.iosRedraw()),d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval)}},this.setup={breakpoints:function(){d.breakpoint.values=[],d.breakpoint.names="";for(var a in d.FooBox.options.breakpoints)d.FooBox.options.breakpoints.hasOwnProperty(a)&&(d.breakpoint.values.push({name:d.fixName(a),width:d.FooBox.options.breakpoints[a]}),d.breakpoint.names+=d.fixName(a)+" ");d.breakpoint.values.sort(function(a,b){return a.width-b.width})}},this.iosRedraw=function(){window.scrollTo(0,document.body.scrollTop),a(window).trigger("resize")},this.fixName=function(a){return/^fbx-[a-zA-Z0-9]/.test(a)?a:"fbx-"+a},this.style=function(){var a=new b.BPInfo(d.breakpoint.values),c=d.FooBox.modal.element;c.removeClass(d.breakpoint.names).removeClass("fbx-desktop fbx-landscape fbx-portrait").addClass(a.breakpoint).addClass(a.orientation),d.FooBox.options.hideNavOnMobile===!0?c.addClass("fbx-no-nav"):c.removeClass("fbx-no-nav")}},b.Responsive.metaCheck=function(){var b=a("meta[name=viewport]"),c=b.attr("content");if(b.length>0&&"string"==typeof c){for(var d=c.split(","),e=!1,f=!1,g=0;g<d.length;g++){var h=a.trim(d[g]);"width"==h.substring(0,5)&&-1!==h.indexOf("device-width")?e=!0:"initial-scale"==h.substring(0,13)&&(f=!0)}e&&!f&&(d.push("initial-scale=1"),c=d.join(","),b.attr("content",c))}},b.addons.register(b.Responsive,c),b.Responsive.metaCheck()}(jQuery,window.FooBox),function(a,b){var c={captions:{animation:"slide",enabled:!0,descSource:"find",hoverDelay:300,maxHeight:.4,onlyShowOnHover:!1,onlyShowOnClick:!1,overrideDesc:!1,overrideTitle:!1,prettify:!1,titleSource:"image_find"}};b.Item.prototype.captions=!1,b.Item.prototype.title=null,b.Item.prototype.description=null,b.Item.prototype.caption=null,b.Captions=function(c){this.FooBox=c,this.timers={hover:new b.Timer};var d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":d.handlers.initialized,"foobox.setupHtml":d.handlers.setupHtml,"foobox.setupOptions":d.handlers.setupOptions,"foobox.parseItem":d.handlers.parseItem,"foobox.onError":d.handlers.onError,"foobox.beforeClose":d.handlers.beforeClose})},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off({"foobox.initialized foobox.reinitialized":d.handlers.initialized,"foobox.setupHtml":d.handlers.setupHtml,"foobox.setupOptions":d.handlers.setupOptions,"foobox.parseItem":d.handlers.parseItem,"foobox.onError":d.handlers.onError,"foobox.beforeClose":d.handlers.beforeClose}),d.FooBox.element.off({"foobox.beforeLoad":d.handlers.beforeLoad,"foobox.afterLoad":d.handlers.afterLoad}),d.FooBox.modal instanceof b.Modal&&b.isjQuery(d.FooBox.modal.element)&&d.FooBox.modal.element.off("mouseenter.captions mouseleave.captions").find(".fbx-item-current, .fbx-item-next").off("click.captions")},initialized:function(a){d.handlers.unbind(),a.fb.options.captions.enabled===!0&&(a.fb.instance.element.on({"foobox.beforeLoad":d.handlers.beforeLoad,"foobox.afterLoad":d.handlers.afterLoad,"foobox.beforeClose":d.handlers.beforeClose}),-1===a.fb.options.modalClass.indexOf("fbx-caption-toggle-only")&&a.fb.modal.find(".fbx-item-current, .fbx-item-next").on("click.captions",d.handlers.toggleCaptions),a.fb.options.captions.onlyShowOnHover===!0&&a.fb.modal.on("mouseenter.captions",".fbx-inner:not(:has(.fbx-item-error))",d.handlers.mouseenter).on("mouseleave.captions",".fbx-inner:not(:has(.fbx-item-error))",d.handlers.mouseleave))},toggleCaptions:function(b){if(a(b.target).is("img")||a(b.target).is(".fbx-close-caption")||a(b.target).is(".fbx-open-caption")){var c=d.FooBox.items.current(),e=d.FooBox.modal.element;c.captions&&!e.hasClass("fbx-error")&&(b.preventDefault(),e.find(".fbx-caption").is(".fbx-fade-caption, .fbx-slide-caption, .fbx-hide-caption")?(e.removeClass("fbx-captions-hidden"),d.show()):(e.addClass("fbx-captions-hidden"),d.hide()))}},mouseenter:function(){d.timers.hover.start(function(){d.show()},d.FooBox.options.captions.hoverDelay)},mouseleave:function(){d.timers.hover.start(function(){d.hide()},d.FooBox.options.captions.hoverDelay)},setupHtml:function(b){var c=a("<div/>",{"class":"fbx-caption"}),e=a("<a/>",{"class":"fbx-open-caption",html:"…"}).on("click.captions",d.handlers.toggleCaptions);"string"==typeof b.fb.options.modalClass&&-1!=b.fb.options.modalClass.indexOf("fbx-sticky-caption")?b.fb.modal.append(c,e):(b.fb.modal.find(".fbx-stage").append(c),b.fb.modal.find(".fbx-inner").append(e))},setupOptions:function(a){a.fb.modal.find(".fbx-caption").addClass(d.animation())},beforeClose:function(a){1!=a.fb.options.captions.onlyShowOnHover&&a.fb.modal.find(".fbx-caption").addClass("fbx-hide-caption")},beforeLoad:function(a){1!=a.fb.options.captions.onlyShowOnHover&&a.fb.modal.find(".fbx-caption").addClass(d.animation())},afterLoad:function(a){var b=a.fb.item;return!b||b.error||b.captionLoaded||(a.fb.instance.raise("foobox.alterCaption",{element:a.fb.element,item:b}),b.captionLoaded=!0),1==a.fb.options.captions.onlyShowOnHover?void d.update():void(0==a.fb.options.captions.onlyShowOnClick&&d.show())},onError:function(a){a.fb.modal.find(".fbx-caption").addClass(d.animation())},parseItem:function(b){var c=b.fb.options.captions;if(b.fb.item.captions&&0!=c.enabled){var e,f,g="";if(null!=b.fb.element){var h=a(b.fb.element).data("titleSource")||a(b.fb.instance.element).data("titleSource")||c.titleSource,i=a(b.fb.element).data("descSource")||a(b.fb.instance.element).data("descSource")||c.descSource;"none"!=h&&(e=b.fb.element.data("captionTitle")||b.fb.element.data("title")||d.text(b.fb.element,h)),"none"!=i&&(f=b.fb.element.data("captionDesc")||b.fb.element.data("description")||d.text(b.fb.element,i))}else e=b.fb.item.title,f=b.fb.item.description;e=null==e||"undefined"==typeof e?"":e+"",f=null==f||"undefined"==typeof f?"":f+"",e&&e===f&&(f=null),g="string"==typeof e&&e.length>0?'<div class="fbx-caption-title">'+e+"</div>":g,g="string"==typeof f&&f.length>0?g+'<div class="fbx-caption-desc">'+f+"</div>":g,b.fb.item.title=e,b.fb.item.description=f,b.fb.item.caption=g,b.fb.instance.raise("foobox.createCaption",{element:b.fb.element,item:b.fb.item})}}},this.text=function(b,c){var e;switch(c){case"find":e=a.trim(b.data("enviraCaption")||b.data("title")||b.attr("title")||b.find("img:first").data("title")||b.find("img:first").data("alt")||b.find("img:first").attr("title")||b.find("img:first").attr("alt"));break;case"image_find":e=a.trim(b.find("img:first").data("title")||b.find("img:first").data("alt")||b.find("img:first").attr("title")||b.find("img:first").attr("alt"));break;case"image":e=a.trim(b.find("img:first").data("title")||b.find("img:first").attr("title"));break;case"image_alt":e=a.trim(b.find("img:first").data("alt")||b.find("img:first").attr("alt"));break;case"anchor":e=a.trim(b.data("enviraCaption")||b.data("title")||b.attr("title"));break;default:e=null}return d.FooBox.options.captions.prettify&&(e=d.prettifier(e)),e},this.animation=function(){switch(d.FooBox.options.captions.animation){case"fade":return"fbx-fade-caption";case"slide":return"fbx-slide-caption";default:return"fbx-hide-caption"}},this.hide=function(){var a=d.FooBox.items.current(),b=d.FooBox.modal.element.find(".fbx-caption");return d.FooBox.options.captions.enabled&&a.captions&&"string"==typeof a.caption&&0!=a.caption.length?(b.addClass(d.animation()),void d.FooBox.raise("foobox.captionsHide",{item:a})):void b.addClass("fbx-hide-caption")},this.show=function(){var a=d.FooBox,c=a.items.current(),e=a.modal.element.find(".fbx-caption");return!a.options.captions.enabled||!c.captions||"string"!=typeof c.caption||0==c.caption.length||a.modal.element.hasClass("fbx-captions-hidden")||b.isjQuery(c.element)&&c.element.hasClass("no-captions")?void e.addClass("fbx-hide-caption"):(d.update(),e.removeClass("fbx-fade-caption fbx-slide-caption fbx-hide-caption"),void d.FooBox.raise("foobox.captionsShow",{item:c}))},this.update=function(){var c=d.FooBox.items.current(),e=d.FooBox.modal.element.find(".fbx-caption");e.html(c.caption).find('a[href^="#"]').filter(function(){var c=a(this).attr("href"),d=a(c),e=d.data("fbx_instance")||d.data("fbx_p_instance");return d.length>0&&e instanceof b.Instance?(a(this).data("hrefTarget",d.get(0)),!0):!1}).off("click.captions").on("click.captions",function(c){c.preventDefault();var e=a(this).data("hrefTarget"),f=a(e).data("fbx_instance")||a(e).data("fbx_p_instance");return f instanceof b.Instance&&(d.FooBox.modal.close(),f.items.indexes.set(e.index),f.modal.show()),!1}),a("<a/>",{"class":"fbx-close-caption",html:"×"}).on("click.captions",d.handlers.toggleCaptions).prependTo(e)},this.prettifier=function(a){return"string"!=typeof a?null:(a=a.replace(/\s*-\d+/g,"").replace(/\s*_\d+/g,"").replace(/-/g," ").replace(/_/g," "),a=a.replace(/\w\S*/g,function(a){return-1!=a.indexOf("#")?a:a.charAt(0).toUpperCase()+a.substr(1).toLowerCase()}))}},b.addons.register(b.Captions,c)}(jQuery,window.FooBox),function(a,b){var c={wordpress:{enabled:!1}};b.Wordpress=function(c){this.FooBox=c;var d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.createCaption",d.handlers.onCreateCaption)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off("foobox.createCaption",d.handlers.onCreateCaption)},onCreateCaption:function(c){var d=c.fb.options,e=c.fb.instance.element,f=c.fb.item.element,g="",h=c.fb.item.title,i=c.fb.item.description;if(1==d.wordpress.enabled&&b.isjQuery(f)){var j=f.data("captionTitle")||f.data("title"),k=f.data("captionDesc")||f.data("description");if(e.hasClass("gallery"))d.captions.overrideTitle===!1&&(h=j||f.parents(".gallery-item:first").find(".wp-caption-text:first").html()||f.parents(".gallery-item:first").find(".gallery-caption:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.find("img").attr("alt")||i||"");else if(e.hasClass("wp-caption")||f.hasClass("wp-caption"))d.captions.overrideTitle===!1&&(h=j||f.find("img").attr("title")||f.parents(".wp-caption:first").find(".wp-caption-text:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.find("img").attr("alt")||i||"");else if(f.parents(".wp-caption:first").length>0)d.captions.overrideTitle===!1&&(h=j||f.parents(".wp-caption:first").find("img").attr("title")||f.parents(".wp-caption:first").find(".wp-caption-text:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.parents(".wp-caption:first").find("img").attr("alt")||i||"");else if(e.hasClass("tiled-gallery"))d.captions.overrideTitle===!1&&(h=j||f.parents(".tiled-gallery-item:first").find(".tiled-gallery-caption").html()||f.find("img").data("image-title")||f.find("img").attr("title")||h||""),d.captions.overrideDesc===!1&&(i=k||a.trim(f.find("img").data("image-description")).replace(/(^<p>)|(<\/p>$)/gi,"")||i||"");else{if(!e.hasClass("wp-block-gallery")&&!e.hasClass("wp-block-image"))return;d.captions.overrideTitle===!1&&(h=j||f.parents("figure:first").find("figcaption").html()||h||""),d.captions.overrideDesc===!1&&(i=k||i||"")}h+="",i+="",h=h||"",i=i||"";var l=a("<div/>"),m=l.html(h).text(),n=l.html(i).text();(a.trim(h)===a.trim(i)||m===n)&&(i=null),g="string"==typeof h&&h.length>0?'<div class="fbx-caption-title">'+h+"</div>":g,g="string"==typeof i&&i.length>0?g+'<div class="fbx-caption-desc">'+i+"</div>":g,c.fb.item.title=h,c.fb.item.description=i,c.fb.item.caption=g}}}},b.addons.register(b.Wordpress,c)}(jQuery,window.FooBox),function(a,b){var c={pan:{enabled:!0,showOverview:!0,position:"fbx-top-right"}};b.Pan=function(c){this.FooBox=c;var d,e,f,g,h=this,i=!1,j=!1,k=null,l=null,m=null,n=null,o=null,p=0;this.preinit=function(a){h.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":h.handlers.initialized})},this.destroy=function(){h.handlers.unbind(!0)},this.setOverview=function(){var a=parseInt(n.css("max-width")),b=parseInt(n.css("max-height")),c=a/k.width,d=b/k.height;p=c>d?d:c;var e=k.width*p,f=k.height*p;n.width(e).height(f).css("background-image","url("+k.url+")")},this.setViewport=function(){var a=m.width(),b=m.height(),c=a*p,d=b*p;o.width(c).height(d)},this.disableCaptionImageClick=function(){var a=h.FooBox.modal.element,c=b.objects.get("addons",h.FooBox,function(a){return a instanceof b.Captions});c&&a.find(".fbx-item-current, .fbx-item-next").off("click.captions",c.handlers.toggleCaptions)},this.enableCaptionImageClick=function(){var a=h.FooBox.modal.element,c=b.objects.get("addons",h.FooBox,function(a){return a instanceof b.Captions});c&&a.find(".fbx-item-current, .fbx-item-next").on("click.captions",c.handlers.toggleCaptions)},this.handlers={unbind:function(a){a=a||!1,a&&h.FooBox.element.off({"foobox.initialized foobox.reinitialized":h.handlers.initialized}),h.FooBox.element.off({"foobox.afterLoad":h.handlers.onAfterLoad,"foobox.showOverflow":h.handlers.onShowOverflow,"foobox.hideOverflow foobox.beforeLoad":h.handlers.onHideOverflow}),h.FooBox.modal instanceof b.Modal&&b.isjQuery(h.FooBox.modal.element)&&h.FooBox.modal.element.find(".fbx-stage").off({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,mouseup:h.handlers.onMouseUp}).removeClass("fbx-pannable fbx-panning")},initialized:function(a){h.handlers.unbind(),a.fb.options.pan.enabled===!0&&h.FooBox.element.on({"foobox.close":h.handlers.onMouseUp,"foobox.afterLoad":h.handlers.onAfterLoad,"foobox.showOverflow":h.handlers.onShowOverflow,"foobox.hideOverflow foobox.beforeLoad":h.handlers.onHideOverflow})},onAfterLoad:function(a){i===!0&&"image"==a.fb.item.handler.type&&(h.setOverview(),h.setViewport())},onShowOverflow:function(b){"image"==b.fb.item.handler.type&&(i===!0?(h.setOverview(),h.setViewport()):(i=!0,h.disableCaptionImageClick(),k=b.fb.item,m=h.FooBox.modal.element.addClass("fbx-pannable-item").find(".fbx-stage").on({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,"mouseup mouseleave":h.handlers.onMouseUp}).addClass("fbx-pannable"),l=b.fb.container,b.fb.options.pan.showOverview===!0&&(n=a("<div/>",{"class":"fbx-pan-overview"}).addClass(b.fb.options.pan.position).on("click",h.handlers.onOverviewClick).appendTo(m),o=a("<div/>",{"class":"fbx-pan-viewport"}).appendTo(n),l.on("scroll",h.handlers.onScroll),h.setOverview(),h.setViewport())))},onHideOverflow:function(a){i===!0&&(i=!1,h.enableCaptionImageClick(),a.fb.options.pan.showOverview===!0&&n.remove(),l.off("scroll",h.handlers.onScroll),m.off({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,"mouseup mouseleave":h.handlers.onMouseUp}).removeClass("fbx-pannable fbx-panning"),h.FooBox.modal.element.removeClass("fbx-pannable-item"))},onMouseDown:function(a){if(i===!0){a.preventDefault(),m.addClass("fbx-panning");var b=l.get(0);j=!0,d=a.pageX,e=a.pageY,f=b.scrollLeft,g=b.scrollTop}},onMouseMove:function(a){if(j===!0&&i===!0){var b=l.get(0);b.scrollLeft=f-(a.pageX-d),b.scrollTop=g-(a.pageY-e)}},onMouseUp:function(){i===!0&&(j=!1,m.removeClass("fbx-panning"),d=0,e=0,f=0,g=0)},onScroll:function(){var a=l.get(0),b=a.scrollTop/k.height*100,c=a.scrollLeft/k.width*100;o.css({top:b+"%",left:c+"%"})},onOverviewClick:function(b){var c=a(this).offset(),d=(b.pageX-c.left)/p,e=(b.pageY-c.top)/p,f=d-l.width()/2,g=e-l.height()/2;l.animate({scrollTop:g,scrollLeft:f},300)}}},b.addons.register(b.Pan,c)}(jQuery,window.FooBox),function(a,b){var c={swipe:{enabled:!0,min:80}};b.Swipe=function(a){this.FooBox=a,this.isMoving=!1;var c,d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.initialized foobox.reinitialized",d.handlers.initialized)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off("foobox.initialized foobox.reinitialized",d.handlers.initialized),d.FooBox.modal instanceof b.Modal&&b.isjQuery(d.FooBox.modal.element)&&d.FooBox.modal.element.off({touchstart:d.handlers.onTouchStart,touchmove:d.handlers.onTouchMove})},initialized:function(a){d.handlers.unbind(),a.fb.options.swipe.enabled===!0&&a.fb.modal.on("touchstart",d.handlers.onTouchStart)},onTouchStart:function(a){var b=a.originalEvent.touches||a.touches;1==b.length&&d.FooBox.items.multiple()&&(c=b[0].pageX,d.isMoving=!0,d.FooBox.modal.element.on("touchmove",d.handlers.onTouchMove))},onTouchMove:function(a){if(d.isMoving){var b=a.originalEvent.touches||a.touches,e=b[0].pageX,f=c-e;Math.abs(f)>=d.FooBox.options.swipe.min&&(d.cancelTouch(),f>0?(d.FooBox.raise("foobox.swipeRight"),d.FooBox.modal.next()):(d.FooBox.raise("foobox.swipeLeft"),d.FooBox.modal.prev()))}}},this.cancelTouch=function(){d.FooBox.modal.element.off("touchmove",d.handlers.onTouchMove),c=null,d.isMoving=!1}},b.addons.register(b.Swipe,c)}(jQuery,window.FooBox),function(a,b,c){if(!c)return void console.log("No configuration for FooBox found.");if(c.o&&c.customOptions&&a.extend(!0,c.o,c.customOptions),c.init=function(){if(a(".fbx-link").removeClass("fbx-link"),a.isFunction(c.pre))try{c.pre(a)}catch(b){console.error(b)}if(c.disableOthers&&(a("a.thickbox").removeClass("thickbox").unbind("click"),a("#TB_overlay, #TB_load, #TB_window").remove()),a.each(c.selectors,function(b,d){a(d).foobox(c.o)}),c.disableOthers&&a(".fbx-link").unbind(".prettyphoto").unbind(".fb"),a.isFunction(c.post))try{c.post(a)}catch(b){console.error(b)}},b.once=function(){var b=a("body");c.preloadFont&&b.append(a("<span/>",{"class":"foobox_font_preload",text:"f"})),c.init(),a(document).trigger("foobox-after-init"),b.on("post-load",c.init)},c.ready?b.ready(b.once):a(b.once),a.isFunction(c.custom))try{c.custom(a)}catch(d){console.error(d)}}(jQuery,window.FooBox,window.FOOBOX);
|
|
1 |
/**!
|
2 |
* FooBox - A jQuery responsive lightbox plugin
|
3 |
+
* @version 2.4.2
|
4 |
* @link http://fooplugins.com/plugins/foobox-jquery
|
5 |
+
* @copyright Steven Usher & Brad Vincent 2020
|
6 |
* @license Released under the MIT license.
|
7 |
* You are free to use FooBox jQuery in personal projects as long as this copyright header is left intact.
|
8 |
*/
|
9 |
+
!function(a,b,undefined){a&&b&&(b.FooBox={defaults:{affiliate:{enabled:!0,prefix:"Powered by ",url:"http://fooplugins.com/plugins/foobox/"},alwaysInit:!0,closeOnOverlayClick:!0,containerCssClass:"fbx-instance",countMessage:"item %index of %total",error:"Could not load the item",excludes:".fbx-link, .nofoobox",externalSelector:"a[data-foobox],input[data-foobox]",fitToScreen:!1,hideScrollbars:!0,loadDelay:0,loaderTimeout:600,modalClass:"",preload:!1,rel:null,resizeSpeed:300,selector:"a",showButtons:!0,showCount:!0,style:"fbx-rounded",theme:"fbx-light",transitionInSpeed:200,transitionOutSpeed:200,initCallback:null,loop:!0},version:"2.0.10",instances:[],ready:function(b){(Function("/*@cc_on return true@*/")()?"complete"===document.readyState:"loading"!==document.readyState)?b(a):setTimeout(function(){FooBox.ready(b)},1)}},FooBox.$=a,FooBox.format=function(a,b,c){var d,e,f=arguments[0];for(d=0;d<arguments.length-1;d++)e=new RegExp("\\{"+d+"\\}","gm"),f=f.replace(e,arguments[d+1]);return f},FooBox.browser={isIE:!1,isChrome:!1,isSafari:!1,isLtSafari10:!1,version:0,css:"",iOS:!1,Mac:!1,isMobile:function(a){return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))}(navigator.userAgent||navigator.vendor||b.opera),check:function(){var a=navigator.appVersion.toLowerCase(),c=navigator.userAgent.toLowerCase(),d=navigator.platform;FooBox.browser.iOS=/(iPad|iPhone|iPod)/g.test(d),FooBox.browser.iOS12OrBelow=!1,FooBox.browser.iOS&&(FooBox.browser.css+=" fbx-ios",FooBox.browser.iOS12OrBelow=function(){var b=a.match(/OS (\d+)_(\d+)_?(\d+)?/i);return b=[parseInt(b[1],10),parseInt(b[2],10),parseInt(b[3]||0,10)],b[0]<=12}(),FooBox.browser.iOS12OrBelow&&(FooBox.browser.css+=" fbx-ios-12-or-below")),FooBox.browser.Mac=/(Mac)/g.test(d),FooBox.browser.Mac&&(FooBox.browser.css+=" fbx-mac"),FooBox.browser.isChrome=a.indexOf("chrome")>-1||a.indexOf("crios")>-1,FooBox.browser.isChrome&&(FooBox.browser.css+=" fbx-chrome"),FooBox.browser.isSafari=a.indexOf("safari")>-1&&!FooBox.browser.isChrome,FooBox.browser.isSafari&&(FooBox.browser.css+=" fbx-safari",FooBox.browser.isLtSafari10=/constructor/i.test(b.HTMLElement)),FooBox.browser.isFirefox=c.indexOf("firefox")>-1,FooBox.browser.isFirefox&&(FooBox.browser.css+=" fbx-firefox");var e=c.indexOf("msie "),f=c.indexOf("trident/"),g=c.indexOf("edge/");if(FooBox.browser.isIE=e>-1||f>-1||g>-1,FooBox.browser.isIE){if(e>-1)FooBox.browser.version=parseInt(c.substring(e+5,c.indexOf(".",e)),10);else if(f>-1){var h=c.indexOf("rv:");FooBox.browser.version=parseInt(c.substring(h+3,c.indexOf(".",h)),10)}else g>-1&&(FooBox.browser.version=parseInt(c.substring(g+5,c.indexOf(".",g)),10));FooBox.browser.css="fbx-ie fbx-ie"+FooBox.browser.version}},supportsTransitions:function(){var a,b=document.body||document.documentElement,c=b.style,d="transition";if("string"==typeof c[d])return!0;a=["Moz","Webkit","Khtml","O","ms"],d=d.charAt(0).toUpperCase()+d.substr(1);for(var e=0;e<a.length;e++)if("string"==typeof c[a[e]+d])return!0;return!1},transitionEnd:function(){var a,b=document.createElement("fakeelement"),c={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(a in c)if(c.hasOwnProperty(a)&&b.style[a]!==undefined)return c[a];return null}},FooBox.browser.check(),FooBox.qualifiedURL=function(a){var b=document.createElement("a");return b.href=a,b.href},jQuery.Event.prototype.fb={instance:null,modal:null,options:null},FooBox.raise=function(b,c,d){d=d||{};var e=a.Event(c);return e.fb={},e.fb.instance=b,e.fb.modal=b.modal.element,e.fb.options=b.options,a.extend(!0,e.fb,d),b.element.one(c,function(a){a.stopPropagation()}).trigger(e),e},FooBox.isjQuery=function(a){return a instanceof jQuery?!0:a&&a.jquery},FooBox.options={isMultipart:function(a,b){return"string"==typeof a&&a.length>0&&-1!==a.indexOf(b)},hasProperties:function(a){if("object"!=typeof a)return!1;var b;for(b in a)if(a.hasOwnProperty(b))return!0;return!1},get:function(a,b){if(FooBox.options.isMultipart(b,".")){var c=b.substring(0,b.indexOf(".")),d=b.substring(b.indexOf(".")+1);return a[c]=a[c]||{},FooBox.options.get(a[c],d)}return a[b]},set:function(a,b,c){if(FooBox.options.isMultipart(b,".")){var d=b.substring(0,b.indexOf(".")),e=b.substring(b.indexOf(".")+1);a[d]=a[d]||{},FooBox.options.set(a[d],e,c)}else a[b]=c},merge:function(a,b,c){var d,e=Array.prototype.slice.call(arguments);for(a=e.shift(),b=e.shift(),FooBox.options._merge(a,b),d=0;d<e.length;d++)c=e[d],FooBox.options._merge(a,c);return a},_merge:function(b,c){var d;for(d in c)c.hasOwnProperty(d)&&(FooBox.options.hasProperties(c[d])&&!a.isArray(c[d])?(b[d]=b[d]||{},FooBox.options._merge(b[d],c[d])):a.isArray(c[d])?(b[d]=[],a.extend(!0,b[d],c[d])):b[d]=c[d])}},FooBox.objects={registered:{},ensure:function(a){return FooBox.objects.registered[a]=FooBox.objects.registered[a]||[]},register:function(b,c,d){var e=FooBox.objects.ensure(b);return e.push(c),"object"==typeof d&&a.extend(!0,FooBox.defaults,d),!0},load:function(a,b){var c,d,e=[],f=FooBox.objects.ensure(a);for(d=0;d<f.length;d++)try{c=f[d],e.push(new c(b))}catch(g){console.error(g)}b.objects=b.objects||{},b.objects[a]=e},call:function(b,c,d,e,f){var g,h=Array.prototype.slice.call(arguments);b=h.shift(),c=h.shift(),d=h.shift();for(var i=c.objects[b]||[],j=0;j<i.length;j++)try{if(g=i[j],!a.isFunction(g[d]))continue;g[d].apply(g,h)}catch(k){console.error(k)}},get:function(b,c,d){var e,f=c.objects[b];if(!f||!a.isFunction(d))return null;for(e=0;e<f.length;e++)if(d(f[e]))return f[e];return null}},FooBox.addons={_ns:"addons",validate:function(b){return a.isFunction(b)?!0:(console.error(FooBox.format('Expected type "function", received type "{0}".',typeof b)),!1)},register:function(a,b){return FooBox.addons.validate(a)?FooBox.objects.register(FooBox.addons._ns,a,b):(console.error("Failed to register the addon."),!1)},load:function(a){FooBox.objects.load(FooBox.addons._ns,a)},call:function(a,b,c,d){var e=Array.prototype.slice.call(arguments);e.unshift(FooBox.addons._ns),FooBox.objects.call.apply(this,e)}},FooBox.handlers={_ns:"handlers",validate:function(b){if(!a.isFunction(b))return console.error(FooBox.format('Expected type "function", received type "{0}".',typeof b)),!1;var c=new b;return a.isFunction(c.handles)?a.isFunction(c.defaults)?a.isFunction(c.parse)?a.isFunction(c.load)?a.isFunction(c.getSize)?a.isFunction(c.hasChanged)?a.isFunction(c.preload)?!0:(console.error('The required "preload" method is not implemented.'),!1):(console.error('The required "hasChanged" method is not implemented.'),!1):(console.error('The required "getSize" method is not implemented.'),!1):(console.error('The required "load" method is not implemented.'),!1):(console.error('The required "parse" method is not implemented.'),!1):(console.error('The required "defaults" method is not implemented.'),!1):(console.error('The required "handles" method is not implemented.'),!1)},register:function(a,b){return FooBox.handlers.validate(a)?FooBox.objects.register(FooBox.handlers._ns,a,b):(console.error("Failed to register the handler."),!1)},load:function(a){FooBox.objects.load(FooBox.handlers._ns,a)},call:function(a,b,c,d){var e=Array.prototype.slice.call(arguments);e.unshift(FooBox.handlers._ns),FooBox.objects.call.apply(this,e)},get:function(a,b){return FooBox.objects.get(FooBox.handlers._ns,a,function(a){return a.type==b})}},FooBox.Item=function(b,c,d){return this.type=b,this.element=FooBox.isjQuery(c)?c:a(c),this.handler=d,this.width=null,this.height=null,this.url=null,this.overflow=!1,this.preloaded=!1,this.proportion=!1,this.error=!1,this},FooBox.Size=function(a,b){return this.width="number"==typeof a?a:parseInt(a,0),this.height="number"==typeof b?b:parseInt(b,0),this.equalTo=function(a){return this.width==a.width&&this.height==a.height},this},FooBox.Size.check=function(a){return"number"==typeof a?a:isNaN(parseInt(a))?null:parseInt(a)},FooBox.Timer=function(){this.id=null,this.busy=!1;var a=this;return this.start=function(b,c,d){d=d||b,a.stop(),a.id=setTimeout(function(){b.call(d),a.id=null,a.busy=!1},c),a.busy=!0},this.stop=function(){null!==a.id&&a.busy!==!1&&(clearTimeout(a.id),a.id=null,a.busy=!1)},this},a.fn.foobox=function(b){return b=b||{},this.each(function(){var c=a(this),d=c.data("fbx_instance"),e=c.data("__FooGallery__"),f=a.extend(!0,{},b,c.data("foobox"));if(d instanceof FooBox.Instance)if(d.options.alwaysInit===!0||e){var g=d.options;g.alwaysInit=!0,d.destroy(),d=new FooBox.Instance(d.id),d.init(this,a.extend(!0,g,f))}else d.reinit(f);else{if(d=a(this).data("fbx_p_instance"),d instanceof FooBox.Instance)return;d=new FooBox.Instance,d.init(this,f)}})},FooBox.open=function(b){var c,d=null;if("object"==typeof b){var e=document.createElement("a");a(e).foobox(b),d=a(e).data("fbx_instance")}else"number"==typeof b?c=b:(c=parseInt(b||0),c=isNaN(c)?0:c),c=c>FooBox.instances.length-1?FooBox.instances.length-1:0>c?0:c,d=FooBox.instances[c];return null!=d&&d.modal instanceof FooBox.Modal?(d.modal.show(!0),d):null},FooBox.close=function(){var a,b=[],c=null;for(a=0;a<FooBox.instances.length;a++)c=FooBox.instances[a],null!=c&&c.modal instanceof FooBox.Modal&&FooBox.isjQuery(c.modal.element)&&c.modal.element.hasClass("fbx-show")&&b.push(c);for(a=0;a<b.length;a++)c=b[a],c.modal.close()},FooBox.resize=function(c,d){if(c||d){var e,f,g,h;for(e=0;e<FooBox.instances.length;e++)f=FooBox.instances[e],null!=f&&f.modal instanceof FooBox.Modal&&FooBox.isjQuery(f.modal.element)&&f.modal.element.hasClass("fbx-show")&&(g=f.items.current(),h=new FooBox.Size(c||g.width||0,d||g.height||0),g.width=h.width,g.height=h.height,f.modal.resize(h,f.modal.element.find(".fbx-item-current")))}else a(b).trigger("resize.foobox")},FooBox.lateBind=function(c,d){var e=a.extend(!0,{},FooBox.defaults,d||b.FOOBOX&&FOOBOX.o||{}),f=a(c);f.on("click.foobox",e.selector,function(a){a.preventDefault();var b=f.data("fbx_instance");b||(b=f.foobox(e).data("fbx_instance")),b instanceof FooBox.Instance&&"number"==typeof this.index&&(b.items.indexes.set(this.index),b.modal.show(!0))})})}(jQuery,window),function(a,b){b.Icons=function(){return this.className="fbx-icon",this.registered={"default":{close:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[CURRENT_ICON_CLASS]-default" d="M13.405 11.404q0 0.357-0.25 0.607l-1.214 1.214q-0.25 0.25-0.607 0.25t-0.607-0.25l-2.625-2.625-2.625 2.625q-0.25 0.25-0.607 0.25t-0.607-0.25l-1.214-1.214q-0.25-0.25-0.25-0.607t0.25-0.607l2.625-2.625-2.625-2.625q-0.25-0.25-0.25-0.607t0.25-0.607l1.214-1.214q0.25-0.25 0.607-0.25t0.607 0.25l2.625 2.625 2.625-2.625q0.25-0.25 0.607-0.25t0.607 0.25l1.214 1.214q0.25 0.25 0.25 0.607t-0.25 0.607l-2.625 2.625 2.625 2.625q0.25 0.25 0.25 0.607z"></path><path class="[CURRENT_ICON_CLASS]-flat" d="M12.667 3q0.286 0 0.477 0.19t0.19 0.477q0 0.281-0.193 0.474l-4.198 4.193 4.198 4.193q0.193 0.193 0.193 0.474 0 0.286-0.19 0.477t-0.477 0.19q-0.281 0-0.474-0.193l-4.193-4.198-4.193 4.198q-0.193 0.193-0.474 0.193-0.286 0-0.477-0.19t-0.19-0.477q0-0.281 0.193-0.474l4.198-4.193-4.198-4.193q-0.193-0.193-0.193-0.474 0-0.286 0.19-0.477t0.477-0.19q0.281 0 0.474 0.193l4.193 4.198 4.193-4.198q0.193-0.193 0.474-0.193z"></path></svg>',prev:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[ICON_CLASS]-arrows-default" d="M14.57 8.643q0 0.473-0.29 0.808t-0.754 0.335h-6.286l2.616 2.625q0.339 0.321 0.339 0.804t-0.339 0.804l-0.67 0.679q-0.33 0.33-0.804 0.33-0.464 0-0.813-0.33l-5.813-5.821q-0.33-0.33-0.33-0.804 0-0.464 0.33-0.813l5.813-5.804q0.339-0.339 0.813-0.339 0.464 0 0.804 0.339l0.67 0.661q0.339 0.339 0.339 0.813t-0.339 0.813l-2.616 2.616h6.286q0.464 0 0.754 0.335t0.29 0.808z"></path><path class="[ICON_CLASS]-arrows-flat" d="M6.667 3q0.276 0 0.471 0.195t0.195 0.471q0 0.281-0.198 0.474l-3.526 3.526h10.391q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-10.391l3.526 3.526q0.198 0.193 0.198 0.474 0 0.276-0.195 0.471t-0.471 0.195q-0.281 0-0.474-0.193l-4.667-4.667q-0.193-0.203-0.193-0.474t0.193-0.474l4.667-4.667q0.198-0.193 0.474-0.193z"></path><path class="[ICON_CLASS]-arrows-1" d="M10 16l3-3-5-5 5-5-3-3-8 8z"></path><path class="[ICON_CLASS]-arrows-2" d="M0 8l16 7-3-7 3-7z"></path><path class="[ICON_CLASS]-arrows-3" d="M12 0l-8 8 8 8-4-8z"></path><path class="[ICON_CLASS]-arrows-4" d="M10 4l-4 4 4 4z"></path><path class="[ICON_CLASS]-arrows-5" d="M0 8l8 8v-5h8l0-6h-8v-5l-8 8zM2.375 7.039l0.25-0.25v2.422l-0.25-0.25v-1.922zM2.125 8.711l-0.25-0.25v-0.922l0.25-0.25v1.422zM2.875 6.539l0.25-0.25v3.422l-0.25-0.25v-2.922zM3.375 6.039l0.25-0.25v4.422l-0.25-0.25v-3.922zM3.875 5.539l0.25-0.25v5.422l-0.25-0.25v-4.922zM4.375 5.039l0.25-0.25v6.422l-0.25-0.25v-5.922zM4.875 4.539l0.25-0.25v7.422l-0.25-0.25v-6.922zM5.375 4.039l0.25-0.25v8.422l-0.25-0.25v-7.922zM5.875 3.539l0.25-0.25v9.422l-0.25-0.25v-8.922zM6.375 3.039l0.25-0.25v10.422l-0.25-0.25v-9.922zM1.625 7.789v0.422l-0.211-0.211 0.211-0.211zM7.375 10v-4h0.25v4h-0.25zM7.875 10v-4h0.25v4h-0.25zM8.375 10v-4h0.25v4h-0.25zM8.875 10v-4h0.25v4h-0.25zM9.375 10v-4h0.25v4h-0.25zM9.875 10v-4h0.25v4h-0.25zM10.375 10v-4h0.25v4h-0.25zM10.875 10v-4h0.25v4h-0.25zM11.375 10v-4h0.25v4h-0.25zM11.875 10v-4h0.25v4h-0.25zM12.375 10v-4h0.25v4h-0.25zM12.875 10v-4h0.25v4h-0.25zM13.375 10v-4h0.25v4h-0.25zM13.875 10v-4h0.25v4h-0.25zM14.375 10v-4h0.25v4h-0.25zM15 10h-0.125v-4h0.125l-0 4zM7 6h0.125v4h-0.125v3.586l-0.125-0.125v-10.922l0.125-0.125v3.586z"></path><path class="[ICON_CLASS]-arrows-6" d="M0 8l8 8v-5h8l0-6h-8v-5z"></path><path class="[ICON_CLASS]-arrows-7" d="M8 0c4.418 0 8 3.582 8 8s-3.582 8-8 8-8-3.582-8-8 3.582-8 8-8zM3.293 8.707l4 4c0.195 0.195 0.451 0.293 0.707 0.293s0.512-0.098 0.707-0.293c0.391-0.391 0.391-1.024 0-1.414l-2.293-2.293h5.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-5.586l2.293-2.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-4 4c-0.391 0.391-0.391 1.024-0 1.414z"></path><path class="[ICON_CLASS]-arrows-8" d="M0 16h16v-16h-16l0 16zM14 2v12h-12l-0-12h12zM7 11.5l-3.5-3.5 3.5-3.5v2.5h5v2h-5v2.5z"></path><path class="[ICON_CLASS]-arrows-9" d="M15 5h1v6h-1zM13 5h1v6h-1zM11 5h1v6h-1zM0 8l7-7v4h3v6h-3v4z"></path><path class="[ICON_CLASS]-arrows-10" d="M8 0c4.418 0 8 3.582 8 8s-3.582 8-8 8-8-3.582-8-8 3.582-8 8-8zM7 11.5v-2.5h5v-2h-5v-2.5l-3.5 3.5 3.5 3.5z"></path><path class="[ICON_CLASS]-arrows-11" d="M8 0c4.418 0 8 3.582 8 8s-3.582 8-8 8-8-3.582-8-8 3.582-8 8-8zM8 14.5c3.59 0 6.5-2.91 6.5-6.5s-2.91-6.5-6.5-6.5-6.5 2.91-6.5 6.5 2.91 6.5 6.5 6.5zM3.293 7.293l4-4c0.391-0.391 1.024-0.391 1.414 0s0.391 1.024 0 1.414l-2.293 2.293h5.586c0.552 0 1 0.448 1 1s-0.448 1-1 1h-5.586l2.293 2.293c0.391 0.391 0.391 1.024 0 1.414-0.195 0.195-0.451 0.293-0.707 0.293s-0.512-0.098-0.707-0.293l-4-4c-0.39-0.391-0.39-1.024 0-1.414z"></path></svg>',next:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[ICON_CLASS]-arrows-default" d="M14.57 8.071q0 0.482-0.33 0.813l-5.813 5.813q-0.348 0.33-0.813 0.33-0.455 0-0.804-0.33l-0.67-0.67q-0.339-0.339-0.339-0.813t0.339-0.813l2.616-2.616h-6.286q-0.464 0-0.754-0.335t-0.29-0.808v-1.143q0-0.473 0.29-0.808t0.754-0.335h6.286l-2.616-2.625q-0.339-0.321-0.339-0.804t0.339-0.804l0.67-0.67q0.339-0.339 0.804-0.339 0.473 0 0.813 0.339l5.813 5.813q0.33 0.313 0.33 0.804z"></path><path class="[ICON_CLASS]-arrows-flat" d="M9.333 3q0.281 0 0.474 0.193l4.667 4.667q0.193 0.193 0.193 0.474t-0.193 0.474l-4.667 4.667q-0.193 0.193-0.474 0.193-0.286 0-0.477-0.19t-0.19-0.477q0-0.281 0.193-0.474l3.531-3.526h-10.391q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195h10.391l-3.531-3.526q-0.193-0.193-0.193-0.474 0-0.286 0.19-0.477t0.477-0.19z"></path><path class="[ICON_CLASS]-arrows-1" d="M6 0l-3 3 5 5-5 5 3 3 8-8z"></path><path class="[ICON_CLASS]-arrows-2" d="M16 8l-16-7 3 7-3 7z"></path><path class="[ICON_CLASS]-arrows-3" d="M4 16l8-8-8-8 4 8z"></path><path class="[ICON_CLASS]-arrows-4" d="M6 12l4-4-4-4z"></path><path class="[ICON_CLASS]-arrows-5" d="M16 8l-8-8v5h-8l-0 6h8v5l8-8zM13.625 8.961l-0.25 0.25v-2.422l0.25 0.25v1.922zM13.875 7.289l0.25 0.25v0.922l-0.25 0.25v-1.422zM13.125 9.461l-0.25 0.25v-3.422l0.25 0.25v2.922zM12.625 9.961l-0.25 0.25v-4.422l0.25 0.25v3.922zM12.125 10.461l-0.25 0.25v-5.422l0.25 0.25v4.922zM11.625 10.961l-0.25 0.25v-6.422l0.25 0.25v5.922zM11.125 11.461l-0.25 0.25v-7.422l0.25 0.25v6.922zM10.625 11.961l-0.25 0.25v-8.422l0.25 0.25v7.922zM10.125 12.461l-0.25 0.25v-9.422l0.25 0.25v8.922zM9.625 12.961l-0.25 0.25v-10.422l0.25 0.25v9.922zM14.375 8.211v-0.422l0.211 0.211-0.211 0.211zM8.625 6v4h-0.25v-4h0.25zM8.125 6v4h-0.25v-4h0.25zM7.625 6v4h-0.25v-4h0.25zM7.125 6v4h-0.25v-4h0.25zM6.625 6v4h-0.25v-4h0.25zM6.125 6v4h-0.25v-4h0.25zM5.625 6v4h-0.25v-4h0.25zM5.125 6v4h-0.25v-4h0.25zM4.625 6v4h-0.25v-4h0.25zM4.125 6v4h-0.25v-4h0.25zM3.625 6v4h-0.25v-4h0.25zM3.125 6v4h-0.25v-4h0.25zM2.625 6v4h-0.25v-4h0.25zM2.125 6v4h-0.25v-4h0.25zM1.625 6v4h-0.25v-4h0.25zM1 6h0.125v4h-0.125l0-4zM9 10h-0.125v-4h0.125v-3.586l0.125 0.125v10.922l-0.125 0.125v-3.586z"></path><path class="[ICON_CLASS]-arrows-6" d="M16 8l-8-8v5h-8l-0 6h8v5z"></path><path class="[ICON_CLASS]-arrows-7" d="M8 0c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zM12.707 8.707l-4 4c-0.195 0.195-0.451 0.293-0.707 0.293s-0.512-0.098-0.707-0.293c-0.391-0.391-0.391-1.024 0-1.414l2.293-2.293h-5.586c-0.552 0-1-0.448-1-1s0.448-1 1-1h5.586l-2.293-2.293c-0.391-0.391-0.391-1.024 0-1.414s1.024-0.391 1.414 0l4 4c0.391 0.391 0.391 1.024 0 1.414z"></path><path class="[ICON_CLASS]-arrows-8" d="M16 16h-16v-16h16l-0 16zM2 2v12h12l0-12h-12zM9 11.5l3.5-3.5-3.5-3.5v2.5h-5v2h5v2.5z"></path><path class="[ICON_CLASS]-arrows-9" d="M0 5h1v6h-1zM2 5h1v6h-1zM4 5h1v6h-1zM16 8l-7-7v4h-3v6h3v4z"></path><path class="[ICON_CLASS]-arrows-10" d="M8 0c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zM9 11.5v-2.5h-5v-2h5v-2.5l3.5 3.5-3.5 3.5z"></path><path class="[ICON_CLASS]-arrows-11" d="M8 0c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zM8 14.5c-3.59 0-6.5-2.91-6.5-6.5s2.91-6.5 6.5-6.5 6.5 2.91 6.5 6.5-2.91 6.5-6.5 6.5zM12.707 7.293l-4-4c-0.39-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414l2.293 2.293h-5.586c-0.552 0-1 0.448-1 1s0.448 1 1 1h5.586l-2.293 2.293c-0.391 0.391-0.391 1.024 0 1.414 0.195 0.195 0.451 0.293 0.707 0.293s0.512-0.098 0.707-0.293l4-4c0.39-0.391 0.39-1.024 0-1.414z"></path></svg>',error:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M8 1.5c-1.736 0-3.369 0.676-4.596 1.904s-1.904 2.86-1.904 4.596c0 1.736 0.676 3.369 1.904 4.596s2.86 1.904 4.596 1.904c1.736 0 3.369-0.676 4.596-1.904s1.904-2.86 1.904-4.596c0-1.736-0.676-3.369-1.904-4.596s-2.86-1.904-4.596-1.904zM8 0v0c4.418 0 8 3.582 8 8s-3.582 8-8 8c-4.418 0-8-3.582-8-8s3.582-8 8-8zM7 11h2v2h-2zM7 3h2v6h-2z"></path></svg>',spinner:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[CURRENT_ICON_CLASS]-default" d="M3 8c0-0.19 0.011-0.378 0.032-0.563l-2.89-0.939c-0.092 0.487-0.141 0.989-0.141 1.502 0 2.3 0.971 4.374 2.526 5.833l1.786-2.458c-0.814-0.889-1.312-2.074-1.312-3.375zM13 8c0 1.301-0.497 2.486-1.312 3.375l1.786 2.458c1.555-1.459 2.526-3.533 2.526-5.833 0-0.513-0.049-1.015-0.141-1.502l-2.89 0.939c0.021 0.185 0.032 0.373 0.032 0.563zM9 3.1c1.436 0.292 2.649 1.199 3.351 2.435l2.89-0.939c-1.144-2.428-3.473-4.188-6.241-4.534v3.038zM3.649 5.535c0.702-1.236 1.914-2.143 3.351-2.435v-3.038c-2.769 0.345-5.097 2.105-6.241 4.534l2.89 0.939zM10.071 12.552c-0.631 0.288-1.332 0.448-2.071 0.448s-1.44-0.16-2.071-0.448l-1.786 2.458c1.144 0.631 2.458 0.99 3.857 0.99s2.713-0.359 3.857-0.99l-1.786-2.458z"></path><path class="[CURRENT_ICON_CLASS]-flat" d="M10.833 10.495q0.271 0 0.469 0.198l1.885 1.885q0.198 0.198 0.198 0.474 0 0.271-0.198 0.469t-0.469 0.198q-0.276 0-0.474-0.198l-1.885-1.885q-0.193-0.193-0.193-0.474 0-0.276 0.195-0.471t0.471-0.195zM5.172 10.495q0.276 0 0.471 0.195t0.195 0.471-0.198 0.474l-1.885 1.885q-0.198 0.198-0.469 0.198-0.276 0-0.471-0.195t-0.195-0.471q0-0.281 0.193-0.474l1.885-1.885q0.198-0.198 0.474-0.198zM1.333 7.667h2.667q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2.667q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195zM8 11.667q0.276 0 0.471 0.195t0.195 0.471v2.667q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2.667q0-0.276 0.195-0.471t0.471-0.195zM3.286 2.948q0.271 0 0.469 0.198l1.885 1.885q0.198 0.198 0.198 0.469 0 0.276-0.195 0.471t-0.471 0.195q-0.281 0-0.474-0.193l-1.885-1.885q-0.193-0.193-0.193-0.474 0-0.276 0.195-0.471t0.471-0.195zM12 7.667h2.667q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2.667q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195zM8 1q0.276 0 0.471 0.195t0.195 0.471v2.667q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2.667q0-0.276 0.195-0.471t0.471-0.195zM12.719 2.948q0.271 0 0.469 0.198t0.198 0.469q0 0.276-0.198 0.474l-1.885 1.885q-0.193 0.193-0.469 0.193-0.286 0-0.477-0.19t-0.19-0.477q0-0.276 0.193-0.469l1.885-1.885q0.198-0.198 0.474-0.198z"></path><path class="[CURRENT_ICON_CLASS]-1" d="M5.569 12q0 0.536-0.379 0.911t-0.906 0.375q-0.536 0-0.911-0.375t-0.375-0.911 0.375-0.911 0.911-0.375q0.527 0 0.906 0.375t0.379 0.911zM9.426 13.714q0 0.473-0.335 0.808t-0.808 0.335-0.808-0.335-0.335-0.808 0.335-0.808 0.808-0.335 0.808 0.335 0.335 0.808zM3.857 8q0 0.589-0.42 1.009t-1.009 0.42-1.009-0.42-0.42-1.009 0.42-1.009 1.009-0.42 1.009 0.42 0.42 1.009zM13.283 12q0 0.411-0.295 0.705t-0.705 0.295-0.705-0.295-0.295-0.705 0.295-0.705 0.705-0.295 0.705 0.295 0.295 0.705zM5.854 4q0 0.652-0.46 1.112t-1.112 0.46-1.112-0.46-0.46-1.112 0.46-1.112 1.112-0.46 1.112 0.46 0.46 1.112zM9.997 2.286q0 0.714-0.5 1.214t-1.214 0.5-1.214-0.5-0.5-1.214 0.5-1.214 1.214-0.5 1.214 0.5 0.5 1.214zM14.844 8q0 0.357-0.25 0.607t-0.607 0.25-0.607-0.25-0.25-0.607 0.25-0.607 0.607-0.25 0.607 0.25 0.25 0.607zM12.997 4q0 0.295-0.21 0.504t-0.504 0.21-0.504-0.21-0.21-0.504 0.21-0.504 0.504-0.21 0.504 0.21 0.21 0.504z"></path><path class="[CURRENT_ICON_CLASS]-2" d="M16 8c-0.020-1.045-0.247-2.086-0.665-3.038-0.417-0.953-1.023-1.817-1.766-2.53s-1.624-1.278-2.578-1.651c-0.953-0.374-1.978-0.552-2.991-0.531-1.013 0.020-2.021 0.24-2.943 0.646-0.923 0.405-1.758 0.992-2.449 1.712s-1.237 1.574-1.597 2.497c-0.361 0.923-0.533 1.914-0.512 2.895 0.020 0.981 0.234 1.955 0.627 2.847 0.392 0.892 0.961 1.7 1.658 2.368s1.523 1.195 2.416 1.543c0.892 0.348 1.851 0.514 2.799 0.493 0.949-0.020 1.89-0.227 2.751-0.608 0.862-0.379 1.642-0.929 2.287-1.604s1.154-1.472 1.488-2.335c0.204-0.523 0.342-1.069 0.415-1.622 0.019 0.001 0.039 0.002 0.059 0.002 0.552 0 1-0.448 1-1 0-0.028-0.001-0.056-0.004-0.083h0.004zM14.411 10.655c-0.367 0.831-0.898 1.584-1.55 2.206s-1.422 1.112-2.254 1.434c-0.832 0.323-1.723 0.476-2.608 0.454-0.884-0.020-1.759-0.215-2.56-0.57-0.801-0.354-1.526-0.867-2.125-1.495s-1.071-1.371-1.38-2.173c-0.31-0.801-0.457-1.66-0.435-2.512s0.208-1.694 0.551-2.464c0.342-0.77 0.836-1.468 1.441-2.044s1.321-1.029 2.092-1.326c0.771-0.298 1.596-0.438 2.416-0.416s1.629 0.202 2.368 0.532c0.74 0.329 1.41 0.805 1.963 1.387s0.988 1.27 1.272 2.011c0.285 0.74 0.418 1.532 0.397 2.32h0.004c-0.002 0.027-0.004 0.055-0.004 0.083 0 0.516 0.39 0.94 0.892 0.994-0.097 0.544-0.258 1.075-0.481 1.578z"></path><path class="[CURRENT_ICON_CLASS]-3" d="M7 4c0-0.552 0.448-1 1-1s1 0.448 1 1c0 0.552-0.448 1-1 1s-1-0.448-1-1zM8 0c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zM8 13c-0.552 0-1-0.448-1-1s0.448-1 1-1c0.552 0 1 0.448 1 1s-0.448 1-1 1zM8 8c-1.795 0-3.25 1.455-3.25 3.25s1.455 3.25 3.25 3.25c-3.59 0-6.5-2.91-6.5-6.5s2.91-6.5 6.5-6.5c1.795 0 3.25 1.455 3.25 3.25s-1.455 3.25-3.25 3.25z"></path><path class="[CURRENT_ICON_CLASS]-4" d="M6 2c0-1.105 0.895-2 2-2s2 0.895 2 2c0 1.105-0.895 2-2 2s-2-0.895-2-2zM10.243 3.757c0-1.105 0.895-2 2-2s2 0.895 2 2c0 1.105-0.895 2-2 2s-2-0.895-2-2zM13 8c0-0.552 0.448-1 1-1s1 0.448 1 1c0 0.552-0.448 1-1 1s-1-0.448-1-1zM11.243 12.243c0-0.552 0.448-1 1-1s1 0.448 1 1c0 0.552-0.448 1-1 1s-1-0.448-1-1zM7 14c0 0 0 0 0 0 0-0.552 0.448-1 1-1s1 0.448 1 1c0 0 0 0 0 0 0 0.552-0.448 1-1 1s-1-0.448-1-1zM2.757 12.243c0 0 0 0 0 0 0-0.552 0.448-1 1-1s1 0.448 1 1c0 0 0 0 0 0 0 0.552-0.448 1-1 1s-1-0.448-1-1zM2.257 3.757c0 0 0 0 0 0 0-0.828 0.672-1.5 1.5-1.5s1.5 0.672 1.5 1.5c0 0 0 0 0 0 0 0.828-0.672 1.5-1.5 1.5s-1.5-0.672-1.5-1.5zM0.875 8c0-0.621 0.504-1.125 1.125-1.125s1.125 0.504 1.125 1.125c0 0.621-0.504 1.125-1.125 1.125s-1.125-0.504-1.125-1.125z"></path><path class="[CURRENT_ICON_CLASS]-5" d="M8 0c-4.355 0-7.898 3.481-7.998 7.812 0.092-3.779 2.966-6.812 6.498-6.812 3.59 0 6.5 3.134 6.5 7 0 0.828 0.672 1.5 1.5 1.5s1.5-0.672 1.5-1.5c0-4.418-3.582-8-8-8zM8 16c4.355 0 7.898-3.481 7.998-7.812-0.092 3.779-2.966 6.812-6.498 6.812-3.59 0-6.5-3.134-6.5-7 0-0.828-0.672-1.5-1.5-1.5s-1.5 0.672-1.5 1.5c0 4.418 3.582 8 8 8z"></path><path class="[CURRENT_ICON_CLASS]-6" d="M0.001 8.025l-0 0c0 0 0 0.001 0 0.003 0.002 0.061 0.009 0.12 0.021 0.177 0.003 0.027 0.007 0.057 0.011 0.090 0.003 0.029 0.007 0.061 0.011 0.095 0.006 0.040 0.012 0.083 0.019 0.128 0.013 0.090 0.028 0.189 0.045 0.296 0.021 0.101 0.044 0.21 0.068 0.326 0.011 0.058 0.028 0.117 0.044 0.178s0.032 0.123 0.049 0.188c0.009 0.032 0.016 0.065 0.027 0.097s0.021 0.065 0.031 0.098 0.043 0.134 0.065 0.203c0.006 0.017 0.011 0.035 0.017 0.052s0.013 0.034 0.019 0.052 0.026 0.070 0.039 0.105c0.027 0.070 0.053 0.142 0.081 0.215 0.031 0.071 0.062 0.144 0.094 0.218 0.016 0.037 0.032 0.074 0.048 0.111s0.035 0.073 0.053 0.111 0.073 0.148 0.11 0.224c0.039 0.075 0.081 0.149 0.123 0.224 0.021 0.037 0.042 0.075 0.063 0.113s0.045 0.074 0.068 0.112 0.093 0.149 0.14 0.224c0.198 0.295 0.417 0.587 0.66 0.864 0.245 0.275 0.511 0.535 0.792 0.775 0.284 0.236 0.582 0.452 0.886 0.642 0.306 0.188 0.619 0.349 0.928 0.487 0.078 0.032 0.156 0.063 0.232 0.095 0.038 0.015 0.076 0.032 0.115 0.046s0.077 0.027 0.115 0.041 0.151 0.054 0.226 0.078c0.075 0.022 0.15 0.044 0.224 0.066 0.037 0.011 0.073 0.022 0.109 0.031s0.073 0.018 0.109 0.027 0.143 0.035 0.213 0.052c0.070 0.014 0.139 0.027 0.207 0.040 0.034 0.006 0.067 0.013 0.101 0.019 0.017 0.003 0.033 0.006 0.049 0.009s0.033 0.005 0.049 0.007c0.066 0.009 0.13 0.018 0.192 0.027 0.031 0.004 0.062 0.009 0.093 0.013s0.061 0.006 0.091 0.009 0.118 0.010 0.174 0.015c0.056 0.005 0.111 0.011 0.164 0.012 0.004 0 0.007 0 0.011 0 0.010 0.544 0.453 0.982 1 0.982 0.008 0 0.017-0 0.025-0.001v0c0 0 0.001-0 0.004-0 0.061-0.002 0.12-0.009 0.177-0.021 0.027-0.003 0.057-0.007 0.090-0.011 0.029-0.003 0.061-0.007 0.095-0.011 0.040-0.006 0.083-0.012 0.128-0.019 0.090-0.013 0.189-0.028 0.296-0.045 0.101-0.021 0.21-0.044 0.326-0.068 0.058-0.011 0.117-0.028 0.178-0.044s0.123-0.033 0.188-0.049c0.032-0.009 0.065-0.016 0.097-0.027s0.065-0.021 0.098-0.031 0.134-0.043 0.203-0.065c0.017-0.006 0.035-0.011 0.052-0.017s0.034-0.013 0.052-0.019 0.070-0.026 0.105-0.039c0.070-0.027 0.142-0.053 0.215-0.081 0.071-0.031 0.144-0.062 0.218-0.094 0.037-0.016 0.074-0.032 0.111-0.048s0.073-0.035 0.111-0.053 0.148-0.073 0.224-0.11c0.075-0.039 0.149-0.081 0.224-0.123 0.037-0.021 0.075-0.042 0.113-0.063s0.074-0.045 0.112-0.068 0.149-0.093 0.224-0.14c0.295-0.197 0.587-0.417 0.864-0.66 0.275-0.245 0.535-0.511 0.775-0.792 0.236-0.284 0.452-0.582 0.642-0.886 0.188-0.306 0.349-0.619 0.487-0.928 0.032-0.078 0.063-0.156 0.095-0.232 0.015-0.038 0.032-0.076 0.046-0.115s0.027-0.077 0.040-0.115 0.054-0.151 0.078-0.226c0.022-0.075 0.044-0.15 0.066-0.224 0.011-0.037 0.022-0.073 0.031-0.109s0.018-0.073 0.027-0.109 0.035-0.143 0.052-0.213c0.014-0.070 0.027-0.139 0.040-0.207 0.006-0.034 0.013-0.067 0.019-0.101 0.003-0.017 0.006-0.033 0.009-0.049s0.005-0.033 0.007-0.050c0.009-0.065 0.018-0.13 0.027-0.192 0.004-0.031 0.009-0.062 0.013-0.093s0.006-0.061 0.009-0.091 0.010-0.118 0.015-0.174c0.005-0.056 0.011-0.111 0.012-0.165 0-0.008 0.001-0.016 0.001-0.025 0.55-0.002 0.996-0.449 0.996-1 0-0.008-0-0.017-0.001-0.025h0c0 0-0-0.001-0-0.003-0.002-0.061-0.009-0.12-0.021-0.177-0.003-0.027-0.007-0.057-0.011-0.090-0.003-0.029-0.007-0.061-0.011-0.095-0.006-0.040-0.012-0.083-0.019-0.128-0.013-0.090-0.028-0.189-0.045-0.296-0.021-0.101-0.044-0.21-0.068-0.326-0.011-0.058-0.028-0.117-0.044-0.178s-0.032-0.123-0.049-0.188c-0.009-0.032-0.016-0.065-0.027-0.097s-0.021-0.065-0.031-0.098-0.043-0.134-0.065-0.203c-0.005-0.017-0.011-0.035-0.017-0.052s-0.013-0.034-0.019-0.052-0.026-0.070-0.039-0.105c-0.027-0.070-0.053-0.142-0.081-0.215-0.031-0.071-0.062-0.144-0.094-0.218-0.016-0.037-0.032-0.074-0.048-0.111s-0.035-0.073-0.053-0.111-0.073-0.148-0.11-0.224c-0.039-0.075-0.081-0.149-0.123-0.224-0.021-0.037-0.042-0.075-0.063-0.113s-0.045-0.074-0.068-0.112-0.093-0.149-0.14-0.224c-0.197-0.295-0.417-0.587-0.66-0.864-0.245-0.275-0.511-0.535-0.792-0.775-0.284-0.236-0.582-0.452-0.886-0.642-0.306-0.188-0.619-0.349-0.928-0.487-0.078-0.032-0.156-0.063-0.232-0.095-0.038-0.015-0.076-0.032-0.115-0.046s-0.077-0.027-0.115-0.040-0.151-0.054-0.226-0.078c-0.075-0.022-0.15-0.044-0.224-0.066-0.037-0.010-0.073-0.022-0.109-0.031s-0.073-0.018-0.109-0.027-0.143-0.035-0.213-0.052c-0.070-0.014-0.139-0.027-0.207-0.040-0.034-0.006-0.067-0.013-0.101-0.019-0.017-0.003-0.033-0.006-0.049-0.009s-0.033-0.005-0.049-0.007c-0.066-0.009-0.13-0.018-0.192-0.027-0.031-0.004-0.062-0.009-0.093-0.013s-0.061-0.006-0.091-0.009-0.118-0.010-0.174-0.015c-0.056-0.005-0.111-0.011-0.164-0.012-0.013-0-0.026-0.001-0.039-0.001-0.010-0.543-0.454-0.981-0.999-0.981-0.008 0-0.017 0-0.025 0.001l-0-0c0 0-0.001 0-0.003 0-0.061 0.002-0.12 0.009-0.177 0.021-0.027 0.003-0.057 0.007-0.090 0.011-0.029 0.003-0.061 0.007-0.095 0.011-0.040 0.006-0.083 0.012-0.128 0.019-0.090 0.013-0.189 0.028-0.296 0.045-0.101 0.021-0.21 0.044-0.326 0.068-0.058 0.011-0.117 0.028-0.178 0.044s-0.123 0.033-0.188 0.049c-0.032 0.009-0.065 0.016-0.097 0.027s-0.065 0.021-0.098 0.031-0.134 0.043-0.203 0.065c-0.017 0.006-0.035 0.011-0.052 0.017s-0.034 0.013-0.052 0.019-0.070 0.026-0.105 0.039c-0.070 0.027-0.142 0.053-0.215 0.081-0.071 0.031-0.144 0.062-0.218 0.094-0.037 0.016-0.074 0.032-0.111 0.048s-0.073 0.035-0.111 0.053-0.148 0.073-0.224 0.11c-0.075 0.039-0.149 0.081-0.224 0.123-0.037 0.021-0.075 0.042-0.113 0.063s-0.074 0.045-0.112 0.068-0.149 0.093-0.224 0.14c-0.295 0.198-0.587 0.417-0.864 0.66-0.275 0.245-0.535 0.511-0.775 0.792-0.236 0.284-0.452 0.582-0.642 0.886-0.188 0.306-0.349 0.619-0.487 0.928-0.032 0.078-0.063 0.156-0.095 0.232-0.015 0.038-0.032 0.076-0.046 0.115s-0.027 0.077-0.040 0.115-0.054 0.151-0.078 0.226c-0.022 0.075-0.044 0.15-0.066 0.224-0.011 0.037-0.022 0.073-0.032 0.109s-0.018 0.073-0.027 0.109-0.035 0.143-0.052 0.213c-0.014 0.070-0.027 0.139-0.040 0.207-0.006 0.034-0.013 0.067-0.019 0.101-0.003 0.017-0.006 0.033-0.009 0.049s-0.005 0.033-0.007 0.050c-0.009 0.065-0.018 0.13-0.027 0.192-0.004 0.031-0.009 0.062-0.013 0.093s-0.006 0.061-0.009 0.091-0.010 0.118-0.015 0.174c-0.005 0.056-0.011 0.111-0.012 0.165-0 0.009-0.001 0.017-0.001 0.025-0.537 0.017-0.967 0.458-0.967 0.999 0 0.008 0 0.017 0.001 0.025zM1.149 7.011c0.001-0.003 0.001-0.006 0.002-0.009 0.010-0.051 0.026-0.102 0.040-0.155s0.030-0.107 0.045-0.163c0.008-0.028 0.015-0.056 0.024-0.084s0.019-0.057 0.028-0.086 0.038-0.116 0.058-0.176c0.005-0.015 0.010-0.030 0.015-0.045s0.012-0.030 0.017-0.045 0.023-0.060 0.035-0.091 0.048-0.123 0.073-0.186c0.028-0.062 0.056-0.125 0.084-0.189 0.014-0.032 0.028-0.064 0.043-0.096s0.032-0.064 0.048-0.096 0.065-0.128 0.098-0.194c0.034-0.065 0.073-0.128 0.109-0.194 0.018-0.032 0.037-0.065 0.056-0.098s0.040-0.064 0.061-0.096c0.041-0.064 0.082-0.129 0.124-0.194 0.176-0.255 0.369-0.506 0.583-0.744 0.217-0.236 0.451-0.459 0.697-0.665 0.25-0.202 0.511-0.385 0.776-0.547 0.268-0.159 0.541-0.294 0.808-0.41 0.068-0.027 0.135-0.053 0.202-0.079 0.033-0.013 0.066-0.027 0.099-0.038s0.067-0.022 0.1-0.033 0.131-0.045 0.196-0.065c0.065-0.018 0.13-0.036 0.194-0.054 0.032-0.009 0.063-0.019 0.095-0.026s0.063-0.014 0.094-0.021 0.123-0.028 0.184-0.042c0.061-0.011 0.12-0.021 0.179-0.032 0.029-0.005 0.058-0.010 0.087-0.015 0.014-0.003 0.029-0.005 0.043-0.008s0.029-0.003 0.043-0.005c0.056-0.007 0.112-0.014 0.166-0.020 0.027-0.003 0.053-0.007 0.080-0.010s0.053-0.004 0.078-0.006 0.102-0.007 0.15-0.011c0.049-0.003 0.095-0.008 0.142-0.008 0.091-0.002 0.177-0.004 0.256-0.006 0.073 0.003 0.14 0.005 0.2 0.007 0.030 0.001 0.058 0.002 0.085 0.002 0.033 0.002 0.064 0.004 0.093 0.006 0.033 0.002 0.063 0.004 0.091 0.006 0.051 0.008 0.103 0.012 0.156 0.012 0.007 0 0.015-0 0.022-0.001 0.002 0 0.004 0 0.004 0v-0c0.487-0.012 0.887-0.372 0.962-0.84 0.008 0.002 0.017 0.004 0.025 0.006 0.051 0.010 0.102 0.026 0.155 0.040s0.107 0.030 0.163 0.045c0.028 0.008 0.056 0.015 0.084 0.024s0.057 0.019 0.086 0.028 0.116 0.038 0.176 0.058c0.015 0.005 0.030 0.010 0.045 0.015s0.030 0.012 0.045 0.017 0.060 0.023 0.091 0.035 0.123 0.048 0.186 0.073c0.062 0.028 0.125 0.056 0.189 0.084 0.032 0.014 0.064 0.028 0.096 0.043s0.064 0.032 0.096 0.048 0.128 0.065 0.194 0.098c0.065 0.034 0.129 0.073 0.194 0.109 0.032 0.018 0.065 0.037 0.098 0.056s0.064 0.040 0.096 0.061 0.129 0.082 0.194 0.124c0.255 0.176 0.506 0.369 0.744 0.583 0.236 0.217 0.459 0.451 0.665 0.697 0.202 0.25 0.385 0.511 0.547 0.776 0.159 0.268 0.294 0.541 0.41 0.808 0.027 0.068 0.053 0.135 0.079 0.202 0.013 0.033 0.027 0.066 0.038 0.099s0.022 0.067 0.033 0.1 0.045 0.131 0.065 0.196c0.018 0.065 0.036 0.13 0.054 0.194 0.009 0.032 0.019 0.063 0.026 0.095s0.014 0.063 0.021 0.094 0.028 0.123 0.042 0.184c0.011 0.061 0.021 0.12 0.032 0.179 0.005 0.029 0.010 0.058 0.015 0.087 0.003 0.014 0.005 0.029 0.008 0.043s0.003 0.029 0.005 0.043c0.007 0.056 0.014 0.112 0.020 0.166 0.003 0.027 0.007 0.053 0.010 0.080s0.004 0.053 0.006 0.078 0.007 0.102 0.011 0.15c0.003 0.049 0.008 0.095 0.008 0.142 0.002 0.091 0.004 0.177 0.006 0.256-0.003 0.073-0.005 0.14-0.007 0.2-0.001 0.030-0.002 0.058-0.002 0.085-0.002 0.033-0.004 0.064-0.006 0.093-0.002 0.033-0.004 0.063-0.006 0.091-0.008 0.051-0.012 0.103-0.012 0.156 0 0.007 0 0.015 0.001 0.022-0 0.002-0 0.004-0 0.004h0c0.012 0.481 0.363 0.877 0.823 0.959-0.001 0.005-0.002 0.009-0.003 0.014-0.010 0.051-0.025 0.102-0.040 0.155s-0.030 0.107-0.045 0.163c-0.008 0.028-0.015 0.056-0.024 0.084s-0.019 0.057-0.028 0.086-0.039 0.116-0.058 0.176c-0.005 0.015-0.010 0.030-0.015 0.045s-0.012 0.030-0.017 0.045-0.023 0.060-0.035 0.091-0.048 0.123-0.073 0.186c-0.028 0.062-0.056 0.125-0.084 0.189-0.014 0.032-0.028 0.064-0.043 0.096s-0.032 0.064-0.048 0.096-0.065 0.128-0.098 0.194c-0.034 0.065-0.073 0.129-0.109 0.194-0.018 0.032-0.037 0.065-0.056 0.098s-0.040 0.064-0.061 0.096-0.082 0.129-0.124 0.194c-0.176 0.255-0.369 0.506-0.583 0.744-0.217 0.236-0.451 0.459-0.697 0.665-0.25 0.202-0.511 0.385-0.776 0.547-0.268 0.159-0.541 0.294-0.808 0.41-0.068 0.027-0.135 0.053-0.202 0.079-0.033 0.013-0.066 0.027-0.099 0.038s-0.067 0.022-0.1 0.033-0.131 0.045-0.196 0.065c-0.065 0.018-0.13 0.036-0.194 0.054-0.032 0.009-0.063 0.019-0.095 0.026s-0.063 0.014-0.094 0.021-0.123 0.028-0.184 0.042c-0.061 0.011-0.12 0.021-0.179 0.032-0.029 0.005-0.058 0.010-0.087 0.015-0.014 0.003-0.028 0.005-0.043 0.008s-0.029 0.003-0.043 0.005c-0.056 0.007-0.112 0.014-0.166 0.020-0.027 0.003-0.053 0.007-0.080 0.010s-0.053 0.004-0.078 0.006-0.102 0.007-0.15 0.011c-0.049 0.003-0.095 0.008-0.142 0.008-0.091 0.002-0.177 0.004-0.256 0.006-0.073-0.003-0.14-0.005-0.2-0.007-0.030-0.001-0.058-0.002-0.085-0.002-0.033-0.002-0.064-0.004-0.093-0.006-0.033-0.002-0.063-0.004-0.091-0.006-0.051-0.008-0.103-0.012-0.156-0.012-0.007 0-0.015 0-0.022 0.001-0.002-0-0.003-0-0.003-0v0c-0.484 0.012-0.883 0.369-0.961 0.834-0.050-0.010-0.101-0.025-0.153-0.039s-0.107-0.030-0.163-0.045c-0.028-0.008-0.056-0.015-0.084-0.024s-0.057-0.019-0.086-0.028-0.116-0.039-0.176-0.058c-0.015-0.005-0.030-0.010-0.045-0.015s-0.030-0.012-0.045-0.017-0.060-0.023-0.091-0.035-0.123-0.048-0.186-0.073c-0.062-0.028-0.125-0.056-0.189-0.084-0.032-0.014-0.064-0.028-0.096-0.043s-0.064-0.032-0.096-0.048-0.128-0.065-0.194-0.098c-0.065-0.034-0.129-0.073-0.194-0.109-0.032-0.018-0.065-0.037-0.098-0.056s-0.064-0.040-0.096-0.061c-0.064-0.041-0.129-0.082-0.194-0.124-0.255-0.175-0.506-0.369-0.744-0.583-0.236-0.217-0.459-0.451-0.665-0.697-0.202-0.25-0.385-0.511-0.547-0.776-0.159-0.268-0.294-0.541-0.41-0.808-0.027-0.068-0.053-0.135-0.079-0.202-0.013-0.033-0.027-0.066-0.038-0.099s-0.022-0.067-0.033-0.1-0.045-0.131-0.065-0.196c-0.018-0.065-0.036-0.13-0.054-0.194-0.009-0.032-0.019-0.063-0.026-0.095s-0.014-0.063-0.021-0.094-0.028-0.123-0.042-0.184c-0.011-0.061-0.021-0.12-0.032-0.179-0.005-0.029-0.010-0.058-0.015-0.087-0.003-0.014-0.005-0.028-0.008-0.043s-0.003-0.029-0.005-0.043c-0.007-0.056-0.014-0.112-0.020-0.166-0.003-0.027-0.007-0.053-0.010-0.080s-0.004-0.053-0.006-0.078-0.007-0.101-0.011-0.15c-0.003-0.049-0.008-0.095-0.008-0.142-0.002-0.091-0.004-0.177-0.006-0.256 0.003-0.073 0.005-0.14 0.007-0.2 0.001-0.030 0.002-0.058 0.002-0.085 0.002-0.033 0.004-0.064 0.006-0.093 0.002-0.033 0.004-0.063 0.006-0.091 0.008-0.051 0.012-0.103 0.012-0.156 0-0.007-0-0.015-0.001-0.022 0-0.002 0-0.003 0-0.003h-0c-0.012-0.49-0.377-0.893-0.851-0.964z"></path><path class="[CURRENT_ICON_CLASS]-7" d="M16 6.5l-3.527-0.353 2.245-2.743-2.121-2.121-2.743 2.245-0.353-3.527h-3l-0.353 3.527-2.743-2.245-2.121 2.121 2.245 2.743-3.527 0.353v3l3.527 0.353-2.245 2.743 2.121 2.121 2.743-2.245 0.353 3.527h3l0.353-3.527 2.743 2.245 2.121-2.121-2.245-2.743 3.527-0.353v-3zM11 6.757v2.485l-1.757 1.757h-2.485l-1.757-1.757v-2.485l1.757-1.757h2.485l1.757 1.757z"></path><path class="[CURRENT_ICON_CLASS]-8" d="M13.657 2.343c-1.448-1.448-3.447-2.343-5.657-2.343-3.429 0-6.355 2.158-7.492 5.19l1.873 0.702c0.853-2.274 3.047-3.893 5.619-3.893 1.657 0 3.157 0.672 4.242 1.758l-2.242 2.242h6v-6l-2.343 2.343zM8 14c-1.657 0-3.157-0.672-4.242-1.758l2.242-2.242h-6v6l2.344-2.344c1.448 1.448 3.447 2.344 5.656 2.344 3.43 0 6.355-2.158 7.492-5.19l-1.873-0.702c-0.853 2.274-3.047 3.893-5.619 3.893z"></path><path class="[CURRENT_ICON_CLASS]-9" d="M8 3.25c-1.566 0-2.962 0.731-3.849 1.863l-1.2-0.9c1.161-1.496 2.992-2.464 5.048-2.464v-1.75l2.5 2.5-2.5 2.5v-1.75zM8 12.75c1.566 0 2.962-0.731 3.849-1.863l1.2 0.9c-1.161 1.496-2.992 2.464-5.048 2.464v1.75l-2.5-2.5 2.5-2.5v1.75zM3.15 8c0 1.568 0.78 2.961 1.98 3.827l-0.9 1.2c-1.564-1.139-2.58-2.968-2.58-5.026h-1.65l2.5-2.5 2.5 2.5h-1.85zM14.35 8h1.65l-2.5 2.5-2.5-2.5h1.85c0-1.568-0.78-2.961-1.98-3.827l0.9-1.2c1.564 1.139 2.58 2.968 2.58 5.026z"></path><path class="[CURRENT_ICON_CLASS]-10" d="M12.999 3.23v0 0zM13.032 8c1.631-1.56 2.423-3.087 1.896-4-0.301-0.521-0.99-0.77-1.929-0.77v0.75c0.659 0 1.137 0.148 1.28 0.395 0.113 0.195 0.050 0.496-0.023 0.713-0.139 0.417-0.442 0.917-0.876 1.444-0.263 0.32-0.567 0.643-0.904 0.963-0.465-0.402-0.982-0.801-1.544-1.188-0.055-0.679-0.142-1.327-0.257-1.93 0.878-0.26 1.675-0.397 2.323-0.397l0-0.75c-0 0-0 0-0 0-0.706 0-1.553 0.141-2.482 0.413-0.535-2.192-1.462-3.642-2.516-3.642s-1.981 1.45-2.516 3.642c-0.929-0.271-1.777-0.412-2.482-0.412-0.939 0-1.629 0.249-1.93 0.77-0.527 0.913 0.265 2.44 1.896 4-1.631 1.559-2.423 3.087-1.896 4 0.301 0.521 0.99 0.77 1.93 0.77 0.706 0 1.553-0.141 2.482-0.412 0.535 2.192 1.462 3.642 2.516 3.642s1.981-1.45 2.516-3.642c0.929 0.271 1.777 0.412 2.482 0.412 0.939 0 1.629-0.249 1.93-0.77 0.527-0.913-0.265-2.441-1.896-4zM11.915 8c-0.291 0.248-0.601 0.493-0.927 0.734 0.008-0.242 0.013-0.487 0.013-0.734s-0.004-0.492-0.013-0.734c0.327 0.241 0.637 0.486 0.927 0.734zM9.958 11.389c-0.36-0.128-0.728-0.274-1.098-0.435 0.213-0.113 0.426-0.232 0.64-0.355s0.424-0.25 0.63-0.378c-0.045 0.403-0.103 0.793-0.172 1.169zM9.125 9.949c-0.372 0.214-0.748 0.416-1.125 0.603-0.377-0.187-0.753-0.389-1.125-0.603-0.375-0.216-0.737-0.441-1.086-0.672-0.026-0.417-0.039-0.844-0.039-1.277s0.013-0.859 0.039-1.276c0.349-0.231 0.711-0.456 1.086-0.672 0.372-0.215 0.748-0.416 1.125-0.603 0.377 0.187 0.753 0.389 1.125 0.603 0.375 0.216 0.737 0.441 1.086 0.672 0.026 0.417 0.039 0.844 0.039 1.276s-0.013 0.859-0.039 1.277c-0.349 0.231-0.711 0.456-1.086 0.672zM5.87 10.22c0.205 0.128 0.415 0.254 0.63 0.378s0.427 0.242 0.64 0.355c-0.37 0.162-0.738 0.307-1.098 0.435-0.069-0.375-0.127-0.766-0.172-1.168zM5.013 8.734c-0.327-0.241-0.637-0.486-0.927-0.734 0.291-0.248 0.601-0.494 0.927-0.734-0.008 0.242-0.013 0.487-0.013 0.734s0.004 0.492 0.013 0.734zM6.042 4.612c0.36 0.128 0.728 0.274 1.098 0.435-0.213 0.113-0.426 0.232-0.64 0.355s-0.424 0.25-0.63 0.378c0.045-0.403 0.103-0.793 0.172-1.168zM9.5 5.402c-0.214-0.123-0.427-0.242-0.64-0.355 0.37-0.162 0.738-0.307 1.098-0.435 0.069 0.375 0.127 0.766 0.172 1.168-0.205-0.128-0.415-0.254-0.63-0.378zM6.581 2.607c0.24-0.639 0.521-1.151 0.813-1.48 0.152-0.172 0.381-0.376 0.607-0.376s0.454 0.205 0.607 0.376c0.292 0.329 0.573 0.841 0.813 1.48 0.146 0.388 0.273 0.812 0.382 1.265-0.58 0.202-1.185 0.45-1.801 0.743-0.616-0.292-1.221-0.541-1.801-0.743 0.109-0.453 0.237-0.877 0.382-1.265zM2.62 6.532c-0.434-0.527-0.736-1.026-0.876-1.444-0.073-0.218-0.135-0.518-0.023-0.713 0.143-0.247 0.621-0.395 1.28-0.395h0c0.648 0 1.445 0.137 2.323 0.397-0.115 0.603-0.202 1.251-0.257 1.93-0.561 0.387-1.079 0.787-1.544 1.188-0.338-0.321-0.641-0.643-0.904-0.963zM3.002 12.020c-0.659 0-1.137-0.148-1.28-0.395-0.113-0.195-0.050-0.496 0.023-0.713 0.139-0.417 0.442-0.917 0.876-1.444 0.263-0.32 0.567-0.643 0.904-0.963 0.465 0.402 0.982 0.801 1.544 1.188 0.055 0.679 0.142 1.327 0.257 1.93-0.878 0.26-1.675 0.397-2.323 0.397zM9.419 13.393c-0.24 0.639-0.521 1.151-0.813 1.48-0.152 0.172-0.381 0.376-0.607 0.376s-0.454-0.205-0.607-0.376c-0.292-0.329-0.573-0.841-0.813-1.48-0.146-0.388-0.273-0.812-0.382-1.265 0.58-0.202 1.185-0.45 1.801-0.743 0.616 0.292 1.221 0.541 1.801 0.743-0.109 0.453-0.236 0.877-0.382 1.265zM14.256 10.912c0.073 0.218 0.135 0.518 0.023 0.713-0.143 0.248-0.622 0.395-1.28 0.395-0.648 0-1.445-0.137-2.323-0.397 0.115-0.603 0.202-1.251 0.257-1.93 0.561-0.387 1.079-0.787 1.544-1.188 0.338 0.321 0.641 0.643 0.904 0.963 0.434 0.527 0.736 1.027 0.876 1.444zM6.75 8c0-0.69 0.56-1.25 1.25-1.25s1.25 0.56 1.25 1.25c0 0.69-0.56 1.25-1.25 1.25s-1.25-0.56-1.25-1.25z"></path><path class="[CURRENT_ICON_CLASS]-11" d="M7.282 8.718l-5-5-2.282 2.282v-6h6l-2.282 2.282 5 5zM8 0c4.418 0 8 3.582 8 8s-3.582 8-8 8c-4.418 0-8-3.582-8-8h2c0 3.314 2.686 6 6 6s6-2.686 6-6c0-3.314-2.686-6-6-6v-2z"></path></svg>',
|
10 |
+
slideshow:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[ICON_CLASS]-play-default" d="M15.28 8.277l-11.857 6.589q-0.205 0.116-0.353 0.027t-0.147-0.321v-13.143q0-0.232 0.147-0.321t0.353 0.027l11.857 6.589q0.205 0.116 0.205 0.277t-0.205 0.277z"></path><path class="[ICON_CLASS]-play-flat" d="M4.8 3.677l7.313 4.656-7.313 4.656v-9.313z"></path><path class="[ICON_CLASS]-pause-default" d="M14.86 1.714v12.571q0 0.232-0.17 0.402t-0.402 0.17h-4.571q-0.232 0-0.402-0.17t-0.17-0.402v-12.571q0-0.232 0.17-0.402t0.402-0.17h4.571q0.232 0 0.402 0.17t0.17 0.402zM6.841 1.714v12.571q0 0.232-0.17 0.402t-0.402 0.17h-4.571q-0.232 0-0.402-0.17t-0.17-0.402v-12.571q0-0.232 0.17-0.402t0.402-0.17h4.571q0.232 0 0.402 0.17t0.17 0.402z"></path><path class="[ICON_CLASS]-pause-flat" d="M9.344 3.677h2.656v9.313h-2.656v-9.313zM4 12.99v-9.313h2.656v9.313h-2.656z"></path></svg>',fullscreen:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="[ICON_CLASS]-maximize-default" d="M16 0v6l-2.16-2.16-3.313 3.313-1.679-1.679 3.313-3.313-2.16-2.16zM3.84 2.16l3.313 3.313-1.679 1.679-3.313-3.313-2.16 2.16v-6h6zM13.84 12.16l2.16-2.16v6h-6l2.16-2.16-3.313-3.313 1.679-1.679zM7.152 10.527l-3.313 3.313 2.16 2.16h-6v-6l2.16 2.16 3.313-3.313z"></path><path class="[ICON_CLASS]-maximize-flat" d="M11.333 1h2q0.828 0 1.414 0.586t0.586 1.414v2q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2q0-0.276-0.195-0.471t-0.471-0.195h-2q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195zM1.333 11q0.276 0 0.471 0.195t0.195 0.471v2q0 0.276 0.195 0.471t0.471 0.195h2q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2q-0.828 0-1.414-0.586t-0.586-1.414v-2q0-0.276 0.195-0.471t0.471-0.195zM2.667 1h2q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2q-0.276 0-0.471 0.195t-0.195 0.471v2q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2q0-0.828 0.586-1.414t1.414-0.586zM14.667 11q0.276 0 0.471 0.195t0.195 0.471v2q0 0.828-0.586 1.414t-1.414 0.586h-2q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195h2q0.276 0 0.471-0.195t0.195-0.471v-2q0-0.276 0.195-0.471t0.471-0.195z"></path><path class="[ICON_CLASS]-minimize-default" d="M1 9h6v6l-2.16-2.16-3.156 3.156-1.679-1.679 3.156-3.156zM12.84 11.16l3.156 3.156-1.679 1.679-3.156-3.156-2.16 2.16v-6h6zM15 7h-6v-6l2.16 2.16 3.156-3.156 1.679 1.679-3.156 3.156zM4.84 3.16l2.16-2.16v6h-6l2.16-2.16-3.156-3.156 1.679-1.679z"></path><path class="[ICON_CLASS]-minimize-flat" d="M11.333 1q0.276 0 0.471 0.195t0.195 0.471v2q0 0.276 0.195 0.471t0.471 0.195h2q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2q-0.828 0-1.414-0.586t-0.586-1.414v-2q0-0.276 0.195-0.471t0.471-0.195zM1.333 11h2q0.828 0 1.414 0.586t0.586 1.414v2q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2q0-0.276-0.195-0.471t-0.471-0.195h-2q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195zM4.667 1q0.276 0 0.471 0.195t0.195 0.471v2q0 0.828-0.586 1.414t-1.414 0.586h-2q-0.276 0-0.471-0.195t-0.195-0.471 0.195-0.471 0.471-0.195h2q0.276 0 0.471-0.195t0.195-0.471v-2q0-0.276 0.195-0.471t0.471-0.195zM12.667 11h2q0.276 0 0.471 0.195t0.195 0.471-0.195 0.471-0.471 0.195h-2q-0.276 0-0.471 0.195t-0.195 0.471v2q0 0.276-0.195 0.471t-0.471 0.195-0.471-0.195-0.195-0.471v-2q0-0.828 0.586-1.414t1.414-0.586z"></path></svg>',social:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M13.5 11c-0.706 0-1.342 0.293-1.797 0.763l-6.734-3.367c0.021-0.129 0.032-0.261 0.032-0.396s-0.011-0.267-0.032-0.396l6.734-3.367c0.455 0.47 1.091 0.763 1.797 0.763 1.381 0 2.5-1.119 2.5-2.5s-1.119-2.5-2.5-2.5-2.5 1.119-2.5 2.5c0 0.135 0.011 0.267 0.031 0.396l-6.734 3.367c-0.455-0.47-1.091-0.763-1.797-0.763-1.381 0-2.5 1.119-2.5 2.5s1.119 2.5 2.5 2.5c0.706 0 1.343-0.293 1.797-0.763l6.734 3.367c-0.021 0.129-0.031 0.261-0.031 0.396 0 1.381 1.119 2.5 2.5 2.5s2.5-1.119 2.5-2.5c0-1.381-1.119-2.5-2.5-2.5z"></path></svg>',buffer:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M0 12.448q0.176-0.24 0.504-0.408t0.784-0.32 0.648-0.248q0.304 0 0.536 0.072t0.536 0.24 0.4 0.2q0.752 0.336 4.16 1.904 0.304 0.064 0.568 0t0.632-0.28 0.384-0.232q0.32-0.144 1.224-0.552t1.4-0.632q0.064-0.032 0.664-0.336t0.968-0.384q0.208-0.032 0.44 0.016t0.376 0.12 0.368 0.208 0.288 0.168 0.248 0.096 0.296 0.128 0.176 0.176q0.048 0.064 0.064 0.224-0.16 0.208-0.496 0.384t-0.816 0.352-0.64 0.256q-0.688 0.32-2.056 0.984t-2.056 0.984q-0.112 0.048-0.336 0.184t-0.376 0.208-0.408 0.176-0.44 0.112-0.472-0.024l-4.224-1.968q-0.096-0.048-0.512-0.224t-0.824-0.352-0.856-0.384-0.744-0.376-0.344-0.264q-0.064-0.064-0.064-0.208zM0 8.16q0.176-0.24 0.504-0.4t0.8-0.32 0.664-0.24q0.304 0 0.544 0.072t0.552 0.24 0.408 0.216q0.672 0.304 2.024 0.928t2.040 0.944q0.304 0.080 0.592 0.008t0.624-0.272 0.4-0.232q1.088-0.512 2.56-1.152 0.176-0.080 0.504-0.264t0.616-0.312 0.576-0.176q0.256-0.048 0.504 0.016t0.6 0.272 0.368 0.208q0.080 0.048 0.248 0.104t0.288 0.128 0.184 0.168q0.048 0.080 0.064 0.224-0.16 0.224-0.504 0.408t-0.84 0.36-0.656 0.256q-0.768 0.368-2.168 1.040t-1.96 0.944q-0.112 0.048-0.416 0.224t-0.464 0.24-0.52 0.16-0.568 0q-3.424-1.616-4.16-1.952-0.096-0.048-0.704-0.304t-1.112-0.48-0.984-0.472-0.544-0.36q-0.064-0.064-0.064-0.224zM0 3.888q0.16-0.24 0.504-0.424t0.84-0.36 0.656-0.256l5.568-2.592q0.48 0 0.856 0.112t0.904 0.416 0.64 0.352q0.624 0.288 1.872 0.872t1.872 0.872q0.064 0.032 0.584 0.24t0.872 0.384 0.432 0.32q0.048 0.064 0.064 0.208-0.144 0.208-0.416 0.36t-0.696 0.304-0.552 0.216q-0.752 0.352-2.24 1.064t-2.224 1.064q-0.096 0.048-0.32 0.176t-0.368 0.2-0.4 0.168-0.432 0.096-0.448-0.016q-3.92-1.824-4.096-1.904-0.064-0.032-1.008-0.44t-1.632-0.744-0.768-0.48q-0.064-0.064-0.064-0.208z"></path></svg>',digg:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="18" height="16" viewBox="0 0 18 16"><path d="M-0.016 12.032v-5.952q0-0.208 0.208-0.208h2.816v-2.064q0-0.224 0.208-0.224h1.568v8.224q0 0.224-0.192 0.224h-4.608zM1.728 10.704h1.072q0.208 0 0.208-0.224v-3.296h-1.072q-0.208 0-0.208 0.224v3.296zM5.328 12.032v-5.952q0-0.208 0.208-0.208h1.568v5.936q0 0.224-0.192 0.224h-1.584zM5.328 4.912v-1.104q0-0.224 0.192-0.224h1.584v1.104q0 0.224-0.192 0.224h-1.584zM7.712 12.032v-5.952q0-0.208 0.208-0.208h4.608v8.064q0 0.208-0.208 0.208h-4.608l0.016-1.104q0-0.224 0.192-0.224h2.816v-0.784h-3.024zM9.472 10.704h1.072q0.192 0 0.192-0.224v-3.296h-1.072q-0.192 0-0.192 0.224v3.296zM13.136 13.040q0-0.224 0.208-0.224h2.816v-0.784h-3.024v-5.952q0-0.208 0.208-0.208h4.592v8.064q0 0.208-0.192 0.208h-4.608v-1.104zM14.88 10.704h1.072q0.208 0 0.208-0.224v-3.296h-1.072q-0.208 0-0.208 0.224v3.296z"></path></svg>',facebook:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="13" height="16" viewBox="0 0 13 16"><path d="M4.475 8.336v-3.056h2.464v-1.536q0-1.664 1.080-2.832t2.616-1.168h2.448v3.056h-2.448q-0.24 0-0.432 0.264t-0.192 0.648v1.568h3.072v3.056h-3.072v7.408h-3.072v-7.408h-2.464z"></path></svg>',linkedin:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="17" height="16" viewBox="0 0 17 16"><path d="M-0.080 1.686q0-0.799 0.559-1.319t1.455-0.52q0.879 0 1.423 0.512 0.559 0.528 0.559 1.375 0 0.767-0.543 1.279-0.559 0.528-1.471 0.528h-0.016q-0.879 0-1.423-0.528t-0.543-1.327zM0.128 15.673v-10.678h3.549v10.678h-3.549zM5.643 15.673h3.549v-5.963q0-0.559 0.128-0.863 0.224-0.543 0.679-0.919t1.143-0.376q1.79 0 1.79 2.414v5.707h3.549v-6.122q0-2.366-1.119-3.589t-2.957-1.223q-2.062 0-3.213 1.774v0.032h-0.016l0.016-0.032v-1.519h-3.549q0.032 0.512 0.032 3.181t-0.032 7.497z"></path></svg>',pinterest:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="13" height="16" viewBox="0 0 13 16"><path d="M0 5.792q0-1.008 0.424-2t1.216-1.84 2.080-1.376 2.856-0.528q2.544 0 4.176 1.568t1.632 3.696q0 2.736-1.384 4.52t-3.576 1.784q-0.72 0-1.352-0.336t-0.888-0.816l-0.64 2.528q-0.080 0.304-0.208 0.616t-0.28 0.6-0.304 0.544-0.304 0.48-0.264 0.376-0.208 0.264l-0.096 0.128q-0.048 0.064-0.128 0.048t-0.096-0.096q0-0.016-0.024-0.224t-0.048-0.44-0.048-0.6-0.016-0.712 0.048-0.76 0.12-0.768q0.176-0.752 1.184-5.008-0.128-0.256-0.208-0.616t-0.080-0.584l-0.016-0.24q0-1.024 0.52-1.704t1.256-0.68q0.592 0 0.92 0.392t0.328 0.984q0 0.368-0.136 0.904t-0.36 1.232-0.32 1.128q-0.16 0.72 0.28 1.248t1.176 0.528q1.264 0 2.088-1.432t0.824-3.464q0-1.552-1.008-2.536t-2.816-0.984q-2.016 0-3.272 1.296t-1.256 3.104q0 1.072 0.608 1.808 0.208 0.24 0.128 0.512-0.032 0.080-0.096 0.368t-0.096 0.368q-0.032 0.176-0.16 0.232t-0.288-0.008q-0.944-0.384-1.416-1.32t-0.472-2.184z"></path></svg>',reddit:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="19" height="16" viewBox="0 0 19 16"><path d="M0 7.696q0-0.992 0.792-1.696t1.8-0.704q0.992 0 1.68 0.576h0.080q2.144-1.312 5.36-1.312l0.080-0.064 1.12-4.272 3.872 0.576q0 0.016 0.032 0.016 0.016 0 0-0.016 0.032-0.016 0.184-0.248t0.232-0.296q0.544-0.512 1.312-0.512 0.784 0 1.32 0.52t0.536 1.304-0.536 1.344-1.32 0.56q-0.912 0-1.392-0.616t-0.48-1.544q-0.032 0.016-1.56-0.208t-1.752-0.272h-0.048q-0.032 0.032-0.264 0.856t-0.48 1.744-0.28 1.016v0.048l0.080 0.064q1.152 0 2.36 0.328t2.088 0.92l0.048 0.032q0.016-0.016 0.032-0.016t0.032-0.016q0.4-0.288 0.568-0.4t0.472-0.208 0.688-0.096q1.088 0 1.856 0.768t0.768 1.872q0 0.752-0.424 1.376t-1.112 0.96q0 3.12-4.16 4.848-0.656 0.288-0.896 0.368-0.512 0.16-1.456 0.304t-1.488 0.144q-1.92 0-3.696-0.56-0.032-0.032-1.152-0.608-1.52-0.816-2.44-1.856t-0.92-2.496h-0.080q-0.528-0.272-0.944-0.8l-0.144-0.192q-0.24-0.432-0.304-0.728t-0.064-0.808zM0.544 7.888q0 1.056 0.912 1.792 0.080-0.944 0.768-1.856t1.616-1.616q-0.592-0.416-1.312-0.416-0.784 0-1.384 0.648t-0.6 1.448zM2.176 10.224q0 0.864 0.496 1.664t1.272 1.368 1.64 0.952 1.68 0.544q1.2 0.224 2.336 0.224 1.968 0 3.728-0.632t2.96-1.96h-0.048q0.48-0.608 0.688-1.096t0.208-1.16q0-0.864-0.424-1.648t-1.112-1.344-1.472-0.968-1.6-0.616q-1.36-0.368-2.896-0.368-1.184 0-2.424 0.288t-2.4 0.864-1.896 1.592-0.736 2.296zM5.152 9.056q0-0.592 0.36-0.952t0.952-0.36 0.992 0.36 0.4 0.952q0 0.576-0.408 0.96t-0.984 0.384-0.944-0.384-0.368-0.96zM5.728 11.68h0.704q0.4 0.72 1.272 1.096t1.784 0.376q0.928 0 1.76-0.376t1.344-1.096h0.656q-0.4 0.992-1.488 1.536t-2.272 0.544q-1.152 0-2.264-0.552t-1.496-1.528zM11.104 9.056q0-0.608 0.368-0.96t0.976-0.352q0.544 0 0.928 0.384t0.384 0.928-0.384 0.944-0.928 0.4q-0.592 0-0.968-0.376t-0.376-0.968zM15.184 1.568q0 0.56 0.4 0.96t0.96 0.4q0.576 0 0.944-0.392t0.368-0.968q0-0.544-0.384-0.928t-0.928-0.384-0.952 0.392-0.408 0.92zM15.408 6.064q0.88 0.576 1.52 1.48t0.896 1.912q0.944-0.688 0.944-1.536 0-0.928-0.568-1.6t-1.48-0.672q-0.72 0-1.312 0.416z"></path></svg>',tumblr:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="10" height="16" viewBox="0 0 10 16"><path d="M0 6.304v-2.272q0.96-0.32 1.616-0.88 0.656-0.528 1.072-1.376 0.416-0.816 0.56-2.032h2.288v4.048h3.792v2.512h-3.792v4.096q0 1.376 0.144 1.792 0.144 0.384 0.544 0.624 0.544 0.32 1.216 0.32 1.232 0 2.416-0.784v2.512q-1.008 0.496-1.856 0.688-0.832 0.192-1.792 0.192-1.088 0-1.952-0.272-0.88-0.304-1.424-0.8-0.576-0.496-0.832-1.088-0.224-0.544-0.224-1.68v-5.6h-1.776z"></path></svg>',twitter:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="16" viewBox="0 0 20 16"><path d="M0 14.185q0.479 0.048 0.959 0.048 2.813 0 5.018-1.726-1.31-0.016-2.349-0.799t-1.422-1.998q0.32 0.064 0.751 0.064 0.559 0 1.071-0.144-1.406-0.272-2.325-1.382t-0.919-2.565v-0.048q0.847 0.479 1.838 0.495-0.831-0.543-1.318-1.43t-0.487-1.926q0-1.087 0.559-2.030 1.502 1.87 3.668 2.98t4.642 1.239q-0.112-0.527-0.112-0.927 0-1.662 1.183-2.845t2.861-1.183q1.742 0 2.94 1.278 1.39-0.288 2.557-0.991-0.447 1.454-1.758 2.237 1.167-0.144 2.301-0.639-0.767 1.199-1.998 2.093v0.527q0 1.614-0.471 3.236t-1.438 3.1-2.309 2.629-3.22 1.83-4.035 0.679q-3.34 0-6.185-1.806z"></path></svg>',email:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M15 2h-14c-0.55 0-1 0.45-1 1v10c0 0.55 0.45 1 1 1h14c0.55 0 1-0.45 1-1v-10c0-0.55-0.45-1-1-1zM14 4v0.719l-6 3.536-6-3.536v-0.719h12zM2 12v-5.54l6 3.536 6-3.536v5.54h-12z"></path></svg>',download:'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M8 9l4-4h-3v-4h-2v4h-3zM11.636 7.364l-1.121 1.121 4.064 1.515-6.579 2.453-6.579-2.453 4.064-1.515-1.121-1.121-4.364 1.636v4l8 3 8-3v-4z"></path></svg>'}},this.getGroup=function(b){var c="default",d=a.extend(!0,{},this.registered["default"]);return"string"==typeof b&&this.registered.hasOwnProperty(b)&&a.extend(!0,d,this.registered[b]),"object"==typeof b&&(c="custom",a.extend(!0,d,this.registered["default"],b)),{name:c,icons:d}},this.get=function(b,c){var d=this,e=d.getGroup(c),f="string"==typeof b&&e.icons.hasOwnProperty(b)?e.icons[b].replace(/\[ICON_CLASS]/g,d.className).replace(/\[CURRENT_ICON_CLASS]/g,d.className+"-"+b):null,g=[!1,b,e.name].map(function(a){return a===!1?d.className:d.className+"-"+a}).join(" ");return a(f).attr("class",g)},this},b.icons=new b.Icons}(jQuery,window.FooBox),function(a,b){b.Instance=function(c){this.id=null,"number"==typeof c?(this.id=c,b.instances[c-1]=this):this.id=b.instances.push(this),this.element=null,this.options=a.extend(!0,{},b.defaults),this.modal=new b.Modal(this),this.objects={},b.addons.load(this),b.handlers.load(this);var d=this;return this.raise=function(a,c){return b.raise(d,a,c)},this.init=function(c,e){d.element=b.isjQuery(c)?c:a(c),d.options=b.options.merge(d.options,e||{}),b.addons.call(d,"preinit",d.element,d.options),d.items.init(),d.items.array.length>0?(d.element.data("fbx_instance",d),d.options.containerCssClass&&d.element.addClass(d.options.containerCssClass),d.setup.bind(),d.modal.init(c,d.options),b.handlers.call(d,"init",d.element,d.options),d.raise("foobox.initialized"),a.isFunction(d.options.initCallback)&&d.options.initCallback.call(d)):d.destroy()},this.reinit=function(a){d.options=b.options.merge(d.options,a||{}),d.items.init(!0),d.items.array.length>0?(d.setup.bind(),d.modal.reinit(d.options),b.handlers.call(d,"reinit",d.options),d.raise("foobox.reinitialized")):d.destroy()},this.destroy=function(){b.addons.call(d,"destroy"),b.handlers.call(d,"destroy"),d.items.destroy(),d.modal.destroy(),d.element.removeClass("fbx-instance fbx-item").data({fbx_instance:null,fbx_p_instance:null}),d.id==b.instances.length?b.instances.splice(d.id-1,1):b.instances[d.id-1]=null,d.raise("foobox.destroy")},this.setup={bind:function(){a(d.options.externalSelector).off("click.fooboxExternal").on("click.fooboxExternal",function(c){c.preventDefault();var d=a(this).data("foobox"),e=a(d),f=e.data("fbx_instance")||e.data("fbx_p_instance");return e.length>0&&f instanceof b.Instance&&f.modal instanceof b.Modal&&f.modal.show(!0),!1})}},this.items={array:[],indexes:{prev:-1,current:0,next:1,direction:"*",set:function(a){var b=d.items.indexes.current;a=a||0,a=a>d.items.array.length-1?0:0>a?d.items.array.length-1:a;var c=a-1,e=a+1;d.items.indexes.current=a,d.items.indexes.prev=0>c?d.items.array.length-1:c,d.items.indexes.next=e>d.items.array.length-1?0:e,d.items.indexes.direction=d.items.indexes._direction(b,a,d.items.array.length-1)},_direction:function(a,b,c){return 0==b&&a==c?">":b==c&&0==a?"<":b>a?">":a>b?"<":"*"}},new_array:function(c){c=c||!1;var e,f,g,h=0;if(1==c){if(d.items.array.length>0){for(var i=0;i<d.items.array.length;i++)e=d.items.array[i],b.isjQuery(e.element)?0==e.element.parents(":first").length&&(d.items.array.splice(i,1),i-=1):e.option||(d.items.array.splice(i,1),i-=1);for(var j=0;j<d.items.array.length;j++)e=d.items.array[j],b.isjQuery(e.element)?(g=e.element.get(0),g.index=e.index=j):e.index=j}}else d.items.array=[];if(a.isArray(d.options.items))for(var k=0;k<d.options.items.length;k++)if(e=d.options.items[k],-1==d.items.indexOf(e))for(var l=0;l<d.objects.handlers.length;l++)if(d.objects.handlers[l].type==e.type){e.index=h,e.option=!0,e.handler=d.objects.handlers[l],e.handler.defaults(e),f=d.raise("foobox.parseItem",{element:null,item:e}),d.items.array.push(f.fb.item),h++;break}},init:function(b){b=b||!1,d.items.new_array(b);var c,e,f=function(a){return!a.noLightbox&&!a.panelHide};if(d.element.is(d.options.selector)&&!d.element.is(d.options.excludes)&&d.items.add(d.element))d.element.off("click.item").on("click.item",d.items.clicked);else if(d.element.is(".foogallery")&&(c=d.element.data("__FooGallery__"))&&c.items&&(e=c.items.available(f)).length>0){var g=a.map(e,function(a){return a.$anchor?a.$anchor.get(0):null});a(g).not(d.options.excludes).off("click.item").filter(function(){return d.items.add(this)}).on("click.item",d.items.clicked),d.element.on("click.item",".fbx-link",d.items.clicked)}else d.element.find(d.options.selector).not(d.options.excludes).off("click.item").filter(function(){return d.items.add(this)}).on("click.item",d.items.clicked),d.element.on("click.item",".fbx-link",d.items.clicked);d.items.rel()},destroy:function(){d.element.off("click.item",".fbx-link",d.items.clicked);var c,e;for(e=0;e<d.items.array.length;e++)c=d.items.array[e],a.isFunction(c.destroy)&&c.destroy(),b.isjQuery(c.element)&&c.element.off("click.item").removeClass("fbx-link").data("fbx_p_instance",null);d.items.array=[]},rel:function(){var c=d.options.rel||d.element.attr("rel")||(d.items.first(function(a){return b.isjQuery(a.element)?"string"==typeof a.element.attr("rel"):!1})||{element:a()}).element.attr("rel");"string"==typeof c&&a('[rel="'+c+'"]').not(d.options.excludes).not(d.element).off("click.item").filter(function(){return d.items.add(this)}).on("click.item",d.items.clicked)},indexOf:function(a,b){if(!a)return-1;b=b||"url";var c;for(c=0;c<d.items.array.length;c++)if(d.items.array[c][b]==a[b])return c;return-1},is:{first:function(a){return d.items.array&&0!=d.items.array.length?d.items.array[0].index==a.index:!1},last:function(a){return d.items.array&&0!=d.items.array.length?d.items.array[d.items.array.length-1].index==a.index:!1}},add:function(c){c=b.isjQuery(c)?c:a(c);var e=d.items.parse(c,d.items.array.length);if(null===e)return!1;var f=c.get(0),g=d.items.indexOf(e);-1!=g?(e=d.items.array[g],f.index=e.index):f.index=e.index=d.items.array.push(e)-1;var h=c.addClass("fbx-link").data("fbx_p_instance");return h instanceof b.Instance||c.data("fbx_p_instance",d),!0},get:function(c){c=b.isjQuery(c)?c:a(c);var e=null,f=c.get(0).index;return f&&f>0&&f<=d.items.array.length-1&&(e=d.items.array[f]),e},parse:function(c,e){c=b.isjQuery(c)?c:a(c);for(var f,g,h=0;h<d.objects.handlers.length;h++)if(d.objects.handlers[h].handles(c,d.element)){f=d.objects.handlers[h].parse(c),isNaN(e)||(f.index=e),g=d.raise("foobox.parseItem",{element:c,item:f});break}return"undefined"!=typeof g&&g.fb.item?g.fb.item:null},error:function(c){function e(c){var d=this;return d.FooBox=c,d.type="error",d.handles=function(){return!1},d.hasChanged=function(){return!1},d.defaults=function(){},d.parse=function(){},d.load=function(b,c,e,f){try{c.empty().append(b.content),a.isFunction(e)&&e(d.getSize(b))}catch(g){a.isFunction(f)&&f(g)}},d.getSize=function(a){return new b.Size(a.width,a.height)},d}if(d.items.array.length>c&&1==d.items.array[c].error)return d.items.array[c];var f,g,h=b.handlers.get(d,"html"),i=!1;return null==h&&(h=new e(d)),null!==d.options.error.match(/^#/i)&&a(d.options.error).length>0?(f=a(d.options.error),i=!0):f=a('<div class="fbx-error-msg" data-width="240" data-height="240"></div>').append(b.icons.get("error")).append(a("<p/>").text(d.options.error)),g=new b.Item(h.type,f.get(0),h),g.selector=1==i?d.options.error:null,g.index=c,g.error=!0,g.title=f.data("title")||null,g.description=f.data("description")||null,g.width=f.data("width")||240||null,g.height=f.data("height")||240||null,g.content=1==i?null:f,g.fullscreen=!0,g.handler=h,d.items.array[c]=g,g},first:function(a){for(var b=null,c=0;c<d.items.array.length;c++)if(a(d.items.array[c])){b=d.items.array[c];break}return b},current:function(){return d.items.array[d.items.indexes.current]},prev:function(){return d.items.array[d.items.indexes.prev]},next:function(){return d.items.array[d.items.indexes.next]},multiple:function(){return d.items.array.length>1},clicked:function(a){return a.preventDefault(),d.items.indexes.set(this.index),d.modal.show(!0),!1}},this}}(jQuery,window.FooBox),function(a,b){b.Modal=function(c){this.FooBox=c,this.element=null,this.loaderTimeout=new b.Timer,this._first=!1,this._busy=!1,this._closed=!1;var d=this;return this.init=function(a,b){d.setup.html(),d.setup.options(b),d.setup.bind()},this.reinit=function(a){d.setup.options(a)},this.destroy=function(){b.isjQuery(d.element)&&d.element.remove()},this.setup={html:function(){if(!b.isjQuery(d.element)){d.element=a('<div class="fbx-modal"></div>'),d.element.append('<div class="fbx-inner-spacer"></div>');var c=a('<div class="fbx-stage"></div>');c.append('<div class="fbx-item-current"></div>'),c.append('<div class="fbx-item-next"></div>');var e=a('<div class="fbx-inner fbx-inner-shadow"></div>');e.append(c),e.append(a('<a class="fbx-prev fbx-btn-transition fbx-btn-shadow"></a>').append(b.icons.get("prev"))),e.append('<div class="fbx-credit"><a target="_blank" href=""><em></em><span> FooBox</span></a></div>'),e.append('<span class="fbx-count" />'),e.append(a('<a class="fbx-next fbx-btn-transition fbx-btn-shadow"></a>').append(b.icons.get("next"))),e.append(a('<a class="fbx-close fbx-btn-transition fbx-btn-shadow"></a>').append(b.icons.get("close"))),d.element.append(a('<div class="fbx-loader"></div>').append(b.icons.get("spinner"))),d.element.append(e),d.FooBox.raise("foobox.setupHtml"),a("body").append(d.element)}},options:function(a){var c;d.element.removeClass().addClass("fbx-modal").addClass("fbx-"+d.FooBox.id).addClass(d.FooBox.element.data("style")||a.style).addClass(d.FooBox.element.data("theme")||a.theme).addClass(d.FooBox.element.data("modal-class")).addClass(a.modalClass).data("fbx_instance",d.FooBox),d.element.addClass(b.browser.css),c=a.affiliate.enabled?"":"none",d.element.find(".fbx-credit").css("display",c),a.affiliate.enabled&&(d.element.find(".fbx-credit > a").attr("href",a.affiliate.url),d.element.find(".fbx-credit > a > em").text(a.affiliate.prefix)),c=a.showCount&&d.FooBox.items.multiple()?"":"none",d.element.find(".fbx-count").css("display",c),a.showButtons&&d.FooBox.items.multiple()||d.element.addClass("fbx-no-buttons"),d.FooBox.raise("foobox.setupOptions")},bind:function(){1==d.FooBox.options.closeOnOverlayClick&&d.element.off("click.foobox").on("click.foobox",function(b){1==d.FooBox.options.closeOnOverlayClick&&a(b.target).is(".fbx-modal")&&d.close()}),d.element.find(".fbx-close").off("click.foobox").on("click.foobox",function(a){a.preventDefault(),a.stopPropagation(),d.close()}).end().find(".fbx-prev").off("click.foobox").on("click.foobox",function(b){b.preventDefault(),b.stopPropagation(),a(this).hasClass("fbx-disabled")||d.prev()}).end().find(".fbx-next").off("click.foobox").on("click.foobox",function(b){b.preventDefault(),b.stopPropagation(),a(this).hasClass("fbx-disabled")||d.next()})}},this.prioritize=function(){b.instances.length>1&&d.element.nextAll(".fbx-modal:last").after(d.element)},this.preload=function(){if(1==d.FooBox.options.preload){var a=d.FooBox.items.prev();a&&a.handler.preload(a);var b=d.FooBox.items.next();b&&b.handler.preload(b)}},this.show=function(b){function c(a){if(d.loaderTimeout.stop(),d.element.removeClass("fbx-loading"),d._busy=!1,console.error(a),!d.FooBox.raise("foobox.onError",{error:a}).isDefaultPrevented()){var c=d.FooBox.items.error(e.index);null!=c&&d.show(b)}}var e=d.FooBox.items.current();if(e){if(b=b||!1,d._first=b,d._busy=!0,d._closed=!1,a("body").addClass("fbx-active"),d.FooBox.options.hideScrollbars&&a("html").addClass("fbx-no-scroll"),1==e.error?d.element.addClass("fbx-error"):d.element.removeClass("fbx-error"),!d.element.hasClass("fbx-show")){d.prioritize();var f=d.getMaxSize();d.element.addClass("fbx-loading").find(".fbx-inner").css({width:f.width,height:f.height,"margin-top":f.marginTop,"margin-left":f.marginLeft})}var g=d.element.find(".fbx-item-current"),h=d.element.find(".fbx-item-next");if(h.css({opacity:0,visibility:"hidden"}),d.element.find(".fbx-count").text(d.FooBox.options.countMessage.replace("%index",""+(d.FooBox.items.indexes.current+1)).replace("%total",""+d.FooBox.items.array.length)),d.FooBox.raise("foobox.beforeLoad",{item:e}).isDefaultPrevented())return void(d._busy=!1);if(e.handler.hasChanged(e)){var i=e.index,j=e.element.get(0);e=e.handler.parse(e.element);var k=d.FooBox.raise("foobox.parseItem",{element:e.element,item:e});j.index=k.fb.item.index=i,d.FooBox.items.array[i]=k.fb.item}d.preload(),d.loaderTimeout.start(function(){d.element.addClass("fbx-loading")},d.FooBox.options.loaderTimeout),setTimeout(function(){d.checkForLoop(e),e.handler.load(e,h,function(a){return 1==d._closed?void(d._busy=!1):void d.transitionOut(g,function(){return g.find("video").each(function(){this.pause(),this.removeAttribute("src"),this.load()}),1==d._closed?void(d._busy=!1):void d.resize(a,h,function(){return 1==d._closed?void(d._busy=!1):(d.loaderTimeout.stop(),h.css({opacity:"",visibility:""}),void d.transitionIn(h,function(){return 1==d._closed?void(d._busy=!1):(h.add(g).toggleClass("fbx-item-next fbx-item-current"),g.empty(),void(d.element.hasClass("fbx-show")?(d.element.removeClass("fbx-loading"),d.FooBox.raise("foobox.afterLoad",{item:e}),d.triggerFooGalleryLayout(h),d._busy=!1):d.FooBox.raise("foobox.beforeShow",{item:e}).isDefaultPrevented()||(d.element.removeClass("fbx-loading").addClass("fbx-show"),d.FooBox.raise("foobox.afterShow",{item:e}),d.FooBox.raise("foobox.afterLoad",{item:e}),d.triggerFooGalleryLayout(h),d._busy=!1)))},c))},c)},c)},c)},d.FooBox.options.loadDelay)}},this.triggerFooGalleryLayout=function(b){window.FooGallery&&b.find(".foogallery").each(function(){var b=a(this).data("__FooGallery__");b&&b.initialized&&b.layout()})},this.checkForLoop=function(a){1!=d.FooBox.options.loop&&(d.element.find(".fbx-prev, .fbx-next").removeClass("fbx-disabled"),d.FooBox.items.is.first(a)&&d.element.find(".fbx-prev").addClass("fbx-disabled"),d.FooBox.items.is.last(a)&&d.element.find(".fbx-next").addClass("fbx-disabled"))},this.getMaxSize=function(){var a=d.element.find(".fbx-inner"),c=d.element.find(".fbx-inner-spacer"),e=parseInt(c.css("padding-top"),0),f=parseInt(c.css("padding-bottom"),0),g=parseInt(c.css("padding-left"),0),h=parseInt(c.css("padding-right"),0),i=parseInt(a.css("border-top-width"),0),j=parseInt(a.css("border-bottom-width"),0),k=parseInt(a.css("border-left-width"),0),l=parseInt(a.css("border-right-width"),0),m=parseInt(a.css("padding-left"),0),n=e+f+2*m+i+j,o=g+h+2*m+k+l,p=new b.Size(d.element.width()-o,d.element.height()-n);return p.marginTop=-(p.height/2+m+(j+i)/2+f/2-e/2),p.marginLeft=-(p.width/2+m+(l+k)/2+h/2-g/2),p},this.resize=function(c,e,f,g){try{if(0===c.width||0===c.height)return void(a.isFunction(g)&&g("Invalid size supplied. Width = "+c.width+", Height = "+c.height));var h=d.FooBox.items.current(),i=new b.Size(c.width,c.height),j=d.element.find(".fbx-inner"),k=d.element.find(".fbx-inner-spacer"),l=parseInt(k.css("padding-top"),0),m=parseInt(k.css("padding-bottom"),0),n=parseInt(k.css("padding-left"),0),o=parseInt(k.css("padding-right"),0),p=parseInt(j.css("border-top-width"),0),q=parseInt(j.css("border-bottom-width"),0),r=parseInt(j.css("border-left-width"),0),s=parseInt(j.css("border-right-width"),0),t=parseInt(j.css("padding-left"),0),u=l+m+2*t+p+q,v=n+o+2*t+r+s,w=new b.Size(parseInt(j.css("width"),0),parseInt(j.css("height"),0)),x=new b.Size(d.element.width()-v,d.element.height()-u),y=x.width/c.width;c.height*y>x.height&&(y=x.height/c.height),d.FooBox.options.fitToScreen===!0||1==h.proportion&&(c.height>x.height||c.width>x.width)?(c.height=Math.floor(c.height*y),c.width=Math.floor(c.width*y)):0==h.proportion&&(c.height>x.height&&(c.height=x.height),c.width>x.width&&(c.width=x.width)),c.height<100&&(c.height=100),c.width<100&&(c.width=100);var z=-(c.height/2+t+(q+p)/2+m/2-l/2),A=-(c.width/2+t+(s+r)/2+o/2-n/2);if(w.equalTo(c))j.css({height:c.height,width:c.width,"margin-top":z,"margin-left":A}),d.overflow(h,i,c,e),d.FooBox.raise("foobox.afterResize",{item:h,size:c}),a.isFunction(f)&&f();else if(!d.FooBox.raise("foobox.beforeResize",{item:h,size:c,offset:{top:z,left:A},error:g,success:f}).isDefaultPrevented())if(z=-(c.height/2+t+(q+p)/2+m/2-l/2),A=-(c.width/2+t+(s+r)/2+o/2-n/2),d.element.hasClass("fbx-show"))if(b.browser.supportsTransitions()){var B=d.FooBox.options.resizeSpeed/1e3,C="all "+B+"s ease-in-out";j.css({WebkitTransition:C,MozTransition:C,MsTransition:C,OTransition:C,transition:C}),j.css({height:c.height,width:c.width,"margin-top":z,"margin-left":A}),setTimeout(function(){j.css({WebkitTransition:"",MozTransition:"",MsTransition:"",OTransition:"",transition:""}),d.overflow(h,i,c,e),d.FooBox.raise("foobox.afterResize",{item:h,size:c}),a.isFunction(f)&&f(c)},d.FooBox.options.resizeSpeed)}else j.animate({height:c.height,width:c.width,"margin-top":z,"margin-left":A},d.FooBox.options.resizeSpeed,function(){d.overflow(h,i,c,e),d.FooBox.raise("foobox.afterResize",{item:h,size:c}),a.isFunction(f)&&f(c)});else j.css({height:c.height,width:c.width,"margin-top":z,"margin-left":A}),d.overflow(h,i,c,e),d.FooBox.raise("foobox.afterResize",{item:h,size:c}),a.isFunction(f)&&f()}catch(D){a.isFunction(g)&&g(D)}},this.overflow=function(a,b,c,e){var f=e.find(".fbx-item");a.overflow&&(c.width<.8*b.width||c.height<.8*b.height)||a.overflow&&!a.proportion&&(c.width<b.width||c.height<b.height)||a.overflow&&"html"===a.type?("html"===a.type?(f.css({width:"100%",height:"auto",overflow:""}),e.css("overflow","auto")):(f.css({width:b.width,height:b.height,overflow:""}),e.css({"overflow-x":b.width<=c.width?"hidden":"","overflow-y":b.height<=c.height?"hidden":""})),d.FooBox.raise("foobox.showOverflow",{item:a,container:e})):(f.css({width:"",height:"",overflow:f.is("iframe")?"":"hidden"}),e.css({"overflow-x":"","overflow-y":"",overflow:"hidden"}),d.FooBox.raise("foobox.hideOverflow",{item:a,container:e}))},this.transitionOut=function(b,c,e){try{if(!d.element.hasClass("fbx-show"))return void(a.isFunction(c)&&c());b.animate({opacity:0},b.is(":visible")?d.FooBox.options.transitionOutSpeed:0,function(){a.isFunction(c)&&c()})}catch(f){a.isFunction(e)&&e(f)}},this.transitionIn=function(b,c,e){try{if(!d.element.hasClass("fbx-show"))return b.css({opacity:1}),void(a.isFunction(c)&&c());b.animate({opacity:1},d.FooBox.options.transitionInSpeed,function(){a.isFunction(c)&&c()})}catch(f){a.isFunction(e)&&e(f)}},this.close=function(){d.FooBox.raise("foobox.beforeClose").isDefaultPrevented()||(d._closed=!0,d._busy=!1,d.element.removeClass("fbx-loading fbx-show"),a("body").removeClass("fbx-active"),d.FooBox.raise("foobox.close"),d.element.find(".fbx-item-current video, .fbx-item-next video").each(function(){this.pause(),this.removeAttribute("src"),this.load()}),d.element.find(".fbx-item-current, .fbx-item-next").empty(),a("html").removeClass("fbx-no-scroll"),d.FooBox.raise("foobox.afterClose"))},this.prev=function(a){if(1!=d._busy){if(d.FooBox.items.indexes.set(d.FooBox.items.indexes.prev),"string"==typeof a)for(var b=d.FooBox.items.current();b.type!=a;)d.FooBox.items.indexes.set(d.FooBox.items.indexes.prev),b=d.FooBox.items.current();d.show(!1),d.FooBox.raise("foobox.previous")}},this.next=function(a){if(1!=d._busy){if(d.FooBox.items.indexes.set(d.FooBox.items.indexes.next),"string"==typeof a)for(var b=d.FooBox.items.current();b.type!=a;)d.FooBox.items.indexes.set(d.FooBox.items.indexes.next),b=d.FooBox.items.current();d.show(!1),d.FooBox.raise("foobox.next")}},this}}(jQuery,window.FooBox),function(a,b){var c={images:{noRightClick:!1,attr:"href",overflow:!1,fullscreen:!0,showCaptions:!0,regex:/https?:\/\/.*?\/.*?\.(jpg|jpeg|png|gif|bmp|webp|svg)/i,maxWidth:-1,maxHeight:-1,findUrl:function(a,c){if(!c)return"";if(c.data("image"))return c.data("image");var d=c.attr(a.options.images.attr);return"string"==typeof d?b.qualifiedURL(c.attr(a.options.images.attr)):""}}};b.Item.prototype.image=null,
|
11 |
+
b.Item.prototype.maxWidth=null,b.Item.prototype.maxHeight=null,b.ImageHandler=function(c){this.FooBox=c,this.type="image";var d=this;this.handles=function(a){var b=d.FooBox.options.images.findUrl(d.FooBox,a),c="string"==typeof b&&null!=b.match(d.FooBox.options.images.regex),e=d.FooBox.raise("foobox.handlesImage",{element:a,handle:c});return e.fb.handle},this.defaults=function(a){a.fullscreen=a.fullscreen||d.FooBox.options.images.fullscreen,a.captions=a.captions||d.FooBox.options.images.showCaptions,a.social=a.social||!0,a.overflow=a.overflow||d.FooBox.options.images.overflow,a.proportion=a.proportion||!0,a.maxWidth=a.maxWidth||d.FooBox.options.images.maxWidth,a.maxHeight=a.maxHeight||d.FooBox.options.images.maxHeight},this.parse=function(a){var c=new b.Item(d.type,a,this);return d.defaults(c),c.url=d.FooBox.options.images.findUrl(d.FooBox,a)||null,c.width=b.Size.check(a.data("width")||c.width||null),c.height=b.Size.check(a.data("height")||c.height||null),c.fullscreen="boolean"==typeof a.data("fullscreen")?a.data("fullscreen"):c.fullscreen,c.overflow="boolean"==typeof a.data("overflow")?a.data("overflow"):c.overflow,c.proportion="boolean"==typeof a.data("proportion")?a.data("proportion"):c.proportion,c.maxWidth="number"==typeof a.data("maxWidth")?a.data("maxWidth"):c.maxWidth,c.maxHeight="number"==typeof a.data("maxHeight")?a.data("maxHeight"):c.maxHeight,c.image=null,c.image_url=c.url,c},this.load=function(b,c,e,f){try{var g=function(){var f=a(b.image).addClass("fbx-item fbx-item-image");d.FooBox.options.images.noRightClick&&f.on("contextmenu",function(a){return a.preventDefault(),!1}),c.empty().append(f),a.isFunction(e)&&e(d.getSize(b))};b.image&&null!==b.image?g():(b.image=new Image,b.image.onload=function(){b.image.onload=b.image.onerror=null,b.width&&b.height||(b.height=b.image.height,b.width=b.image.width),g()},b.image.onerror=function(){b.image.onload=b.image.onerror=null,b.image=null,a.isFunction(f)&&f("An error occurred attempting to load the image.")},b.image.src=b.url)}catch(h){a.isFunction(f)&&f(h)}},this.preload=function(a){if(1!=a.preloaded){var b=new Image;b.src=a.url,a.preloaded=!0}},this.getSize=function(a){if(null!=a.width&&null!=a.height){if(a.maxWidth>0&&a.maxHeight>0&&(a.width>a.maxWidth||a.height>a.maxHeight)){var c=a.width>a.height?a.maxWidth/a.width:a.maxHeight/a.height;a.width*=c,a.height*=c}return new b.Size(a.width,a.height)}return new b.Size(0,0)},this.hasChanged=function(a){if(b.isjQuery(a.element)){var c=d.FooBox.options.images.findUrl(d.FooBox,a.element);return a.url!=c}return!1}},b.handlers.register(b.ImageHandler,c)}(jQuery,window.FooBox),function(a,b){var c={keyboard:{enabled:!0,preventDefault:!1,stopPropagation:!1}};b.Keyboard=function(a){this.FooBox=a;var c=this;this.preinit=function(a){c.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":c.handlers.initialized,"foobox.setupHtml":c.handlers.setupHtml})},this.destroy=function(){c.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&c.FooBox.element.off({"foobox.initialized foobox.reinitialized":c.handlers.initialized,"foobox.setupHtml":c.handlers.setupHtml}),c.FooBox.element.off("foobox.afterLoad",c.handlers.afterLoad),b.isjQuery(c.FooBox.modal.element)&&c.FooBox.modal.element.off("keydown.foobox",c.handlers.onKeydown)},initialized:function(){c.handlers.unbind(),1==c.FooBox.options.keyboard.enabled&&(c.FooBox.element.on("foobox.afterLoad",c.handlers.afterLoad),b.isjQuery(c.FooBox.modal.element)&&c.FooBox.modal.element.on("keydown.foobox",c.handlers.onKeydown))},setupHtml:function(a){a.fb.modal.attr("tabindex",0)},afterLoad:function(a){a.fb.modal.focus()},onKeydown:function(a){var b=c.FooBox.modal,d=c.FooBox.options.keyboard;b.element.hasClass("fbx-show")&&(b.element.hasClass("fbx-fullscreen-mode")||27!==a.which?c.FooBox.items.multiple()&&37===a.which?b.prev():c.FooBox.items.multiple()&&39===a.which&&b.next():b.close(),1==d.preventDefault&&a.preventDefault(),1==d.stopPropagation&&a.stopPropagation(),c.FooBox.raise("foobox.keydown",{keyCode:a.which}))}}},b.addons.register(b.Keyboard,c)}(jQuery,window.FooBox),function(a,b){var c={hideNavOnMobile:!1,resizeTimeout:300,breakpoints:{phone:812,tablet:1366},iosInterval:200};b.BPInfo=function(b){var c=a(window);this.width=c.width(),this.height=c.height(),this.orientation=this.width>this.height?"fbx-landscape":"fbx-portrait";var d,e=null;if(a.isArray(b))for(var f=0;f<b.length;f++)if(d=b[f],d&&d.width&&this.width<=d.width){e=d;break}this.breakpoint=null==e?"fbx-desktop":e.name},b.Responsive=function(c){this.FooBox=c,this.breakpoint={values:[],names:""},this.timers={resize:new b.Timer,ios:new b.Timer};var d=this,e=null;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.initialized foobox.reinitialized",d.handlers.initialized)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(b){b=b||!1,b&&d.FooBox.element.off("foobox.initialized foobox.reinitialized",d.handlers.initialized),a(window).off("resize.foobox",d.handlers.resize),d.FooBox.element.off({"foobox.beforeShow":d.handlers.iosBeforeShow,"foobox.close":d.handlers.iosClose})},initialized:function(){d.handlers.unbind(),d.setup.breakpoints(),d.style(),a(window).on("resize.foobox",d.handlers.resize),b.browser.iOS12OrBelow&&(b.browser.isSafari||b.browser.isChrome)&&d.FooBox.element.on({"foobox.beforeShow":d.handlers.iosBeforeShow,"foobox.close":d.handlers.iosClose})},resize:function(){d.timers.resize.start(function(){d.style();var a=d.FooBox,b=d.FooBox.items.current();if(a.modal.element.has("fbx-show")&&null!=b){var c=b.handler.getSize(b),e=a.modal.element.find(".fbx-item-current");a.modal.resize(c,e,function(){a.modal.triggerFooGalleryLayout(e);var c=b.handler.getSize(b),d=e.height();d!=c.height&&a.modal.resize(c,e,function(){a.modal.triggerFooGalleryLayout(e)})})}},d.FooBox.options.resizeTimeout)},iosBeforeShow:function(){d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval)},iosClose:function(){d.timers.ios.stop()},ios:function(){if(!d.FooBox.modal.element.hasClass("fbx-show"))return void d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval);var a=window.orientation||0,c=window.innerHeight,f=90===a||-90===a,g=0,h=0,i=f?screen.availWidth:screen.availHeight;b.browser.isChrome?(g=i-(f?76:56),h=i-(f?0:20)):b.browser.isSafari&&(g=i-88,h=i-(f?0:19)),(null==e||e===!1)&&g>=c?(e=!0,d.iosRedraw()):(null==e||e===!0)&&c>=h&&(e=!1,d.iosRedraw()),d.timers.ios.start(d.handlers.ios,d.FooBox.options.iosInterval)}},this.setup={breakpoints:function(){d.breakpoint.values=[],d.breakpoint.names="";for(var a in d.FooBox.options.breakpoints)d.FooBox.options.breakpoints.hasOwnProperty(a)&&(d.breakpoint.values.push({name:d.fixName(a),width:d.FooBox.options.breakpoints[a]}),d.breakpoint.names+=d.fixName(a)+" ");d.breakpoint.values.sort(function(a,b){return a.width-b.width})}},this.iosRedraw=function(){window.scrollTo(0,document.body.scrollTop),a(window).trigger("resize")},this.fixName=function(a){return/^fbx-[a-zA-Z0-9]/.test(a)?a:"fbx-"+a},this.style=function(){var a=new b.BPInfo(d.breakpoint.values),c=d.FooBox.modal.element;c.removeClass(d.breakpoint.names).removeClass("fbx-desktop fbx-landscape fbx-portrait").addClass(a.breakpoint).addClass(a.orientation),d.FooBox.options.hideNavOnMobile===!0?c.addClass("fbx-no-nav"):c.removeClass("fbx-no-nav")}},b.Responsive.metaCheck=function(){var b=a("meta[name=viewport]"),c=b.attr("content");if(b.length>0&&"string"==typeof c){for(var d=c.split(","),e=!1,f=!1,g=0;g<d.length;g++){var h=a.trim(d[g]);"width"==h.substring(0,5)&&-1!==h.indexOf("device-width")?e=!0:"initial-scale"==h.substring(0,13)&&(f=!0)}e&&!f&&(d.push("initial-scale=1"),c=d.join(","),b.attr("content",c))}},b.addons.register(b.Responsive,c),b.Responsive.metaCheck()}(jQuery,window.FooBox),function(a,b){var c={captions:{animation:"slide",enabled:!0,descSource:"find",hoverDelay:300,maxHeight:.4,onlyShowOnHover:!1,onlyShowOnClick:!1,overrideDesc:!1,overrideTitle:!1,prettify:!1,titleSource:"image_find"}};b.Item.prototype.captions=!1,b.Item.prototype.title=null,b.Item.prototype.description=null,b.Item.prototype.caption=null,b.Captions=function(c){this.FooBox=c,this.timers={hover:new b.Timer};var d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":d.handlers.initialized,"foobox.setupHtml":d.handlers.setupHtml,"foobox.setupOptions":d.handlers.setupOptions,"foobox.parseItem":d.handlers.parseItem,"foobox.onError":d.handlers.onError,"foobox.beforeClose":d.handlers.beforeClose})},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off({"foobox.initialized foobox.reinitialized":d.handlers.initialized,"foobox.setupHtml":d.handlers.setupHtml,"foobox.setupOptions":d.handlers.setupOptions,"foobox.parseItem":d.handlers.parseItem,"foobox.onError":d.handlers.onError,"foobox.beforeClose":d.handlers.beforeClose}),d.FooBox.element.off({"foobox.beforeLoad":d.handlers.beforeLoad,"foobox.afterLoad":d.handlers.afterLoad}),d.FooBox.modal instanceof b.Modal&&b.isjQuery(d.FooBox.modal.element)&&d.FooBox.modal.element.off("mouseenter.captions mouseleave.captions").find(".fbx-item-current, .fbx-item-next").off("click.captions")},initialized:function(a){d.handlers.unbind(),a.fb.options.captions.enabled===!0&&(a.fb.instance.element.on({"foobox.beforeLoad":d.handlers.beforeLoad,"foobox.afterLoad":d.handlers.afterLoad,"foobox.beforeClose":d.handlers.beforeClose}),-1===a.fb.options.modalClass.indexOf("fbx-caption-toggle-only")&&a.fb.modal.find(".fbx-item-current, .fbx-item-next").on("click.captions",d.handlers.toggleCaptions),a.fb.options.captions.onlyShowOnHover===!0&&a.fb.modal.on("mouseenter.captions",".fbx-inner:not(:has(.fbx-item-error))",d.handlers.mouseenter).on("mouseleave.captions",".fbx-inner:not(:has(.fbx-item-error))",d.handlers.mouseleave))},toggleCaptions:function(b){if(a(b.target).is("img")||a(b.target).is(".fbx-close-caption")||a(b.target).is(".fbx-open-caption")){var c=d.FooBox.items.current(),e=d.FooBox.modal.element;c.captions&&!e.hasClass("fbx-error")&&(b.preventDefault(),e.find(".fbx-caption").is(".fbx-fade-caption, .fbx-slide-caption, .fbx-hide-caption")?(e.removeClass("fbx-captions-hidden"),d.show()):(e.addClass("fbx-captions-hidden"),d.hide()))}},mouseenter:function(){d.timers.hover.start(function(){d.show()},d.FooBox.options.captions.hoverDelay)},mouseleave:function(){d.timers.hover.start(function(){d.hide()},d.FooBox.options.captions.hoverDelay)},setupHtml:function(b){var c=a("<div/>",{"class":"fbx-caption"}),e=a("<a/>",{"class":"fbx-open-caption",html:"…"}).on("click.captions",d.handlers.toggleCaptions);"string"==typeof b.fb.options.modalClass&&-1!=b.fb.options.modalClass.indexOf("fbx-sticky-caption")?b.fb.modal.append(c,e):(b.fb.modal.find(".fbx-stage").append(c),b.fb.modal.find(".fbx-inner").append(e))},setupOptions:function(a){a.fb.modal.find(".fbx-caption").addClass(d.animation())},beforeClose:function(a){1!=a.fb.options.captions.onlyShowOnHover&&a.fb.modal.find(".fbx-caption").addClass("fbx-hide-caption")},beforeLoad:function(a){1!=a.fb.options.captions.onlyShowOnHover&&a.fb.modal.find(".fbx-caption").addClass(d.animation())},afterLoad:function(a){var b=a.fb.item;return!b||b.error||b.captionLoaded||(a.fb.instance.raise("foobox.alterCaption",{element:a.fb.element,item:b}),b.captionLoaded=!0),1==a.fb.options.captions.onlyShowOnHover?void d.update():void(0==a.fb.options.captions.onlyShowOnClick&&d.show())},onError:function(a){a.fb.modal.find(".fbx-caption").addClass(d.animation())},parseItem:function(b){var c=b.fb.options.captions;if(b.fb.item.captions&&0!=c.enabled){var e,f,g="";if(null!=b.fb.element){var h=a(b.fb.element).data("titleSource")||a(b.fb.instance.element).data("titleSource")||c.titleSource,i=a(b.fb.element).data("descSource")||a(b.fb.instance.element).data("descSource")||c.descSource;"none"!=h&&(e=b.fb.element.data("captionTitle")||b.fb.element.data("title")||d.text(b.fb.element,h)),"none"!=i&&(f=b.fb.element.data("captionDesc")||b.fb.element.data("description")||d.text(b.fb.element,i))}else e=b.fb.item.title,f=b.fb.item.description;e=null==e||"undefined"==typeof e?"":e+"",f=null==f||"undefined"==typeof f?"":f+"",e&&e===f&&(f=null),g="string"==typeof e&&e.length>0?'<div class="fbx-caption-title">'+e+"</div>":g,g="string"==typeof f&&f.length>0?g+'<div class="fbx-caption-desc">'+f+"</div>":g,b.fb.item.title=e,b.fb.item.description=f,b.fb.item.caption=g,b.fb.instance.raise("foobox.createCaption",{element:b.fb.element,item:b.fb.item})}}},this.text=function(b,c){var e;switch(c){case"find":e=a.trim(b.data("enviraCaption")||b.data("title")||b.attr("title")||b.find("img:first").data("title")||b.find("img:first").data("alt")||b.find("img:first").attr("title")||b.find("img:first").attr("alt"));break;case"image_find":e=a.trim(b.find("img:first").data("title")||b.find("img:first").data("alt")||b.find("img:first").attr("title")||b.find("img:first").attr("alt"));break;case"image":e=a.trim(b.find("img:first").data("title")||b.find("img:first").attr("title"));break;case"image_alt":e=a.trim(b.find("img:first").data("alt")||b.find("img:first").attr("alt"));break;case"anchor":e=a.trim(b.data("enviraCaption")||b.data("title")||b.attr("title"));break;default:e=null}return d.FooBox.options.captions.prettify&&(e=d.prettifier(e)),e},this.animation=function(){switch(d.FooBox.options.captions.animation){case"fade":return"fbx-fade-caption";case"slide":return"fbx-slide-caption";default:return"fbx-hide-caption"}},this.hide=function(){var a=d.FooBox.items.current(),b=d.FooBox.modal.element.find(".fbx-caption");return d.FooBox.options.captions.enabled&&a.captions&&"string"==typeof a.caption&&0!=a.caption.length?(b.addClass(d.animation()),void d.FooBox.raise("foobox.captionsHide",{item:a})):void b.addClass("fbx-hide-caption")},this.show=function(){var a=d.FooBox,c=a.items.current(),e=a.modal.element.find(".fbx-caption");return!a.options.captions.enabled||!c.captions||"string"!=typeof c.caption||0==c.caption.length||a.modal.element.hasClass("fbx-captions-hidden")||b.isjQuery(c.element)&&c.element.hasClass("no-captions")?void e.addClass("fbx-hide-caption"):(d.update(),e.removeClass("fbx-fade-caption fbx-slide-caption fbx-hide-caption"),void d.FooBox.raise("foobox.captionsShow",{item:c}))},this.update=function(){var c=d.FooBox.items.current(),e=d.FooBox.modal.element.find(".fbx-caption");e.html(c.caption).find('a[href^="#"]').filter(function(){var c=a(this).attr("href"),d=a(c),e=d.data("fbx_instance")||d.data("fbx_p_instance");return d.length>0&&e instanceof b.Instance?(a(this).data("hrefTarget",d.get(0)),!0):!1}).off("click.captions").on("click.captions",function(c){c.preventDefault();var e=a(this).data("hrefTarget"),f=a(e).data("fbx_instance")||a(e).data("fbx_p_instance");return f instanceof b.Instance&&(d.FooBox.modal.close(),f.items.indexes.set(e.index),f.modal.show()),!1}),a("<a/>",{"class":"fbx-close-caption",html:"×"}).on("click.captions",d.handlers.toggleCaptions).prependTo(e)},this.prettifier=function(a){return"string"!=typeof a?null:(a=a.replace(/\s*-\d+/g,"").replace(/\s*_\d+/g,"").replace(/-/g," ").replace(/_/g," "),a=a.replace(/\w\S*/g,function(a){return-1!=a.indexOf("#")?a:a.charAt(0).toUpperCase()+a.substr(1).toLowerCase()}))}},b.addons.register(b.Captions,c)}(jQuery,window.FooBox),function(a,b){var c={wordpress:{enabled:!1}};b.Wordpress=function(c){this.FooBox=c;var d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.createCaption",d.handlers.onCreateCaption)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off("foobox.createCaption",d.handlers.onCreateCaption)},onCreateCaption:function(c){var d=c.fb.options,e=c.fb.instance.element,f=c.fb.item.element,g="",h=c.fb.item.title,i=c.fb.item.description;if(1==d.wordpress.enabled&&b.isjQuery(f)){var j=f.data("captionTitle")||f.data("title"),k=f.data("captionDesc")||f.data("description");if(e.hasClass("gallery"))d.captions.overrideTitle===!1&&(h=j||f.parents(".gallery-item:first").find(".wp-caption-text:first").html()||f.parents(".gallery-item:first").find(".gallery-caption:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.find("img").attr("alt")||i||"");else if(e.hasClass("wp-caption")||f.hasClass("wp-caption"))d.captions.overrideTitle===!1&&(h=j||f.find("img").attr("title")||f.parents(".wp-caption:first").find(".wp-caption-text:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.find("img").attr("alt")||i||"");else if(f.parents(".wp-caption:first").length>0)d.captions.overrideTitle===!1&&(h=j||f.parents(".wp-caption:first").find("img").attr("title")||f.parents(".wp-caption:first").find(".wp-caption-text:first").html()||h||""),d.captions.overrideDesc===!1&&(i=k||f.parents(".wp-caption:first").find("img").attr("alt")||i||"");else if(e.hasClass("tiled-gallery"))d.captions.overrideTitle===!1&&(h=j||f.parents(".tiled-gallery-item:first").find(".tiled-gallery-caption").html()||f.find("img").data("image-title")||f.find("img").attr("title")||h||""),d.captions.overrideDesc===!1&&(i=k||a.trim(f.find("img").data("image-description")).replace(/(^<p>)|(<\/p>$)/gi,"")||i||"");else{if(!e.hasClass("wp-block-gallery")&&!e.hasClass("wp-block-image"))return;d.captions.overrideTitle===!1&&(h=j||f.parents("figure:first").find("figcaption").html()||h||""),d.captions.overrideDesc===!1&&(i=k||i||"")}h+="",i+="",h=h||"",i=i||"";var l=a("<div/>"),m=l.html(h).text(),n=l.html(i).text();(a.trim(h)===a.trim(i)||m===n)&&(i=null),g="string"==typeof h&&h.length>0?'<div class="fbx-caption-title">'+h+"</div>":g,g="string"==typeof i&&i.length>0?g+'<div class="fbx-caption-desc">'+i+"</div>":g,c.fb.item.title=h,c.fb.item.description=i,c.fb.item.caption=g}}}},b.addons.register(b.Wordpress,c)}(jQuery,window.FooBox),function(a,b){var c={pan:{enabled:!0,showOverview:!0,position:"fbx-top-right"}};b.Pan=function(c){this.FooBox=c;var d,e,f,g,h=this,i=!1,j=!1,k=null,l=null,m=null,n=null,o=null,p=0;this.preinit=function(a){h.handlers.unbind(!0),a.on({"foobox.initialized foobox.reinitialized":h.handlers.initialized})},this.destroy=function(){h.handlers.unbind(!0)},this.setOverview=function(){var a=parseInt(n.css("max-width")),b=parseInt(n.css("max-height")),c=a/k.width,d=b/k.height;p=c>d?d:c;var e=k.width*p,f=k.height*p;n.width(e).height(f).css("background-image","url("+k.url+")")},this.setViewport=function(){var a=m.width(),b=m.height(),c=a*p,d=b*p;o.width(c).height(d)},this.disableCaptionImageClick=function(){var a=h.FooBox.modal.element,c=b.objects.get("addons",h.FooBox,function(a){return a instanceof b.Captions});c&&a.find(".fbx-item-current, .fbx-item-next").off("click.captions",c.handlers.toggleCaptions)},this.enableCaptionImageClick=function(){var a=h.FooBox.modal.element,c=b.objects.get("addons",h.FooBox,function(a){return a instanceof b.Captions});c&&a.find(".fbx-item-current, .fbx-item-next").on("click.captions",c.handlers.toggleCaptions)},this.handlers={unbind:function(a){a=a||!1,a&&h.FooBox.element.off({"foobox.initialized foobox.reinitialized":h.handlers.initialized}),h.FooBox.element.off({"foobox.afterLoad":h.handlers.onAfterLoad,"foobox.showOverflow":h.handlers.onShowOverflow,"foobox.hideOverflow foobox.beforeLoad":h.handlers.onHideOverflow}),h.FooBox.modal instanceof b.Modal&&b.isjQuery(h.FooBox.modal.element)&&h.FooBox.modal.element.find(".fbx-stage").off({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,mouseup:h.handlers.onMouseUp}).removeClass("fbx-pannable fbx-panning")},initialized:function(a){h.handlers.unbind(),a.fb.options.pan.enabled===!0&&h.FooBox.element.on({"foobox.close":h.handlers.onMouseUp,"foobox.afterLoad":h.handlers.onAfterLoad,"foobox.showOverflow":h.handlers.onShowOverflow,"foobox.hideOverflow foobox.beforeLoad":h.handlers.onHideOverflow})},onAfterLoad:function(a){i===!0&&"image"==a.fb.item.handler.type&&(h.setOverview(),h.setViewport())},onShowOverflow:function(b){"image"==b.fb.item.handler.type&&(i===!0?(h.setOverview(),h.setViewport()):(i=!0,h.disableCaptionImageClick(),k=b.fb.item,m=h.FooBox.modal.element.addClass("fbx-pannable-item").find(".fbx-stage").on({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,"mouseup mouseleave":h.handlers.onMouseUp}).addClass("fbx-pannable"),l=b.fb.container,b.fb.options.pan.showOverview===!0&&(n=a("<div/>",{"class":"fbx-pan-overview"}).addClass(b.fb.options.pan.position).on("click",h.handlers.onOverviewClick).appendTo(m),o=a("<div/>",{"class":"fbx-pan-viewport"}).appendTo(n),l.on("scroll",h.handlers.onScroll),h.setOverview(),h.setViewport())))},onHideOverflow:function(a){i===!0&&(i=!1,h.enableCaptionImageClick(),a.fb.options.pan.showOverview===!0&&n.remove(),l.off("scroll",h.handlers.onScroll),m.off({mousedown:h.handlers.onMouseDown,mousemove:h.handlers.onMouseMove,"mouseup mouseleave":h.handlers.onMouseUp}).removeClass("fbx-pannable fbx-panning"),h.FooBox.modal.element.removeClass("fbx-pannable-item"))},onMouseDown:function(a){if(i===!0){a.preventDefault(),m.addClass("fbx-panning");var b=l.get(0);j=!0,d=a.pageX,e=a.pageY,f=b.scrollLeft,g=b.scrollTop}},onMouseMove:function(a){if(j===!0&&i===!0){var b=l.get(0);b.scrollLeft=f-(a.pageX-d),b.scrollTop=g-(a.pageY-e)}},onMouseUp:function(){i===!0&&(j=!1,m.removeClass("fbx-panning"),d=0,e=0,f=0,g=0)},onScroll:function(){var a=l.get(0),b=a.scrollTop/k.height*100,c=a.scrollLeft/k.width*100;o.css({top:b+"%",left:c+"%"})},onOverviewClick:function(b){var c=a(this).offset(),d=(b.pageX-c.left)/p,e=(b.pageY-c.top)/p,f=d-l.width()/2,g=e-l.height()/2;l.animate({scrollTop:g,scrollLeft:f},300)}}},b.addons.register(b.Pan,c)}(jQuery,window.FooBox),function(a,b){var c={swipe:{enabled:!0,min:80}};b.Swipe=function(a){this.FooBox=a,this.isMoving=!1;var c,d=this;this.preinit=function(a){d.handlers.unbind(!0),a.on("foobox.initialized foobox.reinitialized",d.handlers.initialized)},this.destroy=function(){d.handlers.unbind(!0)},this.handlers={unbind:function(a){a=a||!1,a&&d.FooBox.element.off("foobox.initialized foobox.reinitialized",d.handlers.initialized),d.FooBox.modal instanceof b.Modal&&b.isjQuery(d.FooBox.modal.element)&&d.FooBox.modal.element.off({touchstart:d.handlers.onTouchStart,touchmove:d.handlers.onTouchMove})},initialized:function(a){d.handlers.unbind(),a.fb.options.swipe.enabled===!0&&a.fb.modal.on("touchstart",d.handlers.onTouchStart)},onTouchStart:function(a){var b=a.originalEvent.touches||a.touches;1==b.length&&d.FooBox.items.multiple()&&(c=b[0].pageX,d.isMoving=!0,d.FooBox.modal.element.on("touchmove",d.handlers.onTouchMove))},onTouchMove:function(a){if(d.isMoving){var b=a.originalEvent.touches||a.touches,e=b[0].pageX,f=c-e;Math.abs(f)>=d.FooBox.options.swipe.min&&(d.cancelTouch(),f>0?(d.FooBox.raise("foobox.swipeRight"),d.FooBox.modal.next()):(d.FooBox.raise("foobox.swipeLeft"),d.FooBox.modal.prev()))}}},this.cancelTouch=function(){d.FooBox.modal.element.off("touchmove",d.handlers.onTouchMove),c=null,d.isMoving=!1}},b.addons.register(b.Swipe,c)}(jQuery,window.FooBox),function(a,b,c){if(!c)return void console.log("No configuration for FooBox found.");if(c.o&&c.customOptions&&a.extend(!0,c.o,c.customOptions),c.init=function(){if(a(".fbx-link").removeClass("fbx-link"),a.isFunction(c.pre))try{c.pre(a)}catch(b){console.error(b)}if(c.disableOthers&&(a("a.thickbox").removeClass("thickbox").unbind("click"),a("#TB_overlay, #TB_load, #TB_window").remove()),a.each(c.selectors,function(b,d){a(d).foobox(c.o)}),c.disableOthers&&a(".fbx-link").unbind(".prettyphoto").unbind(".fb"),a.isFunction(c.post))try{c.post(a)}catch(b){console.error(b)}},b.once=function(){var b=a("body");c.init(),a(document).trigger("foobox-after-init"),b.on("post-load",c.init)},c.ready?b.ready(b.once):a(b.once),a.isFunction(c.custom))try{c.custom(a)}catch(d){console.error(d)}}(jQuery,window.FooBox,window.FOOBOX);
|
freemius/assets/css/admin/account.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
label.fs-tag,span.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn,span.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-info,span.fs-tag.fs-info{background:#00a0d2}label.fs-tag.fs-success,span.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error,span.fs-tag.fs-error{background:#dc3232}#fs_account .postbox,#fs_account .widefat{max-width:800px}#fs_account h3{font-size:1.3em;padding:12px 15px;margin:0 0 12px 0;line-height:1.4;border-bottom:1px solid #F1F1F1}#fs_account h3 .dashicons{width:26px;height:26px;font-size:1.3em}#fs_account i.dashicons{font-size:1.2em;height:1.2em;width:1.2em}#fs_account .dashicons{vertical-align:middle}#fs_account .fs-header-actions{position:absolute;top:17px;right:15px;font-size:0.9em}#fs_account .fs-header-actions ul{margin:0}#fs_account .fs-header-actions li{float:left}#fs_account .fs-header-actions li form{display:inline-block}#fs_account .fs-header-actions li a{text-decoration:none}#fs_account_details .button-group{float:right}.rtl #fs_account .fs-header-actions{left:15px;right:auto}.fs-key-value-table{width:100%}.fs-key-value-table form{display:inline-block}.fs-key-value-table tr td:first-child{text-align:right}.fs-key-value-table tr td:first-child nobr{font-weight:bold}.fs-key-value-table tr td:first-child form{display:block}.fs-key-value-table tr td.fs-right{text-align:right}.fs-key-value-table tr.fs-odd{background:#ebebeb}.fs-key-value-table td,.fs-key-value-table th{padding:10px}.fs-key-value-table code{line-height:28px}.fs-key-value-table var,.fs-key-value-table code,.fs-key-value-table input[type="text"]{color:#0073AA;font-size:16px;background:none}.fs-key-value-table input[type="text"]{width:100%;font-weight:bold}.fs-field-beta_program label{margin-left:7px}label.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error{background:#dc3232}#fs_sites .fs-scrollable-table .fs-table-body{max-height:200px;overflow:auto;border:1px solid #e5e5e5}#fs_sites .fs-scrollable-table .fs-table-body>table.widefat{border:none !important}#fs_sites .fs-scrollable-table .fs-main-column{width:100%}#fs_sites .fs-scrollable-table .fs-site-details td:first-of-type{text-align:right;color:grey;width:1px}#fs_sites .fs-scrollable-table .fs-site-details td:last-of-type{text-align:right}#fs_sites .fs-scrollable-table .fs-install-details table tr td{width:1px;white-space:nowrap}#fs_sites .fs-scrollable-table .fs-install-details table tr td:last-of-type{width:auto}#fs_addons h3{border:none;margin-bottom:0;padding:4px 5px}#fs_addons td{vertical-align:middle}#fs_addons thead{white-space:nowrap}#fs_addons td:first-child,#fs_addons th:first-child{text-align:left;font-weight:bold}#fs_addons td:last-child,#fs_addons th:last-child{text-align:right}#fs_addons th{font-weight:bold}#fs_billing_address{width:100%}#fs_billing_address tr td{width:50%;padding:5px}#fs_billing_address tr:first-of-type td{padding-top:0}#fs_billing_address span{font-weight:bold}#fs_billing_address input,#fs_billing_address select{display:block;width:100%;margin-top:5px}#fs_billing_address input::-moz-placeholder,#fs_billing_address select::-moz-placeholder{color:transparent;opacity:1}#fs_billing_address input:-ms-input-placeholder,#fs_billing_address select:-ms-input-placeholder{color:transparent}#fs_billing_address input::-webkit-input-placeholder,#fs_billing_address select::-webkit-input-placeholder{color:transparent}#fs_billing_address input.fs-read-mode,#fs_billing_address select.fs-read-mode{border-color:transparent;color:#777;border-bottom:1px dashed #ccc;padding-left:0;background:none}#fs_billing_address.fs-read-mode td span{display:none}#fs_billing_address.fs-read-mode input,#fs_billing_address.fs-read-mode select{border-color:transparent;color:#777;border-bottom:1px dashed #ccc;padding-left:0;background:none}#fs_billing_address.fs-read-mode input::-moz-placeholder,#fs_billing_address.fs-read-mode select::-moz-placeholder{color:#ccc;opacity:1}#fs_billing_address.fs-read-mode input:-ms-input-placeholder,#fs_billing_address.fs-read-mode select:-ms-input-placeholder{color:#ccc}#fs_billing_address.fs-read-mode input::-webkit-input-placeholder,#fs_billing_address.fs-read-mode select::-webkit-input-placeholder{color:#ccc}#fs_billing_address button{display:block;width:100%}
|
1 |
+
label.fs-tag,span.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn,span.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-info,span.fs-tag.fs-info{background:#00a0d2}label.fs-tag.fs-success,span.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error,span.fs-tag.fs-error{background:#dc3232}#fs_account .postbox,#fs_account .widefat{max-width:800px}#fs_account h3{font-size:1.3em;padding:12px 15px;margin:0 0 12px 0;line-height:1.4;border-bottom:1px solid #F1F1F1}#fs_account h3 .dashicons{width:26px;height:26px;font-size:1.3em}#fs_account i.dashicons{font-size:1.2em;height:1.2em;width:1.2em}#fs_account .dashicons{vertical-align:middle}#fs_account .fs-header-actions{position:absolute;top:17px;right:15px;font-size:0.9em}#fs_account .fs-header-actions ul{margin:0}#fs_account .fs-header-actions li{float:left}#fs_account .fs-header-actions li form{display:inline-block}#fs_account .fs-header-actions li a{text-decoration:none}#fs_account_details .button-group{float:right}.rtl #fs_account .fs-header-actions{left:15px;right:auto}.fs-key-value-table{width:100%}.fs-key-value-table form{display:inline-block}.fs-key-value-table tr td:first-child{text-align:right}.fs-key-value-table tr td:first-child nobr{font-weight:bold}.fs-key-value-table tr td:first-child form{display:block}.fs-key-value-table tr td.fs-right{text-align:right}.fs-key-value-table tr.fs-odd{background:#ebebeb}.fs-key-value-table td,.fs-key-value-table th{padding:10px}.fs-key-value-table code{line-height:28px}.fs-key-value-table var,.fs-key-value-table code,.fs-key-value-table input[type="text"]{color:#0073AA;font-size:16px;background:none}.fs-key-value-table input[type="text"]{width:100%;font-weight:bold}.fs-field-beta_program label{margin-left:7px}label.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error{background:#dc3232}#fs_sites .fs-scrollable-table .fs-table-body{max-height:200px;overflow:auto;border:1px solid #e5e5e5}#fs_sites .fs-scrollable-table .fs-table-body>table.widefat{border:none !important}#fs_sites .fs-scrollable-table .fs-main-column{width:100%}#fs_sites .fs-scrollable-table .fs-site-details td:first-of-type{text-align:right;color:grey;width:1px}#fs_sites .fs-scrollable-table .fs-site-details td:last-of-type{text-align:right}#fs_sites .fs-scrollable-table .fs-install-details table tr td{width:1px;white-space:nowrap}#fs_sites .fs-scrollable-table .fs-install-details table tr td:last-of-type{width:auto}#fs_addons h3{border:none;margin-bottom:0;padding:4px 5px}#fs_addons td{vertical-align:middle}#fs_addons thead{white-space:nowrap}#fs_addons td:first-child,#fs_addons th:first-child{text-align:left;font-weight:bold}#fs_addons td:last-child,#fs_addons th:last-child{text-align:right}#fs_addons th{font-weight:bold}#fs_billing_address{width:100%}#fs_billing_address tr td{width:50%;padding:5px}#fs_billing_address tr:first-of-type td{padding-top:0}#fs_billing_address span{font-weight:bold}#fs_billing_address input,#fs_billing_address select{display:block;width:100%;margin-top:5px}#fs_billing_address input::-moz-placeholder,#fs_billing_address select::-moz-placeholder{color:transparent;opacity:1}#fs_billing_address input:-ms-input-placeholder,#fs_billing_address select:-ms-input-placeholder{color:transparent}#fs_billing_address input::-webkit-input-placeholder,#fs_billing_address select::-webkit-input-placeholder{color:transparent}#fs_billing_address input.fs-read-mode,#fs_billing_address select.fs-read-mode{border-color:transparent;color:#777;border-bottom:1px dashed #ccc;padding-left:0;background:none}#fs_billing_address.fs-read-mode td span{display:none}#fs_billing_address.fs-read-mode input,#fs_billing_address.fs-read-mode select{border-color:transparent;color:#777;border-bottom:1px dashed #ccc;padding-left:0;background:none}#fs_billing_address.fs-read-mode input::-moz-placeholder,#fs_billing_address.fs-read-mode select::-moz-placeholder{color:#ccc;opacity:1}#fs_billing_address.fs-read-mode input:-ms-input-placeholder,#fs_billing_address.fs-read-mode select:-ms-input-placeholder{color:#ccc}#fs_billing_address.fs-read-mode input::-webkit-input-placeholder,#fs_billing_address.fs-read-mode select::-webkit-input-placeholder{color:#ccc}#fs_billing_address button{display:block;width:100%}
|
freemius/assets/css/admin/add-ons.css
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
.fs-badge{position:absolute;top:10px;right:0;background:#71ae00;color:white;text-transform:uppercase;padding:5px 10px;-moz-border-radius:3px 0 0 3px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;font-weight:bold;border-right:0;-moz-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);box-shadow:0 2px 1px -1px rgba(0,0,0,0.3)}#fs_addons .fs-cards-list{list-style:none}#fs_addons .fs-cards-list .fs-card{float:left;height:152px;width:310px;padding:0;margin:0 0 30px 30px;font-size:14px;list-style:none;border:1px solid #ddd;cursor:pointer;position:relative}#fs_addons .fs-cards-list .fs-card .fs-overlay{position:absolute;left:0;right:0;bottom:0;top:0;z-index:9}#fs_addons .fs-cards-list .fs-card .fs-inner{background-color:#fff;overflow:hidden;height:100%;position:relative}#fs_addons .fs-cards-list .fs-card .fs-inner>ul{-moz-transition:all,0.15s;-o-transition:all,0.15s;-ms-transition:all,0.15s;-webkit-transition:all,0.15s;transition:all,0.15s;left:0;right:0;top:0;position:absolute}#fs_addons .fs-cards-list .fs-card .fs-inner>ul>li{list-style:none;line-height:18px;padding:0 15px;width:100%;display:block;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-card-banner{padding:0;margin:0;line-height:0;display:block;height:100px;background-repeat:repeat-x;background-size:100% 100%;-moz-transition:all,0.15s;-o-transition:all,0.15s;-ms-transition:all,0.15s;-webkit-transition:all,0.15s;transition:all,0.15s}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-card-banner .fs-badge.fs-installed-addon-badge{font-size:1.02em;line-height:1.3em}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-title{margin:10px 0 0 0;height:18px;overflow:hidden;color:#000;white-space:nowrap;text-overflow:ellipsis;font-weight:bold}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-offer{font-size:0.9em}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-description{background-color:#f9f9f9;padding:10px 15px 100px 15px;border-top:1px solid #eee;margin:0 0 10px 0;color:#777}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-tag{position:absolute;top:10px;right:0px;background:greenyellow;display:block;padding:2px 10px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.3);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.3);box-shadow:1px 1px 1px rgba(0,0,0,0.3);text-transform:uppercase;font-size:0.9em;font-weight:bold}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-cta .button,#fs_addons .fs-cards-list .fs-card .fs-inner .fs-cta .button-group{position:absolute;top:112px;right:10px}@media screen and (min-width: 960px){#fs_addons .fs-cards-list .fs-card:hover .fs-overlay{border:2px solid #29abe1;margin-left:-1px;margin-top:-1px}#fs_addons .fs-cards-list .fs-card:hover .fs-inner ul{top:-100px}#fs_addons .fs-cards-list .fs-card:hover .fs-inner .fs-title,#fs_addons .fs-cards-list .fs-card:hover .fs-inner .fs-offer{color:#29abe1}}
|
2 |
-
#TB_window,#TB_window iframe{width:821px !important}#plugin-information .fyi{width:266px !important}#plugin-information #section-holder{margin-right:299px}#plugin-information #section-description h2,#plugin-information #section-description h3,#plugin-information #section-description p,#plugin-information #section-description b,#plugin-information #section-description i,#plugin-information #section-description blockquote,#plugin-information #section-description li,#plugin-information #section-description ul,#plugin-information #section-description ol{clear:none}#plugin-information #section-description .fs-selling-points{padding-bottom:10px;border-bottom:1px solid #ddd}#plugin-information #section-description .fs-selling-points ul{margin:0}#plugin-information #section-description .fs-selling-points ul li{padding:0;list-style:none outside none}#plugin-information #section-description .fs-selling-points ul li i.dashicons{color:#71ae00;font-size:3em;vertical-align:middle;line-height:30px;float:left;margin:0 0 0 -15px}#plugin-information #section-description .fs-selling-points ul li h3{margin:1em 30px !important}#plugin-information #section-description .fs-screenshots:after{content:"";display:table;clear:both}#plugin-information #section-description .fs-screenshots ul{list-style:none;margin:0}#plugin-information #section-description .fs-screenshots ul li{width:225px;height:225px;float:left;margin-bottom:20px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}#plugin-information #section-description .fs-screenshots ul li a{display:block;width:100%;height:100%;border:1px solid;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);background-size:cover}#plugin-information #section-description .fs-screenshots ul li.odd{margin-right:20px}#plugin-information .plugin-information-pricing{margin:-16px;border-bottom:1px solid #ddd}#plugin-information .plugin-information-pricing .fs-plan h3{margin-top:0;padding:20px;font-size:16px}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper{border-bottom:1px solid #ddd}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab{cursor:pointer;position:relative;padding:0 10px;font-size:0.9em}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab label{text-transform:uppercase;color:green;background:greenyellow;position:absolute;left:-1px;right:-1px;bottom:100%;border:1px solid darkgreen;padding:2px;text-align:center;font-size:0.9em;line-height:1em}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab.nav-tab-active{cursor:default;background:#fffeec;border-bottom-color:#fffeec}#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle h3{background:#fffeec;margin:0;padding-bottom:0;color:#0073aa}#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle .nav-tab-wrapper,#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle .fs-billing-frequency{display:none}#plugin-information .plugin-information-pricing .fs-plan .fs-pricing-body{background:#fffeec;padding:20px}#plugin-information .plugin-information-pricing .fs-plan .button{width:100%;text-align:center;font-weight:bold;text-transform:uppercase;font-size:1.1em}#plugin-information .plugin-information-pricing .fs-plan label{white-space:nowrap}#plugin-information .plugin-information-pricing .fs-plan var{font-style:normal}#plugin-information .plugin-information-pricing .fs-plan .fs-billing-frequency,#plugin-information .plugin-information-pricing .fs-plan .fs-annual-discount{text-align:center;display:block;font-weight:bold;margin-bottom:10px;text-transform:uppercase;background:#F3F3F3;padding:2px;border:1px solid #ccc}#plugin-information .plugin-information-pricing .fs-plan .fs-annual-discount{text-transform:none;color:green;background:greenyellow}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms{font-size:0.9em}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms i{float:left;margin:0 0 0 -15px}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms li{margin:10px 0 0 0}#plugin-information #section-features .fs-features{margin:-20px -26px}#plugin-information #section-features table{width:100%;border-spacing:0;border-collapse:separate}#plugin-information #section-features table thead th{padding:10px 0}#plugin-information #section-features table thead .fs-price{color:#71ae00;font-weight:normal;display:block;text-align:center}#plugin-information #section-features table tbody td{border-top:1px solid #ccc;padding:10px 0;text-align:center;width:100px;color:#71ae00}#plugin-information #section-features table tbody td:first-child{text-align:left;width:auto;color:inherit;padding-left:26px}#plugin-information #section-features table tbody tr.fs-odd td{background:#fefefe}#plugin-information #section-features .dashicons-yes{width:30px;height:30px;font-size:30px}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .button,#plugin-information .fs-dropdown .button-group .button{position:relative;width:auto;top:0;right:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .button:focus,#plugin-information .fs-dropdown .button-group .button:focus{z-index:10}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .fs-dropdown-arrow,#plugin-information .fs-dropdown .button-group .fs-dropdown-arrow{border-top:6px solid white;border-right:4px solid transparent;border-left:4px solid transparent;top:12px;position:relative}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active:not(.up) .button:not(.fs-dropdown-arrow-button),#plugin-information .fs-dropdown.active:not(.up) .button:not(.fs-dropdown-arrow-button){border-bottom-left-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active:not(.up) .fs-dropdown-arrow-button,#plugin-information .fs-dropdown.active:not(.up) .fs-dropdown-arrow-button{border-bottom-right-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active.up .button:not(.fs-dropdown-arrow-button),#plugin-information .fs-dropdown.active.up .button:not(.fs-dropdown-arrow-button){border-top-left-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active.up .fs-dropdown-arrow-button,#plugin-information .fs-dropdown.active.up .fs-dropdown-arrow-button{border-top-right-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list,#plugin-information .fs-dropdown .fs-dropdown-list{position:absolute;right:-1px;top:100%;margin-left:auto;padding:3px 0;border:1px solid #bfbfbf;background-color:#fff;z-index:1;width:230px;text-align:left;-moz-box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12);-webkit-box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12);box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12)}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li,#plugin-information .fs-dropdown .fs-dropdown-list li{margin:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li a,#plugin-information .fs-dropdown .fs-dropdown-list li a{display:block;padding:5px 10px;text-decoration:none;text-shadow:none}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li:hover,#plugin-information .fs-dropdown .fs-dropdown-list li:hover{background-color:#0074a3;color:#fff}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li:hover a,#plugin-information .fs-dropdown .fs-dropdown-list li:hover a{color:#fff}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown:not(.up) .fs-dropdown-list,#plugin-information .fs-dropdown:not(.up) .fs-dropdown-list{-moz-border-radius:3px 0 3px 3px;-webkit-border-radius:3px 0 3px 3px;border-radius:3px 0 3px 3px}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.up .fs-dropdown-list,#plugin-information .fs-dropdown.up .fs-dropdown-list{-moz-border-radius:3px 3px 0 3px;-webkit-border-radius:3px 3px 0 3px;border-radius:3px 3px 0 3px}#plugin-information .fs-dropdown .button-group{width:100%}#plugin-information .fs-dropdown .button-group .button{float:none;font-size:14px;font-weight:normal;text-transform:none}#plugin-information .fs-dropdown .fs-dropdown-list{margin-top:1px}#plugin-information .fs-dropdown.up .fs-dropdown-list{top:auto;bottom:100%;margin-bottom:2px}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group{text-align:center;display:table}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group .button{display:table-cell}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group .button:not(.fs-dropdown-arrow-button){left:1px;width:100%}#plugin-information-footer>.button,#plugin-information-footer .fs-dropdown{position:relative;top:3px}#plugin-information-footer>.button.left,#plugin-information-footer .fs-dropdown.left{float:left}#plugin-information-footer>.right,#plugin-information-footer .fs-dropdown{float:right}@media screen and (max-width: 961px){#fs_addons .fs-cards-list .fs-card{height:265px}}
|
1 |
.fs-badge{position:absolute;top:10px;right:0;background:#71ae00;color:white;text-transform:uppercase;padding:5px 10px;-moz-border-radius:3px 0 0 3px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;font-weight:bold;border-right:0;-moz-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);box-shadow:0 2px 1px -1px rgba(0,0,0,0.3)}#fs_addons .fs-cards-list{list-style:none}#fs_addons .fs-cards-list .fs-card{float:left;height:152px;width:310px;padding:0;margin:0 0 30px 30px;font-size:14px;list-style:none;border:1px solid #ddd;cursor:pointer;position:relative}#fs_addons .fs-cards-list .fs-card .fs-overlay{position:absolute;left:0;right:0;bottom:0;top:0;z-index:9}#fs_addons .fs-cards-list .fs-card .fs-inner{background-color:#fff;overflow:hidden;height:100%;position:relative}#fs_addons .fs-cards-list .fs-card .fs-inner>ul{-moz-transition:all,0.15s;-o-transition:all,0.15s;-ms-transition:all,0.15s;-webkit-transition:all,0.15s;transition:all,0.15s;left:0;right:0;top:0;position:absolute}#fs_addons .fs-cards-list .fs-card .fs-inner>ul>li{list-style:none;line-height:18px;padding:0 15px;width:100%;display:block;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-card-banner{padding:0;margin:0;line-height:0;display:block;height:100px;background-repeat:repeat-x;background-size:100% 100%;-moz-transition:all,0.15s;-o-transition:all,0.15s;-ms-transition:all,0.15s;-webkit-transition:all,0.15s;transition:all,0.15s}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-card-banner .fs-badge.fs-installed-addon-badge{font-size:1.02em;line-height:1.3em}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-title{margin:10px 0 0 0;height:18px;overflow:hidden;color:#000;white-space:nowrap;text-overflow:ellipsis;font-weight:bold}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-offer{font-size:0.9em}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-description{background-color:#f9f9f9;padding:10px 15px 100px 15px;border-top:1px solid #eee;margin:0 0 10px 0;color:#777}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-tag{position:absolute;top:10px;right:0px;background:greenyellow;display:block;padding:2px 10px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.3);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.3);box-shadow:1px 1px 1px rgba(0,0,0,0.3);text-transform:uppercase;font-size:0.9em;font-weight:bold}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-cta .button,#fs_addons .fs-cards-list .fs-card .fs-inner .fs-cta .button-group{position:absolute;top:112px;right:10px}@media screen and (min-width: 960px){#fs_addons .fs-cards-list .fs-card:hover .fs-overlay{border:2px solid #29abe1;margin-left:-1px;margin-top:-1px}#fs_addons .fs-cards-list .fs-card:hover .fs-inner ul{top:-100px}#fs_addons .fs-cards-list .fs-card:hover .fs-inner .fs-title,#fs_addons .fs-cards-list .fs-card:hover .fs-inner .fs-offer{color:#29abe1}}
|
2 |
+
#TB_window,#TB_window iframe{width:821px !important}#plugin-information .fyi{width:266px !important}#plugin-information #section-holder{margin-right:299px}#plugin-information #section-description h2,#plugin-information #section-description h3,#plugin-information #section-description p,#plugin-information #section-description b,#plugin-information #section-description i,#plugin-information #section-description blockquote,#plugin-information #section-description li,#plugin-information #section-description ul,#plugin-information #section-description ol{clear:none}#plugin-information #section-description iframe{max-width:100%}#plugin-information #section-description .fs-selling-points{padding-bottom:10px;border-bottom:1px solid #ddd}#plugin-information #section-description .fs-selling-points ul{margin:0}#plugin-information #section-description .fs-selling-points ul li{padding:0;list-style:none outside none}#plugin-information #section-description .fs-selling-points ul li i.dashicons{color:#71ae00;font-size:3em;vertical-align:middle;line-height:30px;float:left;margin:0 0 0 -15px}#plugin-information #section-description .fs-selling-points ul li h3{margin:1em 30px !important}#plugin-information #section-description .fs-screenshots:after{content:"";display:table;clear:both}#plugin-information #section-description .fs-screenshots ul{list-style:none;margin:0}#plugin-information #section-description .fs-screenshots ul li{width:225px;height:225px;float:left;margin-bottom:20px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}#plugin-information #section-description .fs-screenshots ul li a{display:block;width:100%;height:100%;border:1px solid;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);background-size:cover}#plugin-information #section-description .fs-screenshots ul li.odd{margin-right:20px}#plugin-information .plugin-information-pricing{margin:-16px;border-bottom:1px solid #ddd}#plugin-information .plugin-information-pricing .fs-plan h3{margin-top:0;padding:20px;font-size:16px}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper{border-bottom:1px solid #ddd}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab{cursor:pointer;position:relative;padding:0 10px;font-size:0.9em}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab label{text-transform:uppercase;color:green;background:greenyellow;position:absolute;left:-1px;right:-1px;bottom:100%;border:1px solid darkgreen;padding:2px;text-align:center;font-size:0.9em;line-height:1em}#plugin-information .plugin-information-pricing .fs-plan .nav-tab-wrapper .nav-tab.nav-tab-active{cursor:default;background:#fffeec;border-bottom-color:#fffeec}#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle h3{background:#fffeec;margin:0;padding-bottom:0;color:#0073aa}#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle .nav-tab-wrapper,#plugin-information .plugin-information-pricing .fs-plan.fs-single-cycle .fs-billing-frequency{display:none}#plugin-information .plugin-information-pricing .fs-plan .fs-pricing-body{background:#fffeec;padding:20px}#plugin-information .plugin-information-pricing .fs-plan .button{width:100%;text-align:center;font-weight:bold;text-transform:uppercase;font-size:1.1em}#plugin-information .plugin-information-pricing .fs-plan label{white-space:nowrap}#plugin-information .plugin-information-pricing .fs-plan var{font-style:normal}#plugin-information .plugin-information-pricing .fs-plan .fs-billing-frequency,#plugin-information .plugin-information-pricing .fs-plan .fs-annual-discount{text-align:center;display:block;font-weight:bold;margin-bottom:10px;text-transform:uppercase;background:#F3F3F3;padding:2px;border:1px solid #ccc}#plugin-information .plugin-information-pricing .fs-plan .fs-annual-discount{text-transform:none;color:green;background:greenyellow}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms{font-size:0.9em}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms i{float:left;margin:0 0 0 -15px}#plugin-information .plugin-information-pricing .fs-plan ul.fs-trial-terms li{margin:10px 0 0 0}#plugin-information #section-features .fs-features{margin:-20px -26px}#plugin-information #section-features table{width:100%;border-spacing:0;border-collapse:separate}#plugin-information #section-features table thead th{padding:10px 0}#plugin-information #section-features table thead .fs-price{color:#71ae00;font-weight:normal;display:block;text-align:center}#plugin-information #section-features table tbody td{border-top:1px solid #ccc;padding:10px 0;text-align:center;width:100px;color:#71ae00}#plugin-information #section-features table tbody td:first-child{text-align:left;width:auto;color:inherit;padding-left:26px}#plugin-information #section-features table tbody tr.fs-odd td{background:#fefefe}#plugin-information #section-features .dashicons-yes{width:30px;height:30px;font-size:30px}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .button,#plugin-information .fs-dropdown .button-group .button{position:relative;width:auto;top:0;right:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .button:focus,#plugin-information .fs-dropdown .button-group .button:focus{z-index:10}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .button-group .fs-dropdown-arrow,#plugin-information .fs-dropdown .button-group .fs-dropdown-arrow{border-top:6px solid white;border-right:4px solid transparent;border-left:4px solid transparent;top:12px;position:relative}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active:not(.up) .button:not(.fs-dropdown-arrow-button),#plugin-information .fs-dropdown.active:not(.up) .button:not(.fs-dropdown-arrow-button){border-bottom-left-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active:not(.up) .fs-dropdown-arrow-button,#plugin-information .fs-dropdown.active:not(.up) .fs-dropdown-arrow-button{border-bottom-right-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active.up .button:not(.fs-dropdown-arrow-button),#plugin-information .fs-dropdown.active.up .button:not(.fs-dropdown-arrow-button){border-top-left-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.active.up .fs-dropdown-arrow-button,#plugin-information .fs-dropdown.active.up .fs-dropdown-arrow-button{border-top-right-radius:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list,#plugin-information .fs-dropdown .fs-dropdown-list{position:absolute;right:-1px;top:100%;margin-left:auto;padding:3px 0;border:1px solid #bfbfbf;background-color:#fff;z-index:1;width:230px;text-align:left;-moz-box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12);-webkit-box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12);box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12)}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li,#plugin-information .fs-dropdown .fs-dropdown-list li{margin:0}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li a,#plugin-information .fs-dropdown .fs-dropdown-list li a{display:block;padding:5px 10px;text-decoration:none;text-shadow:none}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li:hover,#plugin-information .fs-dropdown .fs-dropdown-list li:hover{background-color:#0074a3;color:#fff}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown .fs-dropdown-list li:hover a,#plugin-information .fs-dropdown .fs-dropdown-list li:hover a{color:#fff}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown:not(.up) .fs-dropdown-list,#plugin-information .fs-dropdown:not(.up) .fs-dropdown-list{-moz-border-radius:3px 0 3px 3px;-webkit-border-radius:3px 0 3px 3px;border-radius:3px 0 3px 3px}#fs_addons .fs-cards-list .fs-card .fs-inner .fs-dropdown.up .fs-dropdown-list,#plugin-information .fs-dropdown.up .fs-dropdown-list{-moz-border-radius:3px 3px 0 3px;-webkit-border-radius:3px 3px 0 3px;border-radius:3px 3px 0 3px}#plugin-information .fs-dropdown .button-group{width:100%}#plugin-information .fs-dropdown .button-group .button{float:none;font-size:14px;font-weight:normal;text-transform:none}#plugin-information .fs-dropdown .fs-dropdown-list{margin-top:1px}#plugin-information .fs-dropdown.up .fs-dropdown-list{top:auto;bottom:100%;margin-bottom:2px}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group{text-align:center;display:table}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group .button{display:table-cell}#plugin-information.wp-core-ui .fs-pricing-body .fs-dropdown .button-group .button:not(.fs-dropdown-arrow-button){left:1px;width:100%}#plugin-information-footer>.button,#plugin-information-footer .fs-dropdown{position:relative;top:3px}#plugin-information-footer>.button.left,#plugin-information-footer .fs-dropdown.left{float:left}#plugin-information-footer>.right,#plugin-information-footer .fs-dropdown{float:right}@media screen and (max-width: 961px){#fs_addons .fs-cards-list .fs-card{height:265px}}
|
freemius/assets/css/admin/common.css
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
.fs-badge{position:absolute;top:10px;right:0;background:#71ae00;color:white;text-transform:uppercase;padding:5px 10px;-moz-border-radius:3px 0 0 3px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;font-weight:bold;border-right:0;-moz-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);box-shadow:0 2px 1px -1px rgba(0,0,0,0.3)}.theme-browser .theme .fs-premium-theme-badge-container{position:absolute;right:0;top:0}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge{position:relative;top:0;margin-top:10px;text-align:center}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge.fs-premium-theme-badge{font-size:1.1em}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge.fs-beta-theme-badge{background:#00a0d2}.fs-switch{position:relative;display:inline-block;color:#ccc;text-shadow:0 1px 1px rgba(255,255,255,0.8);height:18px;padding:6px 6px 5px 6px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);background:#ececec;box-shadow:0 0 4px rgba(0,0,0,0.1),inset 0 1px 3px 0 rgba(0,0,0,0.1);cursor:pointer}.fs-switch span{display:inline-block;width:35px;text-transform:uppercase}.fs-switch .fs-toggle{position:absolute;top:1px;width:37px;height:25px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.3);border-radius:4px;background:#fff;background-color:#fff;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #ececec), color-stop(1, #fff));background-image:-webkit-linear-gradient(top, #ececec, #fff);background-image:-moz-linear-gradient(top, #ececec, #fff);background-image:-ms-linear-gradient(top, #ececec, #fff);background-image:-o-linear-gradient(top, #ececec, #fff);background-image:linear-gradient(top, bottom, #ececec, #fff);box-shadow:inset 0 1px 0 0 rgba(255,255,255,0.5);z-index:999;-moz-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-o-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-ms-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-webkit-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1)}.fs-switch.fs-off .fs-toggle{left:2%}.fs-switch.fs-on .fs-toggle{left:54%}.fs-switch.fs-round{top:8px;padding:4px 25px;-moz-border-radius:24px;-webkit-border-radius:24px;border-radius:24px}.fs-switch.fs-round .fs-toggle{top:0;width:24px;height:24px;-moz-border-radius:24px;-webkit-border-radius:24px;border-radius:24px}.fs-switch.fs-round.fs-off .fs-toggle{left:-1px}.fs-switch.fs-round.fs-on{background:#0085ba}.fs-switch.fs-round.fs-on .fs-toggle{left:25px}.fs-switch.fs-small.fs-round{padding:1px 19px}.fs-switch.fs-small.fs-round .fs-toggle{top:0;width:18px;height:18px;-moz-border-radius:18px;-webkit-border-radius:18px;border-radius:18px}.fs-switch.fs-small.fs-round.fs-on .fs-toggle{left:19px}.fs-switch-feedback{margin-left:10px}.fs-switch-feedback.success{color:#71ae00}.rtl .fs-switch-feedback{margin-left:0;margin-right:10px}#fs_frame{line-height:0;font-size:0}.fs-full-size-wrapper{margin:40px 0 -65px -20px}@media (max-width: 600px){.fs-full-size-wrapper{margin:0 0 -65px -10px}}
|
2 |
-
.fs-notice{position:relative}.fs-notice.fs-has-title{margin-bottom:30px !important}.fs-notice.success{color:green}.fs-notice.promotion{border-color:#00a0d2 !important;background-color:#f2fcff !important}.fs-notice .fs-notice-body{margin:.5em 0;padding:2px}.fs-notice .fs-close{cursor:pointer;color:#aaa;float:right}.fs-notice .fs-close:hover{color:#666}.fs-notice .fs-close>*{margin-top:7px;display:inline-block}.fs-notice label.fs-plugin-title{background:rgba(0,0,0,0.3);color:#fff;padding:2px 10px;position:absolute;top:100%;bottom:auto;right:auto;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;left:10px;font-size:12px;font-weight:bold;cursor:auto}div.fs-notice.updated,div.fs-notice.success,div.fs-notice.promotion{display:block !important}.rtl .fs-notice .fs-close{float:left}.fs-secure-notice{position:fixed;top:32px;left:160px;right:0;background:#ebfdeb;padding:10px 20px;color:green;z-index:9999;-moz-box-shadow:0 2px 2px rgba(6,113,6,0.3);-webkit-box-shadow:0 2px 2px rgba(6,113,6,0.3);box-shadow:0 2px 2px rgba(6,113,6,0.3);opacity:0.95;filter:alpha(opacity=95)}.fs-secure-notice:hover{opacity:1;filter:alpha(opacity=100)}.fs-secure-notice a.fs-security-proof{color:green;text-decoration:none}@media screen and (max-width: 960px){.fs-secure-notice{left:36px}}@media screen and (max-width: 600px){.fs-secure-notice{display:none}}@media screen and (max-width: 500px){#fs_promo_tab{display:none}}@media screen and (max-width: 782px){.fs-secure-notice{left:0;top:46px;text-align:center}}span.fs-submenu-item.fs-sub:before{content:'\21B3';padding:0 5px}.rtl span.fs-submenu-item.fs-sub:before{content:'\21B2'}.fs-submenu-item.pricing.upgrade-mode{color:greenyellow}.fs-submenu-item.pricing.trial-mode{color:#83e2ff}#adminmenu .update-plugins.fs-trial{background-color:#00b9eb}.fs-ajax-spinner{border:0;width:20px;height:20px;margin-right:5px;vertical-align:sub;display:inline-block;background:url("/wp-admin/images/wpspin_light-2x.gif");background-size:contain;margin-bottom:-2px}.wrap.fs-section h2{text-align:left}.plugins p.fs-upgrade-notice{border:0;background-color:#d54e21;padding:10px;color:#f9f9f9;margin-top:10px}
|
1 |
+
.fs-badge{position:absolute;top:10px;right:0;background:#71ae00;color:white;text-transform:uppercase;padding:5px 10px;-moz-border-radius:3px 0 0 3px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;font-weight:bold;border-right:0;-moz-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,0.3);box-shadow:0 2px 1px -1px rgba(0,0,0,0.3)}.theme-browser .theme .fs-premium-theme-badge-container{position:absolute;right:0;top:0}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge{position:relative;top:0;margin-top:10px;text-align:center}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge.fs-premium-theme-badge{font-size:1.1em}.theme-browser .theme .fs-premium-theme-badge-container .fs-badge.fs-beta-theme-badge{background:#00a0d2}.fs-switch{position:relative;display:inline-block;color:#ccc;text-shadow:0 1px 1px rgba(255,255,255,0.8);height:18px;padding:6px 6px 5px 6px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);background:#ececec;box-shadow:0 0 4px rgba(0,0,0,0.1),inset 0 1px 3px 0 rgba(0,0,0,0.1);cursor:pointer}.fs-switch span{display:inline-block;width:35px;text-transform:uppercase}.fs-switch .fs-toggle{position:absolute;top:1px;width:37px;height:25px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.3);border-radius:4px;background:#fff;background-color:#fff;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #ececec), color-stop(1, #fff));background-image:-webkit-linear-gradient(top, #ececec, #fff);background-image:-moz-linear-gradient(top, #ececec, #fff);background-image:-ms-linear-gradient(top, #ececec, #fff);background-image:-o-linear-gradient(top, #ececec, #fff);background-image:linear-gradient(top, bottom, #ececec, #fff);box-shadow:inset 0 1px 0 0 rgba(255,255,255,0.5);z-index:999;-moz-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-o-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-ms-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);-webkit-transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1);transition:0.4s cubic-bezier(0.54, 1.6, 0.5, 1)}.fs-switch.fs-off .fs-toggle{left:2%}.fs-switch.fs-on .fs-toggle{left:54%}.fs-switch.fs-round{top:8px;padding:4px 25px;-moz-border-radius:24px;-webkit-border-radius:24px;border-radius:24px}.fs-switch.fs-round .fs-toggle{top:0;width:24px;height:24px;-moz-border-radius:24px;-webkit-border-radius:24px;border-radius:24px}.fs-switch.fs-round.fs-off .fs-toggle{left:-1px}.fs-switch.fs-round.fs-on{background:#0085ba}.fs-switch.fs-round.fs-on .fs-toggle{left:25px}.fs-switch.fs-small.fs-round{padding:1px 19px}.fs-switch.fs-small.fs-round .fs-toggle{top:0;width:18px;height:18px;-moz-border-radius:18px;-webkit-border-radius:18px;border-radius:18px}.fs-switch.fs-small.fs-round.fs-on .fs-toggle{left:19px}.fs-switch-feedback{margin-left:10px}.fs-switch-feedback.success{color:#71ae00}.rtl .fs-switch-feedback{margin-left:0;margin-right:10px}#fs_frame{line-height:0;font-size:0}.fs-full-size-wrapper{margin:40px 0 -65px -20px}@media (max-width: 600px){.fs-full-size-wrapper{margin:0 0 -65px -10px}}
|
2 |
+
.fs-notice{position:relative}.fs-notice.fs-has-title{margin-bottom:30px !important}.fs-notice.success{color:green}.fs-notice.promotion{border-color:#00a0d2 !important;background-color:#f2fcff !important}.fs-notice .fs-notice-body{margin:.5em 0;padding:2px}.fs-notice .fs-close{cursor:pointer;color:#aaa;float:right}.fs-notice .fs-close:hover{color:#666}.fs-notice .fs-close>*{margin-top:7px;display:inline-block}.fs-notice label.fs-plugin-title{background:rgba(0,0,0,0.3);color:#fff;padding:2px 10px;position:absolute;top:100%;bottom:auto;right:auto;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px;left:10px;font-size:12px;font-weight:bold;cursor:auto}div.fs-notice.updated,div.fs-notice.success,div.fs-notice.promotion{display:block !important}.rtl .fs-notice .fs-close{float:left}.fs-secure-notice{position:fixed;top:32px;left:160px;right:0;background:#ebfdeb;padding:10px 20px;color:green;z-index:9999;-moz-box-shadow:0 2px 2px rgba(6,113,6,0.3);-webkit-box-shadow:0 2px 2px rgba(6,113,6,0.3);box-shadow:0 2px 2px rgba(6,113,6,0.3);opacity:0.95;filter:alpha(opacity=95)}.fs-secure-notice:hover{opacity:1;filter:alpha(opacity=100)}.fs-secure-notice a.fs-security-proof{color:green;text-decoration:none}@media screen and (max-width: 960px){.fs-secure-notice{left:36px}}@media screen and (max-width: 600px){.fs-secure-notice{display:none}}@media screen and (max-width: 500px){#fs_promo_tab{display:none}}@media screen and (max-width: 782px){.fs-secure-notice{left:0;top:46px;text-align:center}}span.fs-submenu-item.fs-sub:before{content:'\21B3';padding:0 5px}.rtl span.fs-submenu-item.fs-sub:before{content:'\21B2'}.fs-submenu-item.pricing.upgrade-mode{color:greenyellow}.fs-submenu-item.pricing.trial-mode{color:#83e2ff}#adminmenu .update-plugins.fs-trial{background-color:#00b9eb}.fs-ajax-spinner{border:0;width:20px;height:20px;margin-right:5px;vertical-align:sub;display:inline-block;background:url("/wp-admin/images/wpspin_light-2x.gif");background-size:contain;margin-bottom:-2px}.wrap.fs-section h2{text-align:left}.plugins p.fs-upgrade-notice{border:0;background-color:#d54e21;padding:10px;color:#f9f9f9;margin-top:10px}
|
freemius/assets/css/admin/connect.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#fs_connect{width:480px;-moz-box-shadow:0px 1px 2px rgba(0,0,0,0.3);-webkit-box-shadow:0px 1px 2px rgba(0,0,0,0.3);box-shadow:0px 1px 2px rgba(0,0,0,0.3);margin:20px 0}@media screen and (max-width: 479px){#fs_connect{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;width:auto;margin:0 0 0 -10px}}#fs_connect .fs-content{background:#fff;padding:15px 20px}#fs_connect .fs-content .fs-error{background:snow;color:#d3135a;border:1px solid #d3135a;-moz-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);text-align:center;padding:5px;margin-bottom:10px}#fs_connect .fs-content p{margin:0;padding:0;font-size:1.2em}#fs_connect .fs-license-key-container{position:relative;width:280px;margin:10px auto 0 auto}#fs_connect .fs-license-key-container input{width:100%}#fs_connect .fs-license-key-container .dashicons{position:absolute;top:5px;right:5px}#fs_connect.require-license-key .fs-sites-list-container td{cursor:pointer}#fs_connect #delegate_to_site_admins{margin-right:15px;float:right;height:26px;vertical-align:middle;line-height:37px;font-weight:bold;border-bottom:1px dashed;text-decoration:none}#fs_connect #delegate_to_site_admins.rtl{margin-left:15px;margin-right:0}#fs_connect .fs-actions{padding:10px 20px;background:#C0C7CA}#fs_connect .fs-actions .button{padding:0 10px 1px;line-height:35px;height:37px;font-size:16px;margin-bottom:0}#fs_connect .fs-actions .button .dashicons{font-size:37px;margin-left:-8px;margin-right:12px}#fs_connect .fs-actions .button.button-primary{padding-right:15px;padding-left:15px}#fs_connect .fs-actions .button.button-primary:after{content:' \279C'}#fs_connect .fs-actions .button.button-primary.fs-loading:after{content:''}#fs_connect .fs-actions .button.button-secondary{float:right}#fs_connect.fs-anonymous-disabled .fs-actions .button.button-primary{width:100%}#fs_connect .fs-permissions{padding:10px 20px;background:#FEFEFE;-moz-transition:background 0.5s ease;-o-transition:background 0.5s ease;-ms-transition:background 0.5s ease;-webkit-transition:background 0.5s ease;transition:background 0.5s ease}#fs_connect .fs-permissions .fs-license-sync-disclaimer{text-align:center;margin-top:0}#fs_connect .fs-permissions .fs-trigger{font-size:0.9em;text-decoration:none;text-align:center;display:block}#fs_connect .fs-permissions ul{height:0;overflow:hidden;margin:0}#fs_connect .fs-permissions ul li{margin-bottom:12px}#fs_connect .fs-permissions ul li:last-child{margin-bottom:0}#fs_connect .fs-permissions ul li i.dashicons{float:left;font-size:40px;width:40px;height:40px}#fs_connect .fs-permissions ul li .fs-switch{float:right}#fs_connect .fs-permissions ul li .fs-permission-description{margin-left:55px}#fs_connect .fs-permissions ul li .fs-permission-description span{font-weight:bold;text-transform:uppercase;color:#23282d}#fs_connect .fs-permissions ul li .fs-permission-description p{margin:2px 0 0 0}#fs_connect .fs-permissions.fs-open{background:#fff}#fs_connect .fs-permissions.fs-open ul{height:auto;margin:20px 20px 10px 20px}@media screen and (max-width: 479px){#fs_connect .fs-permissions{background:#fff}#fs_connect .fs-permissions .fs-trigger{display:none}#fs_connect .fs-permissions ul{height:auto;margin:20px}}#fs_connect .fs-freemium-licensing{padding:8px;background:#777;color:#fff}#fs_connect .fs-freemium-licensing p{text-align:center;display:block;margin:0;padding:0}#fs_connect .fs-freemium-licensing a{color:#C2EEFF;text-decoration:underline}#fs_connect .fs-visual{padding:12px;line-height:0;background:#fafafa;height:80px;position:relative}#fs_connect .fs-visual .fs-site-icon{position:absolute;left:20px;top:10px}#fs_connect .fs-visual .fs-connect-logo{position:absolute;right:20px;top:10px}#fs_connect .fs-visual .fs-plugin-icon{position:absolute;top:10px;left:50%;margin-left:-40px}#fs_connect .fs-visual .fs-plugin-icon,#fs_connect .fs-visual .fs-site-icon,#fs_connect .fs-visual img,#fs_connect .fs-visual object{width:80px;height:80px}#fs_connect .fs-visual .dashicons-wordpress{font-size:64px;background:#01749a;color:#fff;width:64px;height:64px;padding:8px}#fs_connect .fs-visual .dashicons-plus{position:absolute;top:50%;font-size:30px;margin-top:-10px;color:#bbb}#fs_connect .fs-visual .dashicons-plus.fs-first{left:28%}#fs_connect .fs-visual .dashicons-plus.fs-second{left:65%}#fs_connect .fs-visual .fs-plugin-icon,#fs_connect .fs-visual .fs-connect-logo,#fs_connect .fs-visual .fs-site-icon{border:1px solid #ccc;padding:1px;background:#fff}#fs_connect .fs-terms{text-align:center;font-size:0.85em;padding:5px;background:rgba(0,0,0,0.05)}#fs_connect .fs-terms,#fs_connect .fs-terms a{color:#999}#fs_connect .fs-terms a{text-decoration:none}.fs-multisite-options-container{margin-top:10px;border:1px solid #ccc;padding:5px}.fs-multisite-options-container a{text-decoration:none}.fs-multisite-options-container a:focus{box-shadow:none}.fs-multisite-options-container a.selected{font-weight:bold}.fs-multisite-options-container.fs-apply-on-all-sites{border:0 none;padding:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options{border-spacing:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options td:not(:first-child){display:none}.fs-multisite-options-container .fs-sites-list-container{display:none;overflow:auto}.fs-multisite-options-container .fs-sites-list-container table td{border-top:1px solid #ccc;padding:4px 2px}.fs-tooltip-trigger{position:relative}.fs-tooltip-trigger:not(a){cursor:help}.fs-tooltip-trigger .fs-tooltip{opacity:0;visibility:hidden;-moz-transition:opacity 0.3s ease-in-out;-o-transition:opacity 0.3s ease-in-out;-ms-transition:opacity 0.3s ease-in-out;-webkit-transition:opacity 0.3s ease-in-out;transition:opacity 0.3s ease-in-out;position:absolute;background:rgba(0,0,0,0.8);color:#fff;font-family:'arial', serif;font-size:12px;padding:10px;z-index:999999;bottom:100%;margin-bottom:5px;left:0;right:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);line-height:1.3em;font-weight:bold;text-align:left}.rtl .fs-tooltip-trigger .fs-tooltip{text-align:right}.fs-tooltip-trigger .fs-tooltip::after{content:' ';display:block;width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:rgba(0,0,0,0.8) transparent transparent transparent;position:absolute;top:100%;left:21px}.rtl .fs-tooltip-trigger .fs-tooltip::after{right:21px;left:auto}.fs-tooltip-trigger:hover .fs-tooltip{visibility:visible;opacity:1}#fs_marketing_optin{display:none;margin-top:10px;border:1px solid #ccc;padding:10px;line-height:1.5em}#fs_marketing_optin .fs-message{display:block;margin-bottom:5px;font-size:1.05em;font-weight:600}#fs_marketing_optin.error{border:1px solid #d3135a;background:#fee}#fs_marketing_optin.error .fs-message{color:#d3135a}#fs_marketing_optin .fs-input-container{margin-top:5px}#fs_marketing_optin .fs-input-container label{margin-top:5px;display:block}#fs_marketing_optin .fs-input-container label input{float:left;margin:1px 0 0 0}#fs_marketing_optin .fs-input-container label:first-child{display:block;margin-bottom:2px}#fs_marketing_optin .fs-input-label{display:block;margin-left:20px}#fs_marketing_optin .fs-input-label .underlined{text-decoration:underline}.rtl #fs_marketing_optin .fs-input-container label input{float:right}.rtl #fs_marketing_optin .fs-input-label{margin-left:0;margin-right:20px}.rtl #fs_connect .fs-actions{padding:10px 20px;background:#C0C7CA}.rtl #fs_connect .fs-actions .button .dashicons{font-size:37px;margin-left:-8px;margin-right:12px}.rtl #fs_connect .fs-actions .button.button-primary:after{content:' \000bb'}.rtl #fs_connect .fs-actions .button.button-primary.fs-loading:after{content:''}.rtl #fs_connect .fs-actions .button.button-secondary{float:left}.rtl #fs_connect .fs-permissions ul li .fs-permission-description{margin-right:55px;margin-left:0}.rtl #fs_connect .fs-permissions ul li .fs-switch{float:left}.rtl #fs_connect .fs-permissions ul li i.dashicons{float:right}.rtl #fs_connect .fs-visual .fs-site-icon{right:20px;left:auto}.rtl #fs_connect .fs-visual .fs-connect-logo{right:auto;left:20px}#fs_theme_connect_wrapper{position:fixed;top:0;height:100%;width:100%;z-index:99990;background:rgba(0,0,0,0.75);text-align:center;overflow-y:auto}#fs_theme_connect_wrapper:before{content:"";display:inline-block;vertical-align:middle;height:100%}#fs_theme_connect_wrapper>button.close{color:white;cursor:pointer;height:40px;width:40px;position:absolute;right:0;border:0;background-color:transparent;top:32px}#fs_theme_connect_wrapper #fs_connect{top:0;text-align:left;display:inline-block;vertical-align:middle;margin-top:52px;margin-bottom:20px}#fs_theme_connect_wrapper #fs_connect .fs-terms{background:rgba(140,140,140,0.64)}#fs_theme_connect_wrapper #fs_connect .fs-terms,#fs_theme_connect_wrapper #fs_connect .fs-terms a{color:#c5c5c5}.wp-pointer-content #fs_connect{margin:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.fs-opt-in-pointer .wp-pointer-content{padding:0}.fs-opt-in-pointer.wp-pointer-top .wp-pointer-arrow{border-bottom-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-top .wp-pointer-arrow-inner{border-bottom-color:#fafafa}.fs-opt-in-pointer.wp-pointer-bottom .wp-pointer-arrow{border-top-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-bottom .wp-pointer-arrow-inner{border-top-color:#fafafa}.fs-opt-in-pointer.wp-pointer-left .wp-pointer-arrow{border-right-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-left .wp-pointer-arrow-inner{border-right-color:#fafafa}.fs-opt-in-pointer.wp-pointer-right .wp-pointer-arrow{border-left-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-right .wp-pointer-arrow-inner{border-left-color:#fafafa}
|
1 |
+
#fs_connect{width:480px;-moz-box-shadow:0px 1px 2px rgba(0,0,0,0.3);-webkit-box-shadow:0px 1px 2px rgba(0,0,0,0.3);box-shadow:0px 1px 2px rgba(0,0,0,0.3);margin:20px 0}@media screen and (max-width: 479px){#fs_connect{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;width:auto;margin:0 0 0 -10px}}#fs_connect .fs-content{background:#fff;padding:15px 20px}#fs_connect .fs-content .fs-error{background:snow;color:#d3135a;border:1px solid #d3135a;-moz-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);text-align:center;padding:5px;margin-bottom:10px}#fs_connect .fs-content p{margin:0;padding:0;font-size:1.2em}#fs_connect .fs-license-key-container{position:relative;width:280px;margin:10px auto 0 auto}#fs_connect .fs-license-key-container input{width:100%}#fs_connect .fs-license-key-container .dashicons{position:absolute;top:5px;right:5px}#fs_connect.require-license-key .fs-sites-list-container td{cursor:pointer}#fs_connect #delegate_to_site_admins{margin-right:15px;float:right;height:26px;vertical-align:middle;line-height:37px;font-weight:bold;border-bottom:1px dashed;text-decoration:none}#fs_connect #delegate_to_site_admins.rtl{margin-left:15px;margin-right:0}#fs_connect .fs-actions{padding:10px 20px;background:#C0C7CA}#fs_connect .fs-actions .button{padding:0 10px 1px;line-height:35px;height:37px;font-size:16px;margin-bottom:0}#fs_connect .fs-actions .button .dashicons{font-size:37px;margin-left:-8px;margin-right:12px}#fs_connect .fs-actions .button.button-primary{padding-right:15px;padding-left:15px}#fs_connect .fs-actions .button.button-primary:after{content:' \279C'}#fs_connect .fs-actions .button.button-primary.fs-loading:after{content:''}#fs_connect .fs-actions .button.button-secondary{float:right}#fs_connect.fs-anonymous-disabled .fs-actions .button.button-primary{width:100%}#fs_connect .fs-permissions{padding:10px 20px;background:#FEFEFE;-moz-transition:background 0.5s ease;-o-transition:background 0.5s ease;-ms-transition:background 0.5s ease;-webkit-transition:background 0.5s ease;transition:background 0.5s ease}#fs_connect .fs-permissions .fs-license-sync-disclaimer{text-align:center;margin-top:0}#fs_connect .fs-permissions .fs-trigger{font-size:0.9em;text-decoration:none;text-align:center;display:block}#fs_connect .fs-permissions ul{height:0;overflow:hidden;margin:0}#fs_connect .fs-permissions ul li{margin-bottom:12px}#fs_connect .fs-permissions ul li:last-child{margin-bottom:0}#fs_connect .fs-permissions ul li i.dashicons{float:left;font-size:40px;width:40px;height:40px}#fs_connect .fs-permissions ul li .fs-switch{float:right}#fs_connect .fs-permissions ul li .fs-permission-description{margin-left:55px}#fs_connect .fs-permissions ul li .fs-permission-description span{font-weight:bold;text-transform:uppercase;color:#23282d}#fs_connect .fs-permissions ul li .fs-permission-description p{margin:2px 0 0 0}#fs_connect .fs-permissions.fs-open{background:#fff}#fs_connect .fs-permissions.fs-open ul{height:auto;margin:20px 20px 10px 20px}@media screen and (max-width: 479px){#fs_connect .fs-permissions{background:#fff}#fs_connect .fs-permissions .fs-trigger{display:none}#fs_connect .fs-permissions ul{height:auto;margin:20px}}#fs_connect .fs-freemium-licensing{padding:8px;background:#777;color:#fff}#fs_connect .fs-freemium-licensing p{text-align:center;display:block;margin:0;padding:0}#fs_connect .fs-freemium-licensing a{color:#C2EEFF;text-decoration:underline}#fs_connect .fs-visual{padding:12px;line-height:0;background:#fafafa;height:80px;position:relative}#fs_connect .fs-visual .fs-site-icon{position:absolute;left:20px;top:10px}#fs_connect .fs-visual .fs-connect-logo{position:absolute;right:20px;top:10px}#fs_connect .fs-visual .fs-plugin-icon{position:absolute;top:10px;left:50%;margin-left:-40px}#fs_connect .fs-visual .fs-plugin-icon,#fs_connect .fs-visual .fs-site-icon,#fs_connect .fs-visual img,#fs_connect .fs-visual object{width:80px;height:80px}#fs_connect .fs-visual .dashicons-wordpress{font-size:64px;background:#01749a;color:#fff;width:64px;height:64px;padding:8px}#fs_connect .fs-visual .dashicons-plus{position:absolute;top:50%;font-size:30px;margin-top:-10px;color:#bbb}#fs_connect .fs-visual .dashicons-plus.fs-first{left:28%}#fs_connect .fs-visual .dashicons-plus.fs-second{left:65%}#fs_connect .fs-visual .fs-plugin-icon,#fs_connect .fs-visual .fs-connect-logo,#fs_connect .fs-visual .fs-site-icon{border:1px solid #ccc;padding:1px;background:#fff}#fs_connect .fs-terms{text-align:center;font-size:0.85em;padding:5px;background:rgba(0,0,0,0.05)}#fs_connect .fs-terms,#fs_connect .fs-terms a{color:#999}#fs_connect .fs-terms a{text-decoration:none}.fs-multisite-options-container{margin-top:10px;border:1px solid #ccc;padding:5px}.fs-multisite-options-container a{text-decoration:none}.fs-multisite-options-container a:focus{box-shadow:none}.fs-multisite-options-container a.selected{font-weight:bold}.fs-multisite-options-container.fs-apply-on-all-sites{border:0 none;padding:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options{border-spacing:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options td:not(:first-child){display:none}.fs-multisite-options-container .fs-sites-list-container{display:none;overflow:auto}.fs-multisite-options-container .fs-sites-list-container table td{border-top:1px solid #ccc;padding:4px 2px}.fs-tooltip-trigger{position:relative}.fs-tooltip-trigger:not(a){cursor:help}.fs-tooltip-trigger .fs-tooltip{opacity:0;visibility:hidden;-moz-transition:opacity 0.3s ease-in-out;-o-transition:opacity 0.3s ease-in-out;-ms-transition:opacity 0.3s ease-in-out;-webkit-transition:opacity 0.3s ease-in-out;transition:opacity 0.3s ease-in-out;position:absolute;background:rgba(0,0,0,0.8);color:#fff;font-family:'arial', serif;font-size:12px;padding:10px;z-index:999999;bottom:100%;margin-bottom:5px;left:0;right:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);line-height:1.3em;font-weight:bold;text-align:left}.rtl .fs-tooltip-trigger .fs-tooltip{text-align:right}.fs-tooltip-trigger .fs-tooltip::after{content:' ';display:block;width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:rgba(0,0,0,0.8) transparent transparent transparent;position:absolute;top:100%;left:21px}.rtl .fs-tooltip-trigger .fs-tooltip::after{right:21px;left:auto}.fs-tooltip-trigger:hover .fs-tooltip{visibility:visible;opacity:1}#fs_marketing_optin{display:none;margin-top:10px;border:1px solid #ccc;padding:10px;line-height:1.5em}#fs_marketing_optin .fs-message{display:block;margin-bottom:5px;font-size:1.05em;font-weight:600}#fs_marketing_optin.error{border:1px solid #d3135a;background:#fee}#fs_marketing_optin.error .fs-message{color:#d3135a}#fs_marketing_optin .fs-input-container{margin-top:5px}#fs_marketing_optin .fs-input-container label{margin-top:5px;display:block}#fs_marketing_optin .fs-input-container label input{float:left;margin:1px 0 0 0}#fs_marketing_optin .fs-input-container label:first-child{display:block;margin-bottom:2px}#fs_marketing_optin .fs-input-label{display:block;margin-left:20px}#fs_marketing_optin .fs-input-label .underlined{text-decoration:underline}.rtl #fs_marketing_optin .fs-input-container label input{float:right}.rtl #fs_marketing_optin .fs-input-label{margin-left:0;margin-right:20px}.rtl #fs_connect .fs-actions{padding:10px 20px;background:#C0C7CA}.rtl #fs_connect .fs-actions .button .dashicons{font-size:37px;margin-left:-8px;margin-right:12px}.rtl #fs_connect .fs-actions .button.button-primary:after{content:' \000bb'}.rtl #fs_connect .fs-actions .button.button-primary.fs-loading:after{content:''}.rtl #fs_connect .fs-actions .button.button-secondary{float:left}.rtl #fs_connect .fs-permissions ul li .fs-permission-description{margin-right:55px;margin-left:0}.rtl #fs_connect .fs-permissions ul li .fs-switch{float:left}.rtl #fs_connect .fs-permissions ul li i.dashicons{float:right}.rtl #fs_connect .fs-visual .fs-site-icon{right:20px;left:auto}.rtl #fs_connect .fs-visual .fs-connect-logo{right:auto;left:20px}#fs_theme_connect_wrapper{position:fixed;top:0;height:100%;width:100%;z-index:99990;background:rgba(0,0,0,0.75);text-align:center;overflow-y:auto}#fs_theme_connect_wrapper:before{content:"";display:inline-block;vertical-align:middle;height:100%}#fs_theme_connect_wrapper>button.close{color:white;cursor:pointer;height:40px;width:40px;position:absolute;right:0;border:0;background-color:transparent;top:32px}#fs_theme_connect_wrapper #fs_connect{top:0;text-align:left;display:inline-block;vertical-align:middle;margin-top:52px;margin-bottom:20px}#fs_theme_connect_wrapper #fs_connect .fs-terms{background:rgba(140,140,140,0.64)}#fs_theme_connect_wrapper #fs_connect .fs-terms,#fs_theme_connect_wrapper #fs_connect .fs-terms a{color:#c5c5c5}.wp-pointer-content #fs_connect{margin:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.fs-opt-in-pointer .wp-pointer-content{padding:0}.fs-opt-in-pointer.wp-pointer-top .wp-pointer-arrow{border-bottom-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-top .wp-pointer-arrow-inner{border-bottom-color:#fafafa}.fs-opt-in-pointer.wp-pointer-bottom .wp-pointer-arrow{border-top-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-bottom .wp-pointer-arrow-inner{border-top-color:#fafafa}.fs-opt-in-pointer.wp-pointer-left .wp-pointer-arrow{border-right-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-left .wp-pointer-arrow-inner{border-right-color:#fafafa}.fs-opt-in-pointer.wp-pointer-right .wp-pointer-arrow{border-left-color:#dfdfdf}.fs-opt-in-pointer.wp-pointer-right .wp-pointer-arrow-inner{border-left-color:#fafafa}
|
freemius/assets/css/admin/debug.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.fs-switch-label{font-size:20px;line-height:31px;margin:0 5px}#fs_log_book table{font-family:Consolas,Monaco,monospace;font-size:12px}#fs_log_book table th{color:#ccc}#fs_log_book table tr{background:#232525}#fs_log_book table tr.alternate{background:#2b2b2b}#fs_log_book table tr td.fs-col--logger{color:#5a7435}#fs_log_book table tr td.fs-col--type{color:#ffc861}#fs_log_book table tr td.fs-col--function{color:#a7b7b1;font-weight:bold}#fs_log_book table tr td.fs-col--message,#fs_log_book table tr td.fs-col--message a{color:#9a73ac !important}#fs_log_book table tr td.fs-col--file{color:#d07922}#fs_log_book table tr td.fs-col--timestamp{color:#6596be}
|
1 |
+
.fs-switch-label{font-size:20px;line-height:31px;margin:0 5px}#fs_log_book table{font-family:Consolas,Monaco,monospace;font-size:12px}#fs_log_book table th{color:#ccc}#fs_log_book table tr{background:#232525}#fs_log_book table tr.alternate{background:#2b2b2b}#fs_log_book table tr td.fs-col--logger{color:#5a7435}#fs_log_book table tr td.fs-col--type{color:#ffc861}#fs_log_book table tr td.fs-col--function{color:#a7b7b1;font-weight:bold}#fs_log_book table tr td.fs-col--message,#fs_log_book table tr td.fs-col--message a{color:#9a73ac !important}#fs_log_book table tr td.fs-col--file{color:#d07922}#fs_log_book table tr td.fs-col--timestamp{color:#6596be}
|
freemius/assets/css/admin/dialog-boxes.css
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
.fs-modal{position:fixed;overflow:auto;height:100%;width:100%;top:0;z-index:100000;display:none;background:rgba(0,0,0,0.6)}.fs-modal .dashicons{vertical-align:middle}.fs-modal .fs-modal-dialog{background:transparent;position:absolute;left:50%;margin-left:-298px;padding-bottom:30px;top:-100%;z-index:100001;width:596px}@media (max-width: 650px){.fs-modal .fs-modal-dialog{margin-left:-50%;box-sizing:border-box;padding-left:10px;padding-right:10px;width:100%}.fs-modal .fs-modal-dialog .fs-modal-panel>h3>strong{font-size:1.3em}}.fs-modal.active{display:block}.fs-modal.active:before{display:block}.fs-modal.active .fs-modal-dialog{top:10%}.fs-modal.fs-success .fs-modal-header{border-bottom-color:#46b450}.fs-modal.fs-success .fs-modal-body{background-color:#f7fff7}.fs-modal.fs-warn .fs-modal-header{border-bottom-color:#ffb900}.fs-modal.fs-warn .fs-modal-body{background-color:#fff8e5}.fs-modal.fs-error .fs-modal-header{border-bottom-color:#dc3232}.fs-modal.fs-error .fs-modal-body{background-color:#ffeaea}.fs-modal .fs-modal-body,.fs-modal .fs-modal-footer{border:0;background:#fefefe;padding:20px}.fs-modal .fs-modal-header{border-bottom:#eeeeee solid 1px;background:#fbfbfb;padding:15px 20px;position:relative;margin-bottom:-10px}.fs-modal .fs-modal-header h4{margin:0;padding:0;text-transform:uppercase;font-size:1.2em;font-weight:bold;color:#cacaca;text-shadow:1px 1px 1px #fff;letter-spacing:0.6px;-webkit-font-smoothing:antialiased}.fs-modal .fs-modal-header .fs-close{position:absolute;right:10px;top:12px;cursor:pointer;color:#bbb;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;padding:3px;-moz-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.fs-modal .fs-modal-header .fs-close:hover{color:#fff;background:#aaa}.fs-modal .fs-modal-header .fs-close .dashicons,.fs-modal .fs-modal-header .fs-close:hover .dashicons{text-decoration:none}.fs-modal .fs-modal-body{border-bottom:0}.fs-modal .fs-modal-body p{font-size:14px}.fs-modal .fs-modal-body h2{font-size:20px;line-height:1.5em}.fs-modal .fs-modal-body>div{margin-top:10px}.fs-modal .fs-modal-body>div h2{font-weight:bold;font-size:20px;margin-top:0}.fs-modal .fs-modal-footer{border-top:#eeeeee solid 1px;text-align:right}.fs-modal .fs-modal-footer>.button{margin:0 7px}.fs-modal .fs-modal-footer>.button:first-child{margin:0}.fs-modal .fs-modal-panel>.notice.inline{margin:0;display:none}.fs-modal .fs-modal-panel:not(.active){display:none}.rtl .fs-modal .fs-modal-header .fs-close{right:auto;left:20px}body.has-fs-modal{overflow:hidden}.fs-modal.fs-modal-deactivation-feedback .reason-input,.fs-modal.fs-modal-deactivation-feedback .internal-message{margin:3px 0 3px 22px}.fs-modal.fs-modal-deactivation-feedback .reason-input input,.fs-modal.fs-modal-deactivation-feedback .reason-input textarea,.fs-modal.fs-modal-deactivation-feedback .internal-message input,.fs-modal.fs-modal-deactivation-feedback .internal-message textarea{width:100%}.fs-modal.fs-modal-deactivation-feedback li.reason.has-internal-message .internal-message{border:1px solid #ccc;padding:7px;display:none}@media (max-width: 650px){.fs-modal.fs-modal-deactivation-feedback li.reason li.reason{margin-bottom:10px}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason .reason-input,.fs-modal.fs-modal-deactivation-feedback li.reason li.reason .internal-message{margin-left:29px}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason label{display:table}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason label>span{display:table-cell;font-size:1.3em}}.fs-modal.fs-modal-deactivation-feedback .anonymous-feedback-label{float:left}.fs-modal.fs-modal-deactivation-feedback .fs-modal-panel{margin-top:0 !important}.fs-modal.fs-modal-deactivation-feedback .fs-modal-panel h3{margin-top:0;line-height:1.5em}#the-list .deactivate>.fs-slug{display:none}.fs-modal.fs-modal-subscription-cancellation .fs-price-increase-warning{color:red;font-weight:bold;padding:0 25px;margin-bottom:0}.fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label input{float:left;top:5px;position:relative}.rtl .fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label input{float:right}.fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label span{display:block;margin-left:24px}.rtl .fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label span{margin-left:0;margin-right:24px}.fs-modal.fs-modal-license-activation .fs-modal-body input.fs-license-key{width:100%}.fs-license-options-container table,.fs-license-options-container table select,.fs-license-options-container table .fs-available-license-key{width:100%}.fs-license-options-container table td:first-child{width:1%}.fs-license-options-container table .fs-other-license-key-container label{position:relative;top:6px;float:left;margin-right:5px}.fs-license-options-container table .fs-other-license-key-container div{overflow:hidden;width:auto;height:30px;display:block;top:2px;position:relative}.fs-license-options-container table .fs-other-license-key-container div input{margin:0}.fs-sites-list-container td{cursor:pointer}.fs-modal.fs-modal-user-change .fs-modal-body input#fs_other_email_address{width:100%}.fs-user-change-options-container table{width:100%;border-collapse:collapse}.fs-user-change-options-container table tr{display:block;margin-bottom:2px}.fs-user-change-options-container table .fs-email-address-container td{display:inline-block}.fs-user-change-options-container table .fs-email-address-container input[type="radio"]{margin-bottom:0;margin-top:0}.fs-user-change-options-container table .fs-other-email-address-container{width:100%}.fs-user-change-options-container table .fs-other-email-address-container>div{display:table;width:100%}.fs-user-change-options-container table .fs-other-email-address-container>div label,.fs-user-change-options-container table .fs-other-email-address-container>div>div{display:table-cell}.fs-user-change-options-container table .fs-other-email-address-container>div label{width:1%;padding-left:3px;padding-right:3px}.fs-user-change-options-container table .fs-other-email-address-container>div>div{width:auto}.fs-user-change-options-container table .fs-other-email-address-container>div>div input{width:100%}.fs-modal.fs-modal-developer-license-debug-mode .fs-modal-body input.fs-license-or-user-key{width:100%}.fs-multisite-options-container{margin-top:10px;border:1px solid #ccc;padding:5px}.fs-multisite-options-container a{text-decoration:none}.fs-multisite-options-container a:focus{box-shadow:none}.fs-multisite-options-container a.selected{font-weight:bold}.fs-multisite-options-container.fs-apply-on-all-sites{border:0 none;padding:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options{border-spacing:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options td:not(:first-child){display:none}.fs-multisite-options-container .fs-sites-list-container{display:none;overflow:auto}.fs-multisite-options-container .fs-sites-list-container table td{border-top:1px solid #ccc;padding:4px 2px}.fs-modal.fs-modal-license-key-resend .email-address-container{overflow:hidden;padding-right:2px}.fs-modal.fs-modal-license-key-resend.fs-freemium input.email-address{width:300px}.fs-modal.fs-modal-license-key-resend.fs-freemium label{display:block;margin-bottom:10px}.fs-modal.fs-modal-license-key-resend.fs-premium input.email-address{width:100%}.fs-modal.fs-modal-license-key-resend.fs-premium .button-container{float:right;margin-left:7px}@media (max-width: 650px){.fs-modal.fs-modal-license-key-resend.fs-premium .button-container{margin-top:2px}}
|
2 |
-
.rtl .fs-modal.fs-modal-license-key-resend .fs-modal-body .input-container>.email-address-container{padding-left:2px;padding-right:0}.rtl .fs-modal.fs-modal-license-key-resend .fs-modal-body .button-container{float:left;margin-right:7px;margin-left:0}a.show-license-resend-modal{margin-top:4px;display:inline-block}.fs-ajax-loader{position:relative;width:170px;height:20px;margin:auto}.fs-ajax-loader .fs-ajax-loader-bar{position:absolute;top:0;background-color:#0074a3;width:20px;height:20px;-webkit-animation-name:bounce_ajaxLoader;-moz-animation-name:bounce_ajaxLoader;-ms-animation-name:bounce_ajaxLoader;-o-animation-name:bounce_ajaxLoader;animation-name:bounce_ajaxLoader;-webkit-animation-duration:1.5s;-moz-animation-duration:1.5s;-ms-animation-duration:1.5s;-o-animation-duration:1.5s;animation-duration:1.5s;animation-iteration-count:infinite;-o-animation-iteration-count:infinite;-ms-animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-webkit-animation-direction:normal;-moz-animation-direction:normal;-ms-animation-direction:normal;-o-animation-direction:normal;animation-direction:normal;-moz-transform:0.3;-o-transform:0.3;-ms-transform:0.3;-webkit-transform:0.3;transform:0.3}.fs-ajax-loader .fs-ajax-loader-bar-1{left:0px;animation-delay:0.6s;-o-animation-delay:0.6s;-ms-animation-delay:0.6s;-webkit-animation-delay:0.6s;-moz-animation-delay:0.6s}.fs-ajax-loader .fs-ajax-loader-bar-2{left:19px;animation-delay:0.75s;-o-animation-delay:0.75s;-ms-animation-delay:0.75s;-webkit-animation-delay:0.75s;-moz-animation-delay:0.75s}.fs-ajax-loader .fs-ajax-loader-bar-3{left:38px;animation-delay:0.9s;-o-animation-delay:0.9s;-ms-animation-delay:0.9s;-webkit-animation-delay:0.9s;-moz-animation-delay:0.9s}.fs-ajax-loader .fs-ajax-loader-bar-4{left:57px;animation-delay:1.05s;-o-animation-delay:1.05s;-ms-animation-delay:1.05s;-webkit-animation-delay:1.05s;-moz-animation-delay:1.05s}.fs-ajax-loader .fs-ajax-loader-bar-5{left:76px;animation-delay:1.2s;-o-animation-delay:1.2s;-ms-animation-delay:1.2s;-webkit-animation-delay:1.2s;-moz-animation-delay:1.2s}.fs-ajax-loader .fs-ajax-loader-bar-6{left:95px;animation-delay:1.35s;-o-animation-delay:1.35s;-ms-animation-delay:1.35s;-webkit-animation-delay:1.35s;-moz-animation-delay:1.35s}.fs-ajax-loader .fs-ajax-loader-bar-7{left:114px;animation-delay:1.5s;-o-animation-delay:1.5s;-ms-animation-delay:1.5s;-webkit-animation-delay:1.5s;-moz-animation-delay:1.5s}.fs-ajax-loader .fs-ajax-loader-bar-8{left:133px;animation-delay:1.65s;-o-animation-delay:1.65s;-ms-animation-delay:1.65s;-webkit-animation-delay:1.65s;-moz-animation-delay:1.65s}@-moz-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-ms-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-o-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-webkit-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}.fs-modal-auto-install #request-filesystem-credentials-form h2,.fs-modal-auto-install #request-filesystem-credentials-form .request-filesystem-credentials-action-buttons{display:none}.fs-modal-auto-install #request-filesystem-credentials-form input[type=password],.fs-modal-auto-install #request-filesystem-credentials-form input[type=email],.fs-modal-auto-install #request-filesystem-credentials-form input[type=text]{-webkit-appearance:none;padding:10px 10px 5px 10px;width:300px;max-width:100%}.fs-modal-auto-install #request-filesystem-credentials-form>div,.fs-modal-auto-install #request-filesystem-credentials-form label,.fs-modal-auto-install #request-filesystem-credentials-form fieldset{width:300px;max-width:100%;margin:0 auto;display:block}.button-primary.warn{box-shadow:0 1px 0 #d2593c;text-shadow:0 -1px 1px #d2593c,1px 0 1px #d2593c,0 1px 1px #d2593c,-1px 0 1px #d2593c;background:#f56a48;border-color:#ec6544 #d2593c #d2593c}.button-primary.warn:hover{background:#fd6d4a;border-color:#d2593c}.button-primary.warn:focus{box-shadow:0 1px 0 #dd6041,0 0 2px 1px #e4a796}.button-primary.warn:active{background:#dd6041;border-color:#d2593c;box-shadow:inset 0 2px 0 #d2593c}.button-primary.warn.disabled{color:#f5b3a1 !important;background:#e76444 !important;border-color:#d85e40 !important;text-shadow:0 -1px 0 rgba(0,0,0,0.1) !important}
|
1 |
+
.fs-modal{position:fixed;overflow:auto;height:100%;width:100%;top:0;z-index:100000;display:none;background:rgba(0,0,0,0.6)}.fs-modal .dashicons{vertical-align:middle}.fs-modal .fs-modal-dialog{background:transparent;position:absolute;left:50%;margin-left:-298px;padding-bottom:30px;top:-100%;z-index:100001;width:596px}@media (max-width: 650px){.fs-modal .fs-modal-dialog{margin-left:-50%;box-sizing:border-box;padding-left:10px;padding-right:10px;width:100%}.fs-modal .fs-modal-dialog .fs-modal-panel>h3>strong{font-size:1.3em}}.fs-modal.active{display:block}.fs-modal.active:before{display:block}.fs-modal.active .fs-modal-dialog{top:10%}.fs-modal.fs-success .fs-modal-header{border-bottom-color:#46b450}.fs-modal.fs-success .fs-modal-body{background-color:#f7fff7}.fs-modal.fs-warn .fs-modal-header{border-bottom-color:#ffb900}.fs-modal.fs-warn .fs-modal-body{background-color:#fff8e5}.fs-modal.fs-error .fs-modal-header{border-bottom-color:#dc3232}.fs-modal.fs-error .fs-modal-body{background-color:#ffeaea}.fs-modal .fs-modal-body,.fs-modal .fs-modal-footer{border:0;background:#fefefe;padding:20px}.fs-modal .fs-modal-header{border-bottom:#eeeeee solid 1px;background:#fbfbfb;padding:15px 20px;position:relative;margin-bottom:-10px}.fs-modal .fs-modal-header h4{margin:0;padding:0;text-transform:uppercase;font-size:1.2em;font-weight:bold;color:#cacaca;text-shadow:1px 1px 1px #fff;letter-spacing:0.6px;-webkit-font-smoothing:antialiased}.fs-modal .fs-modal-header .fs-close{position:absolute;right:10px;top:12px;cursor:pointer;color:#bbb;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;padding:3px;-moz-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.fs-modal .fs-modal-header .fs-close:hover{color:#fff;background:#aaa}.fs-modal .fs-modal-header .fs-close .dashicons,.fs-modal .fs-modal-header .fs-close:hover .dashicons{text-decoration:none}.fs-modal .fs-modal-body{border-bottom:0}.fs-modal .fs-modal-body p{font-size:14px}.fs-modal .fs-modal-body h2{font-size:20px;line-height:1.5em}.fs-modal .fs-modal-body>div{margin-top:10px}.fs-modal .fs-modal-body>div h2{font-weight:bold;font-size:20px;margin-top:0}.fs-modal .fs-modal-footer{border-top:#eeeeee solid 1px;text-align:right}.fs-modal .fs-modal-footer>.button{margin:0 7px}.fs-modal .fs-modal-footer>.button:first-child{margin:0}.fs-modal .fs-modal-panel>.notice.inline{margin:0;display:none}.fs-modal .fs-modal-panel:not(.active){display:none}.rtl .fs-modal .fs-modal-header .fs-close{right:auto;left:20px}body.has-fs-modal{overflow:hidden}.fs-modal.fs-modal-deactivation-feedback .reason-input,.fs-modal.fs-modal-deactivation-feedback .internal-message{margin:3px 0 3px 22px}.fs-modal.fs-modal-deactivation-feedback .reason-input input,.fs-modal.fs-modal-deactivation-feedback .reason-input textarea,.fs-modal.fs-modal-deactivation-feedback .internal-message input,.fs-modal.fs-modal-deactivation-feedback .internal-message textarea{width:100%}.fs-modal.fs-modal-deactivation-feedback li.reason.has-internal-message .internal-message{border:1px solid #ccc;padding:7px;display:none}@media (max-width: 650px){.fs-modal.fs-modal-deactivation-feedback li.reason li.reason{margin-bottom:10px}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason .reason-input,.fs-modal.fs-modal-deactivation-feedback li.reason li.reason .internal-message{margin-left:29px}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason label{display:table}.fs-modal.fs-modal-deactivation-feedback li.reason li.reason label>span{display:table-cell;font-size:1.3em}}.fs-modal.fs-modal-deactivation-feedback .anonymous-feedback-label{float:left}.fs-modal.fs-modal-deactivation-feedback .fs-modal-panel{margin-top:0 !important}.fs-modal.fs-modal-deactivation-feedback .fs-modal-panel h3{margin-top:0;line-height:1.5em}#the-list .deactivate>.fs-slug{display:none}.fs-modal.fs-modal-subscription-cancellation .fs-price-increase-warning{color:red;font-weight:bold;padding:0 25px;margin-bottom:0}.fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label input{float:left;top:5px;position:relative}.rtl .fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label input{float:right}.fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label span{display:block;margin-left:24px}.rtl .fs-modal.fs-modal-subscription-cancellation ul.subscription-actions label span{margin-left:0;margin-right:24px}.fs-modal.fs-modal-license-activation .fs-modal-body input.fs-license-key{width:100%}.fs-license-options-container table,.fs-license-options-container table select,.fs-license-options-container table .fs-available-license-key{width:100%}.fs-license-options-container table td:first-child{width:1%}.fs-license-options-container table .fs-other-license-key-container label{position:relative;top:6px;float:left;margin-right:5px}.fs-license-options-container table .fs-other-license-key-container div{overflow:hidden;width:auto;height:30px;display:block;top:2px;position:relative}.fs-license-options-container table .fs-other-license-key-container div input{margin:0}.fs-sites-list-container td{cursor:pointer}.fs-modal.fs-modal-user-change .fs-modal-body input#fs_other_email_address{width:100%}.fs-user-change-options-container table{width:100%;border-collapse:collapse}.fs-user-change-options-container table tr{display:block;margin-bottom:2px}.fs-user-change-options-container table .fs-email-address-container td{display:inline-block}.fs-user-change-options-container table .fs-email-address-container input[type="radio"]{margin-bottom:0;margin-top:0}.fs-user-change-options-container table .fs-other-email-address-container{width:100%}.fs-user-change-options-container table .fs-other-email-address-container>div{display:table;width:100%}.fs-user-change-options-container table .fs-other-email-address-container>div label,.fs-user-change-options-container table .fs-other-email-address-container>div>div{display:table-cell}.fs-user-change-options-container table .fs-other-email-address-container>div label{width:1%;padding-left:3px;padding-right:3px}.fs-user-change-options-container table .fs-other-email-address-container>div>div{width:auto}.fs-user-change-options-container table .fs-other-email-address-container>div>div input{width:100%}.fs-modal.fs-modal-developer-license-debug-mode .fs-modal-body input.fs-license-or-user-key{width:100%}.fs-multisite-options-container{margin-top:10px;border:1px solid #ccc;padding:5px}.fs-multisite-options-container a{text-decoration:none}.fs-multisite-options-container a:focus{box-shadow:none}.fs-multisite-options-container a.selected{font-weight:bold}.fs-multisite-options-container.fs-apply-on-all-sites{border:0 none;padding:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options{border-spacing:0}.fs-multisite-options-container.fs-apply-on-all-sites .fs-all-sites-options td:not(:first-child){display:none}.fs-multisite-options-container .fs-sites-list-container{display:none;overflow:auto}.fs-multisite-options-container .fs-sites-list-container table td{border-top:1px solid #ccc;padding:4px 2px}.fs-modal.fs-modal-license-key-resend .email-address-container{overflow:hidden;padding-right:2px}.fs-modal.fs-modal-license-key-resend.fs-freemium input.email-address{width:300px}.fs-modal.fs-modal-license-key-resend.fs-freemium label{display:block;margin-bottom:10px}.fs-modal.fs-modal-license-key-resend.fs-premium input.email-address{width:100%}.fs-modal.fs-modal-license-key-resend.fs-premium .button-container{float:right;margin-left:7px}@media (max-width: 650px){.fs-modal.fs-modal-license-key-resend.fs-premium .button-container{margin-top:2px}}
|
2 |
+
.rtl .fs-modal.fs-modal-license-key-resend .fs-modal-body .input-container>.email-address-container{padding-left:2px;padding-right:0}.rtl .fs-modal.fs-modal-license-key-resend .fs-modal-body .button-container{float:left;margin-right:7px;margin-left:0}a.show-license-resend-modal{margin-top:4px;display:inline-block}.fs-ajax-loader{position:relative;width:170px;height:20px;margin:auto}.fs-ajax-loader .fs-ajax-loader-bar{position:absolute;top:0;background-color:#0074a3;width:20px;height:20px;-webkit-animation-name:bounce_ajaxLoader;-moz-animation-name:bounce_ajaxLoader;-ms-animation-name:bounce_ajaxLoader;-o-animation-name:bounce_ajaxLoader;animation-name:bounce_ajaxLoader;-webkit-animation-duration:1.5s;-moz-animation-duration:1.5s;-ms-animation-duration:1.5s;-o-animation-duration:1.5s;animation-duration:1.5s;animation-iteration-count:infinite;-o-animation-iteration-count:infinite;-ms-animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-webkit-animation-direction:normal;-moz-animation-direction:normal;-ms-animation-direction:normal;-o-animation-direction:normal;animation-direction:normal;-moz-transform:0.3;-o-transform:0.3;-ms-transform:0.3;-webkit-transform:0.3;transform:0.3}.fs-ajax-loader .fs-ajax-loader-bar-1{left:0px;animation-delay:0.6s;-o-animation-delay:0.6s;-ms-animation-delay:0.6s;-webkit-animation-delay:0.6s;-moz-animation-delay:0.6s}.fs-ajax-loader .fs-ajax-loader-bar-2{left:19px;animation-delay:0.75s;-o-animation-delay:0.75s;-ms-animation-delay:0.75s;-webkit-animation-delay:0.75s;-moz-animation-delay:0.75s}.fs-ajax-loader .fs-ajax-loader-bar-3{left:38px;animation-delay:0.9s;-o-animation-delay:0.9s;-ms-animation-delay:0.9s;-webkit-animation-delay:0.9s;-moz-animation-delay:0.9s}.fs-ajax-loader .fs-ajax-loader-bar-4{left:57px;animation-delay:1.05s;-o-animation-delay:1.05s;-ms-animation-delay:1.05s;-webkit-animation-delay:1.05s;-moz-animation-delay:1.05s}.fs-ajax-loader .fs-ajax-loader-bar-5{left:76px;animation-delay:1.2s;-o-animation-delay:1.2s;-ms-animation-delay:1.2s;-webkit-animation-delay:1.2s;-moz-animation-delay:1.2s}.fs-ajax-loader .fs-ajax-loader-bar-6{left:95px;animation-delay:1.35s;-o-animation-delay:1.35s;-ms-animation-delay:1.35s;-webkit-animation-delay:1.35s;-moz-animation-delay:1.35s}.fs-ajax-loader .fs-ajax-loader-bar-7{left:114px;animation-delay:1.5s;-o-animation-delay:1.5s;-ms-animation-delay:1.5s;-webkit-animation-delay:1.5s;-moz-animation-delay:1.5s}.fs-ajax-loader .fs-ajax-loader-bar-8{left:133px;animation-delay:1.65s;-o-animation-delay:1.65s;-ms-animation-delay:1.65s;-webkit-animation-delay:1.65s;-moz-animation-delay:1.65s}@-moz-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-ms-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-o-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@-webkit-keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}@keyframes bounce_ajaxLoader{0%{-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);background-color:#0074a3}100%{-moz-transform:scale(0.3);-o-transform:scale(0.3);-ms-transform:scale(0.3);-webkit-transform:scale(0.3);transform:scale(0.3);background-color:#fff}}.fs-modal-auto-install #request-filesystem-credentials-form h2,.fs-modal-auto-install #request-filesystem-credentials-form .request-filesystem-credentials-action-buttons{display:none}.fs-modal-auto-install #request-filesystem-credentials-form input[type=password],.fs-modal-auto-install #request-filesystem-credentials-form input[type=email],.fs-modal-auto-install #request-filesystem-credentials-form input[type=text]{-webkit-appearance:none;padding:10px 10px 5px 10px;width:300px;max-width:100%}.fs-modal-auto-install #request-filesystem-credentials-form>div,.fs-modal-auto-install #request-filesystem-credentials-form label,.fs-modal-auto-install #request-filesystem-credentials-form fieldset{width:300px;max-width:100%;margin:0 auto;display:block}.button-primary.warn{box-shadow:0 1px 0 #d2593c;text-shadow:0 -1px 1px #d2593c,1px 0 1px #d2593c,0 1px 1px #d2593c,-1px 0 1px #d2593c;background:#f56a48;border-color:#ec6544 #d2593c #d2593c}.button-primary.warn:hover{background:#fd6d4a;border-color:#d2593c}.button-primary.warn:focus{box-shadow:0 1px 0 #dd6041,0 0 2px 1px #e4a796}.button-primary.warn:active{background:#dd6041;border-color:#d2593c;box-shadow:inset 0 2px 0 #d2593c}.button-primary.warn.disabled{color:#f5b3a1 !important;background:#e76444 !important;border-color:#d85e40 !important;text-shadow:0 -1px 0 rgba(0,0,0,0.1) !important}
|
freemius/assets/css/admin/plugins.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
label.fs-tag,span.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn,span.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-info,span.fs-tag.fs-info{background:#00a0d2}label.fs-tag.fs-success,span.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error,span.fs-tag.fs-error{background:#dc3232}.wp-list-table.plugins .plugin-title span.fs-tag{display:inline-block;margin-left:5px;line-height:10px}
|
1 |
+
label.fs-tag,span.fs-tag{background:#ffba00;color:#fff;display:inline-block;border-radius:3px;padding:5px;font-size:11px;line-height:11px;vertical-align:baseline}label.fs-tag.fs-warn,span.fs-tag.fs-warn{background:#ffba00}label.fs-tag.fs-info,span.fs-tag.fs-info{background:#00a0d2}label.fs-tag.fs-success,span.fs-tag.fs-success{background:#46b450}label.fs-tag.fs-error,span.fs-tag.fs-error{background:#dc3232}.wp-list-table.plugins .plugin-title span.fs-tag{display:inline-block;margin-left:5px;line-height:10px}
|
freemius/assets/css/customizer.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#fs_customizer_upsell .fs-customizer-plan{padding:10px 20px 20px 20px;border-radius:3px;background:#fff}#fs_customizer_upsell .fs-customizer-plan h2{position:relative;margin:0;line-height:2em;text-transform:uppercase}#fs_customizer_upsell .fs-customizer-plan h2 .button-link{top:-2px}#fs_customizer_upsell .fs-feature{position:relative}#fs_customizer_upsell .dashicons-yes{color:#0085ba;font-size:2em;vertical-align:bottom;margin-left:-7px;margin-right:10px}.rtl #fs_customizer_upsell .dashicons-yes{margin-left:10px;margin-right:-7px}#fs_customizer_upsell .dashicons-editor-help{color:#bbb;cursor:help}#fs_customizer_upsell .dashicons-editor-help .fs-feature-desc{opacity:0;visibility:hidden;-moz-transition:opacity 0.3s ease-in-out;-o-transition:opacity 0.3s ease-in-out;-ms-transition:opacity 0.3s ease-in-out;-webkit-transition:opacity 0.3s ease-in-out;transition:opacity 0.3s ease-in-out;position:absolute;background:#000;color:#fff;font-family:'arial', serif;font-size:12px;padding:10px;z-index:999999;bottom:100%;margin-bottom:5px;left:0;right:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);line-height:1.3em;font-weight:bold;text-align:left}.rtl #fs_customizer_upsell .dashicons-editor-help .fs-feature-desc{text-align:right}#fs_customizer_upsell .dashicons-editor-help .fs-feature-desc::after{content:' ';display:block;width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:#000 transparent transparent transparent;position:absolute;top:100%;left:21px}.rtl #fs_customizer_upsell .dashicons-editor-help .fs-feature-desc::after{right:21px;left:auto}#fs_customizer_upsell .dashicons-editor-help:hover .fs-feature-desc{visibility:visible;opacity:1}#fs_customizer_upsell .button-primary{display:block;text-align:center;margin-top:10px}#fs_customizer_support{display:block !important}#fs_customizer_support .button{float:right}#fs_customizer_support .button-group{width:100%;display:block;margin-top:10px}#fs_customizer_support .button-group .button{float:none;width:50%;text-align:center}#customize-theme-controls #accordion-section-freemius_upsell{border-top:1px solid #0085ba !important;border-bottom:1px solid #0085ba !important}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title{color:#fff;background-color:#0085ba;border-left:4px solid #0085ba;transition:.15s background-color ease-in-out, .15s border-color ease-in-out;outline:none;border-bottom:none !important}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title:hover{background-color:#008ec2;border-left-color:#0073aa}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title:after{color:#fff}#customize-theme-controls #accordion-section-freemius_upsell .rtl h3.accordion-section-title{border-left:none;border-right:4px solid #0085ba}#customize-theme-controls #accordion-section-freemius_upsell .rtl h3.accordion-section-title:hover{border-right-color:#0073aa}
|
1 |
+
#fs_customizer_upsell .fs-customizer-plan{padding:10px 20px 20px 20px;border-radius:3px;background:#fff}#fs_customizer_upsell .fs-customizer-plan h2{position:relative;margin:0;line-height:2em;text-transform:uppercase}#fs_customizer_upsell .fs-customizer-plan h2 .button-link{top:-2px}#fs_customizer_upsell .fs-feature{position:relative}#fs_customizer_upsell .dashicons-yes{color:#0085ba;font-size:2em;vertical-align:bottom;margin-left:-7px;margin-right:10px}.rtl #fs_customizer_upsell .dashicons-yes{margin-left:10px;margin-right:-7px}#fs_customizer_upsell .dashicons-editor-help{color:#bbb;cursor:help}#fs_customizer_upsell .dashicons-editor-help .fs-feature-desc{opacity:0;visibility:hidden;-moz-transition:opacity 0.3s ease-in-out;-o-transition:opacity 0.3s ease-in-out;-ms-transition:opacity 0.3s ease-in-out;-webkit-transition:opacity 0.3s ease-in-out;transition:opacity 0.3s ease-in-out;position:absolute;background:#000;color:#fff;font-family:'arial', serif;font-size:12px;padding:10px;z-index:999999;bottom:100%;margin-bottom:5px;left:0;right:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.2);box-shadow:1px 1px 1px rgba(0,0,0,0.2);line-height:1.3em;font-weight:bold;text-align:left}.rtl #fs_customizer_upsell .dashicons-editor-help .fs-feature-desc{text-align:right}#fs_customizer_upsell .dashicons-editor-help .fs-feature-desc::after{content:' ';display:block;width:0;height:0;border-style:solid;border-width:5px 5px 0 5px;border-color:#000 transparent transparent transparent;position:absolute;top:100%;left:21px}.rtl #fs_customizer_upsell .dashicons-editor-help .fs-feature-desc::after{right:21px;left:auto}#fs_customizer_upsell .dashicons-editor-help:hover .fs-feature-desc{visibility:visible;opacity:1}#fs_customizer_upsell .button-primary{display:block;text-align:center;margin-top:10px}#fs_customizer_support{display:block !important}#fs_customizer_support .button{float:right}#fs_customizer_support .button-group{width:100%;display:block;margin-top:10px}#fs_customizer_support .button-group .button{float:none;width:50%;text-align:center}#customize-theme-controls #accordion-section-freemius_upsell{border-top:1px solid #0085ba !important;border-bottom:1px solid #0085ba !important}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title{color:#fff;background-color:#0085ba;border-left:4px solid #0085ba;transition:.15s background-color ease-in-out, .15s border-color ease-in-out;outline:none;border-bottom:none !important}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title:hover{background-color:#008ec2;border-left-color:#0073aa}#customize-theme-controls #accordion-section-freemius_upsell h3.accordion-section-title:after{color:#fff}#customize-theme-controls #accordion-section-freemius_upsell .rtl h3.accordion-section-title{border-left:none;border-right:4px solid #0085ba}#customize-theme-controls #accordion-section-freemius_upsell .rtl h3.accordion-section-title:hover{border-right-color:#0073aa}
|
freemius/includes/class-freemius.php
CHANGED
@@ -351,6 +351,14 @@
|
|
351 |
*/
|
352 |
private $is_whitelabeled;
|
353 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
354 |
#region Uninstall Reasons IDs
|
355 |
|
356 |
const REASON_NO_LONGER_NEEDED = 1;
|
@@ -369,6 +377,14 @@
|
|
369 |
const REASON_DIDNT_WORK_AS_EXPECTED = 14;
|
370 |
const REASON_TEMPORARY_DEACTIVATION = 15;
|
371 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
372 |
#endregion
|
373 |
|
374 |
/* Ctor
|
@@ -816,7 +832,11 @@
|
|
816 |
return false;
|
817 |
}
|
818 |
|
819 |
-
if (
|
|
|
|
|
|
|
|
|
820 |
/**
|
821 |
* wp.org themes are limited to a single submenu item, and
|
822 |
* sub-submenu items are most likely not allowed (never verified).
|
@@ -1457,7 +1477,10 @@
|
|
1457 |
if ( $this->is_plugin() &&
|
1458 |
! isset( $this->_storage->is_plugin_new_install )
|
1459 |
) {
|
1460 |
-
$this->_storage->is_plugin_new_install =
|
|
|
|
|
|
|
1461 |
}
|
1462 |
}
|
1463 |
|
@@ -1480,6 +1503,13 @@
|
|
1480 |
-1 < settings.url.indexOf('admin-ajax.php') &&
|
1481 |
! ( settings.url.indexOf( '<?php echo $admin_param ?>' ) > 0 )
|
1482 |
) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1483 |
if (settings.url.indexOf('?') > 0) {
|
1484 |
settings.url += '&';
|
1485 |
} else {
|
@@ -1487,7 +1517,6 @@
|
|
1487 |
}
|
1488 |
|
1489 |
settings.url += '<?php echo $admin_param ?>=true';
|
1490 |
-
|
1491 |
}
|
1492 |
});
|
1493 |
})(jQuery);
|
@@ -1505,7 +1534,7 @@
|
|
1505 |
?>
|
1506 |
<script type="text/javascript">
|
1507 |
(function ($) {
|
1508 |
-
$('.fs-submenu-item.wp-support-forum').parent().attr(
|
1509 |
})(jQuery);
|
1510 |
</script>
|
1511 |
<?php
|
@@ -1601,6 +1630,7 @@
|
|
1601 |
}
|
1602 |
|
1603 |
add_action( 'init', array( &$this, '_maybe_add_gdpr_optin_ajax_handler') );
|
|
|
1604 |
}
|
1605 |
|
1606 |
if ( $this->is_plugin() ) {
|
@@ -1632,7 +1662,7 @@
|
|
1632 |
|
1633 |
add_action( 'admin_init', array( &$this, '_redirect_on_clicked_menu_link' ), WP_FS__LOWEST_PRIORITY );
|
1634 |
|
1635 |
-
if ( $this->is_theme() ) {
|
1636 |
add_action( 'admin_init', array( &$this, '_add_tracking_links' ) );
|
1637 |
}
|
1638 |
|
@@ -2006,6 +2036,10 @@
|
|
2006 |
* @since 2.0.0
|
2007 |
*/
|
2008 |
function _hook_action_links_and_register_account_hooks() {
|
|
|
|
|
|
|
|
|
2009 |
$this->_add_tracking_links();
|
2010 |
|
2011 |
if ( self::is_plugins_page() && $this->is_plugin() ) {
|
@@ -2186,6 +2220,12 @@
|
|
2186 |
);
|
2187 |
|
2188 |
$store_option = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
2189 |
}
|
2190 |
|
2191 |
if ( empty( $id_slug_type_path_map[ $module_id ]['path'] ) ||
|
@@ -4259,7 +4299,7 @@
|
|
4259 |
)
|
4260 |
),
|
4261 |
sprintf(
|
4262 |
-
'<a href="%s" target="_blank"><b>%s</b></a> - %s',
|
4263 |
sprintf( 'https://wordpress.org/plugins/%s/download/', $this->_slug ),
|
4264 |
$install_previous_title,
|
4265 |
$install_previous_desc
|
@@ -4366,7 +4406,7 @@
|
|
4366 |
)
|
4367 |
),
|
4368 |
sprintf(
|
4369 |
-
'<a href="%s" target="_blank"><b>%s</b></a> - %s',
|
4370 |
sprintf( 'https://wordpress.org/plugins/%s/download/', $this->_slug ),
|
4371 |
$install_previous_title,
|
4372 |
$install_previous_desc
|
@@ -4887,10 +4927,12 @@
|
|
4887 |
} else {
|
4888 |
$is_network_admin = fs_is_network_admin();
|
4889 |
|
4890 |
-
if (
|
|
|
|
|
|
|
4891 |
$this->_parent->is_registered() &&
|
4892 |
! $this->is_registered() &&
|
4893 |
-
$this->has_free_plan() &&
|
4894 |
/**
|
4895 |
* If not registered for add-on and the following conditions for the add-on are met, activate add-on account.
|
4896 |
* * Network active and in network admin - network activate add-on account.
|
@@ -4904,16 +4946,40 @@
|
|
4904 |
*/
|
4905 |
( $this->is_network_active() || ! $is_network_admin )
|
4906 |
) {
|
4907 |
-
|
4908 |
-
|
4909 |
-
|
4910 |
-
|
4911 |
-
|
4912 |
-
|
4913 |
-
)
|
4914 |
-
|
4915 |
-
|
4916 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4917 |
}
|
4918 |
|
4919 |
// @todo This should be only executed on activation. It should be migrated to register_activation_hook() together with other activation related logic.
|
@@ -5415,7 +5481,10 @@
|
|
5415 |
* @return bool
|
5416 |
*/
|
5417 |
function is_extensions_tracking_allowed() {
|
5418 |
-
return (true === $this->
|
|
|
|
|
|
|
5419 |
}
|
5420 |
|
5421 |
/**
|
@@ -5601,6 +5670,7 @@
|
|
5601 |
$this->_anonymous_mode = $this->get_bool_option( $plugin_info, 'anonymous_mode', false );
|
5602 |
}
|
5603 |
$this->_permissions = $this->get_option( $plugin_info, 'permissions', array() );
|
|
|
5604 |
|
5605 |
if ( ! empty( $plugin_info['trial'] ) ) {
|
5606 |
$this->_trial_days = $this->get_numeric_option(
|
@@ -7078,6 +7148,8 @@
|
|
7078 |
* @since 1.0.7
|
7079 |
*/
|
7080 |
function _admin_init_action() {
|
|
|
|
|
7081 |
/**
|
7082 |
* Automatically redirect to connect/activation page after plugin activation.
|
7083 |
*
|
@@ -7090,12 +7162,16 @@
|
|
7090 |
/**
|
7091 |
* Don't redirect if activating multiple plugins at once (bulk activation).
|
7092 |
*/
|
7093 |
-
} else {
|
7094 |
$this->_redirect_on_activation_hook();
|
7095 |
return;
|
7096 |
}
|
7097 |
}
|
7098 |
|
|
|
|
|
|
|
|
|
7099 |
if ( fs_request_is_action( $this->get_unique_affix() . '_skip_activation' ) ) {
|
7100 |
check_admin_referer( $this->get_unique_affix() . '_skip_activation' );
|
7101 |
|
@@ -7126,7 +7202,7 @@
|
|
7126 |
)
|
7127 |
) {
|
7128 |
if ( ! $this->is_pending_activation() ) {
|
7129 |
-
if ( ! $this->
|
7130 |
/**
|
7131 |
* If a user visits any other admin page before activating the premium-only theme with a valid
|
7132 |
* license, reactivate the previous theme.
|
@@ -7769,8 +7845,17 @@
|
|
7769 |
$this->_storage->is_plugin_new_install = empty( $this->_storage->plugin_last_version );
|
7770 |
}
|
7771 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7772 |
if ( ! $this->_anonymous_mode &&
|
7773 |
-
$
|
7774 |
! $this->_isAutoInstall
|
7775 |
) {
|
7776 |
// Store hint that the plugin was just activated to enable auto-redirection to settings.
|
@@ -7803,11 +7888,20 @@
|
|
7803 |
return;
|
7804 |
}
|
7805 |
|
7806 |
-
$license = $this->
|
7807 |
if ( ! is_object( $license ) ) {
|
7808 |
return;
|
7809 |
}
|
7810 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7811 |
if ( ! $this->is_registered() ) {
|
7812 |
// Opt in with a license key.
|
7813 |
$this->opt_in(
|
@@ -7830,7 +7924,6 @@
|
|
7830 |
}
|
7831 |
}
|
7832 |
|
7833 |
-
|
7834 |
/**
|
7835 |
* @author Leo Fajardo (@leorw)
|
7836 |
* @since 2.3.0
|
@@ -7846,12 +7939,21 @@
|
|
7846 |
|
7847 |
$license = ( ! is_null( $license ) ) ?
|
7848 |
$license :
|
7849 |
-
$this->
|
7850 |
|
7851 |
if ( ! is_object( $license ) ) {
|
7852 |
return;
|
7853 |
}
|
7854 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7855 |
if ( ! $this->is_network_registered() ) {
|
7856 |
$sites = $this->get_sites_for_network_level_optin();
|
7857 |
|
@@ -7915,16 +8017,217 @@
|
|
7915 |
}
|
7916 |
|
7917 |
/**
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7918 |
* @author Leo Fajardo (@leorw)
|
7919 |
* @since 2.3.0
|
7920 |
*
|
|
|
|
|
|
|
7921 |
* @return FS_Plugin_License
|
7922 |
*/
|
7923 |
-
|
7924 |
$parent_licenses_endpoint = "/plugins/{$this->get_id()}/parent_licenses.json?filter=activatable";
|
7925 |
-
$parent_instance = $this->get_parent_instance();
|
7926 |
|
7927 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7928 |
self::get_all_licenses( $this->get_parent_id() )
|
7929 |
);
|
7930 |
|
@@ -7938,7 +8241,7 @@
|
|
7938 |
$parent_licenses_endpoint = add_query_arg( $foreign_licenses, $parent_licenses_endpoint );
|
7939 |
}
|
7940 |
|
7941 |
-
$result = $
|
7942 |
|
7943 |
if (
|
7944 |
! $this->is_api_result_object( $result, 'licenses' ) ||
|
@@ -7948,9 +8251,24 @@
|
|
7948 |
return null;
|
7949 |
}
|
7950 |
|
7951 |
-
$
|
7952 |
|
7953 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7954 |
}
|
7955 |
|
7956 |
/**
|
@@ -10108,6 +10426,10 @@
|
|
10108 |
|
10109 |
$class_name = '';
|
10110 |
|
|
|
|
|
|
|
|
|
10111 |
switch ( $option_name ) {
|
10112 |
case 'plugins':
|
10113 |
case 'themes':
|
@@ -10392,6 +10714,18 @@
|
|
10392 |
return ( is_object( $this->_site ) && $this->_site->is_tracking_allowed() );
|
10393 |
}
|
10394 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10395 |
/**
|
10396 |
* @author Vova Feldman (@svovaf)
|
10397 |
* @since 1.0.4
|
@@ -12675,6 +13009,10 @@
|
|
12675 |
* @since 1.2.0
|
12676 |
*/
|
12677 |
function _add_license_activation() {
|
|
|
|
|
|
|
|
|
12678 |
if ( ! $this->is_user_admin() ) {
|
12679 |
// Only admins can activate a license.
|
12680 |
return;
|
@@ -12733,7 +13071,9 @@
|
|
12733 |
return;
|
12734 |
}
|
12735 |
|
12736 |
-
|
|
|
|
|
12737 |
// Handle user change only when the parent product or one of its add-ons is activated with a foreign license.
|
12738 |
return;
|
12739 |
}
|
@@ -12869,11 +13209,13 @@
|
|
12869 |
exit;
|
12870 |
}
|
12871 |
|
|
|
|
|
|
|
|
|
12872 |
$result = $this->activate_license(
|
12873 |
$license_key,
|
12874 |
-
|
12875 |
-
fs_request_get( 'sites', array(), 'post' ) :
|
12876 |
-
array(),
|
12877 |
fs_request_get_bool( 'is_marketing_allowed', null ),
|
12878 |
fs_request_get( 'blog_id', null ),
|
12879 |
fs_request_get( 'module_id', null, 'post' ),
|
@@ -12881,6 +13223,16 @@
|
|
12881 |
fs_request_get_bool( 'is_extensions_tracking_allowed', true )
|
12882 |
);
|
12883 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12884 |
echo json_encode( $result );
|
12885 |
|
12886 |
exit;
|
@@ -12967,6 +13319,46 @@
|
|
12967 |
}
|
12968 |
|
12969 |
/**
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12970 |
* A helper method to activate migrated licenses. If the product is network activated and integrated, the method will network activate the license.
|
12971 |
*
|
12972 |
* @author Vova Feldman (@svovaf)
|
@@ -12975,6 +13367,8 @@
|
|
12975 |
* @param string $license_key
|
12976 |
* @param null|bool $is_marketing_allowed
|
12977 |
* @param null|number $plugin_id
|
|
|
|
|
12978 |
*
|
12979 |
* @return array {
|
12980 |
* @var bool $success
|
@@ -12987,17 +13381,19 @@
|
|
12987 |
function activate_migrated_license(
|
12988 |
$license_key,
|
12989 |
$is_marketing_allowed = null,
|
12990 |
-
$plugin_id = null
|
|
|
|
|
12991 |
) {
|
12992 |
$this->_logger->entrance();
|
12993 |
|
12994 |
$result = $this->activate_license(
|
12995 |
$license_key,
|
12996 |
-
$this->is_network_active() ?
|
12997 |
$this->get_sites_for_network_level_optin() :
|
12998 |
-
|
12999 |
$is_marketing_allowed,
|
13000 |
-
|
13001 |
$plugin_id
|
13002 |
);
|
13003 |
|
@@ -13007,6 +13403,32 @@
|
|
13007 |
return $result;
|
13008 |
}
|
13009 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13010 |
/**
|
13011 |
* The implementation of this method was previously in `_activate_license_ajax_action()`.
|
13012 |
*
|
@@ -13039,7 +13461,12 @@
|
|
13039 |
|
13040 |
$license_key = trim( $license_key );
|
13041 |
|
13042 |
-
|
|
|
|
|
|
|
|
|
|
|
13043 |
// If the license activation is executed outside the context of a network admin, ignore the sites collection.
|
13044 |
$sites = array();
|
13045 |
}
|
@@ -13068,8 +13495,17 @@
|
|
13068 |
$user = $fs->get_current_or_network_user();
|
13069 |
}
|
13070 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13071 |
if ( is_object( $user ) ) {
|
13072 |
-
if (
|
13073 |
// If no specific blog ID was provided, activate the license for all sites in the network.
|
13074 |
$blog_2_install_map = array();
|
13075 |
$site_ids = array();
|
@@ -13108,16 +13544,6 @@
|
|
13108 |
}
|
13109 |
}
|
13110 |
} else {
|
13111 |
-
if ( $has_valid_blog_id ) {
|
13112 |
-
/**
|
13113 |
-
* If a specific blog ID was provided, activate the license only for the install that is
|
13114 |
-
* associated with the given blog ID.
|
13115 |
-
*
|
13116 |
-
* @author Leo Fajardo (@leorw)
|
13117 |
-
*/
|
13118 |
-
$fs->switch_to_blog( $blog_id );
|
13119 |
-
}
|
13120 |
-
|
13121 |
if ( $fs->is_registered() ) {
|
13122 |
$params = array(
|
13123 |
'license_key' => $fs->apply_filters( 'license_key', $license_key )
|
@@ -13172,13 +13598,19 @@
|
|
13172 |
if ( empty( $error ) ) {
|
13173 |
$fs->network_upgrade_mode_completed();
|
13174 |
|
|
|
|
|
|
|
|
|
|
|
|
|
13175 |
$fs->_sync_license( true, $has_valid_blog_id );
|
13176 |
|
13177 |
$this->maybe_sync_install_user();
|
13178 |
|
13179 |
$next_page = $fs->is_addon() ?
|
13180 |
$fs->get_parent_instance()->get_account_url() :
|
13181 |
-
$fs->
|
13182 |
}
|
13183 |
} else {
|
13184 |
$next_page = $fs->opt_in(
|
@@ -13196,7 +13628,7 @@
|
|
13196 |
if ( isset( $next_page->error ) ) {
|
13197 |
$error = $next_page->error;
|
13198 |
} else {
|
13199 |
-
if (
|
13200 |
/**
|
13201 |
* Get the list of sites that were just opted-in (and license activated).
|
13202 |
* This is an optimization for the next part below saving some DB queries.
|
@@ -14310,7 +14742,12 @@
|
|
14310 |
* @return bool
|
14311 |
*/
|
14312 |
function is_user_in_admin() {
|
14313 |
-
return
|
|
|
|
|
|
|
|
|
|
|
14314 |
}
|
14315 |
|
14316 |
/**
|
@@ -14622,9 +15059,18 @@
|
|
14622 |
if ( function_exists( 'get_sites' ) ) {
|
14623 |
// For WP 4.6 and above.
|
14624 |
return get_sites( $args );
|
14625 |
-
} else if ( function_exists( '
|
14626 |
// For WP 3.7 to WP 4.5.
|
14627 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14628 |
} else {
|
14629 |
// For WP 3.6 and below.
|
14630 |
return get_blog_list( 0, 'all' );
|
@@ -14801,7 +15247,7 @@
|
|
14801 |
* @return bool Since 2.3.1 returns if a switch was made.
|
14802 |
*/
|
14803 |
function switch_to_blog( $blog_id, FS_Site $install = null ) {
|
14804 |
-
if ( $blog_id == $this->_context_is_network_or_blog_id ) {
|
14805 |
return false;
|
14806 |
}
|
14807 |
|
@@ -16188,6 +16634,8 @@
|
|
16188 |
'http' => 402
|
16189 |
);
|
16190 |
|
|
|
|
|
16191 |
return $result;
|
16192 |
}
|
16193 |
|
@@ -17034,10 +17482,15 @@
|
|
17034 |
* @author Vova Feldman (@svovaf)
|
17035 |
* @since 1.0.6
|
17036 |
*
|
17037 |
-
* @param Freemius
|
17038 |
-
* @param bool|int|null
|
|
|
17039 |
*/
|
17040 |
-
private function _activate_addon_account(
|
|
|
|
|
|
|
|
|
17041 |
if ( $this->is_registered() ) {
|
17042 |
// Already activated.
|
17043 |
return;
|
@@ -17076,6 +17529,10 @@
|
|
17076 |
}
|
17077 |
}
|
17078 |
|
|
|
|
|
|
|
|
|
17079 |
// Activate add-on with parent plugin credentials.
|
17080 |
$result = $parent_fs->get_api_site_scope()->call(
|
17081 |
"/addons/{$this->_plugin->id}/installs.json",
|
@@ -17084,16 +17541,25 @@
|
|
17084 |
);
|
17085 |
|
17086 |
if ( ! $this->is_api_result_object( $result, 'installs' ) ) {
|
17087 |
-
|
17088 |
-
|
17089 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17090 |
|
17091 |
-
|
17092 |
-
|
17093 |
-
|
17094 |
-
|
17095 |
-
|
17096 |
-
|
|
|
17097 |
|
17098 |
return;
|
17099 |
}
|
@@ -17126,21 +17592,29 @@
|
|
17126 |
|
17127 |
if ( ! fs_is_network_admin() ) {
|
17128 |
// Try to activate premium license.
|
17129 |
-
$this->_activate_license( true );
|
17130 |
-
} else {
|
17131 |
-
$license_id = fs_request_get( 'license_id' );
|
17132 |
|
17133 |
-
if ( is_object( $
|
17134 |
-
|
17135 |
-
$license_id == $this->_site->license_id
|
17136 |
-
) {
|
17137 |
-
// License is already activated.
|
17138 |
-
return;
|
17139 |
}
|
|
|
|
|
|
|
|
|
|
|
17140 |
|
17141 |
-
|
17142 |
-
|
17143 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17144 |
|
17145 |
if ( is_object( $premium_license ) ) {
|
17146 |
$this->maybe_network_activate_addon_license( $premium_license );
|
@@ -19438,9 +19912,11 @@
|
|
19438 |
*
|
19439 |
* @author Vova Feldman (@svovaf)
|
19440 |
* @since 1.2.1
|
|
|
|
|
19441 |
*/
|
19442 |
-
function has_active_valid_license() {
|
19443 |
-
return self::is_active_valid_license( $this->_license );
|
19444 |
}
|
19445 |
|
19446 |
/**
|
@@ -19532,15 +20008,16 @@
|
|
19532 |
* @since 2.1.3
|
19533 |
*
|
19534 |
* @param FS_Plugin_License $license
|
|
|
19535 |
*
|
19536 |
* @return bool
|
19537 |
*/
|
19538 |
-
private static function is_active_valid_license( $license ) {
|
19539 |
return (
|
19540 |
is_object( $license ) &&
|
19541 |
FS_Plugin_License::is_valid_id( $license->id ) &&
|
19542 |
$license->is_active() &&
|
19543 |
-
$license->is_valid()
|
19544 |
);
|
19545 |
}
|
19546 |
|
@@ -19594,6 +20071,22 @@
|
|
19594 |
);
|
19595 |
}
|
19596 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19597 |
/**
|
19598 |
* Check if user is a trial or have feature enabled license.
|
19599 |
*
|
@@ -20909,7 +21402,7 @@
|
|
20909 |
*/
|
20910 |
private function get_latest_download_link( $label, $plugin_id = false ) {
|
20911 |
return sprintf(
|
20912 |
-
'<a target="_blank" href="%s">%s</a>',
|
20913 |
$this->_get_latest_download_local_url( $plugin_id ),
|
20914 |
$label
|
20915 |
);
|
@@ -20980,7 +21473,7 @@
|
|
20980 |
$this->get_text_inline( 'Version %s was released.', 'version-x-released' ) . ' ' . $this->get_text_inline( 'Please download %s.', 'please-download-x' ),
|
20981 |
$update->version,
|
20982 |
sprintf(
|
20983 |
-
'<a href="%s" target="_blank">%s</a>',
|
20984 |
$this->get_account_url( 'download_latest' ),
|
20985 |
sprintf(
|
20986 |
/* translators: %s: plan name (e.g. latest "Professional" version) */
|
@@ -21467,7 +21960,7 @@
|
|
21467 |
$this->get_plugin_title(),
|
21468 |
fs_strip_url_protocol( get_site_url( $blog_id ) ),
|
21469 |
sprintf(
|
21470 |
-
'<a href="%s" target="_blank">%s</a>',
|
21471 |
'https://freemius.com',
|
21472 |
'freemius.com'
|
21473 |
)
|
@@ -21566,6 +22059,18 @@
|
|
21566 |
|
21567 |
if ( is_object( $fs ) ) {
|
21568 |
$fs->_activate_license();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21569 |
}
|
21570 |
|
21571 |
return;
|
@@ -21924,6 +22429,86 @@
|
|
21924 |
}
|
21925 |
}
|
21926 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21927 |
#----------------------------------------------------------------------------------
|
21928 |
#region Contact Us
|
21929 |
#----------------------------------------------------------------------------------
|
@@ -22152,6 +22737,43 @@
|
|
22152 |
$this->get_api_plugin_scope();
|
22153 |
}
|
22154 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22155 |
/**
|
22156 |
* Show trial promotional notice (if any trial exist).
|
22157 |
*
|
@@ -22705,14 +23327,18 @@
|
|
22705 |
return;
|
22706 |
}
|
22707 |
|
22708 |
-
if (
|
22709 |
-
|
22710 |
-
|
22711 |
-
|
22712 |
-
|
|
|
|
|
|
|
22713 |
|
22714 |
-
|
22715 |
-
|
|
|
22716 |
return;
|
22717 |
}
|
22718 |
}
|
@@ -22792,7 +23418,7 @@
|
|
22792 |
if ( ! empty( $this->_dynamically_added_top_level_page_hook_name ) ) {
|
22793 |
if ( $this->is_network_registered() ) {
|
22794 |
$page = 'account';
|
22795 |
-
} else if ( $this->is_network_anonymous() ) {
|
22796 |
$this->maybe_set_slug_and_network_menu_exists_flag();
|
22797 |
}
|
22798 |
}
|
@@ -22870,7 +23496,7 @@
|
|
22870 |
|
22871 |
foreach ( $this->_action_links as $new_links ) {
|
22872 |
foreach ( $new_links as $link ) {
|
22873 |
-
$before_deactivate[ $link['key'] ] = '<a href="' . $link['href'] . '"' . ( $link['external'] ? ' target="_blank"' : '' ) . '>' . $link['label'] . '</a>';
|
22874 |
}
|
22875 |
}
|
22876 |
|
@@ -22990,7 +23616,7 @@
|
|
22990 |
'';
|
22991 |
|
22992 |
return sprintf(
|
22993 |
-
' %s: <ol><li>%s.</li>%s<li>%s (<a href="%s" target="_blank">%s</a>).</li></ol>',
|
22994 |
$this->get_text_inline( 'Please follow these steps to complete the upgrade', 'follow-steps-to-complete-upgrade' ),
|
22995 |
( empty( $activate_license_string ) ? '' : $activate_license_string . '</li><li>' ) .
|
22996 |
$this->get_latest_download_link( sprintf(
|
@@ -23243,6 +23869,14 @@
|
|
23243 |
*/
|
23244 |
function set_plugin_upgrade_complete() {
|
23245 |
$this->_storage->plugin_upgrade_mode = false;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23246 |
}
|
23247 |
|
23248 |
#endregion
|
351 |
*/
|
352 |
private $is_whitelabeled;
|
353 |
|
354 |
+
/**
|
355 |
+
* @author Leo Fajardo (@leorw)
|
356 |
+
* @since 2.4.0
|
357 |
+
*
|
358 |
+
* @var bool
|
359 |
+
*/
|
360 |
+
private $_is_bundle_license_auto_activation_enabled = false;
|
361 |
+
|
362 |
#region Uninstall Reasons IDs
|
363 |
|
364 |
const REASON_NO_LONGER_NEEDED = 1;
|
377 |
const REASON_DIDNT_WORK_AS_EXPECTED = 14;
|
378 |
const REASON_TEMPORARY_DEACTIVATION = 15;
|
379 |
|
380 |
+
/**
|
381 |
+
* @author Leo Fajardo (@leorw)
|
382 |
+
* @since 2.3.1
|
383 |
+
*
|
384 |
+
* @var boolean|null
|
385 |
+
*/
|
386 |
+
private $_use_external_pricing = null;
|
387 |
+
|
388 |
#endregion
|
389 |
|
390 |
/* Ctor
|
832 |
return false;
|
833 |
}
|
834 |
|
835 |
+
if (
|
836 |
+
! $is_tabs_visibility_check &&
|
837 |
+
$this->is_org_repo_compliant() &&
|
838 |
+
$this->show_settings_with_tabs()
|
839 |
+
) {
|
840 |
/**
|
841 |
* wp.org themes are limited to a single submenu item, and
|
842 |
* sub-submenu items are most likely not allowed (never verified).
|
1477 |
if ( $this->is_plugin() &&
|
1478 |
! isset( $this->_storage->is_plugin_new_install )
|
1479 |
) {
|
1480 |
+
$this->_storage->is_plugin_new_install = (
|
1481 |
+
! is_plugin_active( $this->_plugin_basename ) &&
|
1482 |
+
empty( $this->_storage->plugin_last_version )
|
1483 |
+
);
|
1484 |
}
|
1485 |
}
|
1486 |
|
1503 |
-1 < settings.url.indexOf('admin-ajax.php') &&
|
1504 |
! ( settings.url.indexOf( '<?php echo $admin_param ?>' ) > 0 )
|
1505 |
) {
|
1506 |
+
if (
|
1507 |
+
'string' === typeof settings.data &&
|
1508 |
+
settings.data.indexOf( 'action=heartbeat' ) > 0
|
1509 |
+
) {
|
1510 |
+
return;
|
1511 |
+
}
|
1512 |
+
|
1513 |
if (settings.url.indexOf('?') > 0) {
|
1514 |
settings.url += '&';
|
1515 |
} else {
|
1517 |
}
|
1518 |
|
1519 |
settings.url += '<?php echo $admin_param ?>=true';
|
|
|
1520 |
}
|
1521 |
});
|
1522 |
})(jQuery);
|
1534 |
?>
|
1535 |
<script type="text/javascript">
|
1536 |
(function ($) {
|
1537 |
+
$('.fs-submenu-item.wp-support-forum').parent().attr( { target: '_blank', rel: 'noopener noreferrer' } );
|
1538 |
})(jQuery);
|
1539 |
</script>
|
1540 |
<?php
|
1630 |
}
|
1631 |
|
1632 |
add_action( 'init', array( &$this, '_maybe_add_gdpr_optin_ajax_handler') );
|
1633 |
+
add_action( 'init', array( &$this, '_maybe_add_pricing_ajax_handler' ) );
|
1634 |
}
|
1635 |
|
1636 |
if ( $this->is_plugin() ) {
|
1662 |
|
1663 |
add_action( 'admin_init', array( &$this, '_redirect_on_clicked_menu_link' ), WP_FS__LOWEST_PRIORITY );
|
1664 |
|
1665 |
+
if ( $this->is_theme() && ! $this->is_migration() ) {
|
1666 |
add_action( 'admin_init', array( &$this, '_add_tracking_links' ) );
|
1667 |
}
|
1668 |
|
2036 |
* @since 2.0.0
|
2037 |
*/
|
2038 |
function _hook_action_links_and_register_account_hooks() {
|
2039 |
+
if ( $this->is_migration() ) {
|
2040 |
+
return;
|
2041 |
+
}
|
2042 |
+
|
2043 |
$this->_add_tracking_links();
|
2044 |
|
2045 |
if ( self::is_plugins_page() && $this->is_plugin() ) {
|
2220 |
);
|
2221 |
|
2222 |
$store_option = true;
|
2223 |
+
} else if (
|
2224 |
+
isset( $id_slug_type_path_map[ $module_id ]['slug'] ) &&
|
2225 |
+
$slug !== $id_slug_type_path_map[ $module_id ]['slug']
|
2226 |
+
) {
|
2227 |
+
$id_slug_type_path_map[ $module_id ]['slug'] = $slug;
|
2228 |
+
$store_option = true;
|
2229 |
}
|
2230 |
|
2231 |
if ( empty( $id_slug_type_path_map[ $module_id ]['path'] ) ||
|
4299 |
)
|
4300 |
),
|
4301 |
sprintf(
|
4302 |
+
'<a href="%s" target="_blank" rel="noopener noreferrer"><b>%s</b></a> - %s',
|
4303 |
sprintf( 'https://wordpress.org/plugins/%s/download/', $this->_slug ),
|
4304 |
$install_previous_title,
|
4305 |
$install_previous_desc
|
4406 |
)
|
4407 |
),
|
4408 |
sprintf(
|
4409 |
+
'<a href="%s" target="_blank" rel="noopener noreferrer"><b>%s</b></a> - %s',
|
4410 |
sprintf( 'https://wordpress.org/plugins/%s/download/', $this->_slug ),
|
4411 |
$install_previous_title,
|
4412 |
$install_previous_desc
|
4927 |
} else {
|
4928 |
$is_network_admin = fs_is_network_admin();
|
4929 |
|
4930 |
+
if ( ! $this->_parent->is_registered() && $this->is_registered() ) {
|
4931 |
+
// If add-on activated and parent not, automatically install parent for the user.
|
4932 |
+
$this->activate_parent_account( $this->_parent );
|
4933 |
+
} else if (
|
4934 |
$this->_parent->is_registered() &&
|
4935 |
! $this->is_registered() &&
|
|
|
4936 |
/**
|
4937 |
* If not registered for add-on and the following conditions for the add-on are met, activate add-on account.
|
4938 |
* * Network active and in network admin - network activate add-on account.
|
4946 |
*/
|
4947 |
( $this->is_network_active() || ! $is_network_admin )
|
4948 |
) {
|
4949 |
+
$premium_license = null;
|
4950 |
+
|
4951 |
+
if (
|
4952 |
+
! $this->has_free_plan() &&
|
4953 |
+
$this->is_bundle_license_auto_activation_enabled() &&
|
4954 |
+
$this->_parent->is_activated_with_bundle_license()
|
4955 |
+
) {
|
4956 |
+
/**
|
4957 |
+
* If the add-on has no free plan, try to activate the account only when there's a bundle license.
|
4958 |
+
*
|
4959 |
+
* @author Leo Fajardo (@leorw)
|
4960 |
+
* @since 2.4.0
|
4961 |
+
*/
|
4962 |
+
$bundle_license = $this->get_active_parent_license( $this->_parent->_get_license()->secret_key, false );
|
4963 |
+
|
4964 |
+
if (
|
4965 |
+
is_object( $bundle_license ) &&
|
4966 |
+
! empty( $bundle_license->products ) &&
|
4967 |
+
in_array( $this->get_id(), $bundle_license->products )
|
4968 |
+
) {
|
4969 |
+
$premium_license = $bundle_license;
|
4970 |
+
}
|
4971 |
+
}
|
4972 |
+
|
4973 |
+
if ( $this->has_free_plan() || is_object( $premium_license) ) {
|
4974 |
+
// If parent plugin activated, automatically install add-on for the user.
|
4975 |
+
$this->_activate_addon_account(
|
4976 |
+
$this->_parent,
|
4977 |
+
( $this->is_network_active() && $is_network_admin ) ?
|
4978 |
+
true :
|
4979 |
+
get_current_blog_id(),
|
4980 |
+
$premium_license
|
4981 |
+
);
|
4982 |
+
}
|
4983 |
}
|
4984 |
|
4985 |
// @todo This should be only executed on activation. It should be migrated to register_activation_hook() together with other activation related logic.
|
5481 |
* @return bool
|
5482 |
*/
|
5483 |
function is_extensions_tracking_allowed() {
|
5484 |
+
return ( true === $this->apply_filters(
|
5485 |
+
'is_extensions_tracking_allowed',
|
5486 |
+
$this->_storage->get( 'is_extensions_tracking_allowed', true )
|
5487 |
+
) );
|
5488 |
}
|
5489 |
|
5490 |
/**
|
5670 |
$this->_anonymous_mode = $this->get_bool_option( $plugin_info, 'anonymous_mode', false );
|
5671 |
}
|
5672 |
$this->_permissions = $this->get_option( $plugin_info, 'permissions', array() );
|
5673 |
+
$this->_is_bundle_license_auto_activation_enabled = $this->get_option( $plugin_info, 'bundle_license_auto_activation', false );
|
5674 |
|
5675 |
if ( ! empty( $plugin_info['trial'] ) ) {
|
5676 |
$this->_trial_days = $this->get_numeric_option(
|
7148 |
* @since 1.0.7
|
7149 |
*/
|
7150 |
function _admin_init_action() {
|
7151 |
+
$is_migration = $this->is_migration();
|
7152 |
+
|
7153 |
/**
|
7154 |
* Automatically redirect to connect/activation page after plugin activation.
|
7155 |
*
|
7162 |
/**
|
7163 |
* Don't redirect if activating multiple plugins at once (bulk activation).
|
7164 |
*/
|
7165 |
+
} else if ( ! $is_migration ) {
|
7166 |
$this->_redirect_on_activation_hook();
|
7167 |
return;
|
7168 |
}
|
7169 |
}
|
7170 |
|
7171 |
+
if ( $is_migration ) {
|
7172 |
+
return;
|
7173 |
+
}
|
7174 |
+
|
7175 |
if ( fs_request_is_action( $this->get_unique_affix() . '_skip_activation' ) ) {
|
7176 |
check_admin_referer( $this->get_unique_affix() . '_skip_activation' );
|
7177 |
|
7202 |
)
|
7203 |
) {
|
7204 |
if ( ! $this->is_pending_activation() ) {
|
7205 |
+
if ( ! $this->is_activation_page() ) {
|
7206 |
/**
|
7207 |
* If a user visits any other admin page before activating the premium-only theme with a valid
|
7208 |
* license, reactivate the previous theme.
|
7845 |
$this->_storage->is_plugin_new_install = empty( $this->_storage->plugin_last_version );
|
7846 |
}
|
7847 |
|
7848 |
+
/**
|
7849 |
+
* Also flush when activating the premium version so that even if Freemius was off before, the API
|
7850 |
+
* connectivity test can be run again.
|
7851 |
+
*
|
7852 |
+
* @author Leo Fajardo (@leorw)
|
7853 |
+
* @since 2.2.3.1
|
7854 |
+
*/
|
7855 |
+
$has_api_connectivity = $this->has_api_connectivity( WP_FS__DEV_MODE || $is_premium_version_activation );
|
7856 |
+
|
7857 |
if ( ! $this->_anonymous_mode &&
|
7858 |
+
$has_api_connectivity &&
|
7859 |
! $this->_isAutoInstall
|
7860 |
) {
|
7861 |
// Store hint that the plugin was just activated to enable auto-redirection to settings.
|
7888 |
return;
|
7889 |
}
|
7890 |
|
7891 |
+
$license = $this->get_active_parent_license();
|
7892 |
if ( ! is_object( $license ) ) {
|
7893 |
return;
|
7894 |
}
|
7895 |
|
7896 |
+
if (
|
7897 |
+
$this->is_bundle_license_auto_activation_enabled() &&
|
7898 |
+
! empty( $license->products )
|
7899 |
+
) {
|
7900 |
+
$this->activate_bundle_license( $license );
|
7901 |
+
|
7902 |
+
return;
|
7903 |
+
}
|
7904 |
+
|
7905 |
if ( ! $this->is_registered() ) {
|
7906 |
// Opt in with a license key.
|
7907 |
$this->opt_in(
|
7924 |
}
|
7925 |
}
|
7926 |
|
|
|
7927 |
/**
|
7928 |
* @author Leo Fajardo (@leorw)
|
7929 |
* @since 2.3.0
|
7939 |
|
7940 |
$license = ( ! is_null( $license ) ) ?
|
7941 |
$license :
|
7942 |
+
$this->get_active_parent_license();
|
7943 |
|
7944 |
if ( ! is_object( $license ) ) {
|
7945 |
return;
|
7946 |
}
|
7947 |
|
7948 |
+
if (
|
7949 |
+
$this->is_bundle_license_auto_activation_enabled() &&
|
7950 |
+
! empty( $license->products )
|
7951 |
+
) {
|
7952 |
+
$this->activate_bundle_license( $license );
|
7953 |
+
|
7954 |
+
return;
|
7955 |
+
}
|
7956 |
+
|
7957 |
if ( ! $this->is_network_registered() ) {
|
7958 |
$sites = $this->get_sites_for_network_level_optin();
|
7959 |
|
8017 |
}
|
8018 |
|
8019 |
/**
|
8020 |
+
* Tries to activate a bundle license for all supported products if the current product is activated with a bundle license. This is called after activating an available license (not via the license activation dialog but by clicking on a license activation button) for a product via its "Account" page.
|
8021 |
+
*
|
8022 |
+
* @author Leo Fajardo (@leorw)
|
8023 |
+
* @since 2.4.0
|
8024 |
+
*
|
8025 |
+
* @param FS_Plugin_License $license
|
8026 |
+
* @param array $sites
|
8027 |
+
* @param int $blog_id
|
8028 |
+
*/
|
8029 |
+
private function maybe_activate_bundle_license( FS_Plugin_License $license = null, $sites = array(), $blog_id = 0 ) {
|
8030 |
+
if ( ! is_object( $license ) && $this->has_active_valid_license() ) {
|
8031 |
+
$license = $this->_license;
|
8032 |
+
}
|
8033 |
+
|
8034 |
+
if ( ! is_object( $license ) ) {
|
8035 |
+
return;
|
8036 |
+
}
|
8037 |
+
|
8038 |
+
$parent_license = ( ! empty( $license->products ) ) ?
|
8039 |
+
$license :
|
8040 |
+
$this->get_active_parent_license( $license->secret_key );
|
8041 |
+
|
8042 |
+
if ( is_object( $parent_license ) ) {
|
8043 |
+
$this->activate_bundle_license( $parent_license, $sites, $blog_id );
|
8044 |
+
}
|
8045 |
+
}
|
8046 |
+
|
8047 |
+
/**
|
8048 |
+
* Try to activate a bundle license for all the bundle products installed on the site.
|
8049 |
+
* (1) If a child product install already has a license, the bundle license won't be activated.
|
8050 |
+
* (2) On multi-site networks, if the attempt to activate the bundle license is triggered from the network admin, the bundle license activation will only work for non-delegated sites and only if none of them is associated with a license. Even if one of the sites has the product installed with a license key, skip the bundle license activation for the product.
|
8051 |
+
* (3) On multi-site networks, if the attempt to activate the bundle license is triggered from a site-level admin, only activate the license if the product is site-level activated or delegated, and the product installation is not yet associated with a license.
|
8052 |
+
*
|
8053 |
+
* @author Leo Fajardo (@leorw)
|
8054 |
+
* @since 2.4.0
|
8055 |
+
*
|
8056 |
+
* @param FS_Plugin_License $license
|
8057 |
+
* @param array $sites
|
8058 |
+
* @param int $current_blog_id
|
8059 |
+
*/
|
8060 |
+
private function activate_bundle_license( $license, $sites = array(), $current_blog_id = 0 ) {
|
8061 |
+
$is_network_admin = fs_is_network_admin();
|
8062 |
+
|
8063 |
+
$installs_by_blog_map = array();
|
8064 |
+
$site_info_by_blog_map = array();
|
8065 |
+
|
8066 |
+
/**
|
8067 |
+
* Try to activate the license for all supported products.
|
8068 |
+
*
|
8069 |
+
* @author Leo Fajardo
|
8070 |
+
*/
|
8071 |
+
foreach ( $license->products as $product_id ) {
|
8072 |
+
$fs = self::get_instance_by_id( $product_id );
|
8073 |
+
|
8074 |
+
if ( ! is_object( $fs ) ) {
|
8075 |
+
continue;
|
8076 |
+
}
|
8077 |
+
|
8078 |
+
if ( ! $fs->has_paid_plan() ) {
|
8079 |
+
continue;
|
8080 |
+
}
|
8081 |
+
|
8082 |
+
if (
|
8083 |
+
! $fs->is_addon() &&
|
8084 |
+
! FS_Plan_Manager::instance()->has_paid_plan( $fs->_plans )
|
8085 |
+
) {
|
8086 |
+
/**
|
8087 |
+
* The parent product can be free-only but can have its `has_paid_plan` flag set to `true` when
|
8088 |
+
* there is a context bundle.
|
8089 |
+
*/
|
8090 |
+
continue;
|
8091 |
+
}
|
8092 |
+
|
8093 |
+
if ( $current_blog_id > 0 ) {
|
8094 |
+
$fs->switch_to_blog( $current_blog_id );
|
8095 |
+
}
|
8096 |
+
|
8097 |
+
if ( $fs->has_active_valid_license() ) {
|
8098 |
+
continue;
|
8099 |
+
}
|
8100 |
+
|
8101 |
+
if ( ! $is_network_admin || $current_blog_id > 0 ) {
|
8102 |
+
if ( $fs->is_network_active() && ! $fs->is_delegated_connection( $current_blog_id ) ) {
|
8103 |
+
// Do not try to activate the license in the site level if the product is network active and the connection was not delegated.
|
8104 |
+
continue;
|
8105 |
+
}
|
8106 |
+
} else {
|
8107 |
+
if ( ! $fs->is_network_active() ) {
|
8108 |
+
// Do not try to activate the license in the network level if the product is not network active.
|
8109 |
+
continue;
|
8110 |
+
}
|
8111 |
+
|
8112 |
+
if ( $fs->is_network_delegated_connection() ) {
|
8113 |
+
// Do not try to activate the license in the network level if the activation has been delegated to site admins.
|
8114 |
+
continue;
|
8115 |
+
}
|
8116 |
+
|
8117 |
+
$has_install_with_license = false;
|
8118 |
+
|
8119 |
+
// Collection of sites that have an install entity that is not activated with a license or non-delegated sites that have no install entity, or both types of site.
|
8120 |
+
$filtered_sites = array();
|
8121 |
+
|
8122 |
+
if ( empty( $sites ) ) {
|
8123 |
+
$all_sites = self::get_sites();
|
8124 |
+
|
8125 |
+
foreach ( $all_sites as $site ) {
|
8126 |
+
$sites[] = array( 'blog_id' => self::get_site_blog_id( $site ) );
|
8127 |
+
}
|
8128 |
+
} else {
|
8129 |
+
// Populate the map here to avoid calling `$fs->get_site_info( $site );` in the other `for` loop below.
|
8130 |
+
foreach ( $sites as $site ) {
|
8131 |
+
if ( ! isset( $site['blog_id'] ) || ! is_numeric( $site['blog_id'] ) ) {
|
8132 |
+
continue;
|
8133 |
+
}
|
8134 |
+
|
8135 |
+
$site_info_by_blog_map[ $site['blog_id'] ] = $site;
|
8136 |
+
}
|
8137 |
+
}
|
8138 |
+
|
8139 |
+
foreach ( $sites as $site ) {
|
8140 |
+
if ( ! isset( $site['blog_id'] ) || ! is_numeric( $site['blog_id'] ) ) {
|
8141 |
+
continue;
|
8142 |
+
}
|
8143 |
+
|
8144 |
+
$blog_id = $site['blog_id'];
|
8145 |
+
|
8146 |
+
if ( ! isset( $installs_by_blog_map[ $blog_id ] ) ) {
|
8147 |
+
$installs_by_blog_map[ $blog_id ] = self::get_all_sites( $fs->get_module_type(), $blog_id );
|
8148 |
+
}
|
8149 |
+
|
8150 |
+
$installs = $installs_by_blog_map[ $blog_id ];
|
8151 |
+
$install = null;
|
8152 |
+
|
8153 |
+
if ( isset( $installs[ $fs->get_slug() ] ) ) {
|
8154 |
+
$install = $installs[ $fs->get_slug() ];
|
8155 |
+
|
8156 |
+
if (
|
8157 |
+
is_object( $install ) &&
|
8158 |
+
(
|
8159 |
+
! FS_Site::is_valid_id( $install->id ) ||
|
8160 |
+
! FS_User::is_valid_id( $install->user_id ) ||
|
8161 |
+
! FS_Plugin_Plan::is_valid_id( $install->plan_id )
|
8162 |
+
)
|
8163 |
+
) {
|
8164 |
+
$install = null;
|
8165 |
+
}
|
8166 |
+
}
|
8167 |
+
|
8168 |
+
if (
|
8169 |
+
is_object( $install ) &&
|
8170 |
+
FS_Plugin_License::is_valid_id( $install->license_id )
|
8171 |
+
) {
|
8172 |
+
$has_install_with_license = true;
|
8173 |
+
break;
|
8174 |
+
}
|
8175 |
+
|
8176 |
+
if ( $fs->is_site_delegated_connection( $blog_id ) ) {
|
8177 |
+
// Site activation delegated, don't activate bundle license on the site in the network admin.
|
8178 |
+
continue;
|
8179 |
+
}
|
8180 |
+
|
8181 |
+
if ( ! isset( $site_info_by_blog_map[ $blog_id ] ) ) {
|
8182 |
+
$site_info_by_blog_map[ $blog_id ] = $fs->get_site_info( $site );
|
8183 |
+
}
|
8184 |
+
|
8185 |
+
$filtered_sites[] = $site_info_by_blog_map[ $blog_id ];
|
8186 |
+
}
|
8187 |
+
|
8188 |
+
if ( $has_install_with_license || empty( $filtered_sites ) ) {
|
8189 |
+
// Do not try to activate the license at the network level if there's any install with a license or there's no site to activate the license on.
|
8190 |
+
continue;
|
8191 |
+
}
|
8192 |
+
|
8193 |
+
$sites = $filtered_sites;
|
8194 |
+
}
|
8195 |
+
|
8196 |
+
$fs->activate_migrated_license(
|
8197 |
+
$license->secret_key,
|
8198 |
+
null,
|
8199 |
+
null,
|
8200 |
+
$sites,
|
8201 |
+
( $current_blog_id > 0 ? $current_blog_id : null )
|
8202 |
+
);
|
8203 |
+
}
|
8204 |
+
}
|
8205 |
+
|
8206 |
+
/**
|
8207 |
+
* Returns a parent license that can be activated for the context product.
|
8208 |
+
*
|
8209 |
* @author Leo Fajardo (@leorw)
|
8210 |
* @since 2.3.0
|
8211 |
*
|
8212 |
+
* @param string|null $license_key
|
8213 |
+
* @param bool $flush
|
8214 |
+
*
|
8215 |
* @return FS_Plugin_License
|
8216 |
*/
|
8217 |
+
function get_active_parent_license( $license_key = null, $flush = true ) {
|
8218 |
$parent_licenses_endpoint = "/plugins/{$this->get_id()}/parent_licenses.json?filter=activatable";
|
|
|
8219 |
|
8220 |
+
$fs = $this;
|
8221 |
+
|
8222 |
+
if ( $this->is_addon() ) {
|
8223 |
+
$parent_instance = $this->get_parent_instance();
|
8224 |
+
|
8225 |
+
if ( is_object( $parent_instance ) && $parent_instance->is_registered() ) {
|
8226 |
+
$fs = $parent_instance;
|
8227 |
+
}
|
8228 |
+
}
|
8229 |
+
|
8230 |
+
$foreign_licenses = $fs->get_foreign_licenses_info(
|
8231 |
self::get_all_licenses( $this->get_parent_id() )
|
8232 |
);
|
8233 |
|
8241 |
$parent_licenses_endpoint = add_query_arg( $foreign_licenses, $parent_licenses_endpoint );
|
8242 |
}
|
8243 |
|
8244 |
+
$result = $fs->get_current_or_network_user_api_scope()->get( $parent_licenses_endpoint, $flush );
|
8245 |
|
8246 |
if (
|
8247 |
! $this->is_api_result_object( $result, 'licenses' ) ||
|
8251 |
return null;
|
8252 |
}
|
8253 |
|
8254 |
+
$parent_license = null;
|
8255 |
|
8256 |
+
if ( empty( $license_key ) ) {
|
8257 |
+
$parent_license = $result->licenses[0];
|
8258 |
+
} else {
|
8259 |
+
foreach ( $result->licenses as $license ) {
|
8260 |
+
if ( $license_key === $license->secret_key ) {
|
8261 |
+
$parent_license = $license;
|
8262 |
+
break;
|
8263 |
+
}
|
8264 |
+
}
|
8265 |
+
}
|
8266 |
+
|
8267 |
+
if ( ! is_null( $parent_license ) ) {
|
8268 |
+
$parent_license = new FS_Plugin_License( $parent_license );
|
8269 |
+
}
|
8270 |
+
|
8271 |
+
return $parent_license;
|
8272 |
}
|
8273 |
|
8274 |
/**
|
10426 |
|
10427 |
$class_name = '';
|
10428 |
|
10429 |
+
if ( fs_starts_with( $option_name, WP_FS__MODULE_TYPE_THEME . '_' ) ) {
|
10430 |
+
$option_name = str_replace( WP_FS__MODULE_TYPE_THEME . '_', '', $option_name );
|
10431 |
+
}
|
10432 |
+
|
10433 |
switch ( $option_name ) {
|
10434 |
case 'plugins':
|
10435 |
case 'themes':
|
10714 |
return ( is_object( $this->_site ) && $this->_site->is_tracking_allowed() );
|
10715 |
}
|
10716 |
|
10717 |
+
/**
|
10718 |
+
* @author Leo Fajardo (@leorw)
|
10719 |
+
* @since 2.4.0
|
10720 |
+
*
|
10721 |
+
* @return bool
|
10722 |
+
*/
|
10723 |
+
function is_bundle_license_auto_activation_enabled() {
|
10724 |
+
return $this->is_addon() ?
|
10725 |
+
( is_object( $this->_parent ) && $this->_parent->is_bundle_license_auto_activation_enabled() ) :
|
10726 |
+
$this->_is_bundle_license_auto_activation_enabled;
|
10727 |
+
}
|
10728 |
+
|
10729 |
/**
|
10730 |
* @author Vova Feldman (@svovaf)
|
10731 |
* @since 1.0.4
|
13009 |
* @since 1.2.0
|
13010 |
*/
|
13011 |
function _add_license_activation() {
|
13012 |
+
if ( $this->is_migration() ) {
|
13013 |
+
return;
|
13014 |
+
}
|
13015 |
+
|
13016 |
if ( ! $this->is_user_admin() ) {
|
13017 |
// Only admins can activate a license.
|
13018 |
return;
|
13071 |
return;
|
13072 |
}
|
13073 |
|
13074 |
+
$installs_ids_with_foreign_licenses = $this->get_installs_ids_with_foreign_licenses();
|
13075 |
+
|
13076 |
+
if ( empty( $installs_ids_with_foreign_licenses ) ) {
|
13077 |
// Handle user change only when the parent product or one of its add-ons is activated with a foreign license.
|
13078 |
return;
|
13079 |
}
|
13209 |
exit;
|
13210 |
}
|
13211 |
|
13212 |
+
$sites = fs_is_network_admin() ?
|
13213 |
+
fs_request_get( 'sites', array(), 'post' ) :
|
13214 |
+
array();
|
13215 |
+
|
13216 |
$result = $this->activate_license(
|
13217 |
$license_key,
|
13218 |
+
$sites,
|
|
|
|
|
13219 |
fs_request_get_bool( 'is_marketing_allowed', null ),
|
13220 |
fs_request_get( 'blog_id', null ),
|
13221 |
fs_request_get( 'module_id', null, 'post' ),
|
13223 |
fs_request_get_bool( 'is_extensions_tracking_allowed', true )
|
13224 |
);
|
13225 |
|
13226 |
+
if (
|
13227 |
+
$result['success'] &&
|
13228 |
+
$this->is_bundle_license_auto_activation_enabled()
|
13229 |
+
) {
|
13230 |
+
$license = new FS_Plugin_License();
|
13231 |
+
$license->secret_key = $license_key;
|
13232 |
+
|
13233 |
+
$this->maybe_activate_bundle_license( $license, $sites );
|
13234 |
+
}
|
13235 |
+
|
13236 |
echo json_encode( $result );
|
13237 |
|
13238 |
exit;
|
13319 |
}
|
13320 |
|
13321 |
/**
|
13322 |
+
* @author Leo Fajardo (@leorw)
|
13323 |
+
* @since 2.3.2.14
|
13324 |
+
*/
|
13325 |
+
function starting_migration() {
|
13326 |
+
if ( ! empty( $this->_storage->license_migration ) ) {
|
13327 |
+
// Do not overwrite the data if already set.
|
13328 |
+
return;
|
13329 |
+
}
|
13330 |
+
|
13331 |
+
$this->_storage->license_migration = array(
|
13332 |
+
'is_migrating' => true,
|
13333 |
+
'start_timestamp' => time()
|
13334 |
+
);
|
13335 |
+
}
|
13336 |
+
|
13337 |
+
/**
|
13338 |
+
* @author Leo Fajardo (@leorw)
|
13339 |
+
* @since 2.3.2.14
|
13340 |
+
*/
|
13341 |
+
function is_migration() {
|
13342 |
+
if ( $this->is_addon() ) {
|
13343 |
+
return $this->get_parent_instance()->is_migration();
|
13344 |
+
}
|
13345 |
+
|
13346 |
+
if ( empty( $this->_storage->license_migration ) ) {
|
13347 |
+
return false;
|
13348 |
+
}
|
13349 |
+
|
13350 |
+
if ( ! $this->_storage->license_migration['is_migrating'] ) {
|
13351 |
+
return false;
|
13352 |
+
}
|
13353 |
+
|
13354 |
+
return (
|
13355 |
+
// Return `true` if the migration is within 5 minutes from the starting time.
|
13356 |
+
( time() - $this->_storage->license_migration['start_timestamp'] ) <= WP_FS__TIME_5_MIN_IN_SEC
|
13357 |
+
);
|
13358 |
+
}
|
13359 |
+
|
13360 |
+
/**
|
13361 |
+
*
|
13362 |
* A helper method to activate migrated licenses. If the product is network activated and integrated, the method will network activate the license.
|
13363 |
*
|
13364 |
* @author Vova Feldman (@svovaf)
|
13367 |
* @param string $license_key
|
13368 |
* @param null|bool $is_marketing_allowed
|
13369 |
* @param null|number $plugin_id
|
13370 |
+
* @param array $sites
|
13371 |
+
* @param int $blog_id
|
13372 |
*
|
13373 |
* @return array {
|
13374 |
* @var bool $success
|
13381 |
function activate_migrated_license(
|
13382 |
$license_key,
|
13383 |
$is_marketing_allowed = null,
|
13384 |
+
$plugin_id = null,
|
13385 |
+
$sites = array(),
|
13386 |
+
$blog_id = null
|
13387 |
) {
|
13388 |
$this->_logger->entrance();
|
13389 |
|
13390 |
$result = $this->activate_license(
|
13391 |
$license_key,
|
13392 |
+
( empty( $sites ) && is_null( $blog_id ) && $this->is_network_active() ) ?
|
13393 |
$this->get_sites_for_network_level_optin() :
|
13394 |
+
$sites,
|
13395 |
$is_marketing_allowed,
|
13396 |
+
$blog_id,
|
13397 |
$plugin_id
|
13398 |
);
|
13399 |
|
13403 |
return $result;
|
13404 |
}
|
13405 |
|
13406 |
+
/**
|
13407 |
+
* @author Leo Fajardo (@leorw)
|
13408 |
+
* @since 2.3.1
|
13409 |
+
*
|
13410 |
+
* @return string
|
13411 |
+
*/
|
13412 |
+
function get_pricing_js_path() {
|
13413 |
+
return $this->apply_filters( 'freemius_pricing_js_path', WP_FS__DIR_INCLUDES . '/freemius-pricing/freemius-pricing.js' );
|
13414 |
+
}
|
13415 |
+
|
13416 |
+
/**
|
13417 |
+
* @author Leo Fajardo (@leorw)
|
13418 |
+
* @since 2.3.1
|
13419 |
+
*
|
13420 |
+
* @return bool
|
13421 |
+
*/
|
13422 |
+
function should_use_external_pricing() {
|
13423 |
+
if ( is_null( $this->_use_external_pricing ) ) {
|
13424 |
+
$pricing_js_path = $this->get_pricing_js_path();
|
13425 |
+
|
13426 |
+
$this->_use_external_pricing = ( empty( $pricing_js_path ) || ! file_exists( $pricing_js_path ) );
|
13427 |
+
}
|
13428 |
+
|
13429 |
+
return $this->_use_external_pricing;
|
13430 |
+
}
|
13431 |
+
|
13432 |
/**
|
13433 |
* The implementation of this method was previously in `_activate_license_ajax_action()`.
|
13434 |
*
|
13461 |
|
13462 |
$license_key = trim( $license_key );
|
13463 |
|
13464 |
+
$is_network_activation_or_migration = (
|
13465 |
+
fs_is_network_admin() ||
|
13466 |
+
( ! empty( $sites ) && $this->is_migration() )
|
13467 |
+
);
|
13468 |
+
|
13469 |
+
if ( ! $is_network_activation_or_migration ) {
|
13470 |
// If the license activation is executed outside the context of a network admin, ignore the sites collection.
|
13471 |
$sites = array();
|
13472 |
}
|
13495 |
$user = $fs->get_current_or_network_user();
|
13496 |
}
|
13497 |
|
13498 |
+
if ( $has_valid_blog_id ) {
|
13499 |
+
/**
|
13500 |
+
* If a specific blog ID was provided, activate the license only on the specific blog that is associated with the given blog ID.
|
13501 |
+
*
|
13502 |
+
* @author Leo Fajardo (@leorw)
|
13503 |
+
*/
|
13504 |
+
$fs->switch_to_blog( $blog_id );
|
13505 |
+
}
|
13506 |
+
|
13507 |
if ( is_object( $user ) ) {
|
13508 |
+
if ( $is_network_activation_or_migration && ! $has_valid_blog_id ) {
|
13509 |
// If no specific blog ID was provided, activate the license for all sites in the network.
|
13510 |
$blog_2_install_map = array();
|
13511 |
$site_ids = array();
|
13544 |
}
|
13545 |
}
|
13546 |
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13547 |
if ( $fs->is_registered() ) {
|
13548 |
$params = array(
|
13549 |
'license_key' => $fs->apply_filters( 'license_key', $license_key )
|
13598 |
if ( empty( $error ) ) {
|
13599 |
$fs->network_upgrade_mode_completed();
|
13600 |
|
13601 |
+
$fs->_user = $user;
|
13602 |
+
|
13603 |
+
if ( fs_is_network_admin() && ! $has_valid_blog_id ) {
|
13604 |
+
$fs->_site = $fs->get_network_install();
|
13605 |
+
}
|
13606 |
+
|
13607 |
$fs->_sync_license( true, $has_valid_blog_id );
|
13608 |
|
13609 |
$this->maybe_sync_install_user();
|
13610 |
|
13611 |
$next_page = $fs->is_addon() ?
|
13612 |
$fs->get_parent_instance()->get_account_url() :
|
13613 |
+
$fs->get_after_activation_url( 'after_connect_url' );
|
13614 |
}
|
13615 |
} else {
|
13616 |
$next_page = $fs->opt_in(
|
13628 |
if ( isset( $next_page->error ) ) {
|
13629 |
$error = $next_page->error;
|
13630 |
} else {
|
13631 |
+
if ( $is_network_activation_or_migration ) {
|
13632 |
/**
|
13633 |
* Get the list of sites that were just opted-in (and license activated).
|
13634 |
* This is an optimization for the next part below saving some DB queries.
|
14742 |
* @return bool
|
14743 |
*/
|
14744 |
function is_user_in_admin() {
|
14745 |
+
return (
|
14746 |
+
is_admin() &&
|
14747 |
+
! self::is_ajax() &&
|
14748 |
+
! self::is_cron() &&
|
14749 |
+
( 'admin-post.php' !== self::get_current_page() )
|
14750 |
+
);
|
14751 |
}
|
14752 |
|
14753 |
/**
|
15059 |
if ( function_exists( 'get_sites' ) ) {
|
15060 |
// For WP 4.6 and above.
|
15061 |
return get_sites( $args );
|
15062 |
+
} else if ( function_exists( 'wp_' . 'get_sites' ) ) {
|
15063 |
// For WP 3.7 to WP 4.5.
|
15064 |
+
/**
|
15065 |
+
* This is a hack suggested previously proposed by the TRT. Our SDK is compliant with older WP versions and we'd like to keep it that way.
|
15066 |
+
*
|
15067 |
+
* @todo Remove this hack once this false-positive error is removed from the Theme Sniffer.
|
15068 |
+
*
|
15069 |
+
* @since 2.3.3
|
15070 |
+
* @author Vova Feldman (@svovaf)
|
15071 |
+
*/
|
15072 |
+
$fn = 'wp_' . 'get_sites';
|
15073 |
+
return $fn( $args );
|
15074 |
} else {
|
15075 |
// For WP 3.6 and below.
|
15076 |
return get_blog_list( 0, 'all' );
|
15247 |
* @return bool Since 2.3.1 returns if a switch was made.
|
15248 |
*/
|
15249 |
function switch_to_blog( $blog_id, FS_Site $install = null ) {
|
15250 |
+
if ( ! is_numeric( $blog_id ) || $blog_id == $this->_context_is_network_or_blog_id ) {
|
15251 |
return false;
|
15252 |
}
|
15253 |
|
16634 |
'http' => 402
|
16635 |
);
|
16636 |
|
16637 |
+
$this->maybe_modify_api_curl_error_message( $result );
|
16638 |
+
|
16639 |
return $result;
|
16640 |
}
|
16641 |
|
17482 |
* @author Vova Feldman (@svovaf)
|
17483 |
* @since 1.0.6
|
17484 |
*
|
17485 |
+
* @param Freemius $parent_fs
|
17486 |
+
* @param bool|int|null $network_level_or_blog_id True for network level opt-in and integer for opt-in for specified blog in the network.
|
17487 |
+
* @param FS_Plugin_License $bundle_license Since 2.4.0. If provided, this license will be activated for the add-on.
|
17488 |
*/
|
17489 |
+
private function _activate_addon_account(
|
17490 |
+
Freemius $parent_fs,
|
17491 |
+
$network_level_or_blog_id = null,
|
17492 |
+
FS_Plugin_License $bundle_license = null
|
17493 |
+
) {
|
17494 |
if ( $this->is_registered() ) {
|
17495 |
// Already activated.
|
17496 |
return;
|
17529 |
}
|
17530 |
}
|
17531 |
|
17532 |
+
if ( is_object( $bundle_license ) ) {
|
17533 |
+
$params['license_key'] = $bundle_license->secret_key;
|
17534 |
+
}
|
17535 |
+
|
17536 |
// Activate add-on with parent plugin credentials.
|
17537 |
$result = $parent_fs->get_api_site_scope()->call(
|
17538 |
"/addons/{$this->_plugin->id}/installs.json",
|
17541 |
);
|
17542 |
|
17543 |
if ( ! $this->is_api_result_object( $result, 'installs' ) ) {
|
17544 |
+
if ( is_object( $bundle_license ) ) {
|
17545 |
+
/**
|
17546 |
+
* When a license object is provided, it's an attempt by the SDK to activate a bundle license and not a user-initiated action, therefore, do not show any admin notice to avoid confusion (e.g.: the notice will show up just above the opt-in link). If the license activation fails, the admin will see an opt-in link instead.
|
17547 |
+
*
|
17548 |
+
* @author Leo Fajardo (@leorw)
|
17549 |
+
* @since 2.4.0
|
17550 |
+
*/
|
17551 |
+
} else {
|
17552 |
+
$error_message = FS_Api::is_api_error_object( $result ) ?
|
17553 |
+
$result->error->message :
|
17554 |
+
$this->get_text_inline( 'An unknown error has occurred.', 'unknown-error' );
|
17555 |
|
17556 |
+
$this->_admin_notices->add(
|
17557 |
+
sprintf( $this->get_text_inline( 'Couldn\'t activate %s.', 'could-not-activate-x' ), $this->get_plugin_name() ) . ' ' .
|
17558 |
+
$this->get_text_inline( 'Please contact us with the following message:', 'contact-us-with-error-message' ) . ' ' . '<b>' . $error_message . '</b>',
|
17559 |
+
$this->get_text_x_inline( 'Oops', 'exclamation', 'oops' ) . '...',
|
17560 |
+
'error'
|
17561 |
+
);
|
17562 |
+
}
|
17563 |
|
17564 |
return;
|
17565 |
}
|
17592 |
|
17593 |
if ( ! fs_is_network_admin() ) {
|
17594 |
// Try to activate premium license.
|
17595 |
+
$this->_activate_license( true, $bundle_license );
|
|
|
|
|
17596 |
|
17597 |
+
if ( is_object( $bundle_license ) ) {
|
17598 |
+
$this->maybe_activate_bundle_license( $bundle_license );
|
|
|
|
|
|
|
|
|
17599 |
}
|
17600 |
+
} else {
|
17601 |
+
if ( is_object( $bundle_license ) ) {
|
17602 |
+
$premium_license = $bundle_license;
|
17603 |
+
} else {
|
17604 |
+
$license_id = fs_request_get( 'license_id' );
|
17605 |
|
17606 |
+
if ( is_object( $this->_site ) &&
|
17607 |
+
FS_Plugin_License::is_valid_id( $license_id ) &&
|
17608 |
+
$license_id == $this->_site->license_id
|
17609 |
+
) {
|
17610 |
+
// License is already activated.
|
17611 |
+
return;
|
17612 |
+
}
|
17613 |
+
|
17614 |
+
$premium_license = FS_Plugin_License::is_valid_id( $license_id ) ?
|
17615 |
+
$this->_get_license_by_id( $license_id ) :
|
17616 |
+
$this->_get_available_premium_license();
|
17617 |
+
}
|
17618 |
|
17619 |
if ( is_object( $premium_license ) ) {
|
17620 |
$this->maybe_network_activate_addon_license( $premium_license );
|
19912 |
*
|
19913 |
* @author Vova Feldman (@svovaf)
|
19914 |
* @since 1.2.1
|
19915 |
+
*
|
19916 |
+
* @param bool $check_expiration
|
19917 |
*/
|
19918 |
+
function has_active_valid_license( $check_expiration = true ) {
|
19919 |
+
return self::is_active_valid_license( $this->_license, $check_expiration );
|
19920 |
}
|
19921 |
|
19922 |
/**
|
20008 |
* @since 2.1.3
|
20009 |
*
|
20010 |
* @param FS_Plugin_License $license
|
20011 |
+
* @param bool $check_expiration
|
20012 |
*
|
20013 |
* @return bool
|
20014 |
*/
|
20015 |
+
private static function is_active_valid_license( $license, $check_expiration = true ) {
|
20016 |
return (
|
20017 |
is_object( $license ) &&
|
20018 |
FS_Plugin_License::is_valid_id( $license->id ) &&
|
20019 |
$license->is_active() &&
|
20020 |
+
( ! $check_expiration || $license->is_valid() )
|
20021 |
);
|
20022 |
}
|
20023 |
|
20071 |
);
|
20072 |
}
|
20073 |
|
20074 |
+
/**
|
20075 |
+
* Checks if the product is activated with a bundle license.
|
20076 |
+
*
|
20077 |
+
* @author Leo Fajardo (@leorw)
|
20078 |
+
* @since 2.4.0
|
20079 |
+
*
|
20080 |
+
* @return bool
|
20081 |
+
*/
|
20082 |
+
function is_activated_with_bundle_license() {
|
20083 |
+
if ( ! $this->has_features_enabled_license() ) {
|
20084 |
+
return false;
|
20085 |
+
}
|
20086 |
+
|
20087 |
+
return FS_Plugin_License::is_valid_id( $this->_license->parent_license_id );
|
20088 |
+
}
|
20089 |
+
|
20090 |
/**
|
20091 |
* Check if user is a trial or have feature enabled license.
|
20092 |
*
|
21402 |
*/
|
21403 |
private function get_latest_download_link( $label, $plugin_id = false ) {
|
21404 |
return sprintf(
|
21405 |
+
'<a target="_blank" rel="noopener" href="%s">%s</a>',
|
21406 |
$this->_get_latest_download_local_url( $plugin_id ),
|
21407 |
$label
|
21408 |
);
|
21473 |
$this->get_text_inline( 'Version %s was released.', 'version-x-released' ) . ' ' . $this->get_text_inline( 'Please download %s.', 'please-download-x' ),
|
21474 |
$update->version,
|
21475 |
sprintf(
|
21476 |
+
'<a href="%s" target="_blank" rel="noopener">%s</a>',
|
21477 |
$this->get_account_url( 'download_latest' ),
|
21478 |
sprintf(
|
21479 |
/* translators: %s: plan name (e.g. latest "Professional" version) */
|
21960 |
$this->get_plugin_title(),
|
21961 |
fs_strip_url_protocol( get_site_url( $blog_id ) ),
|
21962 |
sprintf(
|
21963 |
+
'<a href="%s" target="_blank" rel="noopener">%s</a>',
|
21964 |
'https://freemius.com',
|
21965 |
'freemius.com'
|
21966 |
)
|
22059 |
|
22060 |
if ( is_object( $fs ) ) {
|
22061 |
$fs->_activate_license();
|
22062 |
+
|
22063 |
+
/**
|
22064 |
+
* Remove the product ID from `$_REQUEST` so that the syncing of the license for the other products will work properly.
|
22065 |
+
*
|
22066 |
+
* @author Leo Fajardo (@leorw)
|
22067 |
+
* @since 2.4.0
|
22068 |
+
*/
|
22069 |
+
unset( $_REQUEST['plugin_id'] );
|
22070 |
+
|
22071 |
+
if ( $this->is_bundle_license_auto_activation_enabled() ) {
|
22072 |
+
$fs->maybe_activate_bundle_license( null, array(), is_numeric( $blog_id ) ? $blog_id : 0 );
|
22073 |
+
}
|
22074 |
}
|
22075 |
|
22076 |
return;
|
22429 |
}
|
22430 |
}
|
22431 |
|
22432 |
+
/**
|
22433 |
+
* @author Leo Fajardo (@leorw)
|
22434 |
+
* @since 2.3.1
|
22435 |
+
*/
|
22436 |
+
function _maybe_add_pricing_ajax_handler() {
|
22437 |
+
if ( ! $this->should_use_external_pricing() ) {
|
22438 |
+
$this->add_ajax_action( 'pricing_ajax_action', array( &$this, '_fs_pricing_ajax_action_handler' ) );
|
22439 |
+
}
|
22440 |
+
}
|
22441 |
+
|
22442 |
+
/**
|
22443 |
+
* @author Leo Fajardo (@leorw)
|
22444 |
+
* @since 2.3.1
|
22445 |
+
*/
|
22446 |
+
function _fs_pricing_ajax_action_handler() {
|
22447 |
+
$this->check_ajax_referer( 'pricing_ajax_action' );
|
22448 |
+
|
22449 |
+
$result = null;
|
22450 |
+
$pricing_action = fs_request_get( 'pricing_action' );
|
22451 |
+
|
22452 |
+
switch ( $pricing_action ) {
|
22453 |
+
case 'fetch_pricing_data':
|
22454 |
+
$params = array(
|
22455 |
+
'is_enriched' => true,
|
22456 |
+
'trial' => fs_request_get_bool( 'trial' ),
|
22457 |
+
'sandbox' => fs_request_get( 'sandbox' ),
|
22458 |
+
's_ctx_type' => fs_request_get( 's_ctx_type' ),
|
22459 |
+
's_ctx_id' => fs_request_get( 's_ctx_id' ),
|
22460 |
+
's_ctx_ts' => fs_request_get( 's_ctx_ts' ),
|
22461 |
+
's_ctx_secure' => fs_request_get( 's_ctx_secure' ),
|
22462 |
+
);
|
22463 |
+
|
22464 |
+
$bundle_id = $this->get_bundle_id();
|
22465 |
+
$bundle_public_key = $this->get_bundle_public_key();
|
22466 |
+
|
22467 |
+
$has_bundle_context = ( FS_Plugin::is_valid_id( $bundle_id ) && ! empty( $bundle_public_key ) );
|
22468 |
+
|
22469 |
+
if ( ! $has_bundle_context ) {
|
22470 |
+
$api = $this->get_api_plugin_scope();
|
22471 |
+
} else {
|
22472 |
+
$api = FS_Api::instance(
|
22473 |
+
$bundle_id,
|
22474 |
+
'plugin',
|
22475 |
+
$bundle_id,
|
22476 |
+
$bundle_public_key,
|
22477 |
+
! $this->is_live(),
|
22478 |
+
false,
|
22479 |
+
$this->get_sdk_version()
|
22480 |
+
);
|
22481 |
+
|
22482 |
+
$params['plugin_id'] = $this->get_id();
|
22483 |
+
$params['plugin_public_key'] = $this->get_public_key();
|
22484 |
+
}
|
22485 |
+
|
22486 |
+
$result = $api->get( 'pricing.json?' . http_build_query( $params ) );
|
22487 |
+
break;
|
22488 |
+
case 'start_trial':
|
22489 |
+
$result = $this->opt_in(
|
22490 |
+
false,
|
22491 |
+
false,
|
22492 |
+
false,
|
22493 |
+
false,
|
22494 |
+
false,
|
22495 |
+
fs_request_get( 'plan_id' )
|
22496 |
+
);
|
22497 |
+
}
|
22498 |
+
|
22499 |
+
if ( is_object( $result ) && $this->is_api_error( $result ) ) {
|
22500 |
+
$this->_logger->api_error( $result );
|
22501 |
+
|
22502 |
+
self::shoot_ajax_failure(
|
22503 |
+
isset( $result->error ) ?
|
22504 |
+
( is_string( $result->error ) ? $result->error : $result->error->message ) :
|
22505 |
+
var_export( $result, true )
|
22506 |
+
);
|
22507 |
+
}
|
22508 |
+
|
22509 |
+
$this->shoot_ajax_success( $result );
|
22510 |
+
}
|
22511 |
+
|
22512 |
#----------------------------------------------------------------------------------
|
22513 |
#region Contact Us
|
22514 |
#----------------------------------------------------------------------------------
|
22737 |
$this->get_api_plugin_scope();
|
22738 |
}
|
22739 |
|
22740 |
+
/**
|
22741 |
+
* @author Leo Fajardo (@leorw)
|
22742 |
+
* @since 2.2.3.1
|
22743 |
+
*
|
22744 |
+
* @param object $result
|
22745 |
+
*/
|
22746 |
+
private function maybe_modify_api_curl_error_message( $result ) {
|
22747 |
+
if (
|
22748 |
+
'cUrlMissing' !== $result->error->type &&
|
22749 |
+
( 'CurlException' !== $result->error->type || CURLE_COULDNT_CONNECT != $result->error->code ) &&
|
22750 |
+
( 'HttpRequestFailed' !== $result->error->type || false === strpos( $result->error->message, 'cURL error ' . CURLE_COULDNT_CONNECT ) )
|
22751 |
+
) {
|
22752 |
+
return;
|
22753 |
+
}
|
22754 |
+
|
22755 |
+
$result->error->message = $this->esc_html_inline( 'We use PHP cURL library for the API calls, which is a very common library and usually installed and activated out of the box. Unfortunately, cURL is not activated (or disabled) on your server.', 'curl-missing-message' ) .
|
22756 |
+
' ' .
|
22757 |
+
$this->esc_html_inline(
|
22758 |
+
sprintf(
|
22759 |
+
'Please contact your hosting provider and ask them to whitelist %s for external connection.',
|
22760 |
+
implode(
|
22761 |
+
', ',
|
22762 |
+
$this->apply_filters( 'api_domains', array(
|
22763 |
+
'api.freemius.com',
|
22764 |
+
'wp.freemius.com'
|
22765 |
+
) )
|
22766 |
+
)
|
22767 |
+
),
|
22768 |
+
'connectivity-whitelist'
|
22769 |
+
) .
|
22770 |
+
' ' .
|
22771 |
+
sprintf(
|
22772 |
+
$this->esc_html_inline( 'Once you are done, deactivate the %s and activate it again.', 'connectivity-reactivate-module' ),
|
22773 |
+
$this->get_module_type()
|
22774 |
+
);
|
22775 |
+
}
|
22776 |
+
|
22777 |
/**
|
22778 |
* Show trial promotional notice (if any trial exist).
|
22779 |
*
|
23327 |
return;
|
23328 |
}
|
23329 |
|
23330 |
+
if (
|
23331 |
+
$this->is_activation_mode() &&
|
23332 |
+
$this->is_premium() &&
|
23333 |
+
! $this->is_registered()
|
23334 |
+
) {
|
23335 |
+
// If not yet registered and running the premium code base, a license activation link will already be shown.
|
23336 |
+
return;
|
23337 |
+
}
|
23338 |
|
23339 |
+
if ( $this->is_registered() && $this->is_tracking_allowed() ) {
|
23340 |
+
if ( ! $this->is_premium() && ! $this->is_enable_anonymous() ) {
|
23341 |
+
// If opted in and tracking is allowed, don't allow to opt out if not premium and anonymous mode is disabled.
|
23342 |
return;
|
23343 |
}
|
23344 |
}
|
23418 |
if ( ! empty( $this->_dynamically_added_top_level_page_hook_name ) ) {
|
23419 |
if ( $this->is_network_registered() ) {
|
23420 |
$page = 'account';
|
23421 |
+
} else if ( $this->is_pending_activation() || $this->is_network_anonymous() ) {
|
23422 |
$this->maybe_set_slug_and_network_menu_exists_flag();
|
23423 |
}
|
23424 |
}
|
23496 |
|
23497 |
foreach ( $this->_action_links as $new_links ) {
|
23498 |
foreach ( $new_links as $link ) {
|
23499 |
+
$before_deactivate[ $link['key'] ] = '<a href="' . $link['href'] . '"' . ( $link['external'] ? ' target="_blank" rel="noopener"' : '' ) . '>' . $link['label'] . '</a>';
|
23500 |
}
|
23501 |
}
|
23502 |
|
23616 |
'';
|
23617 |
|
23618 |
return sprintf(
|
23619 |
+
' %s: <ol><li>%s.</li>%s<li>%s (<a href="%s" target="_blank" rel="noopener">%s</a>).</li></ol>',
|
23620 |
$this->get_text_inline( 'Please follow these steps to complete the upgrade', 'follow-steps-to-complete-upgrade' ),
|
23621 |
( empty( $activate_license_string ) ? '' : $activate_license_string . '</li><li>' ) .
|
23622 |
$this->get_latest_download_link( sprintf(
|
23869 |
*/
|
23870 |
function set_plugin_upgrade_complete() {
|
23871 |
$this->_storage->plugin_upgrade_mode = false;
|
23872 |
+
|
23873 |
+
$license_migration = ! empty( $this->_storage->license_migration ) ?
|
23874 |
+
$this->_storage->license_migration :
|
23875 |
+
array();
|
23876 |
+
|
23877 |
+
$license_migration['is_migrating'] = false;
|
23878 |
+
|
23879 |
+
$this->_storage->license_migration = $license_migration;
|
23880 |
}
|
23881 |
|
23882 |
#endregion
|
freemius/includes/class-fs-api.php
CHANGED
@@ -287,7 +287,7 @@
|
|
287 |
$this->_logger->warn( 'Fallback to cached API result: ' . var_export( $cached_result, true ) );
|
288 |
}
|
289 |
} else {
|
290 |
-
if ( is_object( $result ) && 404 == $result->error->http ) {
|
291 |
/**
|
292 |
* If the response code is 404, cache the result for half of the `$expiration`.
|
293 |
*
|
287 |
$this->_logger->warn( 'Fallback to cached API result: ' . var_export( $cached_result, true ) );
|
288 |
}
|
289 |
} else {
|
290 |
+
if ( is_object( $result ) && isset( $result->error->http ) && 404 == $result->error->http ) {
|
291 |
/**
|
292 |
* If the response code is 404, cache the result for half of the `$expiration`.
|
293 |
*
|
freemius/includes/class-fs-storage.php
CHANGED
@@ -371,6 +371,7 @@
|
|
371 |
* sites in the network.
|
372 |
*/
|
373 |
'is_network_activation' => 0,
|
|
|
374 |
|
375 |
// When network activated, then network level.
|
376 |
'install_timestamp' => 1,
|
371 |
* sites in the network.
|
372 |
*/
|
373 |
'is_network_activation' => 0,
|
374 |
+
'license_migration' => 0,
|
375 |
|
376 |
// When network activated, then network level.
|
377 |
'install_timestamp' => 1,
|
freemius/includes/customizer/class-fs-customizer-support-section.php
CHANGED
@@ -87,10 +87,10 @@
|
|
87 |
<div class="button-group">
|
88 |
<# } #>
|
89 |
<# if ( data.contact ) { #>
|
90 |
-
<a class="button" href="{{ data.contact.url }}" target="_blank">{{ data.contact.label }} </a>
|
91 |
<# } #>
|
92 |
<# if ( data.support ) { #>
|
93 |
-
<a class="button" href="{{ data.support.url }}" target="_blank">{{ data.support.label }} </a>
|
94 |
<# } #>
|
95 |
<# if ( data.contact && data.support ) { #>
|
96 |
</div>
|
87 |
<div class="button-group">
|
88 |
<# } #>
|
89 |
<# if ( data.contact ) { #>
|
90 |
+
<a class="button" href="{{ data.contact.url }}" target="_blank" rel="noopener noreferrer">{{ data.contact.label }} </a>
|
91 |
<# } #>
|
92 |
<# if ( data.support ) { #>
|
93 |
+
<a class="button" href="{{ data.support.url }}" target="_blank" rel="noopener noreferrer">{{ data.support.label }} </a>
|
94 |
<# } #>
|
95 |
<# if ( data.contact && data.support ) { #>
|
96 |
</div>
|
freemius/includes/customizer/class-fs-customizer-upsell-control.php
CHANGED
@@ -1,161 +1,161 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.2.2.7
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
/**
|
14 |
-
* Class FS_Customizer_Upsell_Control
|
15 |
-
*/
|
16 |
-
class FS_Customizer_Upsell_Control extends WP_Customize_Control {
|
17 |
-
|
18 |
-
/**
|
19 |
-
* Control type
|
20 |
-
*
|
21 |
-
* @var string control type
|
22 |
-
*/
|
23 |
-
public $type = 'freemius-upsell-control';
|
24 |
-
|
25 |
-
/**
|
26 |
-
* @var Freemius
|
27 |
-
*/
|
28 |
-
public $fs = null;
|
29 |
-
|
30 |
-
/**
|
31 |
-
* @param WP_Customize_Manager $manager the customize manager class.
|
32 |
-
* @param string $id id.
|
33 |
-
* @param array $args customizer manager parameters.
|
34 |
-
*/
|
35 |
-
public function __construct( WP_Customize_Manager $manager, $id, array $args ) {
|
36 |
-
$manager->register_control_type( 'FS_Customizer_Upsell_Control' );
|
37 |
-
|
38 |
-
parent::__construct( $manager, $id, $args );
|
39 |
-
}
|
40 |
-
|
41 |
-
/**
|
42 |
-
* Enqueue resources for the control.
|
43 |
-
*/
|
44 |
-
public function enqueue() {
|
45 |
-
fs_enqueue_local_style( 'fs_customizer', 'customizer.css' );
|
46 |
-
}
|
47 |
-
|
48 |
-
/**
|
49 |
-
* Json conversion
|
50 |
-
*/
|
51 |
-
public function to_json() {
|
52 |
-
$pricing_cta = esc_html( $this->fs->get_pricing_cta_label() ) . ' ' . ( is_rtl() ? '←' : '➤' );
|
53 |
-
|
54 |
-
parent::to_json();
|
55 |
-
|
56 |
-
$this->json['button_text'] = $pricing_cta;
|
57 |
-
$this->json['button_url'] = $this->fs->is_in_trial_promotion() ?
|
58 |
-
$this->fs->get_trial_url() :
|
59 |
-
$this->fs->get_upgrade_url();
|
60 |
-
|
61 |
-
$api = FS_Plugin::is_valid_id( $this->fs->get_bundle_id() ) ?
|
62 |
-
$this->fs->get_api_bundle_scope() :
|
63 |
-
$this->fs->get_api_plugin_scope();
|
64 |
-
|
65 |
-
// Load features.
|
66 |
-
$pricing = $api->get( $this->fs->add_show_pending( "pricing.json" ) );
|
67 |
-
|
68 |
-
if ( $this->fs->is_api_result_object( $pricing, 'plans' ) ) {
|
69 |
-
// Add support features.
|
70 |
-
if ( is_array( $pricing->plans ) && 0 < count( $pricing->plans ) ) {
|
71 |
-
$support_features = array(
|
72 |
-
'kb' => 'Help Center',
|
73 |
-
'forum' => 'Support Forum',
|
74 |
-
'email' => 'Priority Email Support',
|
75 |
-
'phone' => 'Phone Support',
|
76 |
-
'skype' => 'Skype Support',
|
77 |
-
'is_success_manager' => 'Personal Success Manager',
|
78 |
-
);
|
79 |
-
|
80 |
-
for ( $i = 0, $len = count( $pricing->plans ); $i < $len; $i ++ ) {
|
81 |
-
if ( 'free' == $pricing->plans[$i]->name ) {
|
82 |
-
continue;
|
83 |
-
}
|
84 |
-
|
85 |
-
if ( ! isset( $pricing->plans[ $i ]->features ) ||
|
86 |
-
! is_array( $pricing->plans[ $i ]->features ) ) {
|
87 |
-
$pricing->plans[$i]->features = array();
|
88 |
-
}
|
89 |
-
|
90 |
-
foreach ( $support_features as $key => $label ) {
|
91 |
-
$key = ( 'is_success_manager' !== $key ) ?
|
92 |
-
"support_{$key}" :
|
93 |
-
$key;
|
94 |
-
|
95 |
-
if ( ! empty( $pricing->plans[ $i ]->{$key} ) ) {
|
96 |
-
|
97 |
-
$support_feature = new stdClass();
|
98 |
-
$support_feature->title = $label;
|
99 |
-
|
100 |
-
$pricing->plans[ $i ]->features[] = $support_feature;
|
101 |
-
}
|
102 |
-
}
|
103 |
-
}
|
104 |
-
}
|
105 |
-
}
|
106 |
-
|
107 |
-
$this->json['plans'] = $pricing->plans;
|
108 |
-
|
109 |
-
$this->json['strings'] = array(
|
110 |
-
'plan' => $this->fs->get_text_x_inline( 'Plan', 'as product pricing plan', 'plan' ),
|
111 |
-
);
|
112 |
-
}
|
113 |
-
|
114 |
-
/**
|
115 |
-
* Control content
|
116 |
-
*/
|
117 |
-
public function content_template() {
|
118 |
-
?>
|
119 |
-
<div id="fs_customizer_upsell">
|
120 |
-
<# if ( data.plans ) { #>
|
121 |
-
<ul class="fs-customizer-plans">
|
122 |
-
<# for (i in data.plans) { #>
|
123 |
-
<# if ( 'free' != data.plans[i].name && (null != data.plans[i].features && 0 < data.plans[i].features.length) ) { #>
|
124 |
-
<li class="fs-customizer-plan">
|
125 |
-
<div class="fs-accordion-section-open">
|
126 |
-
<h2 class="fs-accordion-section-title menu-item">
|
127 |
-
<span>{{ data.plans[i].title }}</span>
|
128 |
-
<button type="button" class="button-link item-edit" aria-expanded="true">
|
129 |
-
<span class="screen-reader-text">Toggle section: {{ data.plans[i].title }} {{ data.strings.plan }}</span>
|
130 |
-
<span class="toggle-indicator" aria-hidden="true"></span>
|
131 |
-
</button>
|
132 |
-
</h2>
|
133 |
-
<div class="fs-accordion-section-content">
|
134 |
-
<# if ( data.plans[i].description ) { #>
|
135 |
-
<h3>{{ data.plans[i].description }}</h3>
|
136 |
-
<# } #>
|
137 |
-
<# if ( data.plans[i].features ) { #>
|
138 |
-
<ul>
|
139 |
-
<# for ( j in data.plans[i].features ) { #>
|
140 |
-
<li><div class="fs-feature">
|
141 |
-
<span class="dashicons dashicons-yes"></span><span><# if ( data.plans[i].features[j].value ) { #>{{ data.plans[i].features[j].value }} <# } #>{{ data.plans[i].features[j].title }}</span>
|
142 |
-
<# if ( data.plans[i].features[j].description ) { #>
|
143 |
-
<span class="dashicons dashicons-editor-help"><span class="fs-feature-desc">{{ data.plans[i].features[j].description }}</span></span>
|
144 |
-
<# } #>
|
145 |
-
</div></li>
|
146 |
-
<# } #>
|
147 |
-
</ul>
|
148 |
-
<# } #>
|
149 |
-
<# if ( 'free' != data.plans[i].name ) { #>
|
150 |
-
<a href="{{ data.button_url }}" class="button button-primary" target="_blank">{{{ data.button_text }}}</a>
|
151 |
-
<# } #>
|
152 |
-
</div>
|
153 |
-
</div>
|
154 |
-
</li>
|
155 |
-
<# } #>
|
156 |
-
<# } #>
|
157 |
-
</ul>
|
158 |
-
<# } #>
|
159 |
-
</div>
|
160 |
-
<?php }
|
161 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.2.2.7
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Class FS_Customizer_Upsell_Control
|
15 |
+
*/
|
16 |
+
class FS_Customizer_Upsell_Control extends WP_Customize_Control {
|
17 |
+
|
18 |
+
/**
|
19 |
+
* Control type
|
20 |
+
*
|
21 |
+
* @var string control type
|
22 |
+
*/
|
23 |
+
public $type = 'freemius-upsell-control';
|
24 |
+
|
25 |
+
/**
|
26 |
+
* @var Freemius
|
27 |
+
*/
|
28 |
+
public $fs = null;
|
29 |
+
|
30 |
+
/**
|
31 |
+
* @param WP_Customize_Manager $manager the customize manager class.
|
32 |
+
* @param string $id id.
|
33 |
+
* @param array $args customizer manager parameters.
|
34 |
+
*/
|
35 |
+
public function __construct( WP_Customize_Manager $manager, $id, array $args ) {
|
36 |
+
$manager->register_control_type( 'FS_Customizer_Upsell_Control' );
|
37 |
+
|
38 |
+
parent::__construct( $manager, $id, $args );
|
39 |
+
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Enqueue resources for the control.
|
43 |
+
*/
|
44 |
+
public function enqueue() {
|
45 |
+
fs_enqueue_local_style( 'fs_customizer', 'customizer.css' );
|
46 |
+
}
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Json conversion
|
50 |
+
*/
|
51 |
+
public function to_json() {
|
52 |
+
$pricing_cta = esc_html( $this->fs->get_pricing_cta_label() ) . ' ' . ( is_rtl() ? '←' : '➤' );
|
53 |
+
|
54 |
+
parent::to_json();
|
55 |
+
|
56 |
+
$this->json['button_text'] = $pricing_cta;
|
57 |
+
$this->json['button_url'] = $this->fs->is_in_trial_promotion() ?
|
58 |
+
$this->fs->get_trial_url() :
|
59 |
+
$this->fs->get_upgrade_url();
|
60 |
+
|
61 |
+
$api = FS_Plugin::is_valid_id( $this->fs->get_bundle_id() ) ?
|
62 |
+
$this->fs->get_api_bundle_scope() :
|
63 |
+
$this->fs->get_api_plugin_scope();
|
64 |
+
|
65 |
+
// Load features.
|
66 |
+
$pricing = $api->get( $this->fs->add_show_pending( "pricing.json" ) );
|
67 |
+
|
68 |
+
if ( $this->fs->is_api_result_object( $pricing, 'plans' ) ) {
|
69 |
+
// Add support features.
|
70 |
+
if ( is_array( $pricing->plans ) && 0 < count( $pricing->plans ) ) {
|
71 |
+
$support_features = array(
|
72 |
+
'kb' => 'Help Center',
|
73 |
+
'forum' => 'Support Forum',
|
74 |
+
'email' => 'Priority Email Support',
|
75 |
+
'phone' => 'Phone Support',
|
76 |
+
'skype' => 'Skype Support',
|
77 |
+
'is_success_manager' => 'Personal Success Manager',
|
78 |
+
);
|
79 |
+
|
80 |
+
for ( $i = 0, $len = count( $pricing->plans ); $i < $len; $i ++ ) {
|
81 |
+
if ( 'free' == $pricing->plans[$i]->name ) {
|
82 |
+
continue;
|
83 |
+
}
|
84 |
+
|
85 |
+
if ( ! isset( $pricing->plans[ $i ]->features ) ||
|
86 |
+
! is_array( $pricing->plans[ $i ]->features ) ) {
|
87 |
+
$pricing->plans[$i]->features = array();
|
88 |
+
}
|
89 |
+
|
90 |
+
foreach ( $support_features as $key => $label ) {
|
91 |
+
$key = ( 'is_success_manager' !== $key ) ?
|
92 |
+
"support_{$key}" :
|
93 |
+
$key;
|
94 |
+
|
95 |
+
if ( ! empty( $pricing->plans[ $i ]->{$key} ) ) {
|
96 |
+
|
97 |
+
$support_feature = new stdClass();
|
98 |
+
$support_feature->title = $label;
|
99 |
+
|
100 |
+
$pricing->plans[ $i ]->features[] = $support_feature;
|
101 |
+
}
|
102 |
+
}
|
103 |
+
}
|
104 |
+
}
|
105 |
+
}
|
106 |
+
|
107 |
+
$this->json['plans'] = $pricing->plans;
|
108 |
+
|
109 |
+
$this->json['strings'] = array(
|
110 |
+
'plan' => $this->fs->get_text_x_inline( 'Plan', 'as product pricing plan', 'plan' ),
|
111 |
+
);
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* Control content
|
116 |
+
*/
|
117 |
+
public function content_template() {
|
118 |
+
?>
|
119 |
+
<div id="fs_customizer_upsell">
|
120 |
+
<# if ( data.plans ) { #>
|
121 |
+
<ul class="fs-customizer-plans">
|
122 |
+
<# for (i in data.plans) { #>
|
123 |
+
<# if ( 'free' != data.plans[i].name && (null != data.plans[i].features && 0 < data.plans[i].features.length) ) { #>
|
124 |
+
<li class="fs-customizer-plan">
|
125 |
+
<div class="fs-accordion-section-open">
|
126 |
+
<h2 class="fs-accordion-section-title menu-item">
|
127 |
+
<span>{{ data.plans[i].title }}</span>
|
128 |
+
<button type="button" class="button-link item-edit" aria-expanded="true">
|
129 |
+
<span class="screen-reader-text">Toggle section: {{ data.plans[i].title }} {{ data.strings.plan }}</span>
|
130 |
+
<span class="toggle-indicator" aria-hidden="true"></span>
|
131 |
+
</button>
|
132 |
+
</h2>
|
133 |
+
<div class="fs-accordion-section-content">
|
134 |
+
<# if ( data.plans[i].description ) { #>
|
135 |
+
<h3>{{ data.plans[i].description }}</h3>
|
136 |
+
<# } #>
|
137 |
+
<# if ( data.plans[i].features ) { #>
|
138 |
+
<ul>
|
139 |
+
<# for ( j in data.plans[i].features ) { #>
|
140 |
+
<li><div class="fs-feature">
|
141 |
+
<span class="dashicons dashicons-yes"></span><span><# if ( data.plans[i].features[j].value ) { #>{{ data.plans[i].features[j].value }} <# } #>{{ data.plans[i].features[j].title }}</span>
|
142 |
+
<# if ( data.plans[i].features[j].description ) { #>
|
143 |
+
<span class="dashicons dashicons-editor-help"><span class="fs-feature-desc">{{ data.plans[i].features[j].description }}</span></span>
|
144 |
+
<# } #>
|
145 |
+
</div></li>
|
146 |
+
<# } #>
|
147 |
+
</ul>
|
148 |
+
<# } #>
|
149 |
+
<# if ( 'free' != data.plans[i].name ) { #>
|
150 |
+
<a href="{{ data.button_url }}" class="button button-primary" target="_blank">{{{ data.button_text }}}</a>
|
151 |
+
<# } #>
|
152 |
+
</div>
|
153 |
+
</div>
|
154 |
+
</li>
|
155 |
+
<# } #>
|
156 |
+
<# } #>
|
157 |
+
</ul>
|
158 |
+
<# } #>
|
159 |
+
</div>
|
160 |
+
<?php }
|
161 |
}
|
freemius/includes/entities/class-fs-entity.php
CHANGED
@@ -1,159 +1,159 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.3
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
/**
|
14 |
-
* Get object's public variables.
|
15 |
-
*
|
16 |
-
* @author Vova Feldman (@svovaf)
|
17 |
-
* @since 1.0.0
|
18 |
-
*
|
19 |
-
* @param object $object
|
20 |
-
*
|
21 |
-
* @return array
|
22 |
-
*/
|
23 |
-
function fs_get_object_public_vars( $object ) {
|
24 |
-
return get_object_vars( $object );
|
25 |
-
}
|
26 |
-
|
27 |
-
class FS_Entity {
|
28 |
-
/**
|
29 |
-
* @var number
|
30 |
-
*/
|
31 |
-
public $id;
|
32 |
-
/**
|
33 |
-
* @var string Datetime value in 'YYYY-MM-DD HH:MM:SS' format.
|
34 |
-
*/
|
35 |
-
public $updated;
|
36 |
-
/**
|
37 |
-
* @var string Datetime value in 'YYYY-MM-DD HH:MM:SS' format.
|
38 |
-
*/
|
39 |
-
public $created;
|
40 |
-
|
41 |
-
/**
|
42 |
-
* @param bool|object $entity
|
43 |
-
*/
|
44 |
-
function __construct( $entity = false ) {
|
45 |
-
if ( ! ( $entity instanceof stdClass ) && ! ( $entity instanceof FS_Entity ) ) {
|
46 |
-
return;
|
47 |
-
}
|
48 |
-
|
49 |
-
$props = fs_get_object_public_vars( $this );
|
50 |
-
|
51 |
-
foreach ( $props as $key => $def_value ) {
|
52 |
-
$this->{$key} = isset( $entity->{$key} ) ?
|
53 |
-
$entity->{$key} :
|
54 |
-
$def_value;
|
55 |
-
}
|
56 |
-
}
|
57 |
-
|
58 |
-
static function get_type() {
|
59 |
-
return 'type';
|
60 |
-
}
|
61 |
-
|
62 |
-
/**
|
63 |
-
* @author Vova Feldman (@svovaf)
|
64 |
-
* @since 1.0.6
|
65 |
-
*
|
66 |
-
* @param FS_Entity $entity1
|
67 |
-
* @param FS_Entity $entity2
|
68 |
-
*
|
69 |
-
* @return bool
|
70 |
-
*/
|
71 |
-
static function equals( $entity1, $entity2 ) {
|
72 |
-
if ( is_null( $entity1 ) && is_null( $entity2 ) ) {
|
73 |
-
return true;
|
74 |
-
} else if ( is_object( $entity1 ) && is_object( $entity2 ) ) {
|
75 |
-
return ( $entity1->id == $entity2->id );
|
76 |
-
} else if ( is_object( $entity1 ) ) {
|
77 |
-
return is_null( $entity1->id );
|
78 |
-
} else {
|
79 |
-
return is_null( $entity2->id );
|
80 |
-
}
|
81 |
-
}
|
82 |
-
|
83 |
-
private $_is_updated = false;
|
84 |
-
|
85 |
-
/**
|
86 |
-
* Update object property.
|
87 |
-
*
|
88 |
-
* @author Vova Feldman (@svovaf)
|
89 |
-
* @since 1.0.9
|
90 |
-
*
|
91 |
-
* @param string|array[string]mixed $key
|
92 |
-
* @param string|bool $val
|
93 |
-
*
|
94 |
-
* @return bool
|
95 |
-
*/
|
96 |
-
function update( $key, $val = false ) {
|
97 |
-
if ( ! is_array( $key ) ) {
|
98 |
-
$key = array( $key => $val );
|
99 |
-
}
|
100 |
-
|
101 |
-
$is_updated = false;
|
102 |
-
|
103 |
-
foreach ( $key as $k => $v ) {
|
104 |
-
if ( $this->{$k} === $v ) {
|
105 |
-
continue;
|
106 |
-
}
|
107 |
-
|
108 |
-
if ( ( is_string( $this->{$k} ) && is_numeric( $v ) ||
|
109 |
-
( is_numeric( $this->{$k} ) && is_string( $v ) ) ) &&
|
110 |
-
$this->{$k} == $v
|
111 |
-
) {
|
112 |
-
continue;
|
113 |
-
}
|
114 |
-
|
115 |
-
// Update value.
|
116 |
-
$this->{$k} = $v;
|
117 |
-
|
118 |
-
$is_updated = true;
|
119 |
-
}
|
120 |
-
|
121 |
-
$this->_is_updated = $is_updated;
|
122 |
-
|
123 |
-
return $is_updated;
|
124 |
-
}
|
125 |
-
|
126 |
-
/**
|
127 |
-
* Checks if entity was updated.
|
128 |
-
*
|
129 |
-
* @author Vova Feldman (@svovaf)
|
130 |
-
* @since 1.0.9
|
131 |
-
*
|
132 |
-
* @return bool
|
133 |
-
*/
|
134 |
-
function is_updated() {
|
135 |
-
return $this->_is_updated;
|
136 |
-
}
|
137 |
-
|
138 |
-
/**
|
139 |
-
* @param $id
|
140 |
-
*
|
141 |
-
* @author Vova Feldman (@svovaf)
|
142 |
-
* @since 1.1.2
|
143 |
-
*
|
144 |
-
* @return bool
|
145 |
-
*/
|
146 |
-
static function is_valid_id($id){
|
147 |
-
return is_numeric($id);
|
148 |
-
}
|
149 |
-
|
150 |
-
/**
|
151 |
-
* @author Leo Fajardo (@leorw)
|
152 |
-
* @since 2.3.1
|
153 |
-
*
|
154 |
-
* @return string
|
155 |
-
*/
|
156 |
-
public static function get_class_name() {
|
157 |
-
return get_called_class();
|
158 |
-
}
|
159 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Get object's public variables.
|
15 |
+
*
|
16 |
+
* @author Vova Feldman (@svovaf)
|
17 |
+
* @since 1.0.0
|
18 |
+
*
|
19 |
+
* @param object $object
|
20 |
+
*
|
21 |
+
* @return array
|
22 |
+
*/
|
23 |
+
function fs_get_object_public_vars( $object ) {
|
24 |
+
return get_object_vars( $object );
|
25 |
+
}
|
26 |
+
|
27 |
+
class FS_Entity {
|
28 |
+
/**
|
29 |
+
* @var number
|
30 |
+
*/
|
31 |
+
public $id;
|
32 |
+
/**
|
33 |
+
* @var string Datetime value in 'YYYY-MM-DD HH:MM:SS' format.
|
34 |
+
*/
|
35 |
+
public $updated;
|
36 |
+
/**
|
37 |
+
* @var string Datetime value in 'YYYY-MM-DD HH:MM:SS' format.
|
38 |
+
*/
|
39 |
+
public $created;
|
40 |
+
|
41 |
+
/**
|
42 |
+
* @param bool|object $entity
|
43 |
+
*/
|
44 |
+
function __construct( $entity = false ) {
|
45 |
+
if ( ! ( $entity instanceof stdClass ) && ! ( $entity instanceof FS_Entity ) ) {
|
46 |
+
return;
|
47 |
+
}
|
48 |
+
|
49 |
+
$props = fs_get_object_public_vars( $this );
|
50 |
+
|
51 |
+
foreach ( $props as $key => $def_value ) {
|
52 |
+
$this->{$key} = isset( $entity->{$key} ) ?
|
53 |
+
$entity->{$key} :
|
54 |
+
$def_value;
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
static function get_type() {
|
59 |
+
return 'type';
|
60 |
+
}
|
61 |
+
|
62 |
+
/**
|
63 |
+
* @author Vova Feldman (@svovaf)
|
64 |
+
* @since 1.0.6
|
65 |
+
*
|
66 |
+
* @param FS_Entity $entity1
|
67 |
+
* @param FS_Entity $entity2
|
68 |
+
*
|
69 |
+
* @return bool
|
70 |
+
*/
|
71 |
+
static function equals( $entity1, $entity2 ) {
|
72 |
+
if ( is_null( $entity1 ) && is_null( $entity2 ) ) {
|
73 |
+
return true;
|
74 |
+
} else if ( is_object( $entity1 ) && is_object( $entity2 ) ) {
|
75 |
+
return ( $entity1->id == $entity2->id );
|
76 |
+
} else if ( is_object( $entity1 ) ) {
|
77 |
+
return is_null( $entity1->id );
|
78 |
+
} else {
|
79 |
+
return is_null( $entity2->id );
|
80 |
+
}
|
81 |
+
}
|
82 |
+
|
83 |
+
private $_is_updated = false;
|
84 |
+
|
85 |
+
/**
|
86 |
+
* Update object property.
|
87 |
+
*
|
88 |
+
* @author Vova Feldman (@svovaf)
|
89 |
+
* @since 1.0.9
|
90 |
+
*
|
91 |
+
* @param string|array[string]mixed $key
|
92 |
+
* @param string|bool $val
|
93 |
+
*
|
94 |
+
* @return bool
|
95 |
+
*/
|
96 |
+
function update( $key, $val = false ) {
|
97 |
+
if ( ! is_array( $key ) ) {
|
98 |
+
$key = array( $key => $val );
|
99 |
+
}
|
100 |
+
|
101 |
+
$is_updated = false;
|
102 |
+
|
103 |
+
foreach ( $key as $k => $v ) {
|
104 |
+
if ( $this->{$k} === $v ) {
|
105 |
+
continue;
|
106 |
+
}
|
107 |
+
|
108 |
+
if ( ( is_string( $this->{$k} ) && is_numeric( $v ) ||
|
109 |
+
( is_numeric( $this->{$k} ) && is_string( $v ) ) ) &&
|
110 |
+
$this->{$k} == $v
|
111 |
+
) {
|
112 |
+
continue;
|
113 |
+
}
|
114 |
+
|
115 |
+
// Update value.
|
116 |
+
$this->{$k} = $v;
|
117 |
+
|
118 |
+
$is_updated = true;
|
119 |
+
}
|
120 |
+
|
121 |
+
$this->_is_updated = $is_updated;
|
122 |
+
|
123 |
+
return $is_updated;
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Checks if entity was updated.
|
128 |
+
*
|
129 |
+
* @author Vova Feldman (@svovaf)
|
130 |
+
* @since 1.0.9
|
131 |
+
*
|
132 |
+
* @return bool
|
133 |
+
*/
|
134 |
+
function is_updated() {
|
135 |
+
return $this->_is_updated;
|
136 |
+
}
|
137 |
+
|
138 |
+
/**
|
139 |
+
* @param $id
|
140 |
+
*
|
141 |
+
* @author Vova Feldman (@svovaf)
|
142 |
+
* @since 1.1.2
|
143 |
+
*
|
144 |
+
* @return bool
|
145 |
+
*/
|
146 |
+
static function is_valid_id($id){
|
147 |
+
return is_numeric($id);
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* @author Leo Fajardo (@leorw)
|
152 |
+
* @since 2.3.1
|
153 |
+
*
|
154 |
+
* @return string
|
155 |
+
*/
|
156 |
+
public static function get_class_name() {
|
157 |
+
return get_called_class();
|
158 |
+
}
|
159 |
}
|
freemius/includes/entities/class-fs-payment.php
CHANGED
@@ -158,8 +158,8 @@
|
|
158 |
// Lazy load.
|
159 |
self::$CURRENCY_2_SYMBOL = array(
|
160 |
self::CURRENCY_USD => '$',
|
161 |
-
self::CURRENCY_GBP => '
|
162 |
-
self::CURRENCY_EUR => '
|
163 |
);
|
164 |
}
|
165 |
|
158 |
// Lazy load.
|
159 |
self::$CURRENCY_2_SYMBOL = array(
|
160 |
self::CURRENCY_USD => '$',
|
161 |
+
self::CURRENCY_GBP => '£',
|
162 |
+
self::CURRENCY_EUR => '€',
|
163 |
);
|
164 |
}
|
165 |
|
freemius/includes/entities/class-fs-plugin-license.php
CHANGED
@@ -1,323 +1,330 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.5
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
/**
|
14 |
-
* Class FS_Plugin_License
|
15 |
-
*/
|
16 |
-
class FS_Plugin_License extends FS_Entity {
|
17 |
-
|
18 |
-
#region Properties
|
19 |
-
|
20 |
-
/**
|
21 |
-
* @var number
|
22 |
-
*/
|
23 |
-
public $plugin_id;
|
24 |
-
/**
|
25 |
-
* @var number
|
26 |
-
*/
|
27 |
-
public $user_id;
|
28 |
-
/**
|
29 |
-
* @var number
|
30 |
-
*/
|
31 |
-
public $plan_id;
|
32 |
-
/**
|
33 |
-
* @author Leo Fajardo (@leorw)
|
34 |
-
* @since 2.3.0
|
35 |
-
*
|
36 |
-
* @var string
|
37 |
-
*/
|
38 |
-
public $parent_plan_name;
|
39 |
-
/**
|
40 |
-
* @author Leo Fajardo (@leorw)
|
41 |
-
* @since 2.3.0
|
42 |
-
*
|
43 |
-
* @var string
|
44 |
-
*/
|
45 |
-
public $parent_plan_title;
|
46 |
-
/**
|
47 |
-
* @author Leo Fajardo (@leorw)
|
48 |
-
* @since 2.3.0
|
49 |
-
*
|
50 |
-
* @var number
|
51 |
-
*/
|
52 |
-
public $parent_license_id;
|
53 |
-
/**
|
54 |
-
* @
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
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 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
* @
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
*
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
* @
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
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 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
*
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
*
|
268 |
-
*
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
*
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
*
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
* @return
|
290 |
-
*/
|
291 |
-
function
|
292 |
-
return ( $this->
|
293 |
-
}
|
294 |
-
|
295 |
-
/**
|
296 |
-
* @
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
* @
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.5
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Class FS_Plugin_License
|
15 |
+
*/
|
16 |
+
class FS_Plugin_License extends FS_Entity {
|
17 |
+
|
18 |
+
#region Properties
|
19 |
+
|
20 |
+
/**
|
21 |
+
* @var number
|
22 |
+
*/
|
23 |
+
public $plugin_id;
|
24 |
+
/**
|
25 |
+
* @var number
|
26 |
+
*/
|
27 |
+
public $user_id;
|
28 |
+
/**
|
29 |
+
* @var number
|
30 |
+
*/
|
31 |
+
public $plan_id;
|
32 |
+
/**
|
33 |
+
* @author Leo Fajardo (@leorw)
|
34 |
+
* @since 2.3.0
|
35 |
+
*
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
public $parent_plan_name;
|
39 |
+
/**
|
40 |
+
* @author Leo Fajardo (@leorw)
|
41 |
+
* @since 2.3.0
|
42 |
+
*
|
43 |
+
* @var string
|
44 |
+
*/
|
45 |
+
public $parent_plan_title;
|
46 |
+
/**
|
47 |
+
* @author Leo Fajardo (@leorw)
|
48 |
+
* @since 2.3.0
|
49 |
+
*
|
50 |
+
* @var number
|
51 |
+
*/
|
52 |
+
public $parent_license_id;
|
53 |
+
/**
|
54 |
+
* @author Leo Fajardo (@leorw)
|
55 |
+
* @since 2.4.0
|
56 |
+
*
|
57 |
+
* @var array
|
58 |
+
*/
|
59 |
+
public $products;
|
60 |
+
/**
|
61 |
+
* @var number
|
62 |
+
*/
|
63 |
+
public $pricing_id;
|
64 |
+
/**
|
65 |
+
* @var int|null
|
66 |
+
*/
|
67 |
+
public $quota;
|
68 |
+
/**
|
69 |
+
* @var int
|
70 |
+
*/
|
71 |
+
public $activated;
|
72 |
+
/**
|
73 |
+
* @var int
|
74 |
+
*/
|
75 |
+
public $activated_local;
|
76 |
+
/**
|
77 |
+
* @var string
|
78 |
+
*/
|
79 |
+
public $expiration;
|
80 |
+
/**
|
81 |
+
* @var string
|
82 |
+
*/
|
83 |
+
public $secret_key;
|
84 |
+
/**
|
85 |
+
* @var bool
|
86 |
+
*/
|
87 |
+
public $is_whitelabeled;
|
88 |
+
/**
|
89 |
+
* @var bool $is_free_localhost Defaults to true. If true, allow unlimited localhost installs with the same
|
90 |
+
* license.
|
91 |
+
*/
|
92 |
+
public $is_free_localhost;
|
93 |
+
/**
|
94 |
+
* @var bool $is_block_features Defaults to true. If false, don't block features after license expiry - only
|
95 |
+
* block updates and support.
|
96 |
+
*/
|
97 |
+
public $is_block_features;
|
98 |
+
/**
|
99 |
+
* @var bool
|
100 |
+
*/
|
101 |
+
public $is_cancelled;
|
102 |
+
|
103 |
+
#endregion Properties
|
104 |
+
|
105 |
+
/**
|
106 |
+
* @param stdClass|bool $license
|
107 |
+
*/
|
108 |
+
function __construct( $license = false ) {
|
109 |
+
parent::__construct( $license );
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* Get entity type.
|
114 |
+
*
|
115 |
+
* @return string
|
116 |
+
*/
|
117 |
+
static function get_type() {
|
118 |
+
return 'license';
|
119 |
+
}
|
120 |
+
|
121 |
+
/**
|
122 |
+
* Check how many site activations left.
|
123 |
+
*
|
124 |
+
* @author Vova Feldman (@svovaf)
|
125 |
+
* @since 1.0.5
|
126 |
+
*
|
127 |
+
* @return int
|
128 |
+
*/
|
129 |
+
function left() {
|
130 |
+
if ( ! $this->is_features_enabled() ) {
|
131 |
+
return 0;
|
132 |
+
}
|
133 |
+
|
134 |
+
if ( $this->is_unlimited() ) {
|
135 |
+
return 999;
|
136 |
+
}
|
137 |
+
|
138 |
+
return ( $this->quota - $this->activated - ( $this->is_free_localhost ? 0 : $this->activated_local ) );
|
139 |
+
}
|
140 |
+
|
141 |
+
/**
|
142 |
+
* Check if single site license.
|
143 |
+
*
|
144 |
+
* @author Vova Feldman (@svovaf)
|
145 |
+
* @since 1.1.8.1
|
146 |
+
*
|
147 |
+
* @return bool
|
148 |
+
*/
|
149 |
+
function is_single_site() {
|
150 |
+
return ( is_numeric( $this->quota ) && 1 == $this->quota );
|
151 |
+
}
|
152 |
+
|
153 |
+
/**
|
154 |
+
* @author Vova Feldman (@svovaf)
|
155 |
+
* @since 1.0.5
|
156 |
+
*
|
157 |
+
* @return bool
|
158 |
+
*/
|
159 |
+
function is_expired() {
|
160 |
+
return ! $this->is_lifetime() && ( strtotime( $this->expiration ) < WP_FS__SCRIPT_START_TIME );
|
161 |
+
}
|
162 |
+
|
163 |
+
/**
|
164 |
+
* Check if license is not expired.
|
165 |
+
*
|
166 |
+
* @author Vova Feldman (@svovaf)
|
167 |
+
* @since 1.2.1
|
168 |
+
*
|
169 |
+
* @return bool
|
170 |
+
*/
|
171 |
+
function is_valid() {
|
172 |
+
return ! $this->is_expired();
|
173 |
+
}
|
174 |
+
|
175 |
+
/**
|
176 |
+
* @author Vova Feldman (@svovaf)
|
177 |
+
* @since 1.0.6
|
178 |
+
*
|
179 |
+
* @return bool
|
180 |
+
*/
|
181 |
+
function is_lifetime() {
|
182 |
+
return is_null( $this->expiration );
|
183 |
+
}
|
184 |
+
|
185 |
+
/**
|
186 |
+
* @author Vova Feldman (@svovaf)
|
187 |
+
* @since 1.2.0
|
188 |
+
*
|
189 |
+
* @return bool
|
190 |
+
*/
|
191 |
+
function is_unlimited() {
|
192 |
+
return is_null( $this->quota );
|
193 |
+
}
|
194 |
+
|
195 |
+
/**
|
196 |
+
* Check if license is fully utilized.
|
197 |
+
*
|
198 |
+
* @author Vova Feldman (@svovaf)
|
199 |
+
* @since 1.0.6
|
200 |
+
*
|
201 |
+
* @param bool|null $is_localhost
|
202 |
+
*
|
203 |
+
* @return bool
|
204 |
+
*/
|
205 |
+
function is_utilized( $is_localhost = null ) {
|
206 |
+
if ( is_null( $is_localhost ) ) {
|
207 |
+
$is_localhost = WP_FS__IS_LOCALHOST_FOR_SERVER;
|
208 |
+
}
|
209 |
+
|
210 |
+
if ( $this->is_unlimited() ) {
|
211 |
+
return false;
|
212 |
+
}
|
213 |
+
|
214 |
+
return ! ( $this->is_free_localhost && $is_localhost ) &&
|
215 |
+
( $this->quota <= $this->activated + ( $this->is_free_localhost ? 0 : $this->activated_local ) );
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* Check if license can be activated.
|
220 |
+
*
|
221 |
+
* @author Vova Feldman (@svovaf)
|
222 |
+
* @since 2.0.0
|
223 |
+
*
|
224 |
+
* @param bool|null $is_localhost
|
225 |
+
*
|
226 |
+
* @return bool
|
227 |
+
*/
|
228 |
+
function can_activate( $is_localhost = null ) {
|
229 |
+
return ! $this->is_utilized( $is_localhost ) && $this->is_features_enabled();
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
* Check if license can be activated on a given number of production and localhost sites.
|
234 |
+
*
|
235 |
+
* @author Vova Feldman (@svovaf)
|
236 |
+
* @since 2.0.0
|
237 |
+
*
|
238 |
+
* @param int $production_count
|
239 |
+
* @param int $localhost_count
|
240 |
+
*
|
241 |
+
* @return bool
|
242 |
+
*/
|
243 |
+
function can_activate_bulk( $production_count, $localhost_count ) {
|
244 |
+
if ( $this->is_unlimited() ) {
|
245 |
+
return true;
|
246 |
+
}
|
247 |
+
|
248 |
+
/**
|
249 |
+
* For simplicity, the logic will work as following: when given X sites to activate the license on, if it's
|
250 |
+
* possible to activate on ALL of them, do the activation. If it's not possible to activate on ALL of them,
|
251 |
+
* do NOT activate on any of them.
|
252 |
+
*/
|
253 |
+
return ( $this->quota >= $this->activated + $production_count + ( $this->is_free_localhost ? 0 : $this->activated_local + $localhost_count ) );
|
254 |
+
}
|
255 |
+
|
256 |
+
/**
|
257 |
+
* @author Vova Feldman (@svovaf)
|
258 |
+
* @since 1.2.1
|
259 |
+
*
|
260 |
+
* @return bool
|
261 |
+
*/
|
262 |
+
function is_active() {
|
263 |
+
return ( ! $this->is_cancelled );
|
264 |
+
}
|
265 |
+
|
266 |
+
/**
|
267 |
+
* Check if license's plan features are enabled.
|
268 |
+
*
|
269 |
+
* - Either if plan not expired
|
270 |
+
* - If expired, based on the configuration to block features or not.
|
271 |
+
*
|
272 |
+
* @author Vova Feldman (@svovaf)
|
273 |
+
* @since 1.0.6
|
274 |
+
*
|
275 |
+
* @return bool
|
276 |
+
*/
|
277 |
+
function is_features_enabled() {
|
278 |
+
return $this->is_active() && ( ! $this->is_block_features || ! $this->is_expired() );
|
279 |
+
}
|
280 |
+
|
281 |
+
/**
|
282 |
+
* Subscription considered to be new without any payments
|
283 |
+
* if the license expires in less than 24 hours
|
284 |
+
* from the license creation.
|
285 |
+
*
|
286 |
+
* @author Vova Feldman (@svovaf)
|
287 |
+
* @since 1.0.9
|
288 |
+
*
|
289 |
+
* @return bool
|
290 |
+
*/
|
291 |
+
function is_first_payment_pending() {
|
292 |
+
return ( WP_FS__TIME_24_HOURS_IN_SEC >= strtotime( $this->expiration ) - strtotime( $this->created ) );
|
293 |
+
}
|
294 |
+
|
295 |
+
/**
|
296 |
+
* @return int
|
297 |
+
*/
|
298 |
+
function total_activations() {
|
299 |
+
return ( $this->activated + $this->activated_local );
|
300 |
+
}
|
301 |
+
|
302 |
+
/**
|
303 |
+
* @author Vova Feldman (@svovaf)
|
304 |
+
* @since 2.3.1
|
305 |
+
*
|
306 |
+
* @return string
|
307 |
+
*/
|
308 |
+
function get_html_escaped_masked_secret_key() {
|
309 |
+
return self::mask_secret_key_for_html( $this->secret_key );
|
310 |
+
}
|
311 |
+
|
312 |
+
/**
|
313 |
+
* @author Vova Feldman (@svovaf)
|
314 |
+
* @since 2.3.1
|
315 |
+
*
|
316 |
+
* @param string $secret_key
|
317 |
+
*
|
318 |
+
* @return string
|
319 |
+
*/
|
320 |
+
static function mask_secret_key_for_html( $secret_key ) {
|
321 |
+
return (
|
322 |
+
// Initial 6 chars - sk_ABC
|
323 |
+
htmlspecialchars( substr( $secret_key, 0, 6 ) ) .
|
324 |
+
// Masking
|
325 |
+
str_pad( '', ( strlen( $secret_key ) - 9 ) * 6, '•' ) .
|
326 |
+
// Last 3 chars.
|
327 |
+
htmlspecialchars( substr( $secret_key, - 3 ) )
|
328 |
+
);
|
329 |
+
}
|
330 |
+
}
|
freemius/includes/entities/class-fs-plugin.php
CHANGED
@@ -1,159 +1,159 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.3
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Plugin extends FS_Scope_Entity {
|
14 |
-
/**
|
15 |
-
* @since 1.0.6
|
16 |
-
* @var null|number
|
17 |
-
*/
|
18 |
-
public $parent_plugin_id;
|
19 |
-
/**
|
20 |
-
* @var string
|
21 |
-
*/
|
22 |
-
public $title;
|
23 |
-
/**
|
24 |
-
* @var string
|
25 |
-
*/
|
26 |
-
public $slug;
|
27 |
-
/**
|
28 |
-
* @author Leo Fajardo (@leorw)
|
29 |
-
* @since 2.2.1
|
30 |
-
*
|
31 |
-
* @var string
|
32 |
-
*/
|
33 |
-
public $premium_slug;
|
34 |
-
/**
|
35 |
-
* @since 1.2.2
|
36 |
-
*
|
37 |
-
* @var string 'plugin' or 'theme'
|
38 |
-
*/
|
39 |
-
public $type;
|
40 |
-
/**
|
41 |
-
* @author Leo Fajardo (@leorw)
|
42 |
-
*
|
43 |
-
* @since 1.2.3
|
44 |
-
*
|
45 |
-
* @var string|false false if the module doesn't have an affiliate program or one of the following: 'selected', 'customers', or 'all'.
|
46 |
-
*/
|
47 |
-
public $affiliate_moderation;
|
48 |
-
/**
|
49 |
-
* @var bool Set to true if the free version of the module is hosted on WordPress.org. Defaults to true.
|
50 |
-
*/
|
51 |
-
public $is_wp_org_compliant = true;
|
52 |
-
/**
|
53 |
-
* @author Leo Fajardo (@leorw)
|
54 |
-
* @since 2.2.5
|
55 |
-
*
|
56 |
-
* @var int
|
57 |
-
*/
|
58 |
-
public $premium_releases_count;
|
59 |
-
|
60 |
-
#region Install Specific Properties
|
61 |
-
|
62 |
-
/**
|
63 |
-
* @var string
|
64 |
-
*/
|
65 |
-
public $file;
|
66 |
-
/**
|
67 |
-
* @var string
|
68 |
-
*/
|
69 |
-
public $version;
|
70 |
-
/**
|
71 |
-
* @var bool
|
72 |
-
*/
|
73 |
-
public $auto_update;
|
74 |
-
/**
|
75 |
-
* @var FS_Plugin_Info
|
76 |
-
*/
|
77 |
-
public $info;
|
78 |
-
/**
|
79 |
-
* @since 1.0.9
|
80 |
-
*
|
81 |
-
* @var bool
|
82 |
-
*/
|
83 |
-
public $is_premium;
|
84 |
-
/**
|
85 |
-
* @author Leo Fajardo (@leorw)
|
86 |
-
* @since 2.2.1
|
87 |
-
*
|
88 |
-
* @var string
|
89 |
-
*/
|
90 |
-
public $premium_suffix;
|
91 |
-
/**
|
92 |
-
* @since 1.0.9
|
93 |
-
*
|
94 |
-
* @var bool
|
95 |
-
*/
|
96 |
-
public $is_live;
|
97 |
-
/**
|
98 |
-
* @since 2.2.3
|
99 |
-
* @var null|number
|
100 |
-
*/
|
101 |
-
public $bundle_id;
|
102 |
-
/**
|
103 |
-
* @since 2.3.1
|
104 |
-
* @var null|string
|
105 |
-
*/
|
106 |
-
public $bundle_public_key;
|
107 |
-
|
108 |
-
const AFFILIATE_MODERATION_CUSTOMERS = 'customers';
|
109 |
-
|
110 |
-
#endregion Install Specific Properties
|
111 |
-
|
112 |
-
/**
|
113 |
-
* @param stdClass|bool $plugin
|
114 |
-
*/
|
115 |
-
function __construct( $plugin = false ) {
|
116 |
-
parent::__construct( $plugin );
|
117 |
-
|
118 |
-
$this->is_premium = false;
|
119 |
-
$this->is_live = true;
|
120 |
-
|
121 |
-
if ( empty( $this->premium_slug ) && ! empty( $plugin->slug ) ) {
|
122 |
-
$this->premium_slug = "{$this->slug}-premium";
|
123 |
-
}
|
124 |
-
|
125 |
-
if ( empty( $this->premium_suffix ) ) {
|
126 |
-
$this->premium_suffix = '(Premium)';
|
127 |
-
}
|
128 |
-
|
129 |
-
if ( isset( $plugin->info ) && is_object( $plugin->info ) ) {
|
130 |
-
$this->info = new FS_Plugin_Info( $plugin->info );
|
131 |
-
}
|
132 |
-
}
|
133 |
-
|
134 |
-
/**
|
135 |
-
* Check if plugin is an add-on (has parent).
|
136 |
-
*
|
137 |
-
* @author Vova Feldman (@svovaf)
|
138 |
-
* @since 1.0.6
|
139 |
-
*
|
140 |
-
* @return bool
|
141 |
-
*/
|
142 |
-
function is_addon() {
|
143 |
-
return isset( $this->parent_plugin_id ) && is_numeric( $this->parent_plugin_id );
|
144 |
-
}
|
145 |
-
|
146 |
-
/**
|
147 |
-
* @author Leo Fajardo (@leorw)
|
148 |
-
* @since 1.2.3
|
149 |
-
*
|
150 |
-
* @return bool
|
151 |
-
*/
|
152 |
-
function has_affiliate_program() {
|
153 |
-
return ( ! empty( $this->affiliate_moderation ) );
|
154 |
-
}
|
155 |
-
|
156 |
-
static function get_type() {
|
157 |
-
return 'plugin';
|
158 |
-
}
|
159 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Plugin extends FS_Scope_Entity {
|
14 |
+
/**
|
15 |
+
* @since 1.0.6
|
16 |
+
* @var null|number
|
17 |
+
*/
|
18 |
+
public $parent_plugin_id;
|
19 |
+
/**
|
20 |
+
* @var string
|
21 |
+
*/
|
22 |
+
public $title;
|
23 |
+
/**
|
24 |
+
* @var string
|
25 |
+
*/
|
26 |
+
public $slug;
|
27 |
+
/**
|
28 |
+
* @author Leo Fajardo (@leorw)
|
29 |
+
* @since 2.2.1
|
30 |
+
*
|
31 |
+
* @var string
|
32 |
+
*/
|
33 |
+
public $premium_slug;
|
34 |
+
/**
|
35 |
+
* @since 1.2.2
|
36 |
+
*
|
37 |
+
* @var string 'plugin' or 'theme'
|
38 |
+
*/
|
39 |
+
public $type;
|
40 |
+
/**
|
41 |
+
* @author Leo Fajardo (@leorw)
|
42 |
+
*
|
43 |
+
* @since 1.2.3
|
44 |
+
*
|
45 |
+
* @var string|false false if the module doesn't have an affiliate program or one of the following: 'selected', 'customers', or 'all'.
|
46 |
+
*/
|
47 |
+
public $affiliate_moderation;
|
48 |
+
/**
|
49 |
+
* @var bool Set to true if the free version of the module is hosted on WordPress.org. Defaults to true.
|
50 |
+
*/
|
51 |
+
public $is_wp_org_compliant = true;
|
52 |
+
/**
|
53 |
+
* @author Leo Fajardo (@leorw)
|
54 |
+
* @since 2.2.5
|
55 |
+
*
|
56 |
+
* @var int
|
57 |
+
*/
|
58 |
+
public $premium_releases_count;
|
59 |
+
|
60 |
+
#region Install Specific Properties
|
61 |
+
|
62 |
+
/**
|
63 |
+
* @var string
|
64 |
+
*/
|
65 |
+
public $file;
|
66 |
+
/**
|
67 |
+
* @var string
|
68 |
+
*/
|
69 |
+
public $version;
|
70 |
+
/**
|
71 |
+
* @var bool
|
72 |
+
*/
|
73 |
+
public $auto_update;
|
74 |
+
/**
|
75 |
+
* @var FS_Plugin_Info
|
76 |
+
*/
|
77 |
+
public $info;
|
78 |
+
/**
|
79 |
+
* @since 1.0.9
|
80 |
+
*
|
81 |
+
* @var bool
|
82 |
+
*/
|
83 |
+
public $is_premium;
|
84 |
+
/**
|
85 |
+
* @author Leo Fajardo (@leorw)
|
86 |
+
* @since 2.2.1
|
87 |
+
*
|
88 |
+
* @var string
|
89 |
+
*/
|
90 |
+
public $premium_suffix;
|
91 |
+
/**
|
92 |
+
* @since 1.0.9
|
93 |
+
*
|
94 |
+
* @var bool
|
95 |
+
*/
|
96 |
+
public $is_live;
|
97 |
+
/**
|
98 |
+
* @since 2.2.3
|
99 |
+
* @var null|number
|
100 |
+
*/
|
101 |
+
public $bundle_id;
|
102 |
+
/**
|
103 |
+
* @since 2.3.1
|
104 |
+
* @var null|string
|
105 |
+
*/
|
106 |
+
public $bundle_public_key;
|
107 |
+
|
108 |
+
const AFFILIATE_MODERATION_CUSTOMERS = 'customers';
|
109 |
+
|
110 |
+
#endregion Install Specific Properties
|
111 |
+
|
112 |
+
/**
|
113 |
+
* @param stdClass|bool $plugin
|
114 |
+
*/
|
115 |
+
function __construct( $plugin = false ) {
|
116 |
+
parent::__construct( $plugin );
|
117 |
+
|
118 |
+
$this->is_premium = false;
|
119 |
+
$this->is_live = true;
|
120 |
+
|
121 |
+
if ( empty( $this->premium_slug ) && ! empty( $plugin->slug ) ) {
|
122 |
+
$this->premium_slug = "{$this->slug}-premium";
|
123 |
+
}
|
124 |
+
|
125 |
+
if ( empty( $this->premium_suffix ) ) {
|
126 |
+
$this->premium_suffix = '(Premium)';
|
127 |
+
}
|
128 |
+
|
129 |
+
if ( isset( $plugin->info ) && is_object( $plugin->info ) ) {
|
130 |
+
$this->info = new FS_Plugin_Info( $plugin->info );
|
131 |
+
}
|
132 |
+
}
|
133 |
+
|
134 |
+
/**
|
135 |
+
* Check if plugin is an add-on (has parent).
|
136 |
+
*
|
137 |
+
* @author Vova Feldman (@svovaf)
|
138 |
+
* @since 1.0.6
|
139 |
+
*
|
140 |
+
* @return bool
|
141 |
+
*/
|
142 |
+
function is_addon() {
|
143 |
+
return isset( $this->parent_plugin_id ) && is_numeric( $this->parent_plugin_id );
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* @author Leo Fajardo (@leorw)
|
148 |
+
* @since 1.2.3
|
149 |
+
*
|
150 |
+
* @return bool
|
151 |
+
*/
|
152 |
+
function has_affiliate_program() {
|
153 |
+
return ( ! empty( $this->affiliate_moderation ) );
|
154 |
+
}
|
155 |
+
|
156 |
+
static function get_type() {
|
157 |
+
return 'plugin';
|
158 |
+
}
|
159 |
}
|
freemius/includes/entities/class-fs-pricing.php
CHANGED
@@ -1,157 +1,157 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius for EDD Add-On
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.0
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Pricing extends FS_Entity {
|
14 |
-
|
15 |
-
#region Properties
|
16 |
-
|
17 |
-
/**
|
18 |
-
* @var number
|
19 |
-
*/
|
20 |
-
public $plan_id;
|
21 |
-
/**
|
22 |
-
* @var int
|
23 |
-
*/
|
24 |
-
public $licenses;
|
25 |
-
/**
|
26 |
-
* @var null|float
|
27 |
-
*/
|
28 |
-
public $monthly_price;
|
29 |
-
/**
|
30 |
-
* @var null|float
|
31 |
-
*/
|
32 |
-
public $annual_price;
|
33 |
-
/**
|
34 |
-
* @var null|float
|
35 |
-
*/
|
36 |
-
public $lifetime_price;
|
37 |
-
/**
|
38 |
-
* @author Leo Fajardo (@leorw)
|
39 |
-
* @since 2.3.1
|
40 |
-
*
|
41 |
-
* @var string One of the following: `usd`, `gbp`, `eur`.
|
42 |
-
*/
|
43 |
-
public $currency;
|
44 |
-
|
45 |
-
#endregion Properties
|
46 |
-
|
47 |
-
/**
|
48 |
-
* @param object|bool $pricing
|
49 |
-
*/
|
50 |
-
function __construct( $pricing = false ) {
|
51 |
-
parent::__construct( $pricing );
|
52 |
-
}
|
53 |
-
|
54 |
-
static function get_type() {
|
55 |
-
return 'pricing';
|
56 |
-
}
|
57 |
-
|
58 |
-
/**
|
59 |
-
* @author Vova Feldman (@svovaf)
|
60 |
-
* @since 1.1.8
|
61 |
-
*
|
62 |
-
* @return bool
|
63 |
-
*/
|
64 |
-
function has_monthly() {
|
65 |
-
return ( is_numeric( $this->monthly_price ) && $this->monthly_price > 0 );
|
66 |
-
}
|
67 |
-
|
68 |
-
/**
|
69 |
-
* @author Vova Feldman (@svovaf)
|
70 |
-
* @since 1.1.8
|
71 |
-
*
|
72 |
-
* @return bool
|
73 |
-
*/
|
74 |
-
function has_annual() {
|
75 |
-
return ( is_numeric( $this->annual_price ) && $this->annual_price > 0 );
|
76 |
-
}
|
77 |
-
|
78 |
-
/**
|
79 |
-
* @author Vova Feldman (@svovaf)
|
80 |
-
* @since 1.1.8
|
81 |
-
*
|
82 |
-
* @return bool
|
83 |
-
*/
|
84 |
-
function has_lifetime() {
|
85 |
-
return ( is_numeric( $this->lifetime_price ) && $this->lifetime_price > 0 );
|
86 |
-
}
|
87 |
-
|
88 |
-
/**
|
89 |
-
* Check if unlimited licenses pricing.
|
90 |
-
*
|
91 |
-
* @author Vova Feldman (@svovaf)
|
92 |
-
* @since 1.1.8
|
93 |
-
*
|
94 |
-
* @return bool
|
95 |
-
*/
|
96 |
-
function is_unlimited() {
|
97 |
-
return is_null( $this->licenses );
|
98 |
-
}
|
99 |
-
|
100 |
-
|
101 |
-
/**
|
102 |
-
* Check if pricing has more than one billing cycle.
|
103 |
-
*
|
104 |
-
* @author Vova Feldman (@svovaf)
|
105 |
-
* @since 1.1.8
|
106 |
-
*
|
107 |
-
* @return bool
|
108 |
-
*/
|
109 |
-
function is_multi_cycle() {
|
110 |
-
$cycles = 0;
|
111 |
-
if ( $this->has_monthly() ) {
|
112 |
-
$cycles ++;
|
113 |
-
}
|
114 |
-
if ( $this->has_annual() ) {
|
115 |
-
$cycles ++;
|
116 |
-
}
|
117 |
-
if ( $this->has_lifetime() ) {
|
118 |
-
$cycles ++;
|
119 |
-
}
|
120 |
-
|
121 |
-
return $cycles > 1;
|
122 |
-
}
|
123 |
-
|
124 |
-
/**
|
125 |
-
* Get annual over monthly discount.
|
126 |
-
*
|
127 |
-
* @author Vova Feldman (@svovaf)
|
128 |
-
* @since 1.1.8
|
129 |
-
*
|
130 |
-
* @return int
|
131 |
-
*/
|
132 |
-
function annual_discount_percentage() {
|
133 |
-
return floor( $this->annual_savings() / ( $this->monthly_price * 12 * ( $this->is_unlimited() ? 1 : $this->licenses ) ) * 100 );
|
134 |
-
}
|
135 |
-
|
136 |
-
/**
|
137 |
-
* Get annual over monthly savings.
|
138 |
-
*
|
139 |
-
* @author Vova Feldman (@svovaf)
|
140 |
-
* @since 1.1.8
|
141 |
-
*
|
142 |
-
* @return float
|
143 |
-
*/
|
144 |
-
function annual_savings() {
|
145 |
-
return ( $this->monthly_price * 12 - $this->annual_price ) * ( $this->is_unlimited() ? 1 : $this->licenses );
|
146 |
-
}
|
147 |
-
|
148 |
-
/**
|
149 |
-
* @author Leo Fajardo (@leorw)
|
150 |
-
* @since 2.3.1
|
151 |
-
*
|
152 |
-
* @return bool
|
153 |
-
*/
|
154 |
-
function is_usd() {
|
155 |
-
return ( 'usd' === $this->currency );
|
156 |
-
}
|
157 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius for EDD Add-On
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Pricing extends FS_Entity {
|
14 |
+
|
15 |
+
#region Properties
|
16 |
+
|
17 |
+
/**
|
18 |
+
* @var number
|
19 |
+
*/
|
20 |
+
public $plan_id;
|
21 |
+
/**
|
22 |
+
* @var int
|
23 |
+
*/
|
24 |
+
public $licenses;
|
25 |
+
/**
|
26 |
+
* @var null|float
|
27 |
+
*/
|
28 |
+
public $monthly_price;
|
29 |
+
/**
|
30 |
+
* @var null|float
|
31 |
+
*/
|
32 |
+
public $annual_price;
|
33 |
+
/**
|
34 |
+
* @var null|float
|
35 |
+
*/
|
36 |
+
public $lifetime_price;
|
37 |
+
/**
|
38 |
+
* @author Leo Fajardo (@leorw)
|
39 |
+
* @since 2.3.1
|
40 |
+
*
|
41 |
+
* @var string One of the following: `usd`, `gbp`, `eur`.
|
42 |
+
*/
|
43 |
+
public $currency;
|
44 |
+
|
45 |
+
#endregion Properties
|
46 |
+
|
47 |
+
/**
|
48 |
+
* @param object|bool $pricing
|
49 |
+
*/
|
50 |
+
function __construct( $pricing = false ) {
|
51 |
+
parent::__construct( $pricing );
|
52 |
+
}
|
53 |
+
|
54 |
+
static function get_type() {
|
55 |
+
return 'pricing';
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* @author Vova Feldman (@svovaf)
|
60 |
+
* @since 1.1.8
|
61 |
+
*
|
62 |
+
* @return bool
|
63 |
+
*/
|
64 |
+
function has_monthly() {
|
65 |
+
return ( is_numeric( $this->monthly_price ) && $this->monthly_price > 0 );
|
66 |
+
}
|
67 |
+
|
68 |
+
/**
|
69 |
+
* @author Vova Feldman (@svovaf)
|
70 |
+
* @since 1.1.8
|
71 |
+
*
|
72 |
+
* @return bool
|
73 |
+
*/
|
74 |
+
function has_annual() {
|
75 |
+
return ( is_numeric( $this->annual_price ) && $this->annual_price > 0 );
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* @author Vova Feldman (@svovaf)
|
80 |
+
* @since 1.1.8
|
81 |
+
*
|
82 |
+
* @return bool
|
83 |
+
*/
|
84 |
+
function has_lifetime() {
|
85 |
+
return ( is_numeric( $this->lifetime_price ) && $this->lifetime_price > 0 );
|
86 |
+
}
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Check if unlimited licenses pricing.
|
90 |
+
*
|
91 |
+
* @author Vova Feldman (@svovaf)
|
92 |
+
* @since 1.1.8
|
93 |
+
*
|
94 |
+
* @return bool
|
95 |
+
*/
|
96 |
+
function is_unlimited() {
|
97 |
+
return is_null( $this->licenses );
|
98 |
+
}
|
99 |
+
|
100 |
+
|
101 |
+
/**
|
102 |
+
* Check if pricing has more than one billing cycle.
|
103 |
+
*
|
104 |
+
* @author Vova Feldman (@svovaf)
|
105 |
+
* @since 1.1.8
|
106 |
+
*
|
107 |
+
* @return bool
|
108 |
+
*/
|
109 |
+
function is_multi_cycle() {
|
110 |
+
$cycles = 0;
|
111 |
+
if ( $this->has_monthly() ) {
|
112 |
+
$cycles ++;
|
113 |
+
}
|
114 |
+
if ( $this->has_annual() ) {
|
115 |
+
$cycles ++;
|
116 |
+
}
|
117 |
+
if ( $this->has_lifetime() ) {
|
118 |
+
$cycles ++;
|
119 |
+
}
|
120 |
+
|
121 |
+
return $cycles > 1;
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* Get annual over monthly discount.
|
126 |
+
*
|
127 |
+
* @author Vova Feldman (@svovaf)
|
128 |
+
* @since 1.1.8
|
129 |
+
*
|
130 |
+
* @return int
|
131 |
+
*/
|
132 |
+
function annual_discount_percentage() {
|
133 |
+
return floor( $this->annual_savings() / ( $this->monthly_price * 12 * ( $this->is_unlimited() ? 1 : $this->licenses ) ) * 100 );
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* Get annual over monthly savings.
|
138 |
+
*
|
139 |
+
* @author Vova Feldman (@svovaf)
|
140 |
+
* @since 1.1.8
|
141 |
+
*
|
142 |
+
* @return float
|
143 |
+
*/
|
144 |
+
function annual_savings() {
|
145 |
+
return ( $this->monthly_price * 12 - $this->annual_price ) * ( $this->is_unlimited() ? 1 : $this->licenses );
|
146 |
+
}
|
147 |
+
|
148 |
+
/**
|
149 |
+
* @author Leo Fajardo (@leorw)
|
150 |
+
* @since 2.3.1
|
151 |
+
*
|
152 |
+
* @return bool
|
153 |
+
*/
|
154 |
+
function is_usd() {
|
155 |
+
return ( 'usd' === $this->currency );
|
156 |
+
}
|
157 |
}
|
freemius/includes/entities/class-fs-site.php
CHANGED
@@ -1,233 +1,236 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.3
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Site extends FS_Scope_Entity {
|
14 |
-
/**
|
15 |
-
* @var number
|
16 |
-
*/
|
17 |
-
public $site_id;
|
18 |
-
/**
|
19 |
-
* @var number
|
20 |
-
*/
|
21 |
-
public $plugin_id;
|
22 |
-
/**
|
23 |
-
* @var number
|
24 |
-
*/
|
25 |
-
public $user_id;
|
26 |
-
/**
|
27 |
-
* @var string
|
28 |
-
*/
|
29 |
-
public $title;
|
30 |
-
/**
|
31 |
-
* @var string
|
32 |
-
*/
|
33 |
-
public $url;
|
34 |
-
/**
|
35 |
-
* @var string
|
36 |
-
*/
|
37 |
-
public $version;
|
38 |
-
/**
|
39 |
-
* @var string E.g. en-GB
|
40 |
-
*/
|
41 |
-
public $language;
|
42 |
-
/**
|
43 |
-
* @var string E.g. UTF-8
|
44 |
-
*/
|
45 |
-
public $charset;
|
46 |
-
/**
|
47 |
-
* @var string Platform version (e.g WordPress version).
|
48 |
-
*/
|
49 |
-
public $platform_version;
|
50 |
-
/**
|
51 |
-
* Freemius SDK version
|
52 |
-
*
|
53 |
-
* @author Leo Fajardo (@leorw)
|
54 |
-
* @since 1.2.2
|
55 |
-
*
|
56 |
-
* @var string SDK version (e.g.: 1.2.2)
|
57 |
-
*/
|
58 |
-
public $sdk_version;
|
59 |
-
/**
|
60 |
-
* @var string Programming language version (e.g PHP version).
|
61 |
-
*/
|
62 |
-
public $programming_language_version;
|
63 |
-
/**
|
64 |
-
* @var number|null
|
65 |
-
*/
|
66 |
-
public $plan_id;
|
67 |
-
/**
|
68 |
-
* @var number|null
|
69 |
-
*/
|
70 |
-
public $license_id;
|
71 |
-
/**
|
72 |
-
* @var number|null
|
73 |
-
*/
|
74 |
-
public $trial_plan_id;
|
75 |
-
/**
|
76 |
-
* @var string|null
|
77 |
-
*/
|
78 |
-
public $trial_ends;
|
79 |
-
/**
|
80 |
-
* @since 1.0.9
|
81 |
-
*
|
82 |
-
* @var bool
|
83 |
-
*/
|
84 |
-
public $is_premium = false;
|
85 |
-
/**
|
86 |
-
* @author Leo Fajardo (@leorw)
|
87 |
-
*
|
88 |
-
* @since 1.2.1.5
|
89 |
-
*
|
90 |
-
* @var bool
|
91 |
-
*/
|
92 |
-
public $is_disconnected = false;
|
93 |
-
/**
|
94 |
-
* @since 2.0.0
|
95 |
-
*
|
96 |
-
* @var bool
|
97 |
-
*/
|
98 |
-
public $is_active = true;
|
99 |
-
/**
|
100 |
-
* @since 2.0.0
|
101 |
-
*
|
102 |
-
* @var bool
|
103 |
-
*/
|
104 |
-
public $is_uninstalled = false;
|
105 |
-
|
106 |
-
/**
|
107 |
-
* @param stdClass|bool $site
|
108 |
-
*/
|
109 |
-
function __construct( $site = false ) {
|
110 |
-
parent::__construct( $site );
|
111 |
-
|
112 |
-
if ( is_object( $site ) ) {
|
113 |
-
$this->plan_id = $site->plan_id;
|
114 |
-
}
|
115 |
-
|
116 |
-
if ( ! is_bool( $this->is_disconnected ) ) {
|
117 |
-
$this->is_disconnected = false;
|
118 |
-
}
|
119 |
-
}
|
120 |
-
|
121 |
-
static function get_type() {
|
122 |
-
return 'install';
|
123 |
-
}
|
124 |
-
|
125 |
-
/**
|
126 |
-
* @author Vova Feldman (@svovaf)
|
127 |
-
* @since 2.0.0
|
128 |
-
*
|
129 |
-
* @param string $url
|
130 |
-
*
|
131 |
-
* @return bool
|
132 |
-
*/
|
133 |
-
static function is_localhost_by_address( $url ) {
|
134 |
-
if ( false !== strpos( $url, '127.0.0.1' ) ||
|
135 |
-
false !== strpos( $url, 'localhost' )
|
136 |
-
) {
|
137 |
-
return true;
|
138 |
-
}
|
139 |
-
|
140 |
-
if ( ! fs_starts_with( $url, 'http' ) ) {
|
141 |
-
$url = 'http://' . $url;
|
142 |
-
}
|
143 |
-
|
144 |
-
$url_parts = parse_url( $url );
|
145 |
-
|
146 |
-
$subdomain = $url_parts['host'];
|
147 |
-
|
148 |
-
return (
|
149 |
-
// Starts with.
|
150 |
-
fs_starts_with( $subdomain, 'local.' ) ||
|
151 |
-
fs_starts_with( $subdomain, 'dev.' ) ||
|
152 |
-
fs_starts_with( $subdomain, 'test.' ) ||
|
153 |
-
fs_starts_with( $subdomain, 'stage.' ) ||
|
154 |
-
fs_starts_with( $subdomain, 'staging.' ) ||
|
155 |
-
|
156 |
-
// Ends with.
|
157 |
-
fs_ends_with( $subdomain, '.dev' ) ||
|
158 |
-
fs_ends_with( $subdomain, '.test' ) ||
|
159 |
-
fs_ends_with( $subdomain, '.staging' ) ||
|
160 |
-
fs_ends_with( $subdomain, '.local' ) ||
|
161 |
-
fs_ends_with( $subdomain, '.example' ) ||
|
162 |
-
fs_ends_with( $subdomain, '.invalid' ) ||
|
163 |
-
// GoDaddy test/dev.
|
164 |
-
fs_ends_with( $subdomain, '.myftpupload.com' ) ||
|
165 |
-
// ngrok tunneling.
|
166 |
-
fs_ends_with( $subdomain, '.ngrok.io' ) ||
|
167 |
-
// wpsandbox.
|
168 |
-
fs_ends_with( $subdomain, '.wpsandbox.pro' ) ||
|
169 |
-
// SiteGround staging.
|
170 |
-
fs_starts_with( $subdomain, 'staging' ) ||
|
171 |
-
// WPEngine staging.
|
172 |
-
fs_ends_with( $subdomain, '.staging.wpengine.com' ) ||
|
173 |
-
fs_ends_with( $subdomain, '.dev.wpengine.com' ) ||
|
174 |
-
|
175 |
-
|
176 |
-
|
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 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Site extends FS_Scope_Entity {
|
14 |
+
/**
|
15 |
+
* @var number
|
16 |
+
*/
|
17 |
+
public $site_id;
|
18 |
+
/**
|
19 |
+
* @var number
|
20 |
+
*/
|
21 |
+
public $plugin_id;
|
22 |
+
/**
|
23 |
+
* @var number
|
24 |
+
*/
|
25 |
+
public $user_id;
|
26 |
+
/**
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
public $title;
|
30 |
+
/**
|
31 |
+
* @var string
|
32 |
+
*/
|
33 |
+
public $url;
|
34 |
+
/**
|
35 |
+
* @var string
|
36 |
+
*/
|
37 |
+
public $version;
|
38 |
+
/**
|
39 |
+
* @var string E.g. en-GB
|
40 |
+
*/
|
41 |
+
public $language;
|
42 |
+
/**
|
43 |
+
* @var string E.g. UTF-8
|
44 |
+
*/
|
45 |
+
public $charset;
|
46 |
+
/**
|
47 |
+
* @var string Platform version (e.g WordPress version).
|
48 |
+
*/
|
49 |
+
public $platform_version;
|
50 |
+
/**
|
51 |
+
* Freemius SDK version
|
52 |
+
*
|
53 |
+
* @author Leo Fajardo (@leorw)
|
54 |
+
* @since 1.2.2
|
55 |
+
*
|
56 |
+
* @var string SDK version (e.g.: 1.2.2)
|
57 |
+
*/
|
58 |
+
public $sdk_version;
|
59 |
+
/**
|
60 |
+
* @var string Programming language version (e.g PHP version).
|
61 |
+
*/
|
62 |
+
public $programming_language_version;
|
63 |
+
/**
|
64 |
+
* @var number|null
|
65 |
+
*/
|
66 |
+
public $plan_id;
|
67 |
+
/**
|
68 |
+
* @var number|null
|
69 |
+
*/
|
70 |
+
public $license_id;
|
71 |
+
/**
|
72 |
+
* @var number|null
|
73 |
+
*/
|
74 |
+
public $trial_plan_id;
|
75 |
+
/**
|
76 |
+
* @var string|null
|
77 |
+
*/
|
78 |
+
public $trial_ends;
|
79 |
+
/**
|
80 |
+
* @since 1.0.9
|
81 |
+
*
|
82 |
+
* @var bool
|
83 |
+
*/
|
84 |
+
public $is_premium = false;
|
85 |
+
/**
|
86 |
+
* @author Leo Fajardo (@leorw)
|
87 |
+
*
|
88 |
+
* @since 1.2.1.5
|
89 |
+
*
|
90 |
+
* @var bool
|
91 |
+
*/
|
92 |
+
public $is_disconnected = false;
|
93 |
+
/**
|
94 |
+
* @since 2.0.0
|
95 |
+
*
|
96 |
+
* @var bool
|
97 |
+
*/
|
98 |
+
public $is_active = true;
|
99 |
+
/**
|
100 |
+
* @since 2.0.0
|
101 |
+
*
|
102 |
+
* @var bool
|
103 |
+
*/
|
104 |
+
public $is_uninstalled = false;
|
105 |
+
|
106 |
+
/**
|
107 |
+
* @param stdClass|bool $site
|
108 |
+
*/
|
109 |
+
function __construct( $site = false ) {
|
110 |
+
parent::__construct( $site );
|
111 |
+
|
112 |
+
if ( is_object( $site ) ) {
|
113 |
+
$this->plan_id = $site->plan_id;
|
114 |
+
}
|
115 |
+
|
116 |
+
if ( ! is_bool( $this->is_disconnected ) ) {
|
117 |
+
$this->is_disconnected = false;
|
118 |
+
}
|
119 |
+
}
|
120 |
+
|
121 |
+
static function get_type() {
|
122 |
+
return 'install';
|
123 |
+
}
|
124 |
+
|
125 |
+
/**
|
126 |
+
* @author Vova Feldman (@svovaf)
|
127 |
+
* @since 2.0.0
|
128 |
+
*
|
129 |
+
* @param string $url
|
130 |
+
*
|
131 |
+
* @return bool
|
132 |
+
*/
|
133 |
+
static function is_localhost_by_address( $url ) {
|
134 |
+
if ( false !== strpos( $url, '127.0.0.1' ) ||
|
135 |
+
false !== strpos( $url, 'localhost' )
|
136 |
+
) {
|
137 |
+
return true;
|
138 |
+
}
|
139 |
+
|
140 |
+
if ( ! fs_starts_with( $url, 'http' ) ) {
|
141 |
+
$url = 'http://' . $url;
|
142 |
+
}
|
143 |
+
|
144 |
+
$url_parts = parse_url( $url );
|
145 |
+
|
146 |
+
$subdomain = $url_parts['host'];
|
147 |
+
|
148 |
+
return (
|
149 |
+
// Starts with.
|
150 |
+
fs_starts_with( $subdomain, 'local.' ) ||
|
151 |
+
fs_starts_with( $subdomain, 'dev.' ) ||
|
152 |
+
fs_starts_with( $subdomain, 'test.' ) ||
|
153 |
+
fs_starts_with( $subdomain, 'stage.' ) ||
|
154 |
+
fs_starts_with( $subdomain, 'staging.' ) ||
|
155 |
+
|
156 |
+
// Ends with.
|
157 |
+
fs_ends_with( $subdomain, '.dev' ) ||
|
158 |
+
fs_ends_with( $subdomain, '.test' ) ||
|
159 |
+
fs_ends_with( $subdomain, '.staging' ) ||
|
160 |
+
fs_ends_with( $subdomain, '.local' ) ||
|
161 |
+
fs_ends_with( $subdomain, '.example' ) ||
|
162 |
+
fs_ends_with( $subdomain, '.invalid' ) ||
|
163 |
+
// GoDaddy test/dev.
|
164 |
+
fs_ends_with( $subdomain, '.myftpupload.com' ) ||
|
165 |
+
// ngrok tunneling.
|
166 |
+
fs_ends_with( $subdomain, '.ngrok.io' ) ||
|
167 |
+
// wpsandbox.
|
168 |
+
fs_ends_with( $subdomain, '.wpsandbox.pro' ) ||
|
169 |
+
// SiteGround staging.
|
170 |
+
fs_starts_with( $subdomain, 'staging' ) ||
|
171 |
+
// WPEngine staging.
|
172 |
+
fs_ends_with( $subdomain, '.staging.wpengine.com' ) ||
|
173 |
+
fs_ends_with( $subdomain, '.dev.wpengine.com' ) ||
|
174 |
+
fs_ends_with( $subdomain, '.wpengine.com' ) ||
|
175 |
+
// Pantheon
|
176 |
+
( fs_ends_with( $subdomain, 'pantheonsite.io' ) &&
|
177 |
+
( fs_starts_with( $subdomain, 'test-' ) || fs_starts_with( $subdomain, 'dev-' ) ) ) ||
|
178 |
+
// Cloudways
|
179 |
+
fs_ends_with( $subdomain, '.cloudwaysapps.com' ) ||
|
180 |
+
// Kinsta
|
181 |
+
( fs_starts_with( $subdomain, 'staging-' ) && ( fs_ends_with( $subdomain, '.kinsta.com' ) || fs_ends_with( $subdomain, '.kinsta.cloud' ) ) ) ||
|
182 |
+
// DesktopServer
|
183 |
+
fs_ends_with( $subdomain, '.dev.cc' ) ||
|
184 |
+
// Pressable
|
185 |
+
fs_ends_with( $subdomain, '.mystagingwebsite.com' )
|
186 |
+
);
|
187 |
+
}
|
188 |
+
|
189 |
+
function is_localhost() {
|
190 |
+
return ( WP_FS__IS_LOCALHOST_FOR_SERVER || self::is_localhost_by_address( $this->url ) );
|
191 |
+
}
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Check if site in trial.
|
195 |
+
*
|
196 |
+
* @author Vova Feldman (@svovaf)
|
197 |
+
* @since 1.0.9
|
198 |
+
*
|
199 |
+
* @return bool
|
200 |
+
*/
|
201 |
+
function is_trial() {
|
202 |
+
return is_numeric( $this->trial_plan_id ) && ( strtotime( $this->trial_ends ) > WP_FS__SCRIPT_START_TIME );
|
203 |
+
}
|
204 |
+
|
205 |
+
/**
|
206 |
+
* Check if user already utilized the trial with the current install.
|
207 |
+
*
|
208 |
+
* @author Vova Feldman (@svovaf)
|
209 |
+
* @since 1.0.9
|
210 |
+
*
|
211 |
+
* @return bool
|
212 |
+
*/
|
213 |
+
function is_trial_utilized() {
|
214 |
+
return is_numeric( $this->trial_plan_id );
|
215 |
+
}
|
216 |
+
|
217 |
+
/**
|
218 |
+
* @author Vova Feldman (@svovaf)
|
219 |
+
* @since 2.0.0
|
220 |
+
*
|
221 |
+
* @return bool
|
222 |
+
*/
|
223 |
+
function is_tracking_allowed() {
|
224 |
+
return ( true !== $this->is_disconnected );
|
225 |
+
}
|
226 |
+
|
227 |
+
/**
|
228 |
+
* @author Vova Feldman (@svovaf)
|
229 |
+
* @since 2.0.0
|
230 |
+
*
|
231 |
+
* @return bool
|
232 |
+
*/
|
233 |
+
function is_tracking_prohibited() {
|
234 |
+
return ! $this->is_tracking_allowed();
|
235 |
+
}
|
236 |
}
|
freemius/includes/entities/class-fs-subscription.php
CHANGED
@@ -1,147 +1,147 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.9
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Subscription extends FS_Entity {
|
14 |
-
|
15 |
-
#region Properties
|
16 |
-
|
17 |
-
/**
|
18 |
-
* @var number
|
19 |
-
*/
|
20 |
-
public $user_id;
|
21 |
-
/**
|
22 |
-
* @var number
|
23 |
-
*/
|
24 |
-
public $install_id;
|
25 |
-
/**
|
26 |
-
* @var number
|
27 |
-
*/
|
28 |
-
public $plan_id;
|
29 |
-
/**
|
30 |
-
* @var number
|
31 |
-
*/
|
32 |
-
public $license_id;
|
33 |
-
/**
|
34 |
-
* @var float
|
35 |
-
*/
|
36 |
-
public $total_gross;
|
37 |
-
/**
|
38 |
-
* @var float
|
39 |
-
*/
|
40 |
-
public $amount_per_cycle;
|
41 |
-
/**
|
42 |
-
* @var int # of months
|
43 |
-
*/
|
44 |
-
public $billing_cycle;
|
45 |
-
/**
|
46 |
-
* @var float
|
47 |
-
*/
|
48 |
-
public $outstanding_balance;
|
49 |
-
/**
|
50 |
-
* @var int
|
51 |
-
*/
|
52 |
-
public $failed_payments;
|
53 |
-
/**
|
54 |
-
* @var string
|
55 |
-
*/
|
56 |
-
public $gateway;
|
57 |
-
/**
|
58 |
-
* @var string
|
59 |
-
*/
|
60 |
-
public $external_id;
|
61 |
-
/**
|
62 |
-
* @var string|null
|
63 |
-
*/
|
64 |
-
public $trial_ends;
|
65 |
-
/**
|
66 |
-
* @var string|null Datetime of the next payment, or null if cancelled.
|
67 |
-
*/
|
68 |
-
public $next_payment;
|
69 |
-
/**
|
70 |
-
* @since 2.3.1
|
71 |
-
*
|
72 |
-
* @var string|null Datetime of the cancellation.
|
73 |
-
*/
|
74 |
-
public $canceled_at;
|
75 |
-
/**
|
76 |
-
* @var string|null
|
77 |
-
*/
|
78 |
-
public $vat_id;
|
79 |
-
/**
|
80 |
-
* @var string Two characters country code
|
81 |
-
*/
|
82 |
-
public $country_code;
|
83 |
-
|
84 |
-
#endregion Properties
|
85 |
-
|
86 |
-
/**
|
87 |
-
* @param object|bool $subscription
|
88 |
-
*/
|
89 |
-
function __construct( $subscription = false ) {
|
90 |
-
parent::__construct( $subscription );
|
91 |
-
}
|
92 |
-
|
93 |
-
static function get_type() {
|
94 |
-
return 'subscription';
|
95 |
-
}
|
96 |
-
|
97 |
-
/**
|
98 |
-
* Check if subscription is active.
|
99 |
-
*
|
100 |
-
* @author Vova Feldman (@svovaf)
|
101 |
-
* @since 1.0.9
|
102 |
-
*
|
103 |
-
* @return bool
|
104 |
-
*/
|
105 |
-
function is_active() {
|
106 |
-
if ( $this->is_canceled() ) {
|
107 |
-
return false;
|
108 |
-
}
|
109 |
-
|
110 |
-
return (
|
111 |
-
! empty( $this->next_payment ) &&
|
112 |
-
strtotime( $this->next_payment ) > WP_FS__SCRIPT_START_TIME
|
113 |
-
);
|
114 |
-
}
|
115 |
-
|
116 |
-
/**
|
117 |
-
* @author Vova Feldman (@svovaf)
|
118 |
-
* @since 2.3.1
|
119 |
-
*
|
120 |
-
* @return bool
|
121 |
-
*/
|
122 |
-
function is_canceled() {
|
123 |
-
return ! is_null( $this->canceled_at );
|
124 |
-
}
|
125 |
-
|
126 |
-
/**
|
127 |
-
* Subscription considered to be new without any payments
|
128 |
-
* if the next payment should be made within less than 24 hours
|
129 |
-
* from the subscription creation.
|
130 |
-
*
|
131 |
-
* @author Vova Feldman (@svovaf)
|
132 |
-
* @since 1.0.9
|
133 |
-
*
|
134 |
-
* @return bool
|
135 |
-
*/
|
136 |
-
function is_first_payment_pending() {
|
137 |
-
return ( WP_FS__TIME_24_HOURS_IN_SEC >= strtotime( $this->next_payment ) - strtotime( $this->created ) );
|
138 |
-
}
|
139 |
-
|
140 |
-
/**
|
141 |
-
* @author Vova Feldman (@svovaf)
|
142 |
-
* @since 1.1.7
|
143 |
-
*/
|
144 |
-
function has_trial() {
|
145 |
-
return ! is_null( $this->trial_ends );
|
146 |
-
}
|
147 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.9
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Subscription extends FS_Entity {
|
14 |
+
|
15 |
+
#region Properties
|
16 |
+
|
17 |
+
/**
|
18 |
+
* @var number
|
19 |
+
*/
|
20 |
+
public $user_id;
|
21 |
+
/**
|
22 |
+
* @var number
|
23 |
+
*/
|
24 |
+
public $install_id;
|
25 |
+
/**
|
26 |
+
* @var number
|
27 |
+
*/
|
28 |
+
public $plan_id;
|
29 |
+
/**
|
30 |
+
* @var number
|
31 |
+
*/
|
32 |
+
public $license_id;
|
33 |
+
/**
|
34 |
+
* @var float
|
35 |
+
*/
|
36 |
+
public $total_gross;
|
37 |
+
/**
|
38 |
+
* @var float
|
39 |
+
*/
|
40 |
+
public $amount_per_cycle;
|
41 |
+
/**
|
42 |
+
* @var int # of months
|
43 |
+
*/
|
44 |
+
public $billing_cycle;
|
45 |
+
/**
|
46 |
+
* @var float
|
47 |
+
*/
|
48 |
+
public $outstanding_balance;
|
49 |
+
/**
|
50 |
+
* @var int
|
51 |
+
*/
|
52 |
+
public $failed_payments;
|
53 |
+
/**
|
54 |
+
* @var string
|
55 |
+
*/
|
56 |
+
public $gateway;
|
57 |
+
/**
|
58 |
+
* @var string
|
59 |
+
*/
|
60 |
+
public $external_id;
|
61 |
+
/**
|
62 |
+
* @var string|null
|
63 |
+
*/
|
64 |
+
public $trial_ends;
|
65 |
+
/**
|
66 |
+
* @var string|null Datetime of the next payment, or null if cancelled.
|
67 |
+
*/
|
68 |
+
public $next_payment;
|
69 |
+
/**
|
70 |
+
* @since 2.3.1
|
71 |
+
*
|
72 |
+
* @var string|null Datetime of the cancellation.
|
73 |
+
*/
|
74 |
+
public $canceled_at;
|
75 |
+
/**
|
76 |
+
* @var string|null
|
77 |
+
*/
|
78 |
+
public $vat_id;
|
79 |
+
/**
|
80 |
+
* @var string Two characters country code
|
81 |
+
*/
|
82 |
+
public $country_code;
|
83 |
+
|
84 |
+
#endregion Properties
|
85 |
+
|
86 |
+
/**
|
87 |
+
* @param object|bool $subscription
|
88 |
+
*/
|
89 |
+
function __construct( $subscription = false ) {
|
90 |
+
parent::__construct( $subscription );
|
91 |
+
}
|
92 |
+
|
93 |
+
static function get_type() {
|
94 |
+
return 'subscription';
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Check if subscription is active.
|
99 |
+
*
|
100 |
+
* @author Vova Feldman (@svovaf)
|
101 |
+
* @since 1.0.9
|
102 |
+
*
|
103 |
+
* @return bool
|
104 |
+
*/
|
105 |
+
function is_active() {
|
106 |
+
if ( $this->is_canceled() ) {
|
107 |
+
return false;
|
108 |
+
}
|
109 |
+
|
110 |
+
return (
|
111 |
+
! empty( $this->next_payment ) &&
|
112 |
+
strtotime( $this->next_payment ) > WP_FS__SCRIPT_START_TIME
|
113 |
+
);
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* @author Vova Feldman (@svovaf)
|
118 |
+
* @since 2.3.1
|
119 |
+
*
|
120 |
+
* @return bool
|
121 |
+
*/
|
122 |
+
function is_canceled() {
|
123 |
+
return ! is_null( $this->canceled_at );
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Subscription considered to be new without any payments
|
128 |
+
* if the next payment should be made within less than 24 hours
|
129 |
+
* from the subscription creation.
|
130 |
+
*
|
131 |
+
* @author Vova Feldman (@svovaf)
|
132 |
+
* @since 1.0.9
|
133 |
+
*
|
134 |
+
* @return bool
|
135 |
+
*/
|
136 |
+
function is_first_payment_pending() {
|
137 |
+
return ( WP_FS__TIME_24_HOURS_IN_SEC >= strtotime( $this->next_payment ) - strtotime( $this->created ) );
|
138 |
+
}
|
139 |
+
|
140 |
+
/**
|
141 |
+
* @author Vova Feldman (@svovaf)
|
142 |
+
* @since 1.1.7
|
143 |
+
*/
|
144 |
+
function has_trial() {
|
145 |
+
return ! is_null( $this->trial_ends );
|
146 |
+
}
|
147 |
}
|
freemius/includes/fs-essential-functions.php
CHANGED
@@ -380,45 +380,62 @@
|
|
380 |
global $fs_active_plugins;
|
381 |
|
382 |
/**
|
383 |
-
* @todo Multi-site network activated plugin are always loaded prior to site plugins so if there's a
|
384 |
*
|
385 |
* @link https://github.com/Freemius/wordpress-sdk/issues/26
|
386 |
*/
|
387 |
|
388 |
$newest_sdk_plugin_path = $fs_active_plugins->newest->plugin_path;
|
389 |
|
390 |
-
$active_plugins
|
391 |
-
$
|
392 |
-
if ( 0 === $newest_sdk_plugin_key ) {
|
393 |
-
// if it's 0 it's the first plugin already, no need to continue
|
394 |
-
return false;
|
395 |
-
} else if ( is_numeric( $newest_sdk_plugin_key ) ) {
|
396 |
-
// Remove plugin from its current position.
|
397 |
-
array_splice( $active_plugins, $newest_sdk_plugin_key, 1 );
|
398 |
|
399 |
-
|
400 |
-
|
401 |
|
402 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
403 |
|
404 |
return true;
|
405 |
-
}
|
|
|
|
|
406 |
// Plugin is network active.
|
407 |
$network_active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
408 |
|
409 |
-
if (isset($network_active_plugins[$newest_sdk_plugin_path])) {
|
410 |
-
reset($network_active_plugins);
|
411 |
-
if ( $newest_sdk_plugin_path === key($network_active_plugins) ) {
|
412 |
// Plugin is already activated first on the network level.
|
413 |
return false;
|
414 |
-
} else
|
415 |
-
$time = $network_active_plugins[$newest_sdk_plugin_path];
|
416 |
|
417 |
// Remove plugin from its current position.
|
418 |
-
unset($network_active_plugins[$newest_sdk_plugin_path]);
|
419 |
|
420 |
// Set it to be included first.
|
421 |
-
$network_active_plugins = array($newest_sdk_plugin_path => $time) + $network_active_plugins;
|
422 |
|
423 |
update_site_option( 'active_sitewide_plugins', $network_active_plugins );
|
424 |
|
380 |
global $fs_active_plugins;
|
381 |
|
382 |
/**
|
383 |
+
* @todo Multi-site network activated plugin are always loaded prior to site plugins so if there's a plugin activated in the network mode that has an older version of the SDK of another plugin which is site activated that has new SDK version, the fs-essential-functions.php will be loaded from the older SDK. Same thing about MU plugins (loaded even before network activated plugins).
|
384 |
*
|
385 |
* @link https://github.com/Freemius/wordpress-sdk/issues/26
|
386 |
*/
|
387 |
|
388 |
$newest_sdk_plugin_path = $fs_active_plugins->newest->plugin_path;
|
389 |
|
390 |
+
$active_plugins = get_option( 'active_plugins', array() );
|
391 |
+
$updated_active_plugins = array( $newest_sdk_plugin_path );
|
|
|
|
|
|
|
|
|
|
|
|
|
392 |
|
393 |
+
$plugin_found = false;
|
394 |
+
$is_first_path = true;
|
395 |
|
396 |
+
foreach ( $active_plugins as $key => $plugin_path ) {
|
397 |
+
if ( $plugin_path === $newest_sdk_plugin_path ) {
|
398 |
+
if ( $is_first_path ) {
|
399 |
+
// if it's the first plugin already, no need to continue
|
400 |
+
return false;
|
401 |
+
}
|
402 |
+
|
403 |
+
$plugin_found = true;
|
404 |
+
|
405 |
+
// Skip the plugin (it is already added as the 1st item of $updated_active_plugins).
|
406 |
+
continue;
|
407 |
+
}
|
408 |
+
|
409 |
+
$updated_active_plugins[] = $plugin_path;
|
410 |
+
|
411 |
+
if ( $is_first_path ) {
|
412 |
+
$is_first_path = false;
|
413 |
+
}
|
414 |
+
}
|
415 |
+
|
416 |
+
if ( $plugin_found ) {
|
417 |
+
update_option( 'active_plugins', $updated_active_plugins );
|
418 |
|
419 |
return true;
|
420 |
+
}
|
421 |
+
|
422 |
+
if ( is_multisite() ) {
|
423 |
// Plugin is network active.
|
424 |
$network_active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
425 |
|
426 |
+
if ( isset( $network_active_plugins[ $newest_sdk_plugin_path ] ) ) {
|
427 |
+
reset( $network_active_plugins );
|
428 |
+
if ( $newest_sdk_plugin_path === key( $network_active_plugins ) ) {
|
429 |
// Plugin is already activated first on the network level.
|
430 |
return false;
|
431 |
+
} else {
|
432 |
+
$time = $network_active_plugins[ $newest_sdk_plugin_path ];
|
433 |
|
434 |
// Remove plugin from its current position.
|
435 |
+
unset( $network_active_plugins[ $newest_sdk_plugin_path ] );
|
436 |
|
437 |
// Set it to be included first.
|
438 |
+
$network_active_plugins = array( $newest_sdk_plugin_path => $time ) + $network_active_plugins;
|
439 |
|
440 |
update_site_option( 'active_sitewide_plugins', $network_active_plugins );
|
441 |
|
freemius/includes/fs-plugin-info-dialog.php
CHANGED
@@ -880,9 +880,11 @@
|
|
880 |
$classes[] = 'disabled';
|
881 |
}
|
882 |
|
|
|
|
|
883 |
return sprintf(
|
884 |
'<a %s class="button %s">%s</a>',
|
885 |
-
empty( $href ) ? '' : 'href="' . $href . '" target="' . $target . '"',
|
886 |
implode( ' ', $classes ),
|
887 |
$label
|
888 |
);
|
@@ -1367,6 +1369,7 @@
|
|
1367 |
if ( ! empty( $api->slug ) && true == $api->is_wp_org_compliant ) {
|
1368 |
?>
|
1369 |
<li><a target="_blank"
|
|
|
1370 |
href="https://wordpress.org/plugins/<?php echo $api->slug; ?>/"><?php fs_esc_html_echo_inline( 'WordPress.org Plugin Page', 'wp-org-plugin-page', $api->slug ) ?>
|
1371 |
»</a>
|
1372 |
</li>
|
@@ -1375,6 +1378,7 @@
|
|
1375 |
if ( ! empty( $api->homepage ) ) {
|
1376 |
?>
|
1377 |
<li><a target="_blank"
|
|
|
1378 |
href="<?php echo esc_url( $api->homepage ); ?>"><?php fs_esc_html_echo_inline( 'Plugin Homepage', 'plugin-homepage', $api->slug ) ?>
|
1379 |
»</a>
|
1380 |
</li>
|
@@ -1383,6 +1387,7 @@
|
|
1383 |
if ( ! empty( $api->donate_link ) && empty( $api->contributors ) ) {
|
1384 |
?>
|
1385 |
<li><a target="_blank"
|
|
|
1386 |
href="<?php echo esc_url( $api->donate_link ); ?>"><?php fs_esc_html_echo_inline( 'Donate to this plugin', 'donate-to-plugin', $api->slug ) ?>
|
1387 |
»</a>
|
1388 |
</li>
|
@@ -1426,18 +1431,19 @@
|
|
1426 |
);
|
1427 |
?>
|
1428 |
<div class="counter-container">
|
1429 |
-
|
1430 |
-
|
1431 |
-
|
1432 |
-
|
1433 |
-
|
1434 |
-
|
1435 |
-
|
1436 |
-
|
|
|
1437 |
<span class="counter-back">
|
1438 |
-
|
1439 |
-
|
1440 |
-
|
1441 |
</div>
|
1442 |
<?php
|
1443 |
}
|
@@ -1458,13 +1464,14 @@
|
|
1458 |
if ( empty( $contrib_profile ) ) {
|
1459 |
echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</li>";
|
1460 |
} else {
|
1461 |
-
echo "<li><a href='{$contrib_profile}' target='_blank'><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</a></li>";
|
1462 |
}
|
1463 |
}
|
1464 |
?>
|
1465 |
</ul>
|
1466 |
<?php if ( ! empty( $api->donate_link ) ) { ?>
|
1467 |
<a target="_blank"
|
|
|
1468 |
href="<?php echo esc_url( $api->donate_link ); ?>"><?php fs_echo_inline( 'Donate to this plugin', 'donate-to-plugin', $api->slug ) ?>
|
1469 |
»</a>
|
1470 |
<?php } ?>
|
880 |
$classes[] = 'disabled';
|
881 |
}
|
882 |
|
883 |
+
$rel = ( '_blank' === $target ) ? ' rel="noopener noreferrer"' : '';
|
884 |
+
|
885 |
return sprintf(
|
886 |
'<a %s class="button %s">%s</a>',
|
887 |
+
empty( $href ) ? '' : 'href="' . $href . '" target="' . $target . '"' . $rel,
|
888 |
implode( ' ', $classes ),
|
889 |
$label
|
890 |
);
|
1369 |
if ( ! empty( $api->slug ) && true == $api->is_wp_org_compliant ) {
|
1370 |
?>
|
1371 |
<li><a target="_blank"
|
1372 |
+
rel="noopener noreferrer"
|
1373 |
href="https://wordpress.org/plugins/<?php echo $api->slug; ?>/"><?php fs_esc_html_echo_inline( 'WordPress.org Plugin Page', 'wp-org-plugin-page', $api->slug ) ?>
|
1374 |
»</a>
|
1375 |
</li>
|
1378 |
if ( ! empty( $api->homepage ) ) {
|
1379 |
?>
|
1380 |
<li><a target="_blank"
|
1381 |
+
rel="noopener noreferrer"
|
1382 |
href="<?php echo esc_url( $api->homepage ); ?>"><?php fs_esc_html_echo_inline( 'Plugin Homepage', 'plugin-homepage', $api->slug ) ?>
|
1383 |
»</a>
|
1384 |
</li>
|
1387 |
if ( ! empty( $api->donate_link ) && empty( $api->contributors ) ) {
|
1388 |
?>
|
1389 |
<li><a target="_blank"
|
1390 |
+
rel="noopener noreferrer"
|
1391 |
href="<?php echo esc_url( $api->donate_link ); ?>"><?php fs_esc_html_echo_inline( 'Donate to this plugin', 'donate-to-plugin', $api->slug ) ?>
|
1392 |
»</a>
|
1393 |
</li>
|
1431 |
);
|
1432 |
?>
|
1433 |
<div class="counter-container">
|
1434 |
+
<span class="counter-label"><a
|
1435 |
+
href="https://wordpress.org/support/view/plugin-reviews/<?php echo $api->slug; ?>?filter=<?php echo $key; ?>"
|
1436 |
+
target="_blank"
|
1437 |
+
rel="noopener noreferrer"
|
1438 |
+
title="<?php echo esc_attr( sprintf(
|
1439 |
+
/* translators: %s: # of stars (e.g. 5 stars) */
|
1440 |
+
fs_text_inline( 'Click to see reviews that provided a rating of %s', 'click-to-reviews', $api->slug ),
|
1441 |
+
$stars_label
|
1442 |
+
) ) ?>"><?php echo $stars_label ?></a></span>
|
1443 |
<span class="counter-back">
|
1444 |
+
<span class="counter-bar" style="width: <?php echo absint(92 * $_rating); ?>px;"></span>
|
1445 |
+
</span>
|
1446 |
+
<span class="counter-count"><?php echo number_format_i18n( $ratecount ); ?></span>
|
1447 |
</div>
|
1448 |
<?php
|
1449 |
}
|
1464 |
if ( empty( $contrib_profile ) ) {
|
1465 |
echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</li>";
|
1466 |
} else {
|
1467 |
+
echo "<li><a href='{$contrib_profile}' target='_blank' rel='noopener noreferrer'><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</a></li>";
|
1468 |
}
|
1469 |
}
|
1470 |
?>
|
1471 |
</ul>
|
1472 |
<?php if ( ! empty( $api->donate_link ) ) { ?>
|
1473 |
<a target="_blank"
|
1474 |
+
rel="noopener noreferrer"
|
1475 |
href="<?php echo esc_url( $api->donate_link ); ?>"><?php fs_echo_inline( 'Donate to this plugin', 'donate-to-plugin', $api->slug ) ?>
|
1476 |
»</a>
|
1477 |
<?php } ?>
|
freemius/includes/managers/class-fs-admin-menu-manager.php
CHANGED
@@ -1,1001 +1,1006 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.1.3
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Admin_Menu_Manager {
|
14 |
-
|
15 |
-
#region Properties
|
16 |
-
|
17 |
-
/**
|
18 |
-
* @since 1.2.2
|
19 |
-
*
|
20 |
-
* @var string
|
21 |
-
*/
|
22 |
-
protected $_module_unique_affix;
|
23 |
-
|
24 |
-
/**
|
25 |
-
* @since 1.2.2
|
26 |
-
*
|
27 |
-
* @var number
|
28 |
-
*/
|
29 |
-
protected $_module_id;
|
30 |
-
|
31 |
-
/**
|
32 |
-
* @since 1.2.2
|
33 |
-
*
|
34 |
-
* @var string
|
35 |
-
*/
|
36 |
-
protected $_module_type;
|
37 |
-
|
38 |
-
/**
|
39 |
-
* @since 1.0.6
|
40 |
-
*
|
41 |
-
* @var string
|
42 |
-
*/
|
43 |
-
private $_menu_slug;
|
44 |
-
/**
|
45 |
-
* @since 1.1.3
|
46 |
-
*
|
47 |
-
* @var string
|
48 |
-
*/
|
49 |
-
private $_parent_slug;
|
50 |
-
/**
|
51 |
-
* @since 1.1.3
|
52 |
-
*
|
53 |
-
* @var string
|
54 |
-
*/
|
55 |
-
private $_parent_type;
|
56 |
-
/**
|
57 |
-
* @since 1.1.3
|
58 |
-
*
|
59 |
-
* @var string
|
60 |
-
*/
|
61 |
-
private $_type;
|
62 |
-
/**
|
63 |
-
* @since 1.1.3
|
64 |
-
*
|
65 |
-
* @var bool
|
66 |
-
*/
|
67 |
-
private $_is_top_level;
|
68 |
-
/**
|
69 |
-
* @since 1.1.3
|
70 |
-
*
|
71 |
-
* @var bool
|
72 |
-
*/
|
73 |
-
private $_is_override_exact;
|
74 |
-
/**
|
75 |
-
* @since 1.1.3
|
76 |
-
*
|
77 |
-
* @var array<string,bool>
|
78 |
-
*/
|
79 |
-
private $_default_submenu_items;
|
80 |
-
/**
|
81 |
-
* @since 1.1.3
|
82 |
-
*
|
83 |
-
* @var string
|
84 |
-
*/
|
85 |
-
private $_first_time_path;
|
86 |
-
/**
|
87 |
-
* @since 1.2.2
|
88 |
-
*
|
89 |
-
* @var bool
|
90 |
-
*/
|
91 |
-
private $_menu_exists;
|
92 |
-
/**
|
93 |
-
* @since 2.0.0
|
94 |
-
*
|
95 |
-
* @var bool
|
96 |
-
*/
|
97 |
-
private $_network_menu_exists;
|
98 |
-
|
99 |
-
#endregion Properties
|
100 |
-
|
101 |
-
/**
|
102 |
-
* @var FS_Logger
|
103 |
-
*/
|
104 |
-
protected $_logger;
|
105 |
-
|
106 |
-
#region Singleton
|
107 |
-
|
108 |
-
/**
|
109 |
-
* @var FS_Admin_Menu_Manager[]
|
110 |
-
*/
|
111 |
-
private static $_instances = array();
|
112 |
-
|
113 |
-
/**
|
114 |
-
* @param number $module_id
|
115 |
-
* @param string $module_type
|
116 |
-
* @param string $module_unique_affix
|
117 |
-
*
|
118 |
-
* @return FS_Admin_Menu_Manager
|
119 |
-
*/
|
120 |
-
static function instance( $module_id, $module_type, $module_unique_affix ) {
|
121 |
-
$key = 'm_' . $module_id;
|
122 |
-
|
123 |
-
if ( ! isset( self::$_instances[ $key ] ) ) {
|
124 |
-
self::$_instances[ $key ] = new FS_Admin_Menu_Manager( $module_id, $module_type, $module_unique_affix );
|
125 |
-
}
|
126 |
-
|
127 |
-
return self::$_instances[ $key ];
|
128 |
-
}
|
129 |
-
|
130 |
-
protected function __construct( $module_id, $module_type, $module_unique_affix ) {
|
131 |
-
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_' . $module_id . '_admin_menu', WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
132 |
-
|
133 |
-
$this->_module_id = $module_id;
|
134 |
-
$this->_module_type = $module_type;
|
135 |
-
$this->_module_unique_affix = $module_unique_affix;
|
136 |
-
}
|
137 |
-
|
138 |
-
#endregion Singleton
|
139 |
-
|
140 |
-
#region Helpers
|
141 |
-
|
142 |
-
private function get_option( &$options, $key, $default = false ) {
|
143 |
-
return ! empty( $options[ $key ] ) ? $options[ $key ] : $default;
|
144 |
-
}
|
145 |
-
|
146 |
-
private function get_bool_option( &$options, $key, $default = false ) {
|
147 |
-
return isset( $options[ $key ] ) && is_bool( $options[ $key ] ) ? $options[ $key ] : $default;
|
148 |
-
}
|
149 |
-
|
150 |
-
#endregion Helpers
|
151 |
-
|
152 |
-
/**
|
153 |
-
* @param array $menu
|
154 |
-
* @param bool $is_addon
|
155 |
-
*/
|
156 |
-
function init( $menu, $is_addon = false ) {
|
157 |
-
$this->_menu_exists = ( isset( $menu['slug'] ) && ! empty( $menu['slug'] ) );
|
158 |
-
$this->_network_menu_exists = ( ! empty( $menu['network'] ) && true === $menu['network'] );
|
159 |
-
|
160 |
-
$this->_menu_slug = ( $this->_menu_exists ? $menu['slug'] : $this->_module_unique_affix );
|
161 |
-
|
162 |
-
$this->_default_submenu_items = array();
|
163 |
-
// @deprecated
|
164 |
-
$this->_type = 'page';
|
165 |
-
$this->_is_top_level = true;
|
166 |
-
$this->_is_override_exact = false;
|
167 |
-
$this->_parent_slug = false;
|
168 |
-
// @deprecated
|
169 |
-
$this->_parent_type = 'page';
|
170 |
-
|
171 |
-
if ( isset( $menu ) ) {
|
172 |
-
if ( ! $is_addon ) {
|
173 |
-
$this->_default_submenu_items = array(
|
174 |
-
'contact' => $this->get_bool_option( $menu, 'contact', true ),
|
175 |
-
'support' => $this->get_bool_option( $menu, 'support', true ),
|
176 |
-
'affiliation' => $this->get_bool_option( $menu, 'affiliation', true ),
|
177 |
-
'account' => $this->get_bool_option( $menu, 'account', true ),
|
178 |
-
'pricing' => $this->get_bool_option( $menu, 'pricing', true ),
|
179 |
-
'addons' => $this->get_bool_option( $menu, 'addons', true ),
|
180 |
-
);
|
181 |
-
|
182 |
-
// @deprecated
|
183 |
-
$this->_type = $this->get_option( $menu, 'type', 'page' );
|
184 |
-
}
|
185 |
-
|
186 |
-
$this->_is_override_exact = $this->get_bool_option( $menu, 'override_exact' );
|
187 |
-
|
188 |
-
if ( isset( $menu['parent'] ) ) {
|
189 |
-
$this->_parent_slug = $this->get_option( $menu['parent'], 'slug' );
|
190 |
-
// @deprecated
|
191 |
-
$this->_parent_type = $this->get_option( $menu['parent'], 'type', 'page' );
|
192 |
-
|
193 |
-
// If parent's slug is different, then it's NOT a top level menu item.
|
194 |
-
$this->_is_top_level = ( $this->_parent_slug === $this->_menu_slug );
|
195 |
-
} else {
|
196 |
-
/**
|
197 |
-
* If no parent then top level if:
|
198 |
-
* - Has custom admin menu ('page')
|
199 |
-
* - CPT menu type ('cpt')
|
200 |
-
*/
|
201 |
-
// $this->_is_top_level = in_array( $this->_type, array(
|
202 |
-
// 'cpt',
|
203 |
-
// 'page'
|
204 |
-
// ) );
|
205 |
-
}
|
206 |
-
|
207 |
-
$first_path = $this->get_option( $menu, 'first-path', false );
|
208 |
-
|
209 |
-
if ( ! empty( $first_path ) && is_string( $first_path ) ) {
|
210 |
-
$this->_first_time_path = $first_path;
|
211 |
-
}
|
212 |
-
}
|
213 |
-
}
|
214 |
-
|
215 |
-
/**
|
216 |
-
* Check if top level menu.
|
217 |
-
*
|
218 |
-
* @author Vova Feldman (@svovaf)
|
219 |
-
* @since 1.1.3
|
220 |
-
*
|
221 |
-
* @return bool False if submenu item.
|
222 |
-
*/
|
223 |
-
function is_top_level() {
|
224 |
-
return $this->_is_top_level;
|
225 |
-
}
|
226 |
-
|
227 |
-
/**
|
228 |
-
* Check if the page should be override on exact URL match.
|
229 |
-
*
|
230 |
-
* @author Vova Feldman (@svovaf)
|
231 |
-
* @since 1.1.3
|
232 |
-
*
|
233 |
-
* @return bool False if submenu item.
|
234 |
-
*/
|
235 |
-
function is_override_exact() {
|
236 |
-
return $this->_is_override_exact;
|
237 |
-
}
|
238 |
-
|
239 |
-
|
240 |
-
/**
|
241 |
-
* Get the path of the page the user should be forwarded to after first activation.
|
242 |
-
*
|
243 |
-
* @author Vova Feldman (@svovaf)
|
244 |
-
* @since 1.1.3
|
245 |
-
*
|
246 |
-
* @param bool $is_network Since 2.4.5
|
247 |
-
*
|
248 |
-
* @return string
|
249 |
-
*/
|
250 |
-
function get_first_time_path( $is_network = false ) {
|
251 |
-
if ( empty ( $this->_first_time_path ) ) {
|
252 |
-
return $this->_first_time_path;
|
253 |
-
}
|
254 |
-
|
255 |
-
if ( $is_network ) {
|
256 |
-
return network_admin_url( $this->_first_time_path );
|
257 |
-
} else {
|
258 |
-
return admin_url( $this->_first_time_path );
|
259 |
-
}
|
260 |
-
}
|
261 |
-
|
262 |
-
/**
|
263 |
-
* Check if plugin's menu item is part of a custom top level menu.
|
264 |
-
*
|
265 |
-
* @author Vova Feldman (@svovaf)
|
266 |
-
* @since 1.1.3
|
267 |
-
*
|
268 |
-
* @return bool
|
269 |
-
*/
|
270 |
-
function has_custom_parent() {
|
271 |
-
return ! $this->_is_top_level && is_string( $this->_parent_slug );
|
272 |
-
}
|
273 |
-
|
274 |
-
/**
|
275 |
-
* @author Leo Fajardo (@leorw)
|
276 |
-
* @since 1.2.2
|
277 |
-
*
|
278 |
-
* @return bool
|
279 |
-
*/
|
280 |
-
function has_menu() {
|
281 |
-
return $this->_menu_exists;
|
282 |
-
}
|
283 |
-
|
284 |
-
/**
|
285 |
-
* @author Vova Feldman (@svovaf)
|
286 |
-
* @since 2.0.0
|
287 |
-
*
|
288 |
-
* @return bool
|
289 |
-
*/
|
290 |
-
function has_network_menu() {
|
291 |
-
return $this->_network_menu_exists;
|
292 |
-
}
|
293 |
-
|
294 |
-
/**
|
295 |
-
* @author Leo Fajardo (@leorw)
|
296 |
-
*
|
297 |
-
* @param string $menu_slug
|
298 |
-
*
|
299 |
-
* @since 2.1.3
|
300 |
-
*/
|
301 |
-
function set_slug_and_network_menu_exists_flag($menu_slug ) {
|
302 |
-
$this->_menu_slug = $menu_slug;
|
303 |
-
$this->_network_menu_exists = false;
|
304 |
-
}
|
305 |
-
|
306 |
-
/**
|
307 |
-
* @author Vova Feldman (@svovaf)
|
308 |
-
* @since 1.1.3
|
309 |
-
*
|
310 |
-
* @param string $id
|
311 |
-
* @param bool $default
|
312 |
-
* @param bool $ignore_menu_existence Since 1.2.2.7 If true, check if the submenu item visible even if there's no parent menu.
|
313 |
-
*
|
314 |
-
* @return bool
|
315 |
-
*/
|
316 |
-
function is_submenu_item_visible( $id, $default = true, $ignore_menu_existence = false ) {
|
317 |
-
if ( ! $ignore_menu_existence && ! $this->has_menu() ) {
|
318 |
-
return false;
|
319 |
-
}
|
320 |
-
|
321 |
-
return fs_apply_filter(
|
322 |
-
$this->_module_unique_affix,
|
323 |
-
'is_submenu_visible',
|
324 |
-
$this->get_bool_option( $this->_default_submenu_items, $id, $default ),
|
325 |
-
$id
|
326 |
-
);
|
327 |
-
}
|
328 |
-
|
329 |
-
/**
|
330 |
-
* Calculates admin settings menu slug.
|
331 |
-
* If plugin's menu slug is a file (e.g. CPT), uses plugin's slug as the menu slug.
|
332 |
-
*
|
333 |
-
* @author Vova Feldman (@svovaf)
|
334 |
-
* @since 1.1.3
|
335 |
-
*
|
336 |
-
* @param string $page
|
337 |
-
*
|
338 |
-
* @return string
|
339 |
-
*/
|
340 |
-
function get_slug( $page = '' ) {
|
341 |
-
return ( ( false === strpos( $this->_menu_slug, '.php?' ) ) ?
|
342 |
-
$this->_menu_slug :
|
343 |
-
$this->_module_unique_affix ) . ( empty( $page ) ? '' : ( '-' . $page ) );
|
344 |
-
}
|
345 |
-
|
346 |
-
/**
|
347 |
-
* @author Vova Feldman (@svovaf)
|
348 |
-
* @since 1.1.3
|
349 |
-
*
|
350 |
-
* @return string
|
351 |
-
*/
|
352 |
-
function get_parent_slug() {
|
353 |
-
return $this->_parent_slug;
|
354 |
-
}
|
355 |
-
|
356 |
-
/**
|
357 |
-
* @author Vova Feldman (@svovaf)
|
358 |
-
* @since 1.1.3
|
359 |
-
*
|
360 |
-
* @return string
|
361 |
-
*/
|
362 |
-
function get_type() {
|
363 |
-
return $this->_type;
|
364 |
-
}
|
365 |
-
|
366 |
-
/**
|
367 |
-
* @author Vova Feldman (@svovaf)
|
368 |
-
* @since 1.1.3
|
369 |
-
*
|
370 |
-
* @return bool
|
371 |
-
*/
|
372 |
-
function is_cpt() {
|
373 |
-
return ( 0 === strpos( $this->_menu_slug, 'edit.php?post_type=' ) ||
|
374 |
-
// Back compatibility.
|
375 |
-
'cpt' === $this->_type
|
376 |
-
);
|
377 |
-
}
|
378 |
-
|
379 |
-
/**
|
380 |
-
* @author Vova Feldman (@svovaf)
|
381 |
-
* @since 1.1.3
|
382 |
-
*
|
383 |
-
* @return string
|
384 |
-
*/
|
385 |
-
function get_parent_type() {
|
386 |
-
return $this->_parent_type;
|
387 |
-
}
|
388 |
-
|
389 |
-
/**
|
390 |
-
* @author Vova Feldman (@svovaf)
|
391 |
-
* @since 1.1.3
|
392 |
-
*
|
393 |
-
* @return string
|
394 |
-
*/
|
395 |
-
function get_raw_slug() {
|
396 |
-
return $this->_menu_slug;
|
397 |
-
}
|
398 |
-
|
399 |
-
/**
|
400 |
-
* Get plugin's original menu slug.
|
401 |
-
*
|
402 |
-
* @author Vova Feldman (@svovaf)
|
403 |
-
* @since 1.1.3
|
404 |
-
*
|
405 |
-
* @return string
|
406 |
-
*/
|
407 |
-
function get_original_menu_slug() {
|
408 |
-
if ( 'cpt' === $this->_type ) {
|
409 |
-
return add_query_arg( array(
|
410 |
-
'post_type' => $this->_menu_slug
|
411 |
-
), 'edit.php' );
|
412 |
-
}
|
413 |
-
|
414 |
-
if ( false === strpos( $this->_menu_slug, '.php?' ) ) {
|
415 |
-
return $this->_menu_slug;
|
416 |
-
} else {
|
417 |
-
return $this->_module_unique_affix;
|
418 |
-
}
|
419 |
-
}
|
420 |
-
|
421 |
-
/**
|
422 |
-
* @author Vova Feldman (@svovaf)
|
423 |
-
* @since 1.1.3
|
424 |
-
*
|
425 |
-
* @return string
|
426 |
-
*/
|
427 |
-
function get_top_level_menu_slug() {
|
428 |
-
return $this->has_custom_parent() ?
|
429 |
-
$this->get_parent_slug() :
|
430 |
-
$this->get_raw_slug();
|
431 |
-
}
|
432 |
-
|
433 |
-
/**
|
434 |
-
* Is user on plugin's admin activation page.
|
435 |
-
*
|
436 |
-
* @author Vova Feldman (@svovaf)
|
437 |
-
* @since 1.0.8
|
438 |
-
*
|
439 |
-
* @param bool $show_opt_in_on_themes_page Since 2.3.1
|
440 |
-
*
|
441 |
-
* @return bool
|
442 |
-
*
|
443 |
-
* @deprecated Please use is_activation_page() instead.
|
444 |
-
*/
|
445 |
-
function is_main_settings_page( $show_opt_in_on_themes_page = false ) {
|
446 |
-
return $this->is_activation_page( $show_opt_in_on_themes_page );
|
447 |
-
}
|
448 |
-
|
449 |
-
/**
|
450 |
-
* Is user on product's admin activation page.
|
451 |
-
*
|
452 |
-
* @author Vova Feldman (@svovaf)
|
453 |
-
* @since 2.3.1
|
454 |
-
*
|
455 |
-
* @param bool $show_opt_in_on_themes_page Since 2.3.1
|
456 |
-
*
|
457 |
-
* @return bool
|
458 |
-
*/
|
459 |
-
function is_activation_page( $show_opt_in_on_themes_page = false ) {
|
460 |
-
if ( $show_opt_in_on_themes_page ) {
|
461 |
-
/**
|
462 |
-
* In activation only when show_optin query string param is given.
|
463 |
-
*
|
464 |
-
* @since 1.2.2
|
465 |
-
*/
|
466 |
-
return (
|
467 |
-
( WP_FS__MODULE_TYPE_THEME === $this->_module_type ) &&
|
468 |
-
Freemius::is_themes_page() &&
|
469 |
-
fs_request_get_bool( $this->_module_unique_affix . '_show_optin' )
|
470 |
-
);
|
471 |
-
}
|
472 |
-
|
473 |
-
if ( $this->_menu_exists &&
|
474 |
-
( fs_is_plugin_page( $this->_menu_slug ) || fs_is_plugin_page( $this->_module_unique_affix ) )
|
475 |
-
) {
|
476 |
-
/**
|
477 |
-
* Module has a settings menu and the context page is the main settings page, so assume it's in
|
478 |
-
* activation (doesn't really check if already opted-in/skipped or not).
|
479 |
-
*
|
480 |
-
* @since 1.2.2
|
481 |
-
*/
|
482 |
-
return true;
|
483 |
-
}
|
484 |
-
|
485 |
-
return false;
|
486 |
-
}
|
487 |
-
|
488 |
-
#region Submenu Override
|
489 |
-
|
490 |
-
/**
|
491 |
-
* Override submenu's action.
|
492 |
-
*
|
493 |
-
* @author Vova Feldman (@svovaf)
|
494 |
-
* @since 1.1.0
|
495 |
-
*
|
496 |
-
* @param string $parent_slug
|
497 |
-
* @param string $menu_slug
|
498 |
-
* @param callable $function
|
499 |
-
*
|
500 |
-
* @return false|string If submenu exist, will return the hook name.
|
501 |
-
*/
|
502 |
-
function override_submenu_action( $parent_slug, $menu_slug, $function ) {
|
503 |
-
global $submenu;
|
504 |
-
|
505 |
-
$menu_slug = plugin_basename( $menu_slug );
|
506 |
-
$parent_slug = plugin_basename( $parent_slug );
|
507 |
-
|
508 |
-
if ( ! isset( $submenu[ $parent_slug ] ) ) {
|
509 |
-
// Parent menu not exist.
|
510 |
-
return false;
|
511 |
-
}
|
512 |
-
|
513 |
-
$found_submenu_item = false;
|
514 |
-
foreach ( $submenu[ $parent_slug ] as $submenu_item ) {
|
515 |
-
if ( $menu_slug === $submenu_item[2] ) {
|
516 |
-
$found_submenu_item = $submenu_item;
|
517 |
-
break;
|
518 |
-
}
|
519 |
-
}
|
520 |
-
|
521 |
-
if ( false === $found_submenu_item ) {
|
522 |
-
// Submenu item not found.
|
523 |
-
return false;
|
524 |
-
}
|
525 |
-
|
526 |
-
// Remove current function.
|
527 |
-
$hookname = get_plugin_page_hookname( $menu_slug, $parent_slug );
|
528 |
-
remove_all_actions( $hookname );
|
529 |
-
|
530 |
-
// Attach new action.
|
531 |
-
add_action( $hookname, $function );
|
532 |
-
|
533 |
-
return $hookname;
|
534 |
-
}
|
535 |
-
|
536 |
-
#endregion Submenu Override
|
537 |
-
|
538 |
-
#region Top level menu Override
|
539 |
-
|
540 |
-
/**
|
541 |
-
* Find plugin's admin dashboard main menu item.
|
542 |
-
*
|
543 |
-
* @author Vova Feldman (@svovaf)
|
544 |
-
* @since 1.0.2
|
545 |
-
*
|
546 |
-
* @return string[]|false
|
547 |
-
*/
|
548 |
-
private function find_top_level_menu() {
|
549 |
-
global $menu;
|
550 |
-
|
551 |
-
$position = - 1;
|
552 |
-
$found_menu = false;
|
553 |
-
|
554 |
-
$menu_slug = $this->get_raw_slug();
|
555 |
-
|
556 |
-
$hook_name = get_plugin_page_hookname( $menu_slug, '' );
|
557 |
-
foreach ( $menu as $pos => $m ) {
|
558 |
-
if ( $menu_slug === $m[2] ) {
|
559 |
-
$position = $pos;
|
560 |
-
$found_menu = $m;
|
561 |
-
break;
|
562 |
-
}
|
563 |
-
}
|
564 |
-
|
565 |
-
if ( false === $found_menu ) {
|
566 |
-
return false;
|
567 |
-
}
|
568 |
-
|
569 |
-
return array(
|
570 |
-
'menu' => $found_menu,
|
571 |
-
'position' => $position,
|
572 |
-
'hook_name' => $hook_name
|
573 |
-
);
|
574 |
-
}
|
575 |
-
|
576 |
-
/**
|
577 |
-
* Find plugin's admin dashboard main submenu item.
|
578 |
-
*
|
579 |
-
* @author Vova Feldman (@svovaf)
|
580 |
-
* @since 1.2.1.6
|
581 |
-
*
|
582 |
-
* @return array|false
|
583 |
-
*/
|
584 |
-
private function find_main_submenu() {
|
585 |
-
global $submenu;
|
586 |
-
|
587 |
-
$top_level_menu_slug = $this->get_top_level_menu_slug();
|
588 |
-
|
589 |
-
if ( ! isset( $submenu[ $top_level_menu_slug ] ) ) {
|
590 |
-
return false;
|
591 |
-
}
|
592 |
-
|
593 |
-
$submenu_slug = $this->get_raw_slug();
|
594 |
-
|
595 |
-
$position = - 1;
|
596 |
-
$found_submenu = false;
|
597 |
-
|
598 |
-
$hook_name = get_plugin_page_hookname( $submenu_slug, '' );
|
599 |
-
|
600 |
-
foreach ( $submenu[ $top_level_menu_slug ] as $pos => $sub ) {
|
601 |
-
if ( $submenu_slug === $sub[2] ) {
|
602 |
-
$position = $pos;
|
603 |
-
$found_submenu = $sub;
|
604 |
-
}
|
605 |
-
}
|
606 |
-
|
607 |
-
if ( false === $found_submenu ) {
|
608 |
-
return false;
|
609 |
-
}
|
610 |
-
|
611 |
-
return array(
|
612 |
-
'menu' => $found_submenu,
|
613 |
-
'parent_slug' => $top_level_menu_slug,
|
614 |
-
'position' => $position,
|
615 |
-
'hook_name' => $hook_name
|
616 |
-
);
|
617 |
-
}
|
618 |
-
|
619 |
-
/**
|
620 |
-
* Remove all sub-menu items.
|
621 |
-
*
|
622 |
-
* @author Vova Feldman (@svovaf)
|
623 |
-
* @since 1.0.7
|
624 |
-
*
|
625 |
-
* @return bool If submenu with plugin's menu slug was found.
|
626 |
-
*/
|
627 |
-
private function remove_all_submenu_items() {
|
628 |
-
global $submenu;
|
629 |
-
|
630 |
-
$menu_slug = $this->get_raw_slug();
|
631 |
-
|
632 |
-
if ( ! isset( $submenu[ $menu_slug ] ) ) {
|
633 |
-
return false;
|
634 |
-
}
|
635 |
-
|
636 |
-
/**
|
637 |
-
* This method is NOT executed for WordPress.org themes.
|
638 |
-
* Since we maintain only one version of the SDK we added this small
|
639 |
-
* hack to avoid the error from Theme Check since it's a false-positive.
|
640 |
-
*
|
641 |
-
* @author Vova Feldman (@svovaf)
|
642 |
-
* @since 1.2.2.7
|
643 |
-
*/
|
644 |
-
$submenu_ref = &$submenu;
|
645 |
-
$submenu_ref[ $menu_slug ] = array();
|
646 |
-
|
647 |
-
return true;
|
648 |
-
}
|
649 |
-
|
650 |
-
/**
|
651 |
-
*
|
652 |
-
* @author Vova Feldman (@svovaf)
|
653 |
-
* @since 1.0.9
|
654 |
-
*
|
655 |
-
* @param bool $remove_top_level_menu
|
656 |
-
*
|
657 |
-
* @return false|array[string]mixed
|
658 |
-
*/
|
659 |
-
function remove_menu_item( $remove_top_level_menu = false ) {
|
660 |
-
$this->_logger->entrance();
|
661 |
-
|
662 |
-
// Find main menu item.
|
663 |
-
$top_level_menu = $this->find_top_level_menu();
|
664 |
-
|
665 |
-
if ( false === $top_level_menu ) {
|
666 |
-
return false;
|
667 |
-
}
|
668 |
-
|
669 |
-
// Remove it with its actions.
|
670 |
-
remove_all_actions( $top_level_menu['hook_name'] );
|
671 |
-
|
672 |
-
// Remove all submenu items.
|
673 |
-
$this->remove_all_submenu_items();
|
674 |
-
|
675 |
-
if ( $remove_top_level_menu ) {
|
676 |
-
global $menu;
|
677 |
-
unset( $menu[ $top_level_menu['position'] ] );
|
678 |
-
}
|
679 |
-
|
680 |
-
return $top_level_menu;
|
681 |
-
}
|
682 |
-
|
683 |
-
/**
|
684 |
-
* Get module's main admin setting page URL.
|
685 |
-
*
|
686 |
-
* @todo This method was only tested for wp.org compliant themes with a submenu item. Need to test for plugins with top level, submenu, and CPT top level, menu items.
|
687 |
-
*
|
688 |
-
* @author Vova Feldman (@svovaf)
|
689 |
-
* @since 1.2.2.7
|
690 |
-
*
|
691 |
-
* @return string
|
692 |
-
*/
|
693 |
-
function main_menu_url() {
|
694 |
-
$this->_logger->entrance();
|
695 |
-
|
696 |
-
if ( $this->_is_top_level ) {
|
697 |
-
$menu = $this->find_top_level_menu();
|
698 |
-
} else {
|
699 |
-
$menu = $this->find_main_submenu();
|
700 |
-
}
|
701 |
-
|
702 |
-
$parent_slug = isset( $menu['parent_slug'] ) ?
|
703 |
-
$menu['parent_slug'] :
|
704 |
-
'admin.php';
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
* @
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
//
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
$found_menu['menu'][
|
745 |
-
$found_menu['
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
*
|
759 |
-
*
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
*
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
*
|
814 |
-
*
|
815 |
-
*
|
816 |
-
*
|
817 |
-
*
|
818 |
-
*
|
819 |
-
*
|
820 |
-
*
|
821 |
-
*
|
822 |
-
*
|
823 |
-
*
|
824 |
-
*
|
825 |
-
*
|
826 |
-
*
|
827 |
-
*
|
828 |
-
*
|
829 |
-
*
|
830 |
-
*
|
831 |
-
* @
|
832 |
-
* @
|
833 |
-
*
|
834 |
-
* @param
|
835 |
-
*
|
836 |
-
*
|
837 |
-
*
|
838 |
-
*
|
839 |
-
*
|
840 |
-
*
|
841 |
-
* * Pass
|
842 |
-
*
|
843 |
-
*
|
844 |
-
*
|
845 |
-
*
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
$
|
854 |
-
$
|
855 |
-
|
856 |
-
$
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
$
|
865 |
-
$
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
*
|
876 |
-
*
|
877 |
-
* @
|
878 |
-
* @
|
879 |
-
*
|
880 |
-
* @param string $
|
881 |
-
* @param
|
882 |
-
*
|
883 |
-
* @
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
$
|
892 |
-
$
|
893 |
-
|
894 |
-
$
|
895 |
-
$
|
896 |
-
$
|
897 |
-
$
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
$
|
906 |
-
$
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
*
|
917 |
-
*
|
918 |
-
*
|
919 |
-
*
|
920 |
-
*
|
921 |
-
*
|
922 |
-
*
|
923 |
-
*
|
924 |
-
*
|
925 |
-
*
|
926 |
-
*
|
927 |
-
*
|
928 |
-
*
|
929 |
-
*
|
930 |
-
*
|
931 |
-
*
|
932 |
-
*
|
933 |
-
*
|
934 |
-
* @
|
935 |
-
*
|
936 |
-
*
|
937 |
-
* @param string $
|
938 |
-
*
|
939 |
-
* @param
|
940 |
-
*
|
941 |
-
* @
|
942 |
-
*
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
$
|
951 |
-
|
952 |
-
$
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
*
|
970 |
-
*
|
971 |
-
* @
|
972 |
-
* @
|
973 |
-
*
|
974 |
-
* @param
|
975 |
-
*
|
976 |
-
* @
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
$
|
985 |
-
|
986 |
-
$
|
987 |
-
$
|
988 |
-
$
|
989 |
-
$
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
$
|
999 |
-
|
1000 |
-
|
|
|
|
|
|
|
|
|
|
|
1001 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.1.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Admin_Menu_Manager {
|
14 |
+
|
15 |
+
#region Properties
|
16 |
+
|
17 |
+
/**
|
18 |
+
* @since 1.2.2
|
19 |
+
*
|
20 |
+
* @var string
|
21 |
+
*/
|
22 |
+
protected $_module_unique_affix;
|
23 |
+
|
24 |
+
/**
|
25 |
+
* @since 1.2.2
|
26 |
+
*
|
27 |
+
* @var number
|
28 |
+
*/
|
29 |
+
protected $_module_id;
|
30 |
+
|
31 |
+
/**
|
32 |
+
* @since 1.2.2
|
33 |
+
*
|
34 |
+
* @var string
|
35 |
+
*/
|
36 |
+
protected $_module_type;
|
37 |
+
|
38 |
+
/**
|
39 |
+
* @since 1.0.6
|
40 |
+
*
|
41 |
+
* @var string
|
42 |
+
*/
|
43 |
+
private $_menu_slug;
|
44 |
+
/**
|
45 |
+
* @since 1.1.3
|
46 |
+
*
|
47 |
+
* @var string
|
48 |
+
*/
|
49 |
+
private $_parent_slug;
|
50 |
+
/**
|
51 |
+
* @since 1.1.3
|
52 |
+
*
|
53 |
+
* @var string
|
54 |
+
*/
|
55 |
+
private $_parent_type;
|
56 |
+
/**
|
57 |
+
* @since 1.1.3
|
58 |
+
*
|
59 |
+
* @var string
|
60 |
+
*/
|
61 |
+
private $_type;
|
62 |
+
/**
|
63 |
+
* @since 1.1.3
|
64 |
+
*
|
65 |
+
* @var bool
|
66 |
+
*/
|
67 |
+
private $_is_top_level;
|
68 |
+
/**
|
69 |
+
* @since 1.1.3
|
70 |
+
*
|
71 |
+
* @var bool
|
72 |
+
*/
|
73 |
+
private $_is_override_exact;
|
74 |
+
/**
|
75 |
+
* @since 1.1.3
|
76 |
+
*
|
77 |
+
* @var array<string,bool>
|
78 |
+
*/
|
79 |
+
private $_default_submenu_items;
|
80 |
+
/**
|
81 |
+
* @since 1.1.3
|
82 |
+
*
|
83 |
+
* @var string
|
84 |
+
*/
|
85 |
+
private $_first_time_path;
|
86 |
+
/**
|
87 |
+
* @since 1.2.2
|
88 |
+
*
|
89 |
+
* @var bool
|
90 |
+
*/
|
91 |
+
private $_menu_exists;
|
92 |
+
/**
|
93 |
+
* @since 2.0.0
|
94 |
+
*
|
95 |
+
* @var bool
|
96 |
+
*/
|
97 |
+
private $_network_menu_exists;
|
98 |
+
|
99 |
+
#endregion Properties
|
100 |
+
|
101 |
+
/**
|
102 |
+
* @var FS_Logger
|
103 |
+
*/
|
104 |
+
protected $_logger;
|
105 |
+
|
106 |
+
#region Singleton
|
107 |
+
|
108 |
+
/**
|
109 |
+
* @var FS_Admin_Menu_Manager[]
|
110 |
+
*/
|
111 |
+
private static $_instances = array();
|
112 |
+
|
113 |
+
/**
|
114 |
+
* @param number $module_id
|
115 |
+
* @param string $module_type
|
116 |
+
* @param string $module_unique_affix
|
117 |
+
*
|
118 |
+
* @return FS_Admin_Menu_Manager
|
119 |
+
*/
|
120 |
+
static function instance( $module_id, $module_type, $module_unique_affix ) {
|
121 |
+
$key = 'm_' . $module_id;
|
122 |
+
|
123 |
+
if ( ! isset( self::$_instances[ $key ] ) ) {
|
124 |
+
self::$_instances[ $key ] = new FS_Admin_Menu_Manager( $module_id, $module_type, $module_unique_affix );
|
125 |
+
}
|
126 |
+
|
127 |
+
return self::$_instances[ $key ];
|
128 |
+
}
|
129 |
+
|
130 |
+
protected function __construct( $module_id, $module_type, $module_unique_affix ) {
|
131 |
+
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_' . $module_id . '_admin_menu', WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
132 |
+
|
133 |
+
$this->_module_id = $module_id;
|
134 |
+
$this->_module_type = $module_type;
|
135 |
+
$this->_module_unique_affix = $module_unique_affix;
|
136 |
+
}
|
137 |
+
|
138 |
+
#endregion Singleton
|
139 |
+
|
140 |
+
#region Helpers
|
141 |
+
|
142 |
+
private function get_option( &$options, $key, $default = false ) {
|
143 |
+
return ! empty( $options[ $key ] ) ? $options[ $key ] : $default;
|
144 |
+
}
|
145 |
+
|
146 |
+
private function get_bool_option( &$options, $key, $default = false ) {
|
147 |
+
return isset( $options[ $key ] ) && is_bool( $options[ $key ] ) ? $options[ $key ] : $default;
|
148 |
+
}
|
149 |
+
|
150 |
+
#endregion Helpers
|
151 |
+
|
152 |
+
/**
|
153 |
+
* @param array $menu
|
154 |
+
* @param bool $is_addon
|
155 |
+
*/
|
156 |
+
function init( $menu, $is_addon = false ) {
|
157 |
+
$this->_menu_exists = ( isset( $menu['slug'] ) && ! empty( $menu['slug'] ) );
|
158 |
+
$this->_network_menu_exists = ( ! empty( $menu['network'] ) && true === $menu['network'] );
|
159 |
+
|
160 |
+
$this->_menu_slug = ( $this->_menu_exists ? $menu['slug'] : $this->_module_unique_affix );
|
161 |
+
|
162 |
+
$this->_default_submenu_items = array();
|
163 |
+
// @deprecated
|
164 |
+
$this->_type = 'page';
|
165 |
+
$this->_is_top_level = true;
|
166 |
+
$this->_is_override_exact = false;
|
167 |
+
$this->_parent_slug = false;
|
168 |
+
// @deprecated
|
169 |
+
$this->_parent_type = 'page';
|
170 |
+
|
171 |
+
if ( isset( $menu ) ) {
|
172 |
+
if ( ! $is_addon ) {
|
173 |
+
$this->_default_submenu_items = array(
|
174 |
+
'contact' => $this->get_bool_option( $menu, 'contact', true ),
|
175 |
+
'support' => $this->get_bool_option( $menu, 'support', true ),
|
176 |
+
'affiliation' => $this->get_bool_option( $menu, 'affiliation', true ),
|
177 |
+
'account' => $this->get_bool_option( $menu, 'account', true ),
|
178 |
+
'pricing' => $this->get_bool_option( $menu, 'pricing', true ),
|
179 |
+
'addons' => $this->get_bool_option( $menu, 'addons', true ),
|
180 |
+
);
|
181 |
+
|
182 |
+
// @deprecated
|
183 |
+
$this->_type = $this->get_option( $menu, 'type', 'page' );
|
184 |
+
}
|
185 |
+
|
186 |
+
$this->_is_override_exact = $this->get_bool_option( $menu, 'override_exact' );
|
187 |
+
|
188 |
+
if ( isset( $menu['parent'] ) ) {
|
189 |
+
$this->_parent_slug = $this->get_option( $menu['parent'], 'slug' );
|
190 |
+
// @deprecated
|
191 |
+
$this->_parent_type = $this->get_option( $menu['parent'], 'type', 'page' );
|
192 |
+
|
193 |
+
// If parent's slug is different, then it's NOT a top level menu item.
|
194 |
+
$this->_is_top_level = ( $this->_parent_slug === $this->_menu_slug );
|
195 |
+
} else {
|
196 |
+
/**
|
197 |
+
* If no parent then top level if:
|
198 |
+
* - Has custom admin menu ('page')
|
199 |
+
* - CPT menu type ('cpt')
|
200 |
+
*/
|
201 |
+
// $this->_is_top_level = in_array( $this->_type, array(
|
202 |
+
// 'cpt',
|
203 |
+
// 'page'
|
204 |
+
// ) );
|
205 |
+
}
|
206 |
+
|
207 |
+
$first_path = $this->get_option( $menu, 'first-path', false );
|
208 |
+
|
209 |
+
if ( ! empty( $first_path ) && is_string( $first_path ) ) {
|
210 |
+
$this->_first_time_path = $first_path;
|
211 |
+
}
|
212 |
+
}
|
213 |
+
}
|
214 |
+
|
215 |
+
/**
|
216 |
+
* Check if top level menu.
|
217 |
+
*
|
218 |
+
* @author Vova Feldman (@svovaf)
|
219 |
+
* @since 1.1.3
|
220 |
+
*
|
221 |
+
* @return bool False if submenu item.
|
222 |
+
*/
|
223 |
+
function is_top_level() {
|
224 |
+
return $this->_is_top_level;
|
225 |
+
}
|
226 |
+
|
227 |
+
/**
|
228 |
+
* Check if the page should be override on exact URL match.
|
229 |
+
*
|
230 |
+
* @author Vova Feldman (@svovaf)
|
231 |
+
* @since 1.1.3
|
232 |
+
*
|
233 |
+
* @return bool False if submenu item.
|
234 |
+
*/
|
235 |
+
function is_override_exact() {
|
236 |
+
return $this->_is_override_exact;
|
237 |
+
}
|
238 |
+
|
239 |
+
|
240 |
+
/**
|
241 |
+
* Get the path of the page the user should be forwarded to after first activation.
|
242 |
+
*
|
243 |
+
* @author Vova Feldman (@svovaf)
|
244 |
+
* @since 1.1.3
|
245 |
+
*
|
246 |
+
* @param bool $is_network Since 2.4.5
|
247 |
+
*
|
248 |
+
* @return string
|
249 |
+
*/
|
250 |
+
function get_first_time_path( $is_network = false ) {
|
251 |
+
if ( empty ( $this->_first_time_path ) ) {
|
252 |
+
return $this->_first_time_path;
|
253 |
+
}
|
254 |
+
|
255 |
+
if ( $is_network ) {
|
256 |
+
return network_admin_url( $this->_first_time_path );
|
257 |
+
} else {
|
258 |
+
return admin_url( $this->_first_time_path );
|
259 |
+
}
|
260 |
+
}
|
261 |
+
|
262 |
+
/**
|
263 |
+
* Check if plugin's menu item is part of a custom top level menu.
|
264 |
+
*
|
265 |
+
* @author Vova Feldman (@svovaf)
|
266 |
+
* @since 1.1.3
|
267 |
+
*
|
268 |
+
* @return bool
|
269 |
+
*/
|
270 |
+
function has_custom_parent() {
|
271 |
+
return ! $this->_is_top_level && is_string( $this->_parent_slug );
|
272 |
+
}
|
273 |
+
|
274 |
+
/**
|
275 |
+
* @author Leo Fajardo (@leorw)
|
276 |
+
* @since 1.2.2
|
277 |
+
*
|
278 |
+
* @return bool
|
279 |
+
*/
|
280 |
+
function has_menu() {
|
281 |
+
return $this->_menu_exists;
|
282 |
+
}
|
283 |
+
|
284 |
+
/**
|
285 |
+
* @author Vova Feldman (@svovaf)
|
286 |
+
* @since 2.0.0
|
287 |
+
*
|
288 |
+
* @return bool
|
289 |
+
*/
|
290 |
+
function has_network_menu() {
|
291 |
+
return $this->_network_menu_exists;
|
292 |
+
}
|
293 |
+
|
294 |
+
/**
|
295 |
+
* @author Leo Fajardo (@leorw)
|
296 |
+
*
|
297 |
+
* @param string $menu_slug
|
298 |
+
*
|
299 |
+
* @since 2.1.3
|
300 |
+
*/
|
301 |
+
function set_slug_and_network_menu_exists_flag($menu_slug ) {
|
302 |
+
$this->_menu_slug = $menu_slug;
|
303 |
+
$this->_network_menu_exists = false;
|
304 |
+
}
|
305 |
+
|
306 |
+
/**
|
307 |
+
* @author Vova Feldman (@svovaf)
|
308 |
+
* @since 1.1.3
|
309 |
+
*
|
310 |
+
* @param string $id
|
311 |
+
* @param bool $default
|
312 |
+
* @param bool $ignore_menu_existence Since 1.2.2.7 If true, check if the submenu item visible even if there's no parent menu.
|
313 |
+
*
|
314 |
+
* @return bool
|
315 |
+
*/
|
316 |
+
function is_submenu_item_visible( $id, $default = true, $ignore_menu_existence = false ) {
|
317 |
+
if ( ! $ignore_menu_existence && ! $this->has_menu() ) {
|
318 |
+
return false;
|
319 |
+
}
|
320 |
+
|
321 |
+
return fs_apply_filter(
|
322 |
+
$this->_module_unique_affix,
|
323 |
+
'is_submenu_visible',
|
324 |
+
$this->get_bool_option( $this->_default_submenu_items, $id, $default ),
|
325 |
+
$id
|
326 |
+
);
|
327 |
+
}
|
328 |
+
|
329 |
+
/**
|
330 |
+
* Calculates admin settings menu slug.
|
331 |
+
* If plugin's menu slug is a file (e.g. CPT), uses plugin's slug as the menu slug.
|
332 |
+
*
|
333 |
+
* @author Vova Feldman (@svovaf)
|
334 |
+
* @since 1.1.3
|
335 |
+
*
|
336 |
+
* @param string $page
|
337 |
+
*
|
338 |
+
* @return string
|
339 |
+
*/
|
340 |
+
function get_slug( $page = '' ) {
|
341 |
+
return ( ( false === strpos( $this->_menu_slug, '.php?' ) ) ?
|
342 |
+
$this->_menu_slug :
|
343 |
+
$this->_module_unique_affix ) . ( empty( $page ) ? '' : ( '-' . $page ) );
|
344 |
+
}
|
345 |
+
|
346 |
+
/**
|
347 |
+
* @author Vova Feldman (@svovaf)
|
348 |
+
* @since 1.1.3
|
349 |
+
*
|
350 |
+
* @return string
|
351 |
+
*/
|
352 |
+
function get_parent_slug() {
|
353 |
+
return $this->_parent_slug;
|
354 |
+
}
|
355 |
+
|
356 |
+
/**
|
357 |
+
* @author Vova Feldman (@svovaf)
|
358 |
+
* @since 1.1.3
|
359 |
+
*
|
360 |
+
* @return string
|
361 |
+
*/
|
362 |
+
function get_type() {
|
363 |
+
return $this->_type;
|
364 |
+
}
|
365 |
+
|
366 |
+
/**
|
367 |
+
* @author Vova Feldman (@svovaf)
|
368 |
+
* @since 1.1.3
|
369 |
+
*
|
370 |
+
* @return bool
|
371 |
+
*/
|
372 |
+
function is_cpt() {
|
373 |
+
return ( 0 === strpos( $this->_menu_slug, 'edit.php?post_type=' ) ||
|
374 |
+
// Back compatibility.
|
375 |
+
'cpt' === $this->_type
|
376 |
+
);
|
377 |
+
}
|
378 |
+
|
379 |
+
/**
|
380 |
+
* @author Vova Feldman (@svovaf)
|
381 |
+
* @since 1.1.3
|
382 |
+
*
|
383 |
+
* @return string
|
384 |
+
*/
|
385 |
+
function get_parent_type() {
|
386 |
+
return $this->_parent_type;
|
387 |
+
}
|
388 |
+
|
389 |
+
/**
|
390 |
+
* @author Vova Feldman (@svovaf)
|
391 |
+
* @since 1.1.3
|
392 |
+
*
|
393 |
+
* @return string
|
394 |
+
*/
|
395 |
+
function get_raw_slug() {
|
396 |
+
return $this->_menu_slug;
|
397 |
+
}
|
398 |
+
|
399 |
+
/**
|
400 |
+
* Get plugin's original menu slug.
|
401 |
+
*
|
402 |
+
* @author Vova Feldman (@svovaf)
|
403 |
+
* @since 1.1.3
|
404 |
+
*
|
405 |
+
* @return string
|
406 |
+
*/
|
407 |
+
function get_original_menu_slug() {
|
408 |
+
if ( 'cpt' === $this->_type ) {
|
409 |
+
return add_query_arg( array(
|
410 |
+
'post_type' => $this->_menu_slug
|
411 |
+
), 'edit.php' );
|
412 |
+
}
|
413 |
+
|
414 |
+
if ( false === strpos( $this->_menu_slug, '.php?' ) ) {
|
415 |
+
return $this->_menu_slug;
|
416 |
+
} else {
|
417 |
+
return $this->_module_unique_affix;
|
418 |
+
}
|
419 |
+
}
|
420 |
+
|
421 |
+
/**
|
422 |
+
* @author Vova Feldman (@svovaf)
|
423 |
+
* @since 1.1.3
|
424 |
+
*
|
425 |
+
* @return string
|
426 |
+
*/
|
427 |
+
function get_top_level_menu_slug() {
|
428 |
+
return $this->has_custom_parent() ?
|
429 |
+
$this->get_parent_slug() :
|
430 |
+
$this->get_raw_slug();
|
431 |
+
}
|
432 |
+
|
433 |
+
/**
|
434 |
+
* Is user on plugin's admin activation page.
|
435 |
+
*
|
436 |
+
* @author Vova Feldman (@svovaf)
|
437 |
+
* @since 1.0.8
|
438 |
+
*
|
439 |
+
* @param bool $show_opt_in_on_themes_page Since 2.3.1
|
440 |
+
*
|
441 |
+
* @return bool
|
442 |
+
*
|
443 |
+
* @deprecated Please use is_activation_page() instead.
|
444 |
+
*/
|
445 |
+
function is_main_settings_page( $show_opt_in_on_themes_page = false ) {
|
446 |
+
return $this->is_activation_page( $show_opt_in_on_themes_page );
|
447 |
+
}
|
448 |
+
|
449 |
+
/**
|
450 |
+
* Is user on product's admin activation page.
|
451 |
+
*
|
452 |
+
* @author Vova Feldman (@svovaf)
|
453 |
+
* @since 2.3.1
|
454 |
+
*
|
455 |
+
* @param bool $show_opt_in_on_themes_page Since 2.3.1
|
456 |
+
*
|
457 |
+
* @return bool
|
458 |
+
*/
|
459 |
+
function is_activation_page( $show_opt_in_on_themes_page = false ) {
|
460 |
+
if ( $show_opt_in_on_themes_page ) {
|
461 |
+
/**
|
462 |
+
* In activation only when show_optin query string param is given.
|
463 |
+
*
|
464 |
+
* @since 1.2.2
|
465 |
+
*/
|
466 |
+
return (
|
467 |
+
( WP_FS__MODULE_TYPE_THEME === $this->_module_type ) &&
|
468 |
+
Freemius::is_themes_page() &&
|
469 |
+
fs_request_get_bool( $this->_module_unique_affix . '_show_optin' )
|
470 |
+
);
|
471 |
+
}
|
472 |
+
|
473 |
+
if ( $this->_menu_exists &&
|
474 |
+
( fs_is_plugin_page( $this->_menu_slug ) || fs_is_plugin_page( $this->_module_unique_affix ) )
|
475 |
+
) {
|
476 |
+
/**
|
477 |
+
* Module has a settings menu and the context page is the main settings page, so assume it's in
|
478 |
+
* activation (doesn't really check if already opted-in/skipped or not).
|
479 |
+
*
|
480 |
+
* @since 1.2.2
|
481 |
+
*/
|
482 |
+
return true;
|
483 |
+
}
|
484 |
+
|
485 |
+
return false;
|
486 |
+
}
|
487 |
+
|
488 |
+
#region Submenu Override
|
489 |
+
|
490 |
+
/**
|
491 |
+
* Override submenu's action.
|
492 |
+
*
|
493 |
+
* @author Vova Feldman (@svovaf)
|
494 |
+
* @since 1.1.0
|
495 |
+
*
|
496 |
+
* @param string $parent_slug
|
497 |
+
* @param string $menu_slug
|
498 |
+
* @param callable $function
|
499 |
+
*
|
500 |
+
* @return false|string If submenu exist, will return the hook name.
|
501 |
+
*/
|
502 |
+
function override_submenu_action( $parent_slug, $menu_slug, $function ) {
|
503 |
+
global $submenu;
|
504 |
+
|
505 |
+
$menu_slug = plugin_basename( $menu_slug );
|
506 |
+
$parent_slug = plugin_basename( $parent_slug );
|
507 |
+
|
508 |
+
if ( ! isset( $submenu[ $parent_slug ] ) ) {
|
509 |
+
// Parent menu not exist.
|
510 |
+
return false;
|
511 |
+
}
|
512 |
+
|
513 |
+
$found_submenu_item = false;
|
514 |
+
foreach ( $submenu[ $parent_slug ] as $submenu_item ) {
|
515 |
+
if ( $menu_slug === $submenu_item[2] ) {
|
516 |
+
$found_submenu_item = $submenu_item;
|
517 |
+
break;
|
518 |
+
}
|
519 |
+
}
|
520 |
+
|
521 |
+
if ( false === $found_submenu_item ) {
|
522 |
+
// Submenu item not found.
|
523 |
+
return false;
|
524 |
+
}
|
525 |
+
|
526 |
+
// Remove current function.
|
527 |
+
$hookname = get_plugin_page_hookname( $menu_slug, $parent_slug );
|
528 |
+
remove_all_actions( $hookname );
|
529 |
+
|
530 |
+
// Attach new action.
|
531 |
+
add_action( $hookname, $function );
|
532 |
+
|
533 |
+
return $hookname;
|
534 |
+
}
|
535 |
+
|
536 |
+
#endregion Submenu Override
|
537 |
+
|
538 |
+
#region Top level menu Override
|
539 |
+
|
540 |
+
/**
|
541 |
+
* Find plugin's admin dashboard main menu item.
|
542 |
+
*
|
543 |
+
* @author Vova Feldman (@svovaf)
|
544 |
+
* @since 1.0.2
|
545 |
+
*
|
546 |
+
* @return string[]|false
|
547 |
+
*/
|
548 |
+
private function find_top_level_menu() {
|
549 |
+
global $menu;
|
550 |
+
|
551 |
+
$position = - 1;
|
552 |
+
$found_menu = false;
|
553 |
+
|
554 |
+
$menu_slug = $this->get_raw_slug();
|
555 |
+
|
556 |
+
$hook_name = get_plugin_page_hookname( $menu_slug, '' );
|
557 |
+
foreach ( $menu as $pos => $m ) {
|
558 |
+
if ( $menu_slug === $m[2] ) {
|
559 |
+
$position = $pos;
|
560 |
+
$found_menu = $m;
|
561 |
+
break;
|
562 |
+
}
|
563 |
+
}
|
564 |
+
|
565 |
+
if ( false === $found_menu ) {
|
566 |
+
return false;
|
567 |
+
}
|
568 |
+
|
569 |
+
return array(
|
570 |
+
'menu' => $found_menu,
|
571 |
+
'position' => $position,
|
572 |
+
'hook_name' => $hook_name
|
573 |
+
);
|
574 |
+
}
|
575 |
+
|
576 |
+
/**
|
577 |
+
* Find plugin's admin dashboard main submenu item.
|
578 |
+
*
|
579 |
+
* @author Vova Feldman (@svovaf)
|
580 |
+
* @since 1.2.1.6
|
581 |
+
*
|
582 |
+
* @return array|false
|
583 |
+
*/
|
584 |
+
private function find_main_submenu() {
|
585 |
+
global $submenu;
|
586 |
+
|
587 |
+
$top_level_menu_slug = $this->get_top_level_menu_slug();
|
588 |
+
|
589 |
+
if ( ! isset( $submenu[ $top_level_menu_slug ] ) ) {
|
590 |
+
return false;
|
591 |
+
}
|
592 |
+
|
593 |
+
$submenu_slug = $this->get_raw_slug();
|
594 |
+
|
595 |
+
$position = - 1;
|
596 |
+
$found_submenu = false;
|
597 |
+
|
598 |
+
$hook_name = get_plugin_page_hookname( $submenu_slug, '' );
|
599 |
+
|
600 |
+
foreach ( $submenu[ $top_level_menu_slug ] as $pos => $sub ) {
|
601 |
+
if ( $submenu_slug === $sub[2] ) {
|
602 |
+
$position = $pos;
|
603 |
+
$found_submenu = $sub;
|
604 |
+
}
|
605 |
+
}
|
606 |
+
|
607 |
+
if ( false === $found_submenu ) {
|
608 |
+
return false;
|
609 |
+
}
|
610 |
+
|
611 |
+
return array(
|
612 |
+
'menu' => $found_submenu,
|
613 |
+
'parent_slug' => $top_level_menu_slug,
|
614 |
+
'position' => $position,
|
615 |
+
'hook_name' => $hook_name
|
616 |
+
);
|
617 |
+
}
|
618 |
+
|
619 |
+
/**
|
620 |
+
* Remove all sub-menu items.
|
621 |
+
*
|
622 |
+
* @author Vova Feldman (@svovaf)
|
623 |
+
* @since 1.0.7
|
624 |
+
*
|
625 |
+
* @return bool If submenu with plugin's menu slug was found.
|
626 |
+
*/
|
627 |
+
private function remove_all_submenu_items() {
|
628 |
+
global $submenu;
|
629 |
+
|
630 |
+
$menu_slug = $this->get_raw_slug();
|
631 |
+
|
632 |
+
if ( ! isset( $submenu[ $menu_slug ] ) ) {
|
633 |
+
return false;
|
634 |
+
}
|
635 |
+
|
636 |
+
/**
|
637 |
+
* This method is NOT executed for WordPress.org themes.
|
638 |
+
* Since we maintain only one version of the SDK we added this small
|
639 |
+
* hack to avoid the error from Theme Check since it's a false-positive.
|
640 |
+
*
|
641 |
+
* @author Vova Feldman (@svovaf)
|
642 |
+
* @since 1.2.2.7
|
643 |
+
*/
|
644 |
+
$submenu_ref = &$submenu;
|
645 |
+
$submenu_ref[ $menu_slug ] = array();
|
646 |
+
|
647 |
+
return true;
|
648 |
+
}
|
649 |
+
|
650 |
+
/**
|
651 |
+
*
|
652 |
+
* @author Vova Feldman (@svovaf)
|
653 |
+
* @since 1.0.9
|
654 |
+
*
|
655 |
+
* @param bool $remove_top_level_menu
|
656 |
+
*
|
657 |
+
* @return false|array[string]mixed
|
658 |
+
*/
|
659 |
+
function remove_menu_item( $remove_top_level_menu = false ) {
|
660 |
+
$this->_logger->entrance();
|
661 |
+
|
662 |
+
// Find main menu item.
|
663 |
+
$top_level_menu = $this->find_top_level_menu();
|
664 |
+
|
665 |
+
if ( false === $top_level_menu ) {
|
666 |
+
return false;
|
667 |
+
}
|
668 |
+
|
669 |
+
// Remove it with its actions.
|
670 |
+
remove_all_actions( $top_level_menu['hook_name'] );
|
671 |
+
|
672 |
+
// Remove all submenu items.
|
673 |
+
$this->remove_all_submenu_items();
|
674 |
+
|
675 |
+
if ( $remove_top_level_menu ) {
|
676 |
+
global $menu;
|
677 |
+
unset( $menu[ $top_level_menu['position'] ] );
|
678 |
+
}
|
679 |
+
|
680 |
+
return $top_level_menu;
|
681 |
+
}
|
682 |
+
|
683 |
+
/**
|
684 |
+
* Get module's main admin setting page URL.
|
685 |
+
*
|
686 |
+
* @todo This method was only tested for wp.org compliant themes with a submenu item. Need to test for plugins with top level, submenu, and CPT top level, menu items.
|
687 |
+
*
|
688 |
+
* @author Vova Feldman (@svovaf)
|
689 |
+
* @since 1.2.2.7
|
690 |
+
*
|
691 |
+
* @return string
|
692 |
+
*/
|
693 |
+
function main_menu_url() {
|
694 |
+
$this->_logger->entrance();
|
695 |
+
|
696 |
+
if ( $this->_is_top_level ) {
|
697 |
+
$menu = $this->find_top_level_menu();
|
698 |
+
} else {
|
699 |
+
$menu = $this->find_main_submenu();
|
700 |
+
}
|
701 |
+
|
702 |
+
$parent_slug = isset( $menu['parent_slug'] ) ?
|
703 |
+
$menu['parent_slug'] :
|
704 |
+
'admin.php';
|
705 |
+
|
706 |
+
return admin_url(
|
707 |
+
$parent_slug .
|
708 |
+
( false === strpos( $parent_slug, '?' ) ? '?' : '&' ) .
|
709 |
+
'page=' .
|
710 |
+
$menu['menu'][2]
|
711 |
+
);
|
712 |
+
}
|
713 |
+
|
714 |
+
/**
|
715 |
+
* @author Vova Feldman (@svovaf)
|
716 |
+
* @since 1.1.4
|
717 |
+
*
|
718 |
+
* @param callable $function
|
719 |
+
*
|
720 |
+
* @return false|array[string]mixed
|
721 |
+
*/
|
722 |
+
function override_menu_item( $function ) {
|
723 |
+
$found_menu = $this->remove_menu_item();
|
724 |
+
|
725 |
+
if ( false === $found_menu ) {
|
726 |
+
return false;
|
727 |
+
}
|
728 |
+
|
729 |
+
if ( ! $this->is_top_level() || ! $this->is_cpt() ) {
|
730 |
+
$menu_slug = plugin_basename( $this->get_slug() );
|
731 |
+
|
732 |
+
$hookname = get_plugin_page_hookname( $menu_slug, '' );
|
733 |
+
|
734 |
+
// Override menu action.
|
735 |
+
add_action( $hookname, $function );
|
736 |
+
} else {
|
737 |
+
global $menu;
|
738 |
+
|
739 |
+
// Remove original CPT menu.
|
740 |
+
unset( $menu[ $found_menu['position'] ] );
|
741 |
+
|
742 |
+
// Create new top-level menu action.
|
743 |
+
$hookname = self::add_page(
|
744 |
+
$found_menu['menu'][3],
|
745 |
+
$found_menu['menu'][0],
|
746 |
+
'manage_options',
|
747 |
+
$this->get_slug(),
|
748 |
+
$function,
|
749 |
+
$found_menu['menu'][6],
|
750 |
+
$found_menu['position']
|
751 |
+
);
|
752 |
+
}
|
753 |
+
|
754 |
+
return $hookname;
|
755 |
+
}
|
756 |
+
|
757 |
+
/**
|
758 |
+
* Adds a counter to the module's top level menu item.
|
759 |
+
*
|
760 |
+
* @author Vova Feldman (@svovaf)
|
761 |
+
* @since 1.2.1.5
|
762 |
+
*
|
763 |
+
* @param int $counter
|
764 |
+
* @param string $class
|
765 |
+
*/
|
766 |
+
function add_counter_to_menu_item( $counter = 1, $class = '' ) {
|
767 |
+
global $menu, $submenu;
|
768 |
+
|
769 |
+
$mask = '%s <span class="update-plugins %s count-%3$s" aria-hidden="true"><span>%3$s<span class="screen-reader-text">%3$s notifications</span></span></span>';
|
770 |
+
|
771 |
+
/**
|
772 |
+
* This method is NOT executed for WordPress.org themes.
|
773 |
+
* Since we maintain only one version of the SDK we added this small
|
774 |
+
* hack to avoid the error from Theme Check since it's a false-positive.
|
775 |
+
*
|
776 |
+
* @author Vova Feldman (@svovaf)
|
777 |
+
* @since 1.2.2.7
|
778 |
+
*/
|
779 |
+
$menu_ref = &$menu;
|
780 |
+
$submenu_ref = &$submenu;
|
781 |
+
|
782 |
+
if ( $this->_is_top_level ) {
|
783 |
+
// Find main menu item.
|
784 |
+
$found_menu = $this->find_top_level_menu();
|
785 |
+
|
786 |
+
if ( false !== $found_menu ) {
|
787 |
+
// Override menu label.
|
788 |
+
$menu_ref[ $found_menu['position'] ][0] = sprintf(
|
789 |
+
$mask,
|
790 |
+
$found_menu['menu'][0],
|
791 |
+
$class,
|
792 |
+
$counter
|
793 |
+
);
|
794 |
+
}
|
795 |
+
} else {
|
796 |
+
$found_submenu = $this->find_main_submenu();
|
797 |
+
|
798 |
+
if ( false !== $found_submenu ) {
|
799 |
+
// Override menu label.
|
800 |
+
$submenu_ref[ $found_submenu['parent_slug'] ][ $found_submenu['position'] ][0] = sprintf(
|
801 |
+
$mask,
|
802 |
+
$found_submenu['menu'][0],
|
803 |
+
$class,
|
804 |
+
$counter
|
805 |
+
);
|
806 |
+
}
|
807 |
+
}
|
808 |
+
}
|
809 |
+
|
810 |
+
#endregion Top level menu Override
|
811 |
+
|
812 |
+
/**
|
813 |
+
* Add a top-level menu page.
|
814 |
+
*
|
815 |
+
* Note for WordPress.org Theme/Plugin reviewer:
|
816 |
+
*
|
817 |
+
* This is a replication of `add_menu_page()` to avoid Theme Check warning.
|
818 |
+
*
|
819 |
+
* Why?
|
820 |
+
* ====
|
821 |
+
* Freemius is an SDK for plugin and theme developers. Since the core
|
822 |
+
* of the SDK is relevant both for plugins and themes, for obvious reasons,
|
823 |
+
* we only develop and maintain one code base.
|
824 |
+
*
|
825 |
+
* This method will not run for wp.org themes (only plugins) since theme
|
826 |
+
* admin settings/options are now only allowed in the customizer.
|
827 |
+
*
|
828 |
+
* If you have any questions or need clarifications, please don't hesitate
|
829 |
+
* pinging me on slack, my username is @svovaf.
|
830 |
+
*
|
831 |
+
* @author Vova Feldman (@svovaf)
|
832 |
+
* @since 1.2.2
|
833 |
+
*
|
834 |
+
* @param string $page_title The text to be displayed in the title tags of the page when the menu is
|
835 |
+
* selected.
|
836 |
+
* @param string $menu_title The text to be used for the menu.
|
837 |
+
* @param string $capability The capability required for this menu to be displayed to the user.
|
838 |
+
* @param string $menu_slug The slug name to refer to this menu by (should be unique for this menu).
|
839 |
+
* @param callable|string $function The function to be called to output the content for this page.
|
840 |
+
* @param string $icon_url The URL to the icon to be used for this menu.
|
841 |
+
* * Pass a base64-encoded SVG using a data URI, which will be colored to
|
842 |
+
* match the color scheme. This should begin with
|
843 |
+
* 'data:image/svg+xml;base64,'.
|
844 |
+
* * Pass the name of a Dashicons helper class to use a font icon,
|
845 |
+
* e.g. 'dashicons-chart-pie'.
|
846 |
+
* * Pass 'none' to leave div.wp-menu-image empty so an icon can be added
|
847 |
+
* via CSS.
|
848 |
+
* @param int $position The position in the menu order this one should appear.
|
849 |
+
*
|
850 |
+
* @return string The resulting page's hook_suffix.
|
851 |
+
*/
|
852 |
+
static function add_page(
|
853 |
+
$page_title,
|
854 |
+
$menu_title,
|
855 |
+
$capability,
|
856 |
+
$menu_slug,
|
857 |
+
$function = '',
|
858 |
+
$icon_url = '',
|
859 |
+
$position = null
|
860 |
+
) {
|
861 |
+
$fn = 'add_menu' . '_page';
|
862 |
+
|
863 |
+
return $fn(
|
864 |
+
$page_title,
|
865 |
+
$menu_title,
|
866 |
+
$capability,
|
867 |
+
$menu_slug,
|
868 |
+
$function,
|
869 |
+
$icon_url,
|
870 |
+
$position
|
871 |
+
);
|
872 |
+
}
|
873 |
+
|
874 |
+
/**
|
875 |
+
* Add page and update menu instance settings.
|
876 |
+
*
|
877 |
+
* @author Vova Feldman (@svovaf)
|
878 |
+
* @since 2.0.0
|
879 |
+
*
|
880 |
+
* @param string $page_title
|
881 |
+
* @param string $menu_title
|
882 |
+
* @param string $capability
|
883 |
+
* @param string $menu_slug
|
884 |
+
* @param callable|string $function
|
885 |
+
* @param string $icon_url
|
886 |
+
* @param int|null $position
|
887 |
+
*
|
888 |
+
* @return string
|
889 |
+
*/
|
890 |
+
function add_page_and_update(
|
891 |
+
$page_title,
|
892 |
+
$menu_title,
|
893 |
+
$capability,
|
894 |
+
$menu_slug,
|
895 |
+
$function = '',
|
896 |
+
$icon_url = '',
|
897 |
+
$position = null
|
898 |
+
) {
|
899 |
+
$this->_menu_slug = $menu_slug;
|
900 |
+
$this->_is_top_level = true;
|
901 |
+
$this->_menu_exists = true;
|
902 |
+
$this->_network_menu_exists = true;
|
903 |
+
|
904 |
+
return self::add_page(
|
905 |
+
$page_title,
|
906 |
+
$menu_title,
|
907 |
+
$capability,
|
908 |
+
$menu_slug,
|
909 |
+
$function,
|
910 |
+
$icon_url,
|
911 |
+
$position
|
912 |
+
);
|
913 |
+
}
|
914 |
+
|
915 |
+
/**
|
916 |
+
* Add a submenu page.
|
917 |
+
*
|
918 |
+
* Note for WordPress.org Theme/Plugin reviewer:
|
919 |
+
*
|
920 |
+
* This is a replication of `add_submenu_page()` to avoid Theme Check warning.
|
921 |
+
*
|
922 |
+
* Why?
|
923 |
+
* ====
|
924 |
+
* Freemius is an SDK for plugin and theme developers. Since the core
|
925 |
+
* of the SDK is relevant both for plugins and themes, for obvious reasons,
|
926 |
+
* we only develop and maintain one code base.
|
927 |
+
*
|
928 |
+
* This method will not run for wp.org themes (only plugins) since theme
|
929 |
+
* admin settings/options are now only allowed in the customizer.
|
930 |
+
*
|
931 |
+
* If you have any questions or need clarifications, please don't hesitate
|
932 |
+
* pinging me on slack, my username is @svovaf.
|
933 |
+
*
|
934 |
+
* @author Vova Feldman (@svovaf)
|
935 |
+
* @since 1.2.2
|
936 |
+
*
|
937 |
+
* @param string $parent_slug The slug name for the parent menu (or the file name of a standard
|
938 |
+
* WordPress admin page).
|
939 |
+
* @param string $page_title The text to be displayed in the title tags of the page when the menu is
|
940 |
+
* selected.
|
941 |
+
* @param string $menu_title The text to be used for the menu.
|
942 |
+
* @param string $capability The capability required for this menu to be displayed to the user.
|
943 |
+
* @param string $menu_slug The slug name to refer to this menu by (should be unique for this menu).
|
944 |
+
* @param callable|string $function The function to be called to output the content for this page.
|
945 |
+
*
|
946 |
+
* @return false|string The resulting page's hook_suffix, or false if the user does not have the capability
|
947 |
+
* required.
|
948 |
+
*/
|
949 |
+
static function add_subpage(
|
950 |
+
$parent_slug,
|
951 |
+
$page_title,
|
952 |
+
$menu_title,
|
953 |
+
$capability,
|
954 |
+
$menu_slug,
|
955 |
+
$function = ''
|
956 |
+
) {
|
957 |
+
$fn = 'add_submenu' . '_page';
|
958 |
+
|
959 |
+
return $fn( $parent_slug,
|
960 |
+
$page_title,
|
961 |
+
$menu_title,
|
962 |
+
$capability,
|
963 |
+
$menu_slug,
|
964 |
+
$function
|
965 |
+
);
|
966 |
+
}
|
967 |
+
|
968 |
+
/**
|
969 |
+
* Add sub page and update menu instance settings.
|
970 |
+
*
|
971 |
+
* @author Vova Feldman (@svovaf)
|
972 |
+
* @since 2.0.0
|
973 |
+
*
|
974 |
+
* @param string $parent_slug
|
975 |
+
* @param string $page_title
|
976 |
+
* @param string $menu_title
|
977 |
+
* @param string $capability
|
978 |
+
* @param string $menu_slug
|
979 |
+
* @param callable|string $function
|
980 |
+
*
|
981 |
+
* @return string
|
982 |
+
*/
|
983 |
+
function add_subpage_and_update(
|
984 |
+
$parent_slug,
|
985 |
+
$page_title,
|
986 |
+
$menu_title,
|
987 |
+
$capability,
|
988 |
+
$menu_slug,
|
989 |
+
$function = ''
|
990 |
+
) {
|
991 |
+
$this->_menu_slug = $menu_slug;
|
992 |
+
$this->_parent_slug = $parent_slug;
|
993 |
+
$this->_is_top_level = false;
|
994 |
+
$this->_menu_exists = true;
|
995 |
+
$this->_network_menu_exists = true;
|
996 |
+
|
997 |
+
return self::add_subpage(
|
998 |
+
$parent_slug,
|
999 |
+
$page_title,
|
1000 |
+
$menu_title,
|
1001 |
+
$capability,
|
1002 |
+
$menu_slug,
|
1003 |
+
$function
|
1004 |
+
);
|
1005 |
+
}
|
1006 |
}
|
freemius/includes/managers/class-fs-cache-manager.php
CHANGED
@@ -1,326 +1,326 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.1.6
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
class FS_Cache_Manager {
|
14 |
-
/**
|
15 |
-
* @var FS_Option_Manager
|
16 |
-
*/
|
17 |
-
private $_options;
|
18 |
-
/**
|
19 |
-
* @var FS_Logger
|
20 |
-
*/
|
21 |
-
private $_logger;
|
22 |
-
|
23 |
-
/**
|
24 |
-
* @var FS_Cache_Manager[]
|
25 |
-
*/
|
26 |
-
private static $_MANAGERS = array();
|
27 |
-
|
28 |
-
/**
|
29 |
-
* @author Vova Feldman (@svovaf)
|
30 |
-
* @since 1.1.3
|
31 |
-
*
|
32 |
-
* @param string $id
|
33 |
-
*/
|
34 |
-
private function __construct( $id ) {
|
35 |
-
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_cach_mngr_' . $id, WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
36 |
-
|
37 |
-
$this->_logger->entrance();
|
38 |
-
$this->_logger->log( 'id = ' . $id );
|
39 |
-
|
40 |
-
$this->_options = FS_Option_Manager::get_manager( $id, true, true, false );
|
41 |
-
}
|
42 |
-
|
43 |
-
/**
|
44 |
-
* @author Vova Feldman (@svovaf)
|
45 |
-
* @since 1.1.6
|
46 |
-
*
|
47 |
-
* @param $id
|
48 |
-
*
|
49 |
-
* @return FS_Cache_Manager
|
50 |
-
*/
|
51 |
-
static function get_manager( $id ) {
|
52 |
-
$id = strtolower( $id );
|
53 |
-
|
54 |
-
if ( ! isset( self::$_MANAGERS[ $id ] ) ) {
|
55 |
-
self::$_MANAGERS[ $id ] = new FS_Cache_Manager( $id );
|
56 |
-
}
|
57 |
-
|
58 |
-
return self::$_MANAGERS[ $id ];
|
59 |
-
}
|
60 |
-
|
61 |
-
/**
|
62 |
-
* @author Vova Feldman (@svovaf)
|
63 |
-
* @since 1.1.6
|
64 |
-
*
|
65 |
-
* @return bool
|
66 |
-
*/
|
67 |
-
function is_empty() {
|
68 |
-
$this->_logger->entrance();
|
69 |
-
|
70 |
-
return $this->_options->is_empty();
|
71 |
-
}
|
72 |
-
|
73 |
-
/**
|
74 |
-
* @author Vova Feldman (@svovaf)
|
75 |
-
* @since 1.1.6
|
76 |
-
*/
|
77 |
-
function clear() {
|
78 |
-
$this->_logger->entrance();
|
79 |
-
|
80 |
-
$this->_options->clear( true );
|
81 |
-
}
|
82 |
-
|
83 |
-
/**
|
84 |
-
* Delete cache manager from DB.
|
85 |
-
*
|
86 |
-
* @author Vova Feldman (@svovaf)
|
87 |
-
* @since 1.0.9
|
88 |
-
*/
|
89 |
-
function delete() {
|
90 |
-
$this->_options->delete();
|
91 |
-
}
|
92 |
-
|
93 |
-
/**
|
94 |
-
* Check if there's a cached item.
|
95 |
-
*
|
96 |
-
* @author Vova Feldman (@svovaf)
|
97 |
-
* @since 1.1.6
|
98 |
-
*
|
99 |
-
* @param string $key
|
100 |
-
*
|
101 |
-
* @return bool
|
102 |
-
*/
|
103 |
-
function has( $key ) {
|
104 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
105 |
-
|
106 |
-
return ( is_object( $cache_entry ) &&
|
107 |
-
isset( $cache_entry->timestamp ) &&
|
108 |
-
is_numeric( $cache_entry->timestamp )
|
109 |
-
);
|
110 |
-
}
|
111 |
-
|
112 |
-
/**
|
113 |
-
* Check if there's a valid cached item.
|
114 |
-
*
|
115 |
-
* @author Vova Feldman (@svovaf)
|
116 |
-
* @since 1.1.6
|
117 |
-
*
|
118 |
-
* @param string $key
|
119 |
-
* @param null|int $expiration Since 1.2.2.7
|
120 |
-
*
|
121 |
-
* @return bool
|
122 |
-
*/
|
123 |
-
function has_valid( $key, $expiration = null ) {
|
124 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
125 |
-
|
126 |
-
$is_valid = ( is_object( $cache_entry ) &&
|
127 |
-
isset( $cache_entry->timestamp ) &&
|
128 |
-
is_numeric( $cache_entry->timestamp ) &&
|
129 |
-
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
130 |
-
);
|
131 |
-
|
132 |
-
if ( $is_valid &&
|
133 |
-
is_numeric( $expiration ) &&
|
134 |
-
isset( $cache_entry->created ) &&
|
135 |
-
is_numeric( $cache_entry->created ) &&
|
136 |
-
$cache_entry->created + $expiration < WP_FS__SCRIPT_START_TIME
|
137 |
-
) {
|
138 |
-
/**
|
139 |
-
* Even if the cache is still valid, since we are checking for validity
|
140 |
-
* with an explicit expiration period, if the period has past, return
|
141 |
-
* `false` as if the cache is invalid.
|
142 |
-
*
|
143 |
-
* @since 1.2.2.7
|
144 |
-
*/
|
145 |
-
$is_valid = false;
|
146 |
-
}
|
147 |
-
|
148 |
-
return $is_valid;
|
149 |
-
}
|
150 |
-
|
151 |
-
/**
|
152 |
-
* @author Vova Feldman (@svovaf)
|
153 |
-
* @since 1.1.6
|
154 |
-
*
|
155 |
-
* @param string $key
|
156 |
-
* @param mixed $default
|
157 |
-
*
|
158 |
-
* @return mixed
|
159 |
-
*/
|
160 |
-
function get( $key, $default = null ) {
|
161 |
-
$this->_logger->entrance( 'key = ' . $key );
|
162 |
-
|
163 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
164 |
-
|
165 |
-
if ( is_object( $cache_entry ) &&
|
166 |
-
isset( $cache_entry->timestamp ) &&
|
167 |
-
is_numeric( $cache_entry->timestamp )
|
168 |
-
) {
|
169 |
-
return $cache_entry->result;
|
170 |
-
}
|
171 |
-
|
172 |
-
return is_object( $default ) ? clone $default : $default;
|
173 |
-
}
|
174 |
-
|
175 |
-
/**
|
176 |
-
* @author Vova Feldman (@svovaf)
|
177 |
-
* @since 1.1.6
|
178 |
-
*
|
179 |
-
* @param string $key
|
180 |
-
* @param mixed $default
|
181 |
-
*
|
182 |
-
* @return mixed
|
183 |
-
*/
|
184 |
-
function get_valid( $key, $default = null ) {
|
185 |
-
$this->_logger->entrance( 'key = ' . $key );
|
186 |
-
|
187 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
188 |
-
|
189 |
-
if ( is_object( $cache_entry ) &&
|
190 |
-
isset( $cache_entry->timestamp ) &&
|
191 |
-
is_numeric( $cache_entry->timestamp ) &&
|
192 |
-
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
193 |
-
) {
|
194 |
-
return $cache_entry->result;
|
195 |
-
}
|
196 |
-
|
197 |
-
return is_object( $default ) ? clone $default : $default;
|
198 |
-
}
|
199 |
-
|
200 |
-
/**
|
201 |
-
* @author Vova Feldman (@svovaf)
|
202 |
-
* @since 1.1.6
|
203 |
-
*
|
204 |
-
* @param string $key
|
205 |
-
* @param mixed $value
|
206 |
-
* @param int $expiration
|
207 |
-
* @param int $created Since 2.0.0 Cache creation date.
|
208 |
-
*/
|
209 |
-
function set( $key, $value, $expiration = WP_FS__TIME_24_HOURS_IN_SEC, $created = WP_FS__SCRIPT_START_TIME ) {
|
210 |
-
$this->_logger->entrance( 'key = ' . $key );
|
211 |
-
|
212 |
-
$cache_entry = new stdClass();
|
213 |
-
|
214 |
-
$cache_entry->result = $value;
|
215 |
-
$cache_entry->created = $created;
|
216 |
-
$cache_entry->timestamp = $created + $expiration;
|
217 |
-
$this->_options->set_option( $key, $cache_entry, true );
|
218 |
-
}
|
219 |
-
|
220 |
-
/**
|
221 |
-
* Get cached record expiration, or false if not cached or expired.
|
222 |
-
*
|
223 |
-
* @author Vova Feldman (@svovaf)
|
224 |
-
* @since 1.1.7.3
|
225 |
-
*
|
226 |
-
* @param string $key
|
227 |
-
*
|
228 |
-
* @return bool|int
|
229 |
-
*/
|
230 |
-
function get_record_expiration( $key ) {
|
231 |
-
$this->_logger->entrance( 'key = ' . $key );
|
232 |
-
|
233 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
234 |
-
|
235 |
-
if ( is_object( $cache_entry ) &&
|
236 |
-
isset( $cache_entry->timestamp ) &&
|
237 |
-
is_numeric( $cache_entry->timestamp ) &&
|
238 |
-
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
239 |
-
) {
|
240 |
-
return $cache_entry->timestamp;
|
241 |
-
}
|
242 |
-
|
243 |
-
return false;
|
244 |
-
}
|
245 |
-
|
246 |
-
/**
|
247 |
-
* Purge cached item.
|
248 |
-
*
|
249 |
-
* @author Vova Feldman (@svovaf)
|
250 |
-
* @since 1.1.6
|
251 |
-
*
|
252 |
-
* @param string $key
|
253 |
-
*/
|
254 |
-
function purge( $key ) {
|
255 |
-
$this->_logger->entrance( 'key = ' . $key );
|
256 |
-
|
257 |
-
$this->_options->unset_option( $key, true );
|
258 |
-
}
|
259 |
-
|
260 |
-
/**
|
261 |
-
* Extend cached item caching period.
|
262 |
-
*
|
263 |
-
* @author Vova Feldman (@svovaf)
|
264 |
-
* @since 2.0.0
|
265 |
-
*
|
266 |
-
* @param string $key
|
267 |
-
* @param int $expiration
|
268 |
-
*
|
269 |
-
* @return bool
|
270 |
-
*/
|
271 |
-
function update_expiration( $key, $expiration = WP_FS__TIME_24_HOURS_IN_SEC ) {
|
272 |
-
$this->_logger->entrance( 'key = ' . $key );
|
273 |
-
|
274 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
275 |
-
|
276 |
-
if ( ! is_object( $cache_entry ) ||
|
277 |
-
! isset( $cache_entry->timestamp ) ||
|
278 |
-
! is_numeric( $cache_entry->timestamp )
|
279 |
-
) {
|
280 |
-
return false;
|
281 |
-
}
|
282 |
-
|
283 |
-
$this->set( $key, $cache_entry->result, $expiration, $cache_entry->created );
|
284 |
-
|
285 |
-
return true;
|
286 |
-
}
|
287 |
-
|
288 |
-
/**
|
289 |
-
* Set cached item as expired.
|
290 |
-
*
|
291 |
-
* @author Vova Feldman (@svovaf)
|
292 |
-
* @since 1.2.2.7
|
293 |
-
*
|
294 |
-
* @param string $key
|
295 |
-
*/
|
296 |
-
function expire( $key ) {
|
297 |
-
$this->_logger->entrance( 'key = ' . $key );
|
298 |
-
|
299 |
-
$cache_entry = $this->_options->get_option( $key, false );
|
300 |
-
|
301 |
-
if ( is_object( $cache_entry ) &&
|
302 |
-
isset( $cache_entry->timestamp ) &&
|
303 |
-
is_numeric( $cache_entry->timestamp )
|
304 |
-
) {
|
305 |
-
// Set to expired.
|
306 |
-
$cache_entry->timestamp = WP_FS__SCRIPT_START_TIME;
|
307 |
-
$this->_options->set_option( $key, $cache_entry, true );
|
308 |
-
}
|
309 |
-
}
|
310 |
-
|
311 |
-
#--------------------------------------------------------------------------------
|
312 |
-
#region Migration
|
313 |
-
#--------------------------------------------------------------------------------
|
314 |
-
|
315 |
-
/**
|
316 |
-
* Migrate options from site level.
|
317 |
-
*
|
318 |
-
* @author Vova Feldman (@svovaf)
|
319 |
-
* @since 2.0.0
|
320 |
-
*/
|
321 |
-
function migrate_to_network() {
|
322 |
-
$this->_options->migrate_to_network();
|
323 |
-
}
|
324 |
-
|
325 |
-
#endregion
|
326 |
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.1.6
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
class FS_Cache_Manager {
|
14 |
+
/**
|
15 |
+
* @var FS_Option_Manager
|
16 |
+
*/
|
17 |
+
private $_options;
|
18 |
+
/**
|
19 |
+
* @var FS_Logger
|
20 |
+
*/
|
21 |
+
private $_logger;
|
22 |
+
|
23 |
+
/**
|
24 |
+
* @var FS_Cache_Manager[]
|
25 |
+
*/
|
26 |
+
private static $_MANAGERS = array();
|
27 |
+
|
28 |
+
/**
|
29 |
+
* @author Vova Feldman (@svovaf)
|
30 |
+
* @since 1.1.3
|
31 |
+
*
|
32 |
+
* @param string $id
|
33 |
+
*/
|
34 |
+
private function __construct( $id ) {
|
35 |
+
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_cach_mngr_' . $id, WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
36 |
+
|
37 |
+
$this->_logger->entrance();
|
38 |
+
$this->_logger->log( 'id = ' . $id );
|
39 |
+
|
40 |
+
$this->_options = FS_Option_Manager::get_manager( $id, true, true, false );
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* @author Vova Feldman (@svovaf)
|
45 |
+
* @since 1.1.6
|
46 |
+
*
|
47 |
+
* @param $id
|
48 |
+
*
|
49 |
+
* @return FS_Cache_Manager
|
50 |
+
*/
|
51 |
+
static function get_manager( $id ) {
|
52 |
+
$id = strtolower( $id );
|
53 |
+
|
54 |
+
if ( ! isset( self::$_MANAGERS[ $id ] ) ) {
|
55 |
+
self::$_MANAGERS[ $id ] = new FS_Cache_Manager( $id );
|
56 |
+
}
|
57 |
+
|
58 |
+
return self::$_MANAGERS[ $id ];
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* @author Vova Feldman (@svovaf)
|
63 |
+
* @since 1.1.6
|
64 |
+
*
|
65 |
+
* @return bool
|
66 |
+
*/
|
67 |
+
function is_empty() {
|
68 |
+
$this->_logger->entrance();
|
69 |
+
|
70 |
+
return $this->_options->is_empty();
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* @author Vova Feldman (@svovaf)
|
75 |
+
* @since 1.1.6
|
76 |
+
*/
|
77 |
+
function clear() {
|
78 |
+
$this->_logger->entrance();
|
79 |
+
|
80 |
+
$this->_options->clear( true );
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* Delete cache manager from DB.
|
85 |
+
*
|
86 |
+
* @author Vova Feldman (@svovaf)
|
87 |
+
* @since 1.0.9
|
88 |
+
*/
|
89 |
+
function delete() {
|
90 |
+
$this->_options->delete();
|
91 |
+
}
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Check if there's a cached item.
|
95 |
+
*
|
96 |
+
* @author Vova Feldman (@svovaf)
|
97 |
+
* @since 1.1.6
|
98 |
+
*
|
99 |
+
* @param string $key
|
100 |
+
*
|
101 |
+
* @return bool
|
102 |
+
*/
|
103 |
+
function has( $key ) {
|
104 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
105 |
+
|
106 |
+
return ( is_object( $cache_entry ) &&
|
107 |
+
isset( $cache_entry->timestamp ) &&
|
108 |
+
is_numeric( $cache_entry->timestamp )
|
109 |
+
);
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* Check if there's a valid cached item.
|
114 |
+
*
|
115 |
+
* @author Vova Feldman (@svovaf)
|
116 |
+
* @since 1.1.6
|
117 |
+
*
|
118 |
+
* @param string $key
|
119 |
+
* @param null|int $expiration Since 1.2.2.7
|
120 |
+
*
|
121 |
+
* @return bool
|
122 |
+
*/
|
123 |
+
function has_valid( $key, $expiration = null ) {
|
124 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
125 |
+
|
126 |
+
$is_valid = ( is_object( $cache_entry ) &&
|
127 |
+
isset( $cache_entry->timestamp ) &&
|
128 |
+
is_numeric( $cache_entry->timestamp ) &&
|
129 |
+
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
130 |
+
);
|
131 |
+
|
132 |
+
if ( $is_valid &&
|
133 |
+
is_numeric( $expiration ) &&
|
134 |
+
isset( $cache_entry->created ) &&
|
135 |
+
is_numeric( $cache_entry->created ) &&
|
136 |
+
$cache_entry->created + $expiration < WP_FS__SCRIPT_START_TIME
|
137 |
+
) {
|
138 |
+
/**
|
139 |
+
* Even if the cache is still valid, since we are checking for validity
|
140 |
+
* with an explicit expiration period, if the period has past, return
|
141 |
+
* `false` as if the cache is invalid.
|
142 |
+
*
|
143 |
+
* @since 1.2.2.7
|
144 |
+
*/
|
145 |
+
$is_valid = false;
|
146 |
+
}
|
147 |
+
|
148 |
+
return $is_valid;
|
149 |
+
}
|
150 |
+
|
151 |
+
/**
|
152 |
+
* @author Vova Feldman (@svovaf)
|
153 |
+
* @since 1.1.6
|
154 |
+
*
|
155 |
+
* @param string $key
|
156 |
+
* @param mixed $default
|
157 |
+
*
|
158 |
+
* @return mixed
|
159 |
+
*/
|
160 |
+
function get( $key, $default = null ) {
|
161 |
+
$this->_logger->entrance( 'key = ' . $key );
|
162 |
+
|
163 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
164 |
+
|
165 |
+
if ( is_object( $cache_entry ) &&
|
166 |
+
isset( $cache_entry->timestamp ) &&
|
167 |
+
is_numeric( $cache_entry->timestamp )
|
168 |
+
) {
|
169 |
+
return $cache_entry->result;
|
170 |
+
}
|
171 |
+
|
172 |
+
return is_object( $default ) ? clone $default : $default;
|
173 |
+
}
|
174 |
+
|
175 |
+
/**
|
176 |
+
* @author Vova Feldman (@svovaf)
|
177 |
+
* @since 1.1.6
|
178 |
+
*
|
179 |
+
* @param string $key
|
180 |
+
* @param mixed $default
|
181 |
+
*
|
182 |
+
* @return mixed
|
183 |
+
*/
|
184 |
+
function get_valid( $key, $default = null ) {
|
185 |
+
$this->_logger->entrance( 'key = ' . $key );
|
186 |
+
|
187 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
188 |
+
|
189 |
+
if ( is_object( $cache_entry ) &&
|
190 |
+
isset( $cache_entry->timestamp ) &&
|
191 |
+
is_numeric( $cache_entry->timestamp ) &&
|
192 |
+
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
193 |
+
) {
|
194 |
+
return $cache_entry->result;
|
195 |
+
}
|
196 |
+
|
197 |
+
return is_object( $default ) ? clone $default : $default;
|
198 |
+
}
|
199 |
+
|
200 |
+
/**
|
201 |
+
* @author Vova Feldman (@svovaf)
|
202 |
+
* @since 1.1.6
|
203 |
+
*
|
204 |
+
* @param string $key
|
205 |
+
* @param mixed $value
|
206 |
+
* @param int $expiration
|
207 |
+
* @param int $created Since 2.0.0 Cache creation date.
|
208 |
+
*/
|
209 |
+
function set( $key, $value, $expiration = WP_FS__TIME_24_HOURS_IN_SEC, $created = WP_FS__SCRIPT_START_TIME ) {
|
210 |
+
$this->_logger->entrance( 'key = ' . $key );
|
211 |
+
|
212 |
+
$cache_entry = new stdClass();
|
213 |
+
|
214 |
+
$cache_entry->result = $value;
|
215 |
+
$cache_entry->created = $created;
|
216 |
+
$cache_entry->timestamp = $created + $expiration;
|
217 |
+
$this->_options->set_option( $key, $cache_entry, true );
|
218 |
+
}
|
219 |
+
|
220 |
+
/**
|
221 |
+
* Get cached record expiration, or false if not cached or expired.
|
222 |
+
*
|
223 |
+
* @author Vova Feldman (@svovaf)
|
224 |
+
* @since 1.1.7.3
|
225 |
+
*
|
226 |
+
* @param string $key
|
227 |
+
*
|
228 |
+
* @return bool|int
|
229 |
+
*/
|
230 |
+
function get_record_expiration( $key ) {
|
231 |
+
$this->_logger->entrance( 'key = ' . $key );
|
232 |
+
|
233 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
234 |
+
|
235 |
+
if ( is_object( $cache_entry ) &&
|
236 |
+
isset( $cache_entry->timestamp ) &&
|
237 |
+
is_numeric( $cache_entry->timestamp ) &&
|
238 |
+
$cache_entry->timestamp > WP_FS__SCRIPT_START_TIME
|
239 |
+
) {
|
240 |
+
return $cache_entry->timestamp;
|
241 |
+
}
|
242 |
+
|
243 |
+
return false;
|
244 |
+
}
|
245 |
+
|
246 |
+
/**
|
247 |
+
* Purge cached item.
|
248 |
+
*
|
249 |
+
* @author Vova Feldman (@svovaf)
|
250 |
+
* @since 1.1.6
|
251 |
+
*
|
252 |
+
* @param string $key
|
253 |
+
*/
|
254 |
+
function purge( $key ) {
|
255 |
+
$this->_logger->entrance( 'key = ' . $key );
|
256 |
+
|
257 |
+
$this->_options->unset_option( $key, true );
|
258 |
+
}
|
259 |
+
|
260 |
+
/**
|
261 |
+
* Extend cached item caching period.
|
262 |
+
*
|
263 |
+
* @author Vova Feldman (@svovaf)
|
264 |
+
* @since 2.0.0
|
265 |
+
*
|
266 |
+
* @param string $key
|
267 |
+
* @param int $expiration
|
268 |
+
*
|
269 |
+
* @return bool
|
270 |
+
*/
|
271 |
+
function update_expiration( $key, $expiration = WP_FS__TIME_24_HOURS_IN_SEC ) {
|
272 |
+
$this->_logger->entrance( 'key = ' . $key );
|
273 |
+
|
274 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
275 |
+
|
276 |
+
if ( ! is_object( $cache_entry ) ||
|
277 |
+
! isset( $cache_entry->timestamp ) ||
|
278 |
+
! is_numeric( $cache_entry->timestamp )
|
279 |
+
) {
|
280 |
+
return false;
|
281 |
+
}
|
282 |
+
|
283 |
+
$this->set( $key, $cache_entry->result, $expiration, $cache_entry->created );
|
284 |
+
|
285 |
+
return true;
|
286 |
+
}
|
287 |
+
|
288 |
+
/**
|
289 |
+
* Set cached item as expired.
|
290 |
+
*
|
291 |
+
* @author Vova Feldman (@svovaf)
|
292 |
+
* @since 1.2.2.7
|
293 |
+
*
|
294 |
+
* @param string $key
|
295 |
+
*/
|
296 |
+
function expire( $key ) {
|
297 |
+
$this->_logger->entrance( 'key = ' . $key );
|
298 |
+
|
299 |
+
$cache_entry = $this->_options->get_option( $key, false );
|
300 |
+
|
301 |
+
if ( is_object( $cache_entry ) &&
|
302 |
+
isset( $cache_entry->timestamp ) &&
|
303 |
+
is_numeric( $cache_entry->timestamp )
|
304 |
+
) {
|
305 |
+
// Set to expired.
|
306 |
+
$cache_entry->timestamp = WP_FS__SCRIPT_START_TIME;
|
307 |
+
$this->_options->set_option( $key, $cache_entry, true );
|
308 |
+
}
|
309 |
+
}
|
310 |
+
|
311 |
+
#--------------------------------------------------------------------------------
|
312 |
+
#region Migration
|
313 |
+
#--------------------------------------------------------------------------------
|
314 |
+
|
315 |
+
/**
|
316 |
+
* Migrate options from site level.
|
317 |
+
*
|
318 |
+
* @author Vova Feldman (@svovaf)
|
319 |
+
* @since 2.0.0
|
320 |
+
*/
|
321 |
+
function migrate_to_network() {
|
322 |
+
$this->_options->migrate_to_network();
|
323 |
+
}
|
324 |
+
|
325 |
+
#endregion
|
326 |
}
|
freemius/includes/managers/class-fs-option-manager.php
CHANGED
@@ -1,521 +1,521 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* @package Freemius
|
4 |
-
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
-
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
-
* @since 1.0.3
|
7 |
-
*/
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit;
|
11 |
-
}
|
12 |
-
|
13 |
-
/**
|
14 |
-
* 3-layer lazy options manager.
|
15 |
-
* layer 3: Memory
|
16 |
-
* layer 2: Cache (if there's any caching plugin and if WP_FS__DEBUG_SDK is FALSE)
|
17 |
-
* layer 1: Database (options table). All options stored as one option record in the DB to reduce number of DB
|
18 |
-
* queries.
|
19 |
-
*
|
20 |
-
* If load() is not explicitly called, starts as empty manager. Same thing about saving the data - you have to
|
21 |
-
* explicitly call store().
|
22 |
-
*
|
23 |
-
* Class Freemius_Option_Manager
|
24 |
-
*/
|
25 |
-
class FS_Option_Manager {
|
26 |
-
/**
|
27 |
-
* @var string
|
28 |
-
*/
|
29 |
-
private $_id;
|
30 |
-
/**
|
31 |
-
* @var array|object
|
32 |
-
*/
|
33 |
-
private $_options;
|
34 |
-
/**
|
35 |
-
* @var FS_Logger
|
36 |
-
*/
|
37 |
-
private $_logger;
|
38 |
-
|
39 |
-
/**
|
40 |
-
* @since 2.0.0
|
41 |
-
* @var int The ID of the blog that is associated with the current site level options.
|
42 |
-
*/
|
43 |
-
private $_blog_id = 0;
|
44 |
-
|
45 |
-
/**
|
46 |
-
* @since 2.0.0
|
47 |
-
* @var bool
|
48 |
-
*/
|
49 |
-
private $_is_network_storage;
|
50 |
-
|
51 |
-
/**
|
52 |
-
* @var bool|null
|
53 |
-
*/
|
54 |
-
private $_autoload;
|
55 |
-
|
56 |
-
/**
|
57 |
-
* @var array[string]FS_Option_Manager {
|
58 |
-
* @key string
|
59 |
-
* @value FS_Option_Manager
|
60 |
-
* }
|
61 |
-
*/
|
62 |
-
private static $_MANAGERS = array();
|
63 |
-
|
64 |
-
/**
|
65 |
-
* @author Vova Feldman (@svovaf)
|
66 |
-
* @since 1.0.3
|
67 |
-
*
|
68 |
-
* @param string $id
|
69 |
-
* @param bool $load
|
70 |
-
* @param bool|int $network_level_or_blog_id Since 2.0.0
|
71 |
-
* @param bool|null $autoload
|
72 |
-
*/
|
73 |
-
private function __construct(
|
74 |
-
$id,
|
75 |
-
$load = false,
|
76 |
-
$network_level_or_blog_id = false,
|
77 |
-
$autoload = null
|
78 |
-
) {
|
79 |
-
$id = strtolower( $id );
|
80 |
-
|
81 |
-
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_opt_mngr_' . $id, WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
82 |
-
|
83 |
-
$this->_logger->entrance();
|
84 |
-
$this->_logger->log( 'id = ' . $id );
|
85 |
-
|
86 |
-
$this->_id = $id;
|
87 |
-
|
88 |
-
$this->_autoload = $autoload;
|
89 |
-
|
90 |
-
if ( is_multisite() ) {
|
91 |
-
$this->_is_network_storage = ( true === $network_level_or_blog_id );
|
92 |
-
|
93 |
-
if ( is_numeric( $network_level_or_blog_id ) ) {
|
94 |
-
$this->_blog_id = $network_level_or_blog_id;
|
95 |
-
}
|
96 |
-
} else {
|
97 |
-
$this->_is_network_storage = false;
|
98 |
-
}
|
99 |
-
|
100 |
-
if ( $load ) {
|
101 |
-
$this->load();
|
102 |
-
}
|
103 |
-
}
|
104 |
-
|
105 |
-
/**
|
106 |
-
* @author Vova Feldman (@svovaf)
|
107 |
-
* @since 1.0.3
|
108 |
-
*
|
109 |
-
* @param string $id
|
110 |
-
* @param bool $load
|
111 |
-
* @param bool|int $network_level_or_blog_id Since 2.0.0
|
112 |
-
* @param bool|null $autoload
|
113 |
-
*
|
114 |
-
* @return \FS_Option_Manager
|
115 |
-
*/
|
116 |
-
static function get_manager(
|
117 |
-
$id,
|
118 |
-
$load = false,
|
119 |
-
$network_level_or_blog_id = false,
|
120 |
-
$autoload = null
|
121 |
-
) {
|
122 |
-
$key = strtolower( $id );
|
123 |
-
|
124 |
-
if ( is_multisite() ) {
|
125 |
-
if ( true === $network_level_or_blog_id ) {
|
126 |
-
$key .= ':ms';
|
127 |
-
} else if ( is_numeric( $network_level_or_blog_id ) && $network_level_or_blog_id > 0 ) {
|
128 |
-
$key .= ":{$network_level_or_blog_id}";
|
129 |
-
} else {
|
130 |
-
$network_level_or_blog_id = get_current_blog_id();
|
131 |
-
|
132 |
-
$key .= ":{$network_level_or_blog_id}";
|
133 |
-
}
|
134 |
-
}
|
135 |
-
|
136 |
-
if ( ! isset( self::$_MANAGERS[ $key ] ) ) {
|
137 |
-
self::$_MANAGERS[ $key ] = new FS_Option_Manager(
|
138 |
-
$id,
|
139 |
-
$load,
|
140 |
-
$network_level_or_blog_id,
|
141 |
-
$autoload
|
142 |
-
);
|
143 |
-
} // If load required but not yet loaded, load.
|
144 |
-
else if ( $load && ! self::$_MANAGERS[ $key ]->is_loaded() ) {
|
145 |
-
self::$_MANAGERS[ $key ]->load();
|
146 |
-
}
|
147 |
-
|
148 |
-
return self::$_MANAGERS[ $key ];
|
149 |
-
}
|
150 |
-
|
151 |
-
/**
|
152 |
-
* @author Vova Feldman (@svovaf)
|
153 |
-
* @since 1.0.3
|
154 |
-
*
|
155 |
-
* @param bool $flush
|
156 |
-
*/
|
157 |
-
function load( $flush = false ) {
|
158 |
-
$this->_logger->entrance();
|
159 |
-
|
160 |
-
$option_name = $this->get_option_manager_name();
|
161 |
-
|
162 |
-
if ( $flush || ! isset( $this->_options ) ) {
|
163 |
-
if ( isset( $this->_options ) ) {
|
164 |
-
// Clear prev options.
|
165 |
-
$this->clear();
|
166 |
-
}
|
167 |
-
|
168 |
-
$cache_group = $this->get_cache_group();
|
169 |
-
|
170 |
-
if ( WP_FS__DEBUG_SDK ) {
|
171 |
-
|
172 |
-
// Don't use cache layer in DEBUG mode.
|
173 |
-
$load_options = empty( $this->_options );
|
174 |
-
|
175 |
-
} else {
|
176 |
-
|
177 |
-
$this->_options = wp_cache_get(
|
178 |
-
$option_name,
|
179 |
-
$cache_group
|
180 |
-
);
|
181 |
-
|
182 |
-
$load_options = ( false === $this->_options );
|
183 |
-
}
|
184 |
-
|
185 |
-
$cached = true;
|
186 |
-
|
187 |
-
if ( $load_options ) {
|
188 |
-
if ( $this->_is_network_storage ) {
|
189 |
-
$this->_options = get_site_option( $option_name );
|
190 |
-
} else if ( $this->_blog_id > 0 ) {
|
191 |
-
$this->_options = get_blog_option( $this->_blog_id, $option_name );
|
192 |
-
} else {
|
193 |
-
$this->_options = get_option( $option_name );
|
194 |
-
}
|
195 |
-
|
196 |
-
if ( is_string( $this->_options ) ) {
|
197 |
-
$this->_options = json_decode( $this->_options );
|
198 |
-
}
|
199 |
-
|
200 |
-
// $this->_logger->info('get_option = ' . var_export($this->_options, true));
|
201 |
-
|
202 |
-
if ( false === $this->_options ) {
|
203 |
-
$this->clear();
|
204 |
-
}
|
205 |
-
|
206 |
-
$cached = false;
|
207 |
-
}
|
208 |
-
|
209 |
-
if ( ! WP_FS__DEBUG_SDK && ! $cached ) {
|
210 |
-
// Set non encoded cache.
|
211 |
-
wp_cache_set( $option_name, $this->_options, $cache_group );
|
212 |
-
}
|
213 |
-
}
|
214 |
-
}
|
215 |
-
|
216 |
-
/**
|
217 |
-
* @author Vova Feldman (@svovaf)
|
218 |
-
* @since 1.0.3
|
219 |
-
*
|
220 |
-
* @return bool
|
221 |
-
*/
|
222 |
-
function is_loaded() {
|
223 |
-
return isset( $this->_options );
|
224 |
-
}
|
225 |
-
|
226 |
-
/**
|
227 |
-
* @author Vova Feldman (@svovaf)
|
228 |
-
* @since 1.0.3
|
229 |
-
*
|
230 |
-
* @return bool
|
231 |
-
*/
|
232 |
-
function is_empty() {
|
233 |
-
return ( $this->is_loaded() && false === $this->_options );
|
234 |
-
}
|
235 |
-
|
236 |
-
/**
|
237 |
-
* @author Vova Feldman (@svovaf)
|
238 |
-
* @since 1.0.6
|
239 |
-
*
|
240 |
-
* @param bool $flush
|
241 |
-
*/
|
242 |
-
function clear( $flush = false ) {
|
243 |
-
$this->_logger->entrance();
|
244 |
-
|
245 |
-
$this->_options = array();
|
246 |
-
|
247 |
-
if ( $flush ) {
|
248 |
-
$this->store();
|
249 |
-
}
|
250 |
-
}
|
251 |
-
|
252 |
-
/**
|
253 |
-
* Delete options manager from DB.
|
254 |
-
*
|
255 |
-
* @author Vova Feldman (@svovaf)
|
256 |
-
* @since 1.0.9
|
257 |
-
*/
|
258 |
-
function delete() {
|
259 |
-
$option_name = $this->get_option_manager_name();
|
260 |
-
|
261 |
-
if ( $this->_is_network_storage ) {
|
262 |
-
delete_site_option( $option_name );
|
263 |
-
} else if ( $this->_blog_id > 0 ) {
|
264 |
-
delete_blog_option( $this->_blog_id, $option_name );
|
265 |
-
} else {
|
266 |
-
delete_option( $option_name );
|
267 |
-
}
|
268 |
-
}
|
269 |
-
|
270 |
-
/**
|
271 |
-
* @author Vova Feldman (@svovaf)
|
272 |
-
* @since 1.0.6
|
273 |
-
*
|
274 |
-
* @param string $option
|
275 |
-
*
|
276 |
-
* @return bool
|
277 |
-
*/
|
278 |
-
function has_option( $option ) {
|
279 |
-
return array_key_exists( $option, $this->_options );
|
280 |
-
}
|
281 |
-
|
282 |
-
/**
|
283 |
-
* @author Vova Feldman (@svovaf)
|
284 |
-
* @since 1.0.3
|
285 |
-
*
|
286 |
-
* @param string $option
|
287 |
-
* @param mixed $default
|
288 |
-
*
|
289 |
-
* @return mixed
|
290 |
-
*/
|
291 |
-
function get_option( $option, $default = null ) {
|
292 |
-
$this->_logger->entrance( 'option = ' . $option );
|
293 |
-
|
294 |
-
if ( ! $this->is_loaded() ) {
|
295 |
-
$this->load();
|
296 |
-
}
|
297 |
-
|
298 |
-
if ( is_array( $this->_options ) ) {
|
299 |
-
$value = isset( $this->_options[ $option ] ) ?
|
300 |
-
$this->_options[ $option ] :
|
301 |
-
$default;
|
302 |
-
} else if ( is_object( $this->_options ) ) {
|
303 |
-
$value = isset( $this->_options->{$option} ) ?
|
304 |
-
$this->_options->{$option} :
|
305 |
-
$default;
|
306 |
-
} else {
|
307 |
-
$value = $default;
|
308 |
-
}
|
309 |
-
|
310 |
-
/**
|
311 |
-
* If it's an object, return a clone of the object, otherwise,
|
312 |
-
* external changes of the object will actually change the value
|
313 |
-
* of the object in the options manager which may lead to an unexpected
|
314 |
-
* behaviour and data integrity when a store() call is triggered.
|
315 |
-
*
|
316 |
-
* Example:
|
317 |
-
* $object1 = $options->get_option( 'object1' );
|
318 |
-
* $object1->x = 123;
|
319 |
-
*
|
320 |
-
* $object2 = $options->get_option( 'object2' );
|
321 |
-
* $object2->y = 'dummy';
|
322 |
-
*
|
323 |
-
* $options->set_option( 'object2', $object2, true );
|
324 |
-
*
|
325 |
-
* If we don't return a clone of option 'object1', setting 'object2'
|
326 |
-
* will also store the updated value of 'object1' which is quite not
|
327 |
-
* an expected behaviour.
|
328 |
-
*
|
329 |
-
* @author Vova Feldman
|
330 |
-
*/
|
331 |
-
return is_object( $value ) ? clone $value : $value;
|
332 |
-
}
|
333 |
-
|
334 |
-
/**
|
335 |
-
* @author Vova Feldman (@svovaf)
|
336 |
-
* @since 1.0.3
|
337 |
-
*
|
338 |
-
* @param string $option
|
339 |
-
* @param mixed $value
|
340 |
-
* @param bool $flush
|
341 |
-
*/
|
342 |
-
function set_option( $option, $value, $flush = false ) {
|
343 |
-
$this->_logger->entrance( 'option = ' . $option );
|
344 |
-
|
345 |
-
if ( ! $this->is_loaded() ) {
|
346 |
-
$this->clear();
|
347 |
-
}
|
348 |
-
|
349 |
-
/**
|
350 |
-
* If it's an object, store a clone of the object, otherwise,
|
351 |
-
* external changes of the object will actually change the value
|
352 |
-
* of the object in the options manager which may lead to an unexpected
|
353 |
-
* behaviour and data integrity when a store() call is triggered.
|
354 |
-
*
|
355 |
-
* Example:
|
356 |
-
* $object1 = new stdClass();
|
357 |
-
* $object1->x = 123;
|
358 |
-
*
|
359 |
-
* $options->set_option( 'object1', $object1 );
|
360 |
-
*
|
361 |
-
* $object1->x = 456;
|
362 |
-
*
|
363 |
-
* $options->set_option( 'object2', $object2, true );
|
364 |
-
*
|
365 |
-
* If we don't set the option as a clone of option 'object1', setting 'object2'
|
366 |
-
* will also store the updated value of 'object1' ($object1->x = 456 instead of
|
367 |
-
* $object1->x = 123) which is quite not an expected behaviour.
|
368 |
-
*
|
369 |
-
* @author Vova Feldman
|
370 |
-
*/
|
371 |
-
$copy = is_object( $value ) ? clone $value : $value;
|
372 |
-
|
373 |
-
if ( is_array( $this->_options ) ) {
|
374 |
-
$this->_options[ $option ] = $copy;
|
375 |
-
} else if ( is_object( $this->_options ) ) {
|
376 |
-
$this->_options->{$option} = $copy;
|
377 |
-
}
|
378 |
-
|
379 |
-
if ( $flush ) {
|
380 |
-
$this->store();
|
381 |
-
}
|
382 |
-
}
|
383 |
-
|
384 |
-
/**
|
385 |
-
* Unset option.
|
386 |
-
*
|
387 |
-
* @author Vova Feldman (@svovaf)
|
388 |
-
* @since 1.0.3
|
389 |
-
*
|
390 |
-
* @param string $option
|
391 |
-
* @param bool $flush
|
392 |
-
*/
|
393 |
-
function unset_option( $option, $flush = false ) {
|
394 |
-
$this->_logger->entrance( 'option = ' . $option );
|
395 |
-
|
396 |
-
if ( is_array( $this->_options ) ) {
|
397 |
-
if ( ! isset( $this->_options[ $option ] ) ) {
|
398 |
-
return;
|
399 |
-
}
|
400 |
-
|
401 |
-
unset( $this->_options[ $option ] );
|
402 |
-
|
403 |
-
} else if ( is_object( $this->_options ) ) {
|
404 |
-
if ( ! isset( $this->_options->{$option} ) ) {
|
405 |
-
return;
|
406 |
-
}
|
407 |
-
|
408 |
-
unset( $this->_options->{$option} );
|
409 |
-
}
|
410 |
-
|
411 |
-
if ( $flush ) {
|
412 |
-
$this->store();
|
413 |
-
}
|
414 |
-
}
|
415 |
-
|
416 |
-
/**
|
417 |
-
* Dump options to database.
|
418 |
-
*
|
419 |
-
* @author Vova Feldman (@svovaf)
|
420 |
-
* @since 1.0.3
|
421 |
-
*/
|
422 |
-
function store() {
|
423 |
-
$this->_logger->entrance();
|
424 |
-
|
425 |
-
$option_name = $this->get_option_manager_name();
|
426 |
-
|
427 |
-
if ( $this->_logger->is_on() ) {
|
428 |
-
$this->_logger->info( $option_name . ' = ' . var_export( $this->_options, true ) );
|
429 |
-
}
|
430 |
-
|
431 |
-
// Update DB.
|
432 |
-
if ( $this->_is_network_storage ) {
|
433 |
-
update_site_option( $option_name, $this->_options );
|
434 |
-
} else if ( $this->_blog_id > 0 ) {
|
435 |
-
update_blog_option( $this->_blog_id, $option_name, $this->_options );
|
436 |
-
} else {
|
437 |
-
update_option( $option_name, $this->_options, $this->_autoload );
|
438 |
-
}
|
439 |
-
|
440 |
-
if ( ! WP_FS__DEBUG_SDK ) {
|
441 |
-
wp_cache_set( $option_name, $this->_options, $this->get_cache_group() );
|
442 |
-
}
|
443 |
-
}
|
444 |
-
|
445 |
-
/**
|
446 |
-
* Get options keys.
|
447 |
-
*
|
448 |
-
* @author Vova Feldman (@svovaf)
|
449 |
-
* @since 1.0.3
|
450 |
-
*
|
451 |
-
* @return string[]
|
452 |
-
*/
|
453 |
-
function get_options_keys() {
|
454 |
-
if ( is_array( $this->_options ) ) {
|
455 |
-
return array_keys( $this->_options );
|
456 |
-
} else if ( is_object( $this->_options ) ) {
|
457 |
-
return array_keys( get_object_vars( $this->_options ) );
|
458 |
-
}
|
459 |
-
|
460 |
-
return array();
|
461 |
-
}
|
462 |
-
|
463 |
-
#--------------------------------------------------------------------------------
|
464 |
-
#region Migration
|
465 |
-
#--------------------------------------------------------------------------------
|
466 |
-
|
467 |
-
/**
|
468 |
-
* Migrate options from site level.
|
469 |
-
*
|
470 |
-
* @author Vova Feldman (@svovaf)
|
471 |
-
* @since 2.0.0
|
472 |
-
*/
|
473 |
-
function migrate_to_network() {
|
474 |
-
$site_options = FS_Option_Manager::get_manager($this->_id, true, false);
|
475 |
-
|
476 |
-
$options = is_object( $site_options->_options ) ?
|
477 |
-
get_object_vars( $site_options->_options ) :
|
478 |
-
$site_options->_options;
|
479 |
-
|
480 |
-
if ( ! empty( $options ) ) {
|
481 |
-
foreach ( $options as $key => $val ) {
|
482 |
-
$this->set_option( $key, $val, false );
|
483 |
-
}
|
484 |
-
|
485 |
-
$this->store();
|
486 |
-
}
|
487 |
-
}
|
488 |
-
|
489 |
-
#endregion
|
490 |
-
|
491 |
-
#--------------------------------------------------------------------------------
|
492 |
-
#region Helper Methods
|
493 |
-
#--------------------------------------------------------------------------------
|
494 |
-
|
495 |
-
/**
|
496 |
-
* @return string
|
497 |
-
*/
|
498 |
-
private function get_option_manager_name() {
|
499 |
-
return $this->_id;
|
500 |
-
}
|
501 |
-
|
502 |
-
/**
|
503 |
-
* @author Vova Feldman (@svovaf)
|
504 |
-
* @since 2.0.0
|
505 |
-
*
|
506 |
-
* @return string
|
507 |
-
*/
|
508 |
-
private function get_cache_group() {
|
509 |
-
$group = WP_FS__SLUG;
|
510 |
-
|
511 |
-
if ( $this->_is_network_storage ) {
|
512 |
-
$group .= '_ms';
|
513 |
-
} else if ( $this->_blog_id > 0 ) {
|
514 |
-
$group .= "_s{$this->_blog_id}";
|
515 |
-
}
|
516 |
-
|
517 |
-
return $group;
|
518 |
-
}
|
519 |
-
|
520 |
-
#endregion
|
521 |
-
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
|
6 |
+
* @since 1.0.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
/**
|
14 |
+
* 3-layer lazy options manager.
|
15 |
+
* layer 3: Memory
|
16 |
+
* layer 2: Cache (if there's any caching plugin and if WP_FS__DEBUG_SDK is FALSE)
|
17 |
+
* layer 1: Database (options table). All options stored as one option record in the DB to reduce number of DB
|
18 |
+
* queries.
|
19 |
+
*
|
20 |
+
* If load() is not explicitly called, starts as empty manager. Same thing about saving the data - you have to
|
21 |
+
* explicitly call store().
|
22 |
+
*
|
23 |
+
* Class Freemius_Option_Manager
|
24 |
+
*/
|
25 |
+
class FS_Option_Manager {
|
26 |
+
/**
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
private $_id;
|
30 |
+
/**
|
31 |
+
* @var array|object
|
32 |
+
*/
|
33 |
+
private $_options;
|
34 |
+
/**
|
35 |
+
* @var FS_Logger
|
36 |
+
*/
|
37 |
+
private $_logger;
|
38 |
+
|
39 |
+
/**
|
40 |
+
* @since 2.0.0
|
41 |
+
* @var int The ID of the blog that is associated with the current site level options.
|
42 |
+
*/
|
43 |
+
private $_blog_id = 0;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* @since 2.0.0
|
47 |
+
* @var bool
|
48 |
+
*/
|
49 |
+
private $_is_network_storage;
|
50 |
+
|
51 |
+
/**
|
52 |
+
* @var bool|null
|
53 |
+
*/
|
54 |
+
private $_autoload;
|
55 |
+
|
56 |
+
/**
|
57 |
+
* @var array[string]FS_Option_Manager {
|
58 |
+
* @key string
|
59 |
+
* @value FS_Option_Manager
|
60 |
+
* }
|
61 |
+
*/
|
62 |
+
private static $_MANAGERS = array();
|
63 |
+
|
64 |
+
/**
|
65 |
+
* @author Vova Feldman (@svovaf)
|
66 |
+
* @since 1.0.3
|
67 |
+
*
|
68 |
+
* @param string $id
|
69 |
+
* @param bool $load
|
70 |
+
* @param bool|int $network_level_or_blog_id Since 2.0.0
|
71 |
+
* @param bool|null $autoload
|
72 |
+
*/
|
73 |
+
private function __construct(
|
74 |
+
$id,
|
75 |
+
$load = false,
|
76 |
+
$network_level_or_blog_id = false,
|
77 |
+
$autoload = null
|
78 |
+
) {
|
79 |
+
$id = strtolower( $id );
|
80 |
+
|
81 |
+
$this->_logger = FS_Logger::get_logger( WP_FS__SLUG . '_opt_mngr_' . $id, WP_FS__DEBUG_SDK, WP_FS__ECHO_DEBUG_SDK );
|
82 |
+
|
83 |
+
$this->_logger->entrance();
|
84 |
+
$this->_logger->log( 'id = ' . $id );
|
85 |
+
|
86 |
+
$this->_id = $id;
|
87 |
+
|
88 |
+
$this->_autoload = $autoload;
|
89 |
+
|
90 |
+
if ( is_multisite() ) {
|
91 |
+
$this->_is_network_storage = ( true === $network_level_or_blog_id );
|
92 |
+
|
93 |
+
if ( is_numeric( $network_level_or_blog_id ) ) {
|
94 |
+
$this->_blog_id = $network_level_or_blog_id;
|
95 |
+
}
|
96 |
+
} else {
|
97 |
+
$this->_is_network_storage = false;
|
98 |
+
}
|
99 |
+
|
100 |
+
if ( $load ) {
|
101 |
+
$this->load();
|
102 |
+
}
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* @author Vova Feldman (@svovaf)
|
107 |
+
* @since 1.0.3
|
108 |
+
*
|
109 |
+
* @param string $id
|
110 |
+
* @param bool $load
|
111 |
+
* @param bool|int $network_level_or_blog_id Since 2.0.0
|
112 |
+
* @param bool|null $autoload
|
113 |
+
*
|
114 |
+
* @return \FS_Option_Manager
|
115 |
+
*/
|
116 |
+
static function get_manager(
|
117 |
+
$id,
|
118 |
+
$load = false,
|
119 |
+
$network_level_or_blog_id = false,
|
120 |
+
$autoload = null
|
121 |
+
) {
|
122 |
+
$key = strtolower( $id );
|
123 |
+
|
124 |
+
if ( is_multisite() ) {
|
125 |
+
if ( true === $network_level_or_blog_id ) {
|
126 |
+
$key .= ':ms';
|
127 |
+
} else if ( is_numeric( $network_level_or_blog_id ) && $network_level_or_blog_id > 0 ) {
|
128 |
+
$key .= ":{$network_level_or_blog_id}";
|
129 |
+
} else {
|
130 |
+
$network_level_or_blog_id = get_current_blog_id();
|
131 |
+
|
132 |
+
$key .= ":{$network_level_or_blog_id}";
|
133 |
+
}
|
134 |
+
}
|
135 |
+
|
136 |
+
if ( ! isset( self::$_MANAGERS[ $key ] ) ) {
|
137 |
+
self::$_MANAGERS[ $key ] = new FS_Option_Manager(
|
138 |
+
$id,
|
139 |
+
$load,
|
140 |
+
$network_level_or_blog_id,
|
141 |
+
$autoload
|
142 |
+
);
|
143 |
+
} // If load required but not yet loaded, load.
|
144 |
+
else if ( $load && ! self::$_MANAGERS[ $key ]->is_loaded() ) {
|
145 |
+
self::$_MANAGERS[ $key ]->load();
|
146 |
+
}
|
147 |
+
|
148 |
+
return self::$_MANAGERS[ $key ];
|
149 |
+
}
|
150 |
+
|
151 |
+
/**
|
152 |
+
* @author Vova Feldman (@svovaf)
|
153 |
+
* @since 1.0.3
|
154 |
+
*
|
155 |
+
* @param bool $flush
|
156 |
+
*/
|
157 |
+
function load( $flush = false ) {
|
158 |
+
$this->_logger->entrance();
|
159 |
+
|
160 |
+
$option_name = $this->get_option_manager_name();
|
161 |
+
|
162 |
+
if ( $flush || ! isset( $this->_options ) ) {
|
163 |
+
if ( isset( $this->_options ) ) {
|
164 |
+
// Clear prev options.
|
165 |
+
$this->clear();
|
166 |
+
}
|
167 |
+
|
168 |
+
$cache_group = $this->get_cache_group();
|
169 |
+
|
170 |
+
if ( WP_FS__DEBUG_SDK ) {
|
171 |
+
|
172 |
+
// Don't use cache layer in DEBUG mode.
|
173 |
+
$load_options = empty( $this->_options );
|
174 |
+
|
175 |
+
} else {
|
176 |
+
|
177 |
+
$this->_options = wp_cache_get(
|
178 |
+
$option_name,
|
179 |
+
$cache_group
|
180 |
+
);
|
181 |
+
|
182 |
+
$load_options = ( false === $this->_options );
|
183 |
+
}
|
184 |
+
|
185 |
+
$cached = true;
|
186 |
+
|
187 |
+
if ( $load_options ) {
|
188 |
+
if ( $this->_is_network_storage ) {
|
189 |
+
$this->_options = get_site_option( $option_name );
|
190 |
+
} else if ( $this->_blog_id > 0 ) {
|
191 |
+
$this->_options = get_blog_option( $this->_blog_id, $option_name );
|
192 |
+
} else {
|
193 |
+
$this->_options = get_option( $option_name );
|
194 |
+
}
|
195 |
+
|
196 |
+
if ( is_string( $this->_options ) ) {
|
197 |
+
$this->_options = json_decode( $this->_options );
|
198 |
+
}
|
199 |
+
|
200 |
+
// $this->_logger->info('get_option = ' . var_export($this->_options, true));
|
201 |
+
|
202 |
+
if ( false === $this->_options ) {
|
203 |
+
$this->clear();
|
204 |
+
}
|
205 |
+
|
206 |
+
$cached = false;
|
207 |
+
}
|
208 |
+
|
209 |
+
if ( ! WP_FS__DEBUG_SDK && ! $cached ) {
|
210 |
+
// Set non encoded cache.
|
211 |
+
wp_cache_set( $option_name, $this->_options, $cache_group );
|
212 |
+
}
|
213 |
+
}
|
214 |
+
}
|
215 |
+
|
216 |
+
/**
|
217 |
+
* @author Vova Feldman (@svovaf)
|
218 |
+
* @since 1.0.3
|
219 |
+
*
|
220 |
+
* @return bool
|
221 |
+
*/
|
222 |
+
function is_loaded() {
|
223 |
+
return isset( $this->_options );
|
224 |
+
}
|
225 |
+
|
226 |
+
/**
|
227 |
+
* @author Vova Feldman (@svovaf)
|
228 |
+
* @since 1.0.3
|
229 |
+
*
|
230 |
+
* @return bool
|
231 |
+
*/
|
232 |
+
function is_empty() {
|
233 |
+
return ( $this->is_loaded() && false === $this->_options );
|
234 |
+
}
|
235 |
+
|
236 |
+
/**
|
237 |
+
* @author Vova Feldman (@svovaf)
|
238 |
+
* @since 1.0.6
|
239 |
+
*
|
240 |
+
* @param bool $flush
|
241 |
+
*/
|
242 |
+
function clear( $flush = false ) {
|
243 |
+
$this->_logger->entrance();
|
244 |
+
|
245 |
+
$this->_options = array();
|
246 |
+
|
247 |
+
if ( $flush ) {
|
248 |
+
$this->store();
|
249 |
+
}
|
250 |
+
}
|
251 |
+
|
252 |
+
/**
|
253 |
+
* Delete options manager from DB.
|
254 |
+
*
|
255 |
+
* @author Vova Feldman (@svovaf)
|
256 |
+
* @since 1.0.9
|
257 |
+
*/
|
258 |
+
function delete() {
|
259 |
+
$option_name = $this->get_option_manager_name();
|
260 |
+
|
261 |
+
if ( $this->_is_network_storage ) {
|
262 |
+
delete_site_option( $option_name );
|
263 |
+
} else if ( $this->_blog_id > 0 ) {
|
264 |
+
delete_blog_option( $this->_blog_id, $option_name );
|
265 |
+
} else {
|
266 |
+
delete_option( $option_name );
|
267 |
+
}
|
268 |
+
}
|
269 |
+
|
270 |
+
/**
|
271 |
+
* @author Vova Feldman (@svovaf)
|
272 |
+
* @since 1.0.6
|
273 |
+
*
|
274 |
+
* @param string $option
|
275 |
+
*
|
276 |
+
* @return bool
|
277 |
+
*/
|
278 |
+
function has_option( $option ) {
|
279 |
+
return array_key_exists( $option, $this->_options );
|
280 |
+
}
|
281 |
+
|
282 |
+
/**
|
283 |
+
* @author Vova Feldman (@svovaf)
|
284 |
+
* @since 1.0.3
|
285 |
+
*
|
286 |
+
* @param string $option
|
287 |
+
* @param mixed $default
|
288 |
+
*
|
289 |
+
* @return mixed
|
290 |
+
*/
|
291 |
+
function get_option( $option, $default = null ) {
|
292 |
+
$this->_logger->entrance( 'option = ' . $option );
|
293 |
+
|
294 |
+
if ( ! $this->is_loaded() ) {
|
295 |
+
$this->load();
|
296 |
+
}
|
297 |
+
|
298 |
+
if ( is_array( $this->_options ) ) {
|
299 |
+
$value = isset( $this->_options[ $option ] ) ?
|
300 |
+
$this->_options[ $option ] :
|
301 |
+
$default;
|
302 |
+
} else if ( is_object( $this->_options ) ) {
|
303 |
+
$value = isset( $this->_options->{$option} ) ?
|
304 |
+
$this->_options->{$option} :
|
305 |
+
$default;
|
306 |
+
} else {
|
307 |
+
$value = $default;
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* If it's an object, return a clone of the object, otherwise,
|
312 |
+
* external changes of the object will actually change the value
|
313 |
+
* of the object in the options manager which may lead to an unexpected
|
314 |
+
* behaviour and data integrity when a store() call is triggered.
|
315 |
+
*
|
316 |
+
* Example:
|
317 |
+
* $object1 = $options->get_option( 'object1' );
|
318 |
+
* $object1->x = 123;
|
319 |
+
*
|
320 |
+
* $object2 = $options->get_option( 'object2' );
|
321 |
+
* $object2->y = 'dummy';
|
322 |
+
*
|
323 |
+
* $options->set_option( 'object2', $object2, true );
|
324 |
+
*
|
325 |
+
* If we don't return a clone of option 'object1', setting 'object2'
|
326 |
+
* will also store the updated value of 'object1' which is quite not
|
327 |
+
* an expected behaviour.
|
328 |
+
*
|
329 |
+
* @author Vova Feldman
|
330 |
+
*/
|
331 |
+
return is_object( $value ) ? clone $value : $value;
|
332 |
+
}
|
333 |
+
|
334 |
+
/**
|
335 |
+
* @author Vova Feldman (@svovaf)
|
336 |
+
* @since 1.0.3
|
337 |
+
*
|
338 |
+
* @param string $option
|
339 |
+
* @param mixed $value
|
340 |
+
* @param bool $flush
|
341 |
+
*/
|
342 |
+
function set_option( $option, $value, $flush = false ) {
|
343 |
+
$this->_logger->entrance( 'option = ' . $option );
|
344 |
+
|
345 |
+
if ( ! $this->is_loaded() ) {
|
346 |
+
$this->clear();
|
347 |
+
}
|
348 |
+
|
349 |
+
/**
|
350 |
+
* If it's an object, store a clone of the object, otherwise,
|
351 |
+
* external changes of the object will actually change the value
|
352 |
+
* of the object in the options manager which may lead to an unexpected
|
353 |
+
* behaviour and data integrity when a store() call is triggered.
|
354 |
+
*
|
355 |
+
* Example:
|
356 |
+
* $object1 = new stdClass();
|
357 |
+
* $object1->x = 123;
|
358 |
+
*
|
359 |
+
* $options->set_option( 'object1', $object1 );
|
360 |
+
*
|
361 |
+
* $object1->x = 456;
|
362 |
+
*
|
363 |
+
* $options->set_option( 'object2', $object2, true );
|
364 |
+
*
|
365 |
+
* If we don't set the option as a clone of option 'object1', setting 'object2'
|
366 |
+
* will also store the updated value of 'object1' ($object1->x = 456 instead of
|
367 |
+
* $object1->x = 123) which is quite not an expected behaviour.
|
368 |
+
*
|
369 |
+
* @author Vova Feldman
|
370 |
+
*/
|
371 |
+
$copy = is_object( $value ) ? clone $value : $value;
|
372 |
+
|
373 |
+
if ( is_array( $this->_options ) ) {
|
374 |
+
$this->_options[ $option ] = $copy;
|
375 |
+
} else if ( is_object( $this->_options ) ) {
|
376 |
+
$this->_options->{$option} = $copy;
|
377 |
+
}
|
378 |
+
|
379 |
+
if ( $flush ) {
|
380 |
+
$this->store();
|
381 |
+
}
|
382 |
+
}
|
383 |
+
|
384 |
+
/**
|
385 |
+
* Unset option.
|
386 |
+
*
|
387 |
+
* @author Vova Feldman (@svovaf)
|
388 |
+
* @since 1.0.3
|
389 |
+
*
|
390 |
+
* @param string $option
|
391 |
+
* @param bool $flush
|
392 |
+
*/
|
393 |
+
function unset_option( $option, $flush = false ) {
|
394 |
+
$this->_logger->entrance( 'option = ' . $option );
|
395 |
+
|
396 |
+
if ( is_array( $this->_options ) ) {
|
397 |
+
if ( ! isset( $this->_options[ $option ] ) ) {
|
398 |
+
return;
|
399 |
+
}
|
400 |
+
|
401 |
+
unset( $this->_options[ $option ] );
|
402 |
+
|
403 |
+
} else if ( is_object( $this->_options ) ) {
|
404 |
+
if ( ! isset( $this->_options->{$option} ) ) {
|
405 |
+
return;
|
406 |
+
}
|
407 |
+
|
408 |
+
unset( $this->_options->{$option} );
|
409 |
+
}
|
410 |
+
|
411 |
+
if ( $flush ) {
|
412 |
+
$this->store();
|
413 |
+
}
|
414 |
+
}
|
415 |
+
|
416 |
+
/**
|
417 |
+
* Dump options to database.
|
418 |
+
*
|
419 |
+
* @author Vova Feldman (@svovaf)
|
420 |
+
* @since 1.0.3
|
421 |
+
*/
|
422 |
+
function store() {
|
423 |
+
$this->_logger->entrance();
|
424 |
+
|
425 |
+
$option_name = $this->get_option_manager_name();
|
426 |
+
|
427 |
+
if ( $this->_logger->is_on() ) {
|
428 |
+
$this->_logger->info( $option_name . ' = ' . var_export( $this->_options, true ) );
|
429 |
+
}
|
430 |
+
|
431 |
+
// Update DB.
|
432 |
+
if ( $this->_is_network_storage ) {
|
433 |
+
update_site_option( $option_name, $this->_options );
|
434 |
+
} else if ( $this->_blog_id > 0 ) {
|
435 |
+
update_blog_option( $this->_blog_id, $option_name, $this->_options );
|
436 |
+
} else {
|
437 |
+
update_option( $option_name, $this->_options, $this->_autoload );
|
438 |
+
}
|
439 |
+
|
440 |
+
if ( ! WP_FS__DEBUG_SDK ) {
|
441 |
+
wp_cache_set( $option_name, $this->_options, $this->get_cache_group() );
|
442 |
+
}
|
443 |
+
}
|
444 |
+
|
445 |
+
/**
|
446 |
+
* Get options keys.
|
447 |
+
*
|
448 |
+
* @author Vova Feldman (@svovaf)
|
449 |
+
* @since 1.0.3
|
450 |
+
*
|
451 |
+
* @return string[]
|
452 |
+
*/
|
453 |
+
function get_options_keys() {
|
454 |
+
if ( is_array( $this->_options ) ) {
|
455 |
+
return array_keys( $this->_options );
|
456 |
+
} else if ( is_object( $this->_options ) ) {
|
457 |
+
return array_keys( get_object_vars( $this->_options ) );
|
458 |
+
}
|
459 |
+
|
460 |
+
return array();
|
461 |
+
}
|
462 |
+
|
463 |
+
#--------------------------------------------------------------------------------
|
464 |
+
#region Migration
|
465 |
+
#--------------------------------------------------------------------------------
|
466 |
+
|
467 |
+
/**
|
468 |
+
* Migrate options from site level.
|
469 |
+
*
|
470 |
+
* @author Vova Feldman (@svovaf)
|
471 |
+
* @since 2.0.0
|
472 |
+
*/
|
473 |
+
function migrate_to_network() {
|
474 |
+
$site_options = FS_Option_Manager::get_manager($this->_id, true, false);
|
475 |
+
|
476 |
+
$options = is_object( $site_options->_options ) ?
|
477 |
+
get_object_vars( $site_options->_options ) :
|
478 |
+
$site_options->_options;
|
479 |
+
|
480 |
+
if ( ! empty( $options ) ) {
|
481 |
+
foreach ( $options as $key => $val ) {
|
482 |
+
$this->set_option( $key, $val, false );
|
483 |
+
}
|
484 |
+
|
485 |
+
$this->store();
|
486 |
+
}
|
487 |
+
}
|
488 |
+
|
489 |
+
#endregion
|
490 |
+
|
491 |
+
#--------------------------------------------------------------------------------
|
492 |
+
#region Helper Methods
|
493 |
+
#--------------------------------------------------------------------------------
|
494 |
+
|
495 |
+
/**
|
496 |
+
* @return string
|
497 |
+
*/
|
498 |
+
private function get_option_manager_name() {
|
499 |
+
return $this->_id;
|
500 |
+
}
|
501 |
+
|
502 |
+
/**
|
503 |
+
* @author Vova Feldman (@svovaf)
|
504 |
+
* @since 2.0.0
|
505 |
+
*
|
506 |
+
* @return string
|
507 |
+
*/
|
508 |
+
private function get_cache_group() {
|
509 |
+
$group = WP_FS__SLUG;
|
510 |
+
|
511 |
+
if ( $this->_is_network_storage ) {
|
512 |
+
$group .= '_ms';
|
513 |
+
} else if ( $this->_blog_id > 0 ) {
|
514 |
+
$group .= "_s{$this->_blog_id}";
|
515 |
+
}
|
516 |
+
|
517 |
+
return $group;
|
518 |
+
}
|
519 |
+
|
520 |
+
#endregion
|
521 |
+
}
|
freemius/includes/sdk/FreemiusBase.php
CHANGED
@@ -137,7 +137,7 @@
|
|
137 |
} catch ( Exception $e ) {
|
138 |
// Map to error object.
|
139 |
$result = (object) array(
|
140 |
-
'error' => array(
|
141 |
'type' => 'Unknown',
|
142 |
'message' => $e->getMessage() . ' (' . $e->getFile() . ': ' . $e->getLine() . ')',
|
143 |
'code' => 'unknown',
|
137 |
} catch ( Exception $e ) {
|
138 |
// Map to error object.
|
139 |
$result = (object) array(
|
140 |
+
'error' => (object) array(
|
141 |
'type' => 'Unknown',
|
142 |
'message' => $e->getMessage() . ' (' . $e->getFile() . ': ' . $e->getLine() . ')',
|
143 |
'code' => 'unknown',
|
freemius/includes/sdk/FreemiusWordPress.php
CHANGED
@@ -228,10 +228,13 @@
|
|
228 |
$now = ( time() - self::$_clock_diff );
|
229 |
$date = date( 'r', $now );
|
230 |
|
231 |
-
if ( in_array( $pMethod, array( 'POST', 'PUT' ) )
|
232 |
-
|
233 |
-
|
234 |
-
|
|
|
|
|
|
|
235 |
|
236 |
$string_to_sign = implode( $eol, array(
|
237 |
$pMethod,
|
@@ -380,10 +383,11 @@
|
|
380 |
}
|
381 |
|
382 |
if ( in_array( $pMethod, array( 'POST', 'PUT' ) ) ) {
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
|
|
387 |
}
|
388 |
|
389 |
$request_url = self::GetUrl( $pCanonizedPath, $pIsSandbox );
|
@@ -570,7 +574,7 @@
|
|
570 |
} catch ( Exception $e ) {
|
571 |
// Map to error object.
|
572 |
$result = (object) array(
|
573 |
-
'error' => array(
|
574 |
'type' => 'Unknown',
|
575 |
'message' => $e->getMessage() . ' (' . $e->getFile() . ': ' . $e->getLine() . ')',
|
576 |
'code' => 'unknown',
|
@@ -649,7 +653,7 @@
|
|
649 |
$message = ( 1 < count( $parts ) ) ? $parts[1] : $message;
|
650 |
|
651 |
$e = new Freemius_Exception( array(
|
652 |
-
'error' => array(
|
653 |
'code' => $code,
|
654 |
'message' => $message,
|
655 |
'type' => 'CurlException',
|
@@ -657,7 +661,7 @@
|
|
657 |
) );
|
658 |
} else {
|
659 |
$e = new Freemius_Exception( array(
|
660 |
-
'error' => array(
|
661 |
'code' => $pError->get_error_code(),
|
662 |
'message' => $pError->get_error_message(),
|
663 |
'type' => 'WPRemoteException',
|
228 |
$now = ( time() - self::$_clock_diff );
|
229 |
$date = date( 'r', $now );
|
230 |
|
231 |
+
if ( in_array( $pMethod, array( 'POST', 'PUT' ) ) ) {
|
232 |
+
$content_type = 'application/json';
|
233 |
+
|
234 |
+
if ( ! empty( $pPostParams ) ) {
|
235 |
+
$content_md5 = md5( $pPostParams );
|
236 |
+
}
|
237 |
+
}
|
238 |
|
239 |
$string_to_sign = implode( $eol, array(
|
240 |
$pMethod,
|
383 |
}
|
384 |
|
385 |
if ( in_array( $pMethod, array( 'POST', 'PUT' ) ) ) {
|
386 |
+
$pWPRemoteArgs['headers']['Content-type'] = 'application/json';
|
387 |
+
|
388 |
+
if ( is_array( $pParams ) && 0 < count( $pParams ) ) {
|
389 |
+
$pWPRemoteArgs['body'] = json_encode( $pParams );
|
390 |
+
}
|
391 |
}
|
392 |
|
393 |
$request_url = self::GetUrl( $pCanonizedPath, $pIsSandbox );
|
574 |
} catch ( Exception $e ) {
|
575 |
// Map to error object.
|
576 |
$result = (object) array(
|
577 |
+
'error' => (object) array(
|
578 |
'type' => 'Unknown',
|
579 |
'message' => $e->getMessage() . ' (' . $e->getFile() . ': ' . $e->getLine() . ')',
|
580 |
'code' => 'unknown',
|
653 |
$message = ( 1 < count( $parts ) ) ? $parts[1] : $message;
|
654 |
|
655 |
$e = new Freemius_Exception( array(
|
656 |
+
'error' => (object) array(
|
657 |
'code' => $code,
|
658 |
'message' => $message,
|
659 |
'type' => 'CurlException',
|
661 |
) );
|
662 |
} else {
|
663 |
$e = new Freemius_Exception( array(
|
664 |
+
'error' => (object) array(
|
665 |
'code' => $pError->get_error_code(),
|
666 |
'message' => $pError->get_error_message(),
|
667 |
'type' => 'WPRemoteException',
|
freemius/includes/supplements/fs-essential-functions-1.1.7.1.php
CHANGED
@@ -32,7 +32,7 @@
|
|
32 |
|
33 |
// Get active plugin's main files real full names (might be symlinks).
|
34 |
foreach ( $all_plugins as $relative_path => $data ) {
|
35 |
-
|
36 |
if ( '.' !== dirname( trailingslashit( $relative_path ) ) ) {
|
37 |
return $relative_path;
|
38 |
}
|
32 |
|
33 |
// Get active plugin's main files real full names (might be symlinks).
|
34 |
foreach ( $all_plugins as $relative_path => $data ) {
|
35 |
+
if ( 0 === strpos( $file_real_path, fs_normalize_path( dirname( realpath( WP_PLUGIN_DIR . '/' . $relative_path ) ) . '/' ) ) ) {
|
36 |
if ( '.' !== dirname( trailingslashit( $relative_path ) ) ) {
|
37 |
return $relative_path;
|
38 |
}
|
freemius/languages/freemius-cs_CZ.po
DELETED
@@ -1,2546 +0,0 @@
|
|
1 |
-
# Copyright (C) 2019 freemius
|
2 |
-
# This file is distributed under the same license as the freemius package.
|
3 |
-
# Translators:
|
4 |
-
# Karolína Vyskočilová <karolina@kybernaut.cz>, 2019
|
5 |
-
msgid ""
|
6 |
-
msgstr ""
|
7 |
-
"Project-Id-Version: WordPress SDK\n"
|
8 |
-
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
9 |
-
"POT-Creation-Date: \n"
|
10 |
-
"PO-Revision-Date: 2019-10-07 15:33+0000\n"
|
11 |
-
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
12 |
-
"Language: cs_CZ\n"
|
13 |
-
"Language-Team: Czech (Czech Republic) (http://www.transifex.com/freemius/wordpress-sdk/language/cs_CZ/)\n"
|
14 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
15 |
-
"Content-Transfer-Encoding: 8bit\n"
|
16 |
-
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
17 |
-
"MIME-Version: 1.0\n"
|
18 |
-
"X-Poedit-Basepath: ..\n"
|
19 |
-
"X-Poedit-KeywordsList: get_text_inline;fs_text_inline;fs_echo_inline;fs_esc_js_inline;fs_esc_attr_inline;fs_esc_attr_echo_inline;fs_esc_html_inline;fs_esc_html_echo_inline;get_text_x_inline:1,2c;fs_text_x_inline:1,2c;fs_echo_x_inline:1,2c;fs_esc_attr_x_inline:1,2c;fs_esc_js_x_inline:1,2c;fs_esc_js_echo_x_inline:1,2c;fs_esc_html_x_inline:1,2c;fs_esc_html_echo_x_inline:1,2c\n"
|
20 |
-
"X-Poedit-SearchPath-0: .\n"
|
21 |
-
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
23 |
-
|
24 |
-
#: includes/class-freemius.php1880, templates/account.php:840
|
25 |
-
msgid "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
26 |
-
msgstr "Aktualizováním na Beta verzi nahradíte nainstalovanou verzi %s nejnovějším vydáním Beta verze - používejte s opatrností a ne na produkčních webech. Varovali jsme vás."
|
27 |
-
|
28 |
-
#: includes/class-freemius.php:1887
|
29 |
-
msgid "Would you like to proceed with the update?"
|
30 |
-
msgstr "Chcete pokračovat v aktualizaci?"
|
31 |
-
|
32 |
-
#: includes/class-freemius.php:2095
|
33 |
-
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
34 |
-
msgstr "Freemius SDK nemohlo najít hlavní soubor pluginu. S aktuální chybou se obraťte se na sdk@freemius.com."
|
35 |
-
|
36 |
-
#: includes/class-freemius.php:2097
|
37 |
-
msgid "Error"
|
38 |
-
msgstr "Chyba"
|
39 |
-
|
40 |
-
#: includes/class-freemius.php:2491
|
41 |
-
msgid "I found a better %s"
|
42 |
-
msgstr "Našel jsem lepší %s"
|
43 |
-
|
44 |
-
#: includes/class-freemius.php:2493
|
45 |
-
msgid "What's the %s's name?"
|
46 |
-
msgstr "Jak se %s jmenuje?"
|
47 |
-
|
48 |
-
#: includes/class-freemius.php:2499
|
49 |
-
msgid "It's a temporary %s. I'm just debugging an issue."
|
50 |
-
msgstr "Jen dočasná %s - ladím nějaký problém."
|
51 |
-
|
52 |
-
#: includes/class-freemius.php:2501
|
53 |
-
msgid "Deactivation"
|
54 |
-
msgstr "Deaktivace"
|
55 |
-
|
56 |
-
#: includes/class-freemius.php:2502
|
57 |
-
msgid "Theme Switch"
|
58 |
-
msgstr "Změna šablony"
|
59 |
-
|
60 |
-
#: includes/class-freemius.php2511, templates/forms/resend-key.php:24
|
61 |
-
msgid "Other"
|
62 |
-
msgstr "Jiné"
|
63 |
-
|
64 |
-
#: includes/class-freemius.php:2519
|
65 |
-
msgid "I no longer need the %s"
|
66 |
-
msgstr "Již nepotřebuji %s"
|
67 |
-
|
68 |
-
#: includes/class-freemius.php:2526
|
69 |
-
msgid "I only needed the %s for a short period"
|
70 |
-
msgstr "Potřeboval %s jsem jen krátkou dobu"
|
71 |
-
|
72 |
-
#: includes/class-freemius.php:2532
|
73 |
-
msgid "The %s broke my site"
|
74 |
-
msgstr "%s rozbil můj web"
|
75 |
-
|
76 |
-
#: includes/class-freemius.php:2539
|
77 |
-
msgid "The %s suddenly stopped working"
|
78 |
-
msgstr "%s náhle přestal pracovat"
|
79 |
-
|
80 |
-
#: includes/class-freemius.php:2549
|
81 |
-
msgid "I can't pay for it anymore"
|
82 |
-
msgstr "Už si to nemohu dovolit"
|
83 |
-
|
84 |
-
#: includes/class-freemius.php:2551
|
85 |
-
msgid "What price would you feel comfortable paying?"
|
86 |
-
msgstr "Jakou cenu byste byli ochotni platit?"
|
87 |
-
|
88 |
-
#: includes/class-freemius.php:2557
|
89 |
-
msgid "I don't like to share my information with you"
|
90 |
-
msgstr "Nechci s vámi sdílet své informace"
|
91 |
-
|
92 |
-
#: includes/class-freemius.php:2578
|
93 |
-
msgid "The %s didn't work"
|
94 |
-
msgstr "%s nefungoval"
|
95 |
-
|
96 |
-
#: includes/class-freemius.php:2588
|
97 |
-
msgid "I couldn't understand how to make it work"
|
98 |
-
msgstr "Nedokázal jsem jej zprovoznit"
|
99 |
-
|
100 |
-
#: includes/class-freemius.php:2596
|
101 |
-
msgid "The %s is great, but I need specific feature that you don't support"
|
102 |
-
msgstr "%s je skvělý, ale potřebuji funkci, kterou není podporovaná"
|
103 |
-
|
104 |
-
#: includes/class-freemius.php:2598
|
105 |
-
msgid "What feature?"
|
106 |
-
msgstr "Jaká funkce?"
|
107 |
-
|
108 |
-
#: includes/class-freemius.php:2602
|
109 |
-
msgid "The %s is not working"
|
110 |
-
msgstr "%s nefunguje"
|
111 |
-
|
112 |
-
#: includes/class-freemius.php:2604
|
113 |
-
msgid "Kindly share what didn't work so we can fix it for future users..."
|
114 |
-
msgstr "Dejte nám prosím vědět, co nefungovalo, ať to můžeme opravit pro další uživatele..."
|
115 |
-
|
116 |
-
#: includes/class-freemius.php:2608
|
117 |
-
msgid "It's not what I was looking for"
|
118 |
-
msgstr "Není to to, co jsem hledal"
|
119 |
-
|
120 |
-
#: includes/class-freemius.php:2610
|
121 |
-
msgid "What you've been looking for?"
|
122 |
-
msgstr "Co jste hledali?"
|
123 |
-
|
124 |
-
#: includes/class-freemius.php:2614
|
125 |
-
msgid "The %s didn't work as expected"
|
126 |
-
msgstr "%s nefungoval podle očekávání"
|
127 |
-
|
128 |
-
#: includes/class-freemius.php:2616
|
129 |
-
msgid "What did you expect?"
|
130 |
-
msgstr "Co jste očekávali?"
|
131 |
-
|
132 |
-
#: includes/class-freemius.php3471, templates/debug.php:20
|
133 |
-
msgid "Freemius Debug"
|
134 |
-
msgstr "Freemius Debug"
|
135 |
-
|
136 |
-
#: includes/class-freemius.php:4223
|
137 |
-
msgid "I don't know what is cURL or how to install it, help me!"
|
138 |
-
msgstr "Nevím, co je cURL nebo jak jej nainstalovat, pomozte mi!"
|
139 |
-
|
140 |
-
#: includes/class-freemius.php:4225
|
141 |
-
msgid "We'll make sure to contact your hosting company and resolve the issue. You will get a follow-up email to %s once we have an update."
|
142 |
-
msgstr "Zkontaktujeme vaší hostingovou společnost a zkusíme vyřešit tento problém. Na %s dostanete upozornění, jakmile budeme vědět něco nového."
|
143 |
-
|
144 |
-
#: includes/class-freemius.php:4232
|
145 |
-
msgid "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
146 |
-
msgstr "Výborně, nainstalujte prosím cURL a povolte ji v souboru php.ini. Dále vyhledejte v souboru php.ini direktivu 'disable_functions ' a odeberte všechny zakázané metody začínající na \"curl_\". Chcete-li se ujistit, že byla úspěšně aktivována, použijte 'phpinfo() '. Jakmile je aktivován, deaktivujte %s a znovu jej aktivujte."
|
147 |
-
|
148 |
-
#: includes/class-freemius.php:4337
|
149 |
-
msgid "Yes - do your thing"
|
150 |
-
msgstr "Ano - udělejte, co potřebujete"
|
151 |
-
|
152 |
-
#: includes/class-freemius.php:4342
|
153 |
-
msgid "No - just deactivate"
|
154 |
-
msgstr "Ne - jen deaktivovat"
|
155 |
-
|
156 |
-
#: includes/class-freemius.php4387, includes/class-freemius.php4881,
|
157 |
-
#: includes/class-freemius.php6032, includes/class-freemius.php13153,
|
158 |
-
#: includes/class-freemius.php16558, includes/class-freemius.php16646,
|
159 |
-
#: includes/class-freemius.php16812, includes/class-freemius.php19040,
|
160 |
-
#: includes/class-freemius.php19381, includes/class-freemius.php19391,
|
161 |
-
#: includes/class-freemius.php20051, includes/class-freemius.php20924,
|
162 |
-
#: includes/class-freemius.php21039, includes/class-freemius.php21183,
|
163 |
-
#: templates/add-ons.php:57
|
164 |
-
msgctxt "exclamation"
|
165 |
-
msgid "Oops"
|
166 |
-
msgstr "Jejda"
|
167 |
-
|
168 |
-
#: includes/class-freemius.php:4456
|
169 |
-
msgid "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
170 |
-
msgstr "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
171 |
-
|
172 |
-
#: includes/class-freemius.php:4878
|
173 |
-
msgctxt "addonX cannot run without pluginY"
|
174 |
-
msgid "%s cannot run without %s."
|
175 |
-
msgstr "%s nelze spustit bez %s."
|
176 |
-
|
177 |
-
#: includes/class-freemius.php:4879
|
178 |
-
msgctxt "addonX cannot run..."
|
179 |
-
msgid "%s cannot run without the plugin."
|
180 |
-
msgstr "%s nelze spustit bez tohoto pluginu."
|
181 |
-
|
182 |
-
#: includes/class-freemius.php5052, includes/class-freemius.php5077,
|
183 |
-
#: includes/class-freemius.php:20122
|
184 |
-
msgid "Unexpected API error. Please contact the %s's author with the following error."
|
185 |
-
msgstr "Unexpected API error. Please contact the %s's author with the following error."
|
186 |
-
|
187 |
-
#: includes/class-freemius.php:5720
|
188 |
-
msgid "Premium %s version was successfully activated."
|
189 |
-
msgstr "Premium %s version was successfully activated."
|
190 |
-
|
191 |
-
#: includes/class-freemius.php5732, includes/class-freemius.php:7599
|
192 |
-
msgctxt ""
|
193 |
-
msgid "W00t"
|
194 |
-
msgstr "W00t"
|
195 |
-
|
196 |
-
#: includes/class-freemius.php:5747
|
197 |
-
msgid "You have a %s license."
|
198 |
-
msgstr "Máte licenci „%s“."
|
199 |
-
|
200 |
-
#: includes/class-freemius.php5751, includes/class-freemius.php15975,
|
201 |
-
#: includes/class-freemius.php15986, includes/class-freemius.php19292,
|
202 |
-
#: includes/class-freemius.php19642, includes/class-freemius.php19711,
|
203 |
-
#: includes/class-freemius.php:19876
|
204 |
-
msgctxt "interjection expressing joy or exuberance"
|
205 |
-
msgid "Yee-haw"
|
206 |
-
msgstr "Yee-haw"
|
207 |
-
|
208 |
-
#: includes/class-freemius.php:6015
|
209 |
-
msgid "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
210 |
-
msgstr "%s bezplatná zkušební verze byla úspěšně zrušena. Jelikož toto rozšíření nenabízí bezplatnou verzi, bylo automaticky deaktivováno. Chcete-li jej v budoucnu používat, budete si muset zakoupit licenci."
|
211 |
-
|
212 |
-
#: includes/class-freemius.php:6019
|
213 |
-
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
214 |
-
msgstr "%s je pouze prémiové rozšíření. Před aktivací pluginu si musíte nejprve zakoupit licenci."
|
215 |
-
|
216 |
-
#: includes/class-freemius.php6028, templates/add-ons.php186,
|
217 |
-
#: templates/account/partials/addon.php:381
|
218 |
-
msgid "More information about %s"
|
219 |
-
msgstr "Více informací o %s"
|
220 |
-
|
221 |
-
#: includes/class-freemius.php:6029
|
222 |
-
msgid "Purchase License"
|
223 |
-
msgstr "Koupit licenci"
|
224 |
-
|
225 |
-
#: includes/class-freemius.php6964, templates/connect.php:163
|
226 |
-
msgid "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
227 |
-
msgstr "Aktivační email od %s by měl dorazit do vašeho mailboxu (%s). Ujistěte se, že v emailu kliknete na tlačítko aktivovat, abyste %s."
|
228 |
-
|
229 |
-
#: includes/class-freemius.php:6968
|
230 |
-
msgid "start the trial"
|
231 |
-
msgstr "spustit zkušební verzi"
|
232 |
-
|
233 |
-
#: includes/class-freemius.php6969, templates/connect.php:167
|
234 |
-
msgid "complete the install"
|
235 |
-
msgstr "dokončit installaci"
|
236 |
-
|
237 |
-
#: includes/class-freemius.php:7081
|
238 |
-
msgid "You are just one step away - %s"
|
239 |
-
msgstr "Jste jen na krok od - %s"
|
240 |
-
|
241 |
-
#: includes/class-freemius.php:7084
|
242 |
-
msgctxt "%s - plugin name. As complete \"PluginX\" activation now"
|
243 |
-
msgid "Complete \"%s\" Activation Now"
|
244 |
-
msgstr "Dokončit aktivaci pluginu „%s“"
|
245 |
-
|
246 |
-
#: includes/class-freemius.php:7162
|
247 |
-
msgid "We made a few tweaks to the %s, %s"
|
248 |
-
msgstr "Udělali jsme několik vylepšení %s, %s"
|
249 |
-
|
250 |
-
#: includes/class-freemius.php:7166
|
251 |
-
msgid "Opt in to make \"%s\" better!"
|
252 |
-
msgstr "Zúčastněte se, aby byl \"%s\" ještě lepší!"
|
253 |
-
|
254 |
-
#: includes/class-freemius.php:7598
|
255 |
-
msgid "The upgrade of %s was successfully completed."
|
256 |
-
msgstr "Aktualizace %s byla úspěšně dokončena."
|
257 |
-
|
258 |
-
#: includes/class-freemius.php9802, includes/class-fs-plugin-updater.php1038,
|
259 |
-
#: includes/class-fs-plugin-updater.php1233,
|
260 |
-
#: includes/class-fs-plugin-updater.php1240,
|
261 |
-
#: templates/auto-installation.php:32
|
262 |
-
msgid "Add-On"
|
263 |
-
msgstr "Doplněk"
|
264 |
-
|
265 |
-
#: includes/class-freemius.php9804, templates/account.php335,
|
266 |
-
#: templates/account.php343, templates/debug.php360, templates/debug.php:551
|
267 |
-
msgid "Plugin"
|
268 |
-
msgstr "Plugin"
|
269 |
-
|
270 |
-
#: includes/class-freemius.php9805, templates/account.php336,
|
271 |
-
#: templates/account.php344, templates/debug.php360, templates/debug.php551,
|
272 |
-
#: templates/forms/deactivation/form.php:71
|
273 |
-
msgid "Theme"
|
274 |
-
msgstr "Šablona"
|
275 |
-
|
276 |
-
#: includes/class-freemius.php:12596
|
277 |
-
msgid "An unknown error has occurred while trying to set the user's beta mode."
|
278 |
-
msgstr "Během nastavování uživatelského beta módu došlo k neočekávané chybě."
|
279 |
-
|
280 |
-
#: includes/class-freemius.php:13020
|
281 |
-
msgid "Invalid site details collection."
|
282 |
-
msgstr "Invalid site details collection."
|
283 |
-
|
284 |
-
#: includes/class-freemius.php:13140
|
285 |
-
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
286 |
-
msgstr "Nemohli jsme najít vaši e-mailovou adresu v systému, jste si jisti, že je to správná adresa?"
|
287 |
-
|
288 |
-
#: includes/class-freemius.php:13142
|
289 |
-
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
290 |
-
msgstr "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
291 |
-
|
292 |
-
#: includes/class-freemius.php:13416
|
293 |
-
msgid "Account is pending activation."
|
294 |
-
msgstr "Účet čeká na aktivaci."
|
295 |
-
|
296 |
-
#: includes/class-freemius.php13528,
|
297 |
-
#: templates/forms/premium-versions-upgrade-handler.php:47
|
298 |
-
msgid "Buy a license now"
|
299 |
-
msgstr "Koupit licenci nyní"
|
300 |
-
|
301 |
-
#: includes/class-freemius.php13540,
|
302 |
-
#: templates/forms/premium-versions-upgrade-handler.php:46
|
303 |
-
msgid "Renew your license now"
|
304 |
-
msgstr "Obnovte svou licenci teď"
|
305 |
-
|
306 |
-
#: includes/class-freemius.php:13544
|
307 |
-
msgid "%s to access version %s security & feature updates, and support."
|
308 |
-
msgstr "%s pro přístup k verzi %s zajišťující podporu a nejen bezpečnostní aktualizace."
|
309 |
-
|
310 |
-
#: includes/class-freemius.php:15957
|
311 |
-
msgid "%s activation was successfully completed."
|
312 |
-
msgstr "Aktivace %s byla úspěšně dokončena."
|
313 |
-
|
314 |
-
#: includes/class-freemius.php:15971
|
315 |
-
msgid "Your account was successfully activated with the %s plan."
|
316 |
-
msgstr "Účet byl úspěšně aktivován s plánem %s."
|
317 |
-
|
318 |
-
#: includes/class-freemius.php15982, includes/class-freemius.php:19707
|
319 |
-
msgid "Your trial has been successfully started."
|
320 |
-
msgstr "Vaše zkušebí verze byla úspěšně spuštěna."
|
321 |
-
|
322 |
-
#: includes/class-freemius.php16556, includes/class-freemius.php16644,
|
323 |
-
#: includes/class-freemius.php:16810
|
324 |
-
msgid "Couldn't activate %s."
|
325 |
-
msgstr "Nelze aktivovat %s."
|
326 |
-
|
327 |
-
#: includes/class-freemius.php16557, includes/class-freemius.php16645,
|
328 |
-
#: includes/class-freemius.php:16811
|
329 |
-
msgid "Please contact us with the following message:"
|
330 |
-
msgstr "Kontaktujte nás prosím s následující zprávou:"
|
331 |
-
|
332 |
-
#: includes/class-freemius.php16641, templates/forms/data-debug-mode.php:162
|
333 |
-
msgid "An unknown error has occurred."
|
334 |
-
msgstr "Došlo k neznámé chybě."
|
335 |
-
|
336 |
-
#: includes/class-freemius.php17168, includes/class-freemius.php:22082
|
337 |
-
msgid "Upgrade"
|
338 |
-
msgstr "Upgrade"
|
339 |
-
|
340 |
-
#: includes/class-freemius.php:17174
|
341 |
-
msgid "Start Trial"
|
342 |
-
msgstr "Začít Trial"
|
343 |
-
|
344 |
-
#: includes/class-freemius.php:17176
|
345 |
-
msgid "Pricing"
|
346 |
-
msgstr "Ceník"
|
347 |
-
|
348 |
-
#: includes/class-freemius.php17256, includes/class-freemius.php:17258
|
349 |
-
msgid "Affiliation"
|
350 |
-
msgstr "Affiliation"
|
351 |
-
|
352 |
-
#: includes/class-freemius.php17286, includes/class-freemius.php17288,
|
353 |
-
#: templates/account.php183, templates/debug.php:326
|
354 |
-
msgid "Account"
|
355 |
-
msgstr "Účet"
|
356 |
-
|
357 |
-
#: includes/class-freemius.php17302, includes/class-freemius.php17304,
|
358 |
-
#: includes/customizer/class-fs-customizer-support-section.php:60
|
359 |
-
msgid "Contact Us"
|
360 |
-
msgstr "Support"
|
361 |
-
|
362 |
-
#: includes/class-freemius.php17315, includes/class-freemius.php17317,
|
363 |
-
#: includes/class-freemius.php22096, templates/account.php111,
|
364 |
-
#: templates/account/partials/addon.php:44
|
365 |
-
msgid "Add-Ons"
|
366 |
-
msgstr "Doplňky"
|
367 |
-
|
368 |
-
#: includes/class-freemius.php:17351
|
369 |
-
msgctxt "ASCII arrow left icon"
|
370 |
-
msgid "←"
|
371 |
-
msgstr "←"
|
372 |
-
|
373 |
-
#: includes/class-freemius.php:17351
|
374 |
-
msgctxt "ASCII arrow right icon"
|
375 |
-
msgid "➤"
|
376 |
-
msgstr "➤"
|
377 |
-
|
378 |
-
#: includes/class-freemius.php17353, templates/pricing.php:103
|
379 |
-
msgctxt "noun"
|
380 |
-
msgid "Pricing"
|
381 |
-
msgstr "Ceník"
|
382 |
-
|
383 |
-
#: includes/class-freemius.php17566,
|
384 |
-
#: includes/customizer/class-fs-customizer-support-section.php:67
|
385 |
-
msgid "Support Forum"
|
386 |
-
msgstr "Fórum podpory"
|
387 |
-
|
388 |
-
#: includes/class-freemius.php:18536
|
389 |
-
msgid "Your email has been successfully verified - you are AWESOME!"
|
390 |
-
msgstr "Your email has been successfully verified - you are AWESOME!"
|
391 |
-
|
392 |
-
#: includes/class-freemius.php:18537
|
393 |
-
msgctxt "a positive response"
|
394 |
-
msgid "Right on"
|
395 |
-
msgstr "Right on"
|
396 |
-
|
397 |
-
#: includes/class-freemius.php:19041
|
398 |
-
msgid "seems like the key you entered doesn't match our records."
|
399 |
-
msgstr "seems like the key you entered doesn't match our records."
|
400 |
-
|
401 |
-
#: includes/class-freemius.php:19065
|
402 |
-
msgid "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
403 |
-
msgstr "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
404 |
-
|
405 |
-
#: includes/class-freemius.php:19283
|
406 |
-
msgid "Your %s Add-on plan was successfully upgraded."
|
407 |
-
msgstr "Your %s Add-on plan was successfully upgraded."
|
408 |
-
|
409 |
-
#: includes/class-freemius.php:19285
|
410 |
-
msgid "%s Add-on was successfully purchased."
|
411 |
-
msgstr "Rozšíření %s bylo úspěšně zakoupeno."
|
412 |
-
|
413 |
-
#: includes/class-freemius.php:19288
|
414 |
-
msgid "Download the latest version"
|
415 |
-
msgstr "Stáhnout nejnovější verzi"
|
416 |
-
|
417 |
-
#: includes/class-freemius.php:19374
|
418 |
-
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
419 |
-
msgstr "Váš server blokuje přístup k Freemium API, což je zásadní pro synchronizaci %1s. Obraťte se na svého poskytovatele , aby přidal do svého whitelistu %2s"
|
420 |
-
|
421 |
-
#: includes/class-freemius.php19380, includes/class-freemius.php19390,
|
422 |
-
#: includes/class-freemius.php19835, includes/class-freemius.php:19924
|
423 |
-
msgid "Error received from the server:"
|
424 |
-
msgstr "Chyba přijatá ze serveru:"
|
425 |
-
|
426 |
-
#: includes/class-freemius.php:19390
|
427 |
-
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
428 |
-
msgstr "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
429 |
-
|
430 |
-
#: includes/class-freemius.php19604, includes/class-freemius.php19840,
|
431 |
-
#: includes/class-freemius.php19895, includes/class-freemius.php:19998
|
432 |
-
msgctxt ""
|
433 |
-
msgid "Hmm"
|
434 |
-
msgstr "Hmm"
|
435 |
-
|
436 |
-
#: includes/class-freemius.php:19617
|
437 |
-
msgid "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
438 |
-
msgstr "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
439 |
-
|
440 |
-
#: includes/class-freemius.php19618, templates/account.php113,
|
441 |
-
#: templates/add-ons.php250, templates/account/partials/addon.php:46
|
442 |
-
msgctxt "trial period"
|
443 |
-
msgid "Trial"
|
444 |
-
msgstr "Trial"
|
445 |
-
|
446 |
-
#: includes/class-freemius.php:19623
|
447 |
-
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
448 |
-
msgstr "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
449 |
-
|
450 |
-
#: includes/class-freemius.php19627, includes/class-freemius.php:19686
|
451 |
-
msgid "Please contact us here"
|
452 |
-
msgstr "Kontaktujte nás prosím zde"
|
453 |
-
|
454 |
-
#: includes/class-freemius.php:19638
|
455 |
-
msgid "Your plan was successfully activated."
|
456 |
-
msgstr "Vaše licence byla úspěšně aktivována."
|
457 |
-
|
458 |
-
#: includes/class-freemius.php:19639
|
459 |
-
msgid "Your plan was successfully upgraded."
|
460 |
-
msgstr "Váš plán byl úspěšně aktualizován."
|
461 |
-
|
462 |
-
#: includes/class-freemius.php:19656
|
463 |
-
msgid "Your plan was successfully changed to %s."
|
464 |
-
msgstr "Váše předplatné bylo úspěšně změněn na %s."
|
465 |
-
|
466 |
-
#: includes/class-freemius.php:19672
|
467 |
-
msgid "Your license has expired. You can still continue using the free %s forever."
|
468 |
-
msgstr "Vaše licence vypršela. Stále však můžete free verzi %s bez omezení."
|
469 |
-
|
470 |
-
#: includes/class-freemius.php:19674
|
471 |
-
msgid "Your license has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
472 |
-
msgstr "Vaše licence vypršela. %1$sObnovte předplatné%2$s, abyste mohli mohli %3$s používat bez omezení."
|
473 |
-
|
474 |
-
#: includes/class-freemius.php:19682
|
475 |
-
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
476 |
-
msgstr "Vaše licence byla zrušena. Pokud si myslíte, že je to chyba, obraťte se na naší podporu."
|
477 |
-
|
478 |
-
#: includes/class-freemius.php:19695
|
479 |
-
msgid "Your license has expired. You can still continue using all the %s features, but you'll need to renew your license to continue getting updates and support."
|
480 |
-
msgstr "Vaše licence vypršela. Stále však můžete používat všechny funkce verze %s, ale pro získání technické podpory a nejnovějších aktualizací budete muset obnovit svou licenci."
|
481 |
-
|
482 |
-
#: includes/class-freemius.php:19721
|
483 |
-
msgid "Your free trial has expired. You can still continue using all our free features."
|
484 |
-
msgstr "Your free trial has expired. You can still continue using all our free features."
|
485 |
-
|
486 |
-
#: includes/class-freemius.php:19723
|
487 |
-
msgid "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
488 |
-
msgstr "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
489 |
-
|
490 |
-
#: includes/class-freemius.php:19831
|
491 |
-
msgid "It looks like the license could not be activated."
|
492 |
-
msgstr "Licenci se nepodařilo aktivovat."
|
493 |
-
|
494 |
-
#: includes/class-freemius.php:19873
|
495 |
-
msgid "Your license was successfully activated."
|
496 |
-
msgstr "Vaše licence byla úspěšně aktivována."
|
497 |
-
|
498 |
-
#: includes/class-freemius.php:19899
|
499 |
-
msgid "It looks like your site currently doesn't have an active license."
|
500 |
-
msgstr "It looks like your site currently doesn't have an active license."
|
501 |
-
|
502 |
-
#: includes/class-freemius.php:19923
|
503 |
-
msgid "It looks like the license deactivation failed."
|
504 |
-
msgstr "Deaktivace licence pravděpodobně selhala."
|
505 |
-
|
506 |
-
#: includes/class-freemius.php:19951
|
507 |
-
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
508 |
-
msgstr "Vaše licence byla úspěšně deaktivována, jste zpět na plánu %s."
|
509 |
-
|
510 |
-
#: includes/class-freemius.php:19952
|
511 |
-
msgid "O.K"
|
512 |
-
msgstr "OK"
|
513 |
-
|
514 |
-
#: includes/class-freemius.php:20005
|
515 |
-
msgid "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
516 |
-
msgstr "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
517 |
-
|
518 |
-
#: includes/class-freemius.php:20014
|
519 |
-
msgid "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
520 |
-
msgstr "Vaše předplatné bylo úspěšně zrušeno. Platnost licence %s vyprší za %s."
|
521 |
-
|
522 |
-
#: includes/class-freemius.php:20056
|
523 |
-
msgid "You are already running the %s in a trial mode."
|
524 |
-
msgstr "You are already running the %s in a trial mode."
|
525 |
-
|
526 |
-
#: includes/class-freemius.php:20067
|
527 |
-
msgid "You already utilized a trial before."
|
528 |
-
msgstr "O zkušební licenci nelze žádat dvakrát."
|
529 |
-
|
530 |
-
#: includes/class-freemius.php:20081
|
531 |
-
msgid "Plan %s do not exist, therefore, can't start a trial."
|
532 |
-
msgstr "Plán %s neexistuje, proto nemůžete používt zkušební verzi."
|
533 |
-
|
534 |
-
#: includes/class-freemius.php:20092
|
535 |
-
msgid "Plan %s does not support a trial period."
|
536 |
-
msgstr "Plán %s nepodporuje zkušební období."
|
537 |
-
|
538 |
-
#: includes/class-freemius.php:20103
|
539 |
-
msgid "None of the %s's plans supports a trial period."
|
540 |
-
msgstr "None of the %s's plans supports a trial period."
|
541 |
-
|
542 |
-
#: includes/class-freemius.php:20153
|
543 |
-
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
544 |
-
msgstr "Zkuušební režim už vám skončil, takže už není co rušit :)"
|
545 |
-
|
546 |
-
#: includes/class-freemius.php:20189
|
547 |
-
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
548 |
-
msgstr "Omlouváme se, ale měli jsme nějaký dočasný problém se zrušením vaší zkušební licence. Zkuste to znovu za několik minut."
|
549 |
-
|
550 |
-
#: includes/class-freemius.php:20208
|
551 |
-
msgid "Your %s free trial was successfully cancelled."
|
552 |
-
msgstr "Your %s free trial was successfully cancelled."
|
553 |
-
|
554 |
-
#: includes/class-freemius.php:20524
|
555 |
-
msgid "Version %s was released."
|
556 |
-
msgstr "Byla vydána verze %s."
|
557 |
-
|
558 |
-
#: includes/class-freemius.php:20524
|
559 |
-
msgid "Please download %s."
|
560 |
-
msgstr "Stáhněte si prosím %s."
|
561 |
-
|
562 |
-
#: includes/class-freemius.php:20531
|
563 |
-
msgid "the latest %s version here"
|
564 |
-
msgstr "nejnovější %s verze zde"
|
565 |
-
|
566 |
-
#: includes/class-freemius.php:20536
|
567 |
-
msgid "New"
|
568 |
-
msgstr "Nový"
|
569 |
-
|
570 |
-
#: includes/class-freemius.php:20541
|
571 |
-
msgid "Seems like you got the latest release."
|
572 |
-
msgstr "Pravděpodobně máte nejnovější verzi."
|
573 |
-
|
574 |
-
#: includes/class-freemius.php:20542
|
575 |
-
msgid "You are all good!"
|
576 |
-
msgstr "You are all good!"
|
577 |
-
|
578 |
-
#: includes/class-freemius.php:20812
|
579 |
-
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
580 |
-
msgstr "Ověřovací zpráva byla právě odeslána na email %s. Pokud ji nenajdete do 5 min, zkontrolujte prosím složku pro spam."
|
581 |
-
|
582 |
-
#: includes/class-freemius.php:20951
|
583 |
-
msgid "Site successfully opted in."
|
584 |
-
msgstr "Site successfully opted in."
|
585 |
-
|
586 |
-
#: includes/class-freemius.php20952, includes/class-freemius.php:21792
|
587 |
-
msgid "Awesome"
|
588 |
-
msgstr "Úžasný"
|
589 |
-
|
590 |
-
#: includes/class-freemius.php20968, templates/forms/optout.php:32
|
591 |
-
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
592 |
-
msgstr "Vážíme si vaší pomoci při zlepšování %s tím, že nám umožníte sledovat některá data o jeho používání."
|
593 |
-
|
594 |
-
#: includes/class-freemius.php:20969
|
595 |
-
msgid "Thank you!"
|
596 |
-
msgstr "Děkujeme!"
|
597 |
-
|
598 |
-
#: includes/class-freemius.php:20976
|
599 |
-
msgid "We will no longer be sending any usage data of %s on %s to %s."
|
600 |
-
msgstr "Nebudeme již posílat žádná data o používání %s na %s do %s."
|
601 |
-
|
602 |
-
#: includes/class-freemius.php:21105
|
603 |
-
msgid "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
604 |
-
msgstr "Zkontrolujte si prosím emailovou schránku, měli byste obdržet zprávu od %s pro potvrzení změny vlastnictví. Z bezpečnostních důvodů je nutné potvrdit tuto změnu během následujících 15 minut. Pokud email nemůžete najít, zkontrolujte složku se spamem."
|
605 |
-
|
606 |
-
#: includes/class-freemius.php:21111
|
607 |
-
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
608 |
-
msgstr "Děkujeme za potvrzení změny vlastnictví. Email byl právě odeslán na adresu %s, ke konečnému schválení."
|
609 |
-
|
610 |
-
#: includes/class-freemius.php:21116
|
611 |
-
msgid "%s is the new owner of the account."
|
612 |
-
msgstr "%s je nový vlastník účtu."
|
613 |
-
|
614 |
-
#: includes/class-freemius.php:21118
|
615 |
-
msgctxt "as congratulations"
|
616 |
-
msgid "Congrats"
|
617 |
-
msgstr "Gratulujeme"
|
618 |
-
|
619 |
-
#: includes/class-freemius.php:21138
|
620 |
-
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
621 |
-
msgstr "Omlouváme se, ale aktualizaci emailu jsem nemohli dokončit. Uživatel s vámi zadaným emailem už je registrován."
|
622 |
-
|
623 |
-
#: includes/class-freemius.php:21139
|
624 |
-
msgid "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
625 |
-
msgstr "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
626 |
-
|
627 |
-
#: includes/class-freemius.php:21146
|
628 |
-
msgid "Change Ownership"
|
629 |
-
msgstr "Změnit vlastnictví"
|
630 |
-
|
631 |
-
#: includes/class-freemius.php:21154
|
632 |
-
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
633 |
-
msgstr "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
634 |
-
|
635 |
-
#: includes/class-freemius.php:21166
|
636 |
-
msgid "Please provide your full name."
|
637 |
-
msgstr "Zadejte prosím své celé jméno."
|
638 |
-
|
639 |
-
#: includes/class-freemius.php:21171
|
640 |
-
msgid "Your name was successfully updated."
|
641 |
-
msgstr "Vaše jméno bylo úspěšně aktualizováno."
|
642 |
-
|
643 |
-
#: includes/class-freemius.php:21232
|
644 |
-
msgid "You have successfully updated your %s."
|
645 |
-
msgstr "Úspěšně jste aktualizovali %s."
|
646 |
-
|
647 |
-
#: includes/class-freemius.php:21372
|
648 |
-
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
649 |
-
msgstr "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
650 |
-
|
651 |
-
#: includes/class-freemius.php:21373
|
652 |
-
msgctxt "advance notice of something that will need attention."
|
653 |
-
msgid "Heads up"
|
654 |
-
msgstr "Heads up"
|
655 |
-
|
656 |
-
#: includes/class-freemius.php:21832
|
657 |
-
msgctxt "exclamation"
|
658 |
-
msgid "Hey"
|
659 |
-
msgstr "Dobrý den"
|
660 |
-
|
661 |
-
#: includes/class-freemius.php:21832
|
662 |
-
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
663 |
-
msgstr "Jak se vám líbí %s? Otestujte všechny naše %s nadstandardní funkce s %d-denní zkušební verze zdarma."
|
664 |
-
|
665 |
-
#: includes/class-freemius.php:21840
|
666 |
-
msgid "No commitment for %s days - cancel anytime!"
|
667 |
-
msgstr "No commitment for %s days - cancel anytime!"
|
668 |
-
|
669 |
-
#: includes/class-freemius.php:21841
|
670 |
-
msgid "No credit card required"
|
671 |
-
msgstr "Kreditní karta není vyžadována"
|
672 |
-
|
673 |
-
#: includes/class-freemius.php21848, templates/forms/trial-start.php:53
|
674 |
-
msgctxt "call to action"
|
675 |
-
msgid "Start free trial"
|
676 |
-
msgstr "Start free trial"
|
677 |
-
|
678 |
-
#: includes/class-freemius.php:21925
|
679 |
-
msgid "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
680 |
-
msgstr "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
681 |
-
|
682 |
-
#: includes/class-freemius.php:21934
|
683 |
-
msgid "Learn more"
|
684 |
-
msgstr "Přečtěte si více"
|
685 |
-
|
686 |
-
#: includes/class-freemius.php22120, templates/account.php499,
|
687 |
-
#: templates/account.php624, templates/connect.php171,
|
688 |
-
#: templates/connect.php421, templates/forms/license-activation.php27,
|
689 |
-
#: templates/account/partials/addon.php:321
|
690 |
-
msgid "Activate License"
|
691 |
-
msgstr "Aktivovat licenci"
|
692 |
-
|
693 |
-
#: includes/class-freemius.php22121, templates/account.php571,
|
694 |
-
#: templates/account.php623, templates/account/partials/addon.php322,
|
695 |
-
#: templates/account/partials/site.php:271
|
696 |
-
msgid "Change License"
|
697 |
-
msgstr "Změnit licenci"
|
698 |
-
|
699 |
-
#: includes/class-freemius.php22217, templates/account/partials/site.php:169
|
700 |
-
msgid "Opt Out"
|
701 |
-
msgstr "Odhlásit se"
|
702 |
-
|
703 |
-
#: includes/class-freemius.php22219, includes/class-freemius.php22225,
|
704 |
-
#: templates/account/partials/site.php49,
|
705 |
-
#: templates/account/partials/site.php:169
|
706 |
-
msgid "Opt In"
|
707 |
-
msgstr "Zúčastnit se"
|
708 |
-
|
709 |
-
#: includes/class-freemius.php:22453
|
710 |
-
msgid " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
711 |
-
msgstr " Placená verze %1s je již nainstalována. Aktivujte jí, abyste mohli těžit z %2s funkcí. %3s"
|
712 |
-
|
713 |
-
#: includes/class-freemius.php:22461
|
714 |
-
msgid "Activate %s features"
|
715 |
-
msgstr "Aktivovat %s funkce"
|
716 |
-
|
717 |
-
#: includes/class-freemius.php:22474
|
718 |
-
msgid "Please follow these steps to complete the upgrade"
|
719 |
-
msgstr "Dokončete upgrade provedením následujících kroků"
|
720 |
-
|
721 |
-
#: includes/class-freemius.php:22478
|
722 |
-
msgid "Download the latest %s version"
|
723 |
-
msgstr "Stáhnout nejnovější verzi %s"
|
724 |
-
|
725 |
-
#: includes/class-freemius.php:22482
|
726 |
-
msgid "Upload and activate the downloaded version"
|
727 |
-
msgstr "Nahrát a aktivovat stáhnutou verzi"
|
728 |
-
|
729 |
-
#: includes/class-freemius.php:22484
|
730 |
-
msgid "How to upload and activate?"
|
731 |
-
msgstr "Jak nahrát a aktivovat?"
|
732 |
-
|
733 |
-
#: includes/class-freemius.php:22618
|
734 |
-
msgid "%sClick here%s to choose the sites where you'd like to activate the license on."
|
735 |
-
msgstr "%sClick here%s to choose the sites where you'd like to activate the license on."
|
736 |
-
|
737 |
-
#: includes/class-freemius.php:22779
|
738 |
-
msgid "Auto installation only works for opted-in users."
|
739 |
-
msgstr "Auto installation only works for opted-in users."
|
740 |
-
|
741 |
-
#: includes/class-freemius.php22789, includes/class-freemius.php22822,
|
742 |
-
#: includes/class-fs-plugin-updater.php1212,
|
743 |
-
#: includes/class-fs-plugin-updater.php:1226
|
744 |
-
msgid "Invalid module ID."
|
745 |
-
msgstr "Invalid module ID."
|
746 |
-
|
747 |
-
#: includes/class-freemius.php22798, includes/class-fs-plugin-updater.php:1248
|
748 |
-
msgid "Premium version already active."
|
749 |
-
msgstr "Prémiová verze je již aktivní."
|
750 |
-
|
751 |
-
#: includes/class-freemius.php:22805
|
752 |
-
msgid "You do not have a valid license to access the premium version."
|
753 |
-
msgstr "You do not have a valid license to access the premium version."
|
754 |
-
|
755 |
-
#: includes/class-freemius.php:22812
|
756 |
-
msgid "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
757 |
-
msgstr "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
758 |
-
|
759 |
-
#: includes/class-freemius.php22830, includes/class-fs-plugin-updater.php:1247
|
760 |
-
msgid "Premium add-on version already installed."
|
761 |
-
msgstr "Premium add-on version already installed."
|
762 |
-
|
763 |
-
#: includes/class-freemius.php:23180
|
764 |
-
msgid "View paid features"
|
765 |
-
msgstr "Zobrazit placené funkce"
|
766 |
-
|
767 |
-
#: includes/class-freemius.php:23502
|
768 |
-
msgid "Thank you so much for using %s and its add-ons!"
|
769 |
-
msgstr "Thank you so much for using %s and its add-ons!"
|
770 |
-
|
771 |
-
#: includes/class-freemius.php:23503
|
772 |
-
msgid "Thank you so much for using %s!"
|
773 |
-
msgstr "Thank you so much for using %s!"
|
774 |
-
|
775 |
-
#: includes/class-freemius.php:23509
|
776 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
777 |
-
msgstr "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
778 |
-
|
779 |
-
#: includes/class-freemius.php:23513
|
780 |
-
msgid "Thank you so much for using our products!"
|
781 |
-
msgstr "Thank you so much for using our products!"
|
782 |
-
|
783 |
-
#: includes/class-freemius.php:23514
|
784 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
785 |
-
msgstr "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
786 |
-
|
787 |
-
#: includes/class-freemius.php:23533
|
788 |
-
msgid "%s and its add-ons"
|
789 |
-
msgstr "%s a jeho doplňky"
|
790 |
-
|
791 |
-
#: includes/class-freemius.php:23542
|
792 |
-
msgid "Products"
|
793 |
-
msgstr "Produkty"
|
794 |
-
|
795 |
-
#: includes/class-freemius.php23549, templates/connect.php:272
|
796 |
-
msgid "Yes"
|
797 |
-
msgstr "Ano"
|
798 |
-
|
799 |
-
#: includes/class-freemius.php23550, templates/connect.php:273
|
800 |
-
msgid "send me security & feature updates, educational content and offers."
|
801 |
-
msgstr "send me security & feature updates, educational content and offers."
|
802 |
-
|
803 |
-
#: includes/class-freemius.php23551, templates/connect.php:278
|
804 |
-
msgid "No"
|
805 |
-
msgstr "Ne"
|
806 |
-
|
807 |
-
#: includes/class-freemius.php23553, templates/connect.php:280
|
808 |
-
msgid "do %sNOT%s send me security & feature updates, educational content and offers."
|
809 |
-
msgstr "do %sNOT%s send me security & feature updates, educational content and offers."
|
810 |
-
|
811 |
-
#: includes/class-freemius.php:23563
|
812 |
-
msgid "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
813 |
-
msgstr "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
814 |
-
|
815 |
-
#: includes/class-freemius.php23565, templates/connect.php:287
|
816 |
-
msgid "Please let us know if you'd like us to contact you for security & feature updates, educational content, and occasional offers:"
|
817 |
-
msgstr "Please let us know if you'd like us to contact you for security & feature updates, educational content, and occasional offers:"
|
818 |
-
|
819 |
-
#: includes/class-freemius.php:23847
|
820 |
-
msgid "License key is empty."
|
821 |
-
msgstr "Licenční klíč je prázdný."
|
822 |
-
|
823 |
-
#: includes/class-fs-plugin-updater.php206,
|
824 |
-
#: templates/forms/premium-versions-upgrade-handler.php:57
|
825 |
-
msgid "Renew license"
|
826 |
-
msgstr "Obnovit licenci"
|
827 |
-
|
828 |
-
#: includes/class-fs-plugin-updater.php211,
|
829 |
-
#: templates/forms/premium-versions-upgrade-handler.php:58
|
830 |
-
msgid "Buy license"
|
831 |
-
msgstr "Koupit licenci"
|
832 |
-
|
833 |
-
#: includes/class-fs-plugin-updater.php321,
|
834 |
-
#: includes/class-fs-plugin-updater.php:354
|
835 |
-
msgid "There is a %s of %s available."
|
836 |
-
msgstr "There is a %s of %s available."
|
837 |
-
|
838 |
-
#: includes/class-fs-plugin-updater.php323,
|
839 |
-
#: includes/class-fs-plugin-updater.php:359
|
840 |
-
msgid "new Beta version"
|
841 |
-
msgstr "nová Beta verze"
|
842 |
-
|
843 |
-
#: includes/class-fs-plugin-updater.php324,
|
844 |
-
#: includes/class-fs-plugin-updater.php:360
|
845 |
-
msgid "new version"
|
846 |
-
msgstr "nová verze"
|
847 |
-
|
848 |
-
#: includes/class-fs-plugin-updater.php:383
|
849 |
-
msgid "Important Upgrade Notice:"
|
850 |
-
msgstr "Important Upgrade Notice:"
|
851 |
-
|
852 |
-
#: includes/class-fs-plugin-updater.php:1277
|
853 |
-
msgid "Installing plugin: %s"
|
854 |
-
msgstr "Instaluji plugin: %s"
|
855 |
-
|
856 |
-
#: includes/class-fs-plugin-updater.php:1318
|
857 |
-
msgid "Unable to connect to the filesystem. Please confirm your credentials."
|
858 |
-
msgstr "Nelze se připojit k systémovému souboru. Potvrďte prosím svá pověření."
|
859 |
-
|
860 |
-
#: includes/class-fs-plugin-updater.php:1500
|
861 |
-
msgid "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
|
862 |
-
msgstr "Balíček remote pluginů neobsahuje složku s žádoucím \"slug\" a přejmenování nefunguje."
|
863 |
-
|
864 |
-
#: includes/fs-plugin-info-dialog.php:535
|
865 |
-
msgid "Purchase More"
|
866 |
-
msgstr "Zakoupit další"
|
867 |
-
|
868 |
-
#: includes/fs-plugin-info-dialog.php536,
|
869 |
-
#: templates/account/partials/addon.php:385
|
870 |
-
msgctxt "verb"
|
871 |
-
msgid "Purchase"
|
872 |
-
msgstr "Zakoupit"
|
873 |
-
|
874 |
-
#: includes/fs-plugin-info-dialog.php:540
|
875 |
-
msgid "Start my free %s"
|
876 |
-
msgstr "Začít můj bezplatný %s"
|
877 |
-
|
878 |
-
#: includes/fs-plugin-info-dialog.php:738
|
879 |
-
msgid "Install Free Version Update Now"
|
880 |
-
msgstr "Install Free Version Update Now"
|
881 |
-
|
882 |
-
#: includes/fs-plugin-info-dialog.php739, templates/account.php:560
|
883 |
-
msgid "Install Update Now"
|
884 |
-
msgstr "Nainstalovat aktualizaci"
|
885 |
-
|
886 |
-
#: includes/fs-plugin-info-dialog.php:748
|
887 |
-
msgid "Install Free Version Now"
|
888 |
-
msgstr "Nainstalovat verzi zdarma"
|
889 |
-
|
890 |
-
#: includes/fs-plugin-info-dialog.php749, templates/add-ons.php323,
|
891 |
-
#: templates/auto-installation.php111,
|
892 |
-
#: templates/account/partials/addon.php365,
|
893 |
-
#: templates/account/partials/addon.php:418
|
894 |
-
msgid "Install Now"
|
895 |
-
msgstr "Instalovat"
|
896 |
-
|
897 |
-
#: includes/fs-plugin-info-dialog.php:765
|
898 |
-
msgctxt "as download latest version"
|
899 |
-
msgid "Download Latest Free Version"
|
900 |
-
msgstr "Stáhněte si nejnovější bezplatnou verzi"
|
901 |
-
|
902 |
-
#: includes/fs-plugin-info-dialog.php766, templates/account.php91,
|
903 |
-
#: templates/add-ons.php37, templates/account/partials/addon.php:25
|
904 |
-
msgctxt "as download latest version"
|
905 |
-
msgid "Download Latest"
|
906 |
-
msgstr "Stáhněte si nejnovější"
|
907 |
-
|
908 |
-
#: includes/fs-plugin-info-dialog.php781, templates/add-ons.php329,
|
909 |
-
#: templates/account/partials/addon.php356,
|
910 |
-
#: templates/account/partials/addon.php:412
|
911 |
-
msgid "Activate this add-on"
|
912 |
-
msgstr "Aktivovat toto rozšíření"
|
913 |
-
|
914 |
-
#: includes/fs-plugin-info-dialog.php783, templates/connect.php:418
|
915 |
-
msgid "Activate Free Version"
|
916 |
-
msgstr "Aktivovat bezplatnou verzi"
|
917 |
-
|
918 |
-
#: includes/fs-plugin-info-dialog.php784, templates/account.php115,
|
919 |
-
#: templates/add-ons.php330, templates/account/partials/addon.php:48
|
920 |
-
msgid "Activate"
|
921 |
-
msgstr "Aktivovat"
|
922 |
-
|
923 |
-
#: includes/fs-plugin-info-dialog.php:994
|
924 |
-
msgctxt "Plugin installer section title"
|
925 |
-
msgid "Description"
|
926 |
-
msgstr "Popis"
|
927 |
-
|
928 |
-
#: includes/fs-plugin-info-dialog.php:995
|
929 |
-
msgctxt "Plugin installer section title"
|
930 |
-
msgid "Installation"
|
931 |
-
msgstr "Instalace"
|
932 |
-
|
933 |
-
#: includes/fs-plugin-info-dialog.php:996
|
934 |
-
msgctxt "Plugin installer section title"
|
935 |
-
msgid "FAQ"
|
936 |
-
msgstr "FAQ"
|
937 |
-
|
938 |
-
#: includes/fs-plugin-info-dialog.php997,
|
939 |
-
#: templates/plugin-info/description.php:55
|
940 |
-
msgid "Screenshots"
|
941 |
-
msgstr "Snímky obrazovky"
|
942 |
-
|
943 |
-
#: includes/fs-plugin-info-dialog.php:998
|
944 |
-
msgctxt "Plugin installer section title"
|
945 |
-
msgid "Changelog"
|
946 |
-
msgstr "Historie změn"
|
947 |
-
|
948 |
-
#: includes/fs-plugin-info-dialog.php:999
|
949 |
-
msgctxt "Plugin installer section title"
|
950 |
-
msgid "Reviews"
|
951 |
-
msgstr "Vaše hodnocení"
|
952 |
-
|
953 |
-
#: includes/fs-plugin-info-dialog.php:1000
|
954 |
-
msgctxt "Plugin installer section title"
|
955 |
-
msgid "Other Notes"
|
956 |
-
msgstr "Other Notes"
|
957 |
-
|
958 |
-
#: includes/fs-plugin-info-dialog.php:1015
|
959 |
-
msgctxt "Plugin installer section title"
|
960 |
-
msgid "Features & Pricing"
|
961 |
-
msgstr "Vlastnosti a ceník"
|
962 |
-
|
963 |
-
#: includes/fs-plugin-info-dialog.php:1025
|
964 |
-
msgid "Plugin Install"
|
965 |
-
msgstr "Instalace pluginu"
|
966 |
-
|
967 |
-
#: includes/fs-plugin-info-dialog.php:1097
|
968 |
-
msgctxt "e.g. Professional Plan"
|
969 |
-
msgid "%s Plan"
|
970 |
-
msgstr "%s plán"
|
971 |
-
|
972 |
-
#: includes/fs-plugin-info-dialog.php:1123
|
973 |
-
msgctxt "e.g. the best product"
|
974 |
-
msgid "Best"
|
975 |
-
msgstr "Nejlepší"
|
976 |
-
|
977 |
-
#: includes/fs-plugin-info-dialog.php1129,
|
978 |
-
#: includes/fs-plugin-info-dialog.php:1149
|
979 |
-
msgctxt "as every month"
|
980 |
-
msgid "Monthly"
|
981 |
-
msgstr "Měsíčně"
|
982 |
-
|
983 |
-
#: includes/fs-plugin-info-dialog.php:1132
|
984 |
-
msgctxt "as once a year"
|
985 |
-
msgid "Annual"
|
986 |
-
msgstr "Ročně"
|
987 |
-
|
988 |
-
#: includes/fs-plugin-info-dialog.php:1135
|
989 |
-
msgid "Lifetime"
|
990 |
-
msgstr "Doživotní"
|
991 |
-
|
992 |
-
#: includes/fs-plugin-info-dialog.php1149,
|
993 |
-
#: includes/fs-plugin-info-dialog.php1151,
|
994 |
-
#: includes/fs-plugin-info-dialog.php:1153
|
995 |
-
msgctxt "e.g. billed monthly"
|
996 |
-
msgid "Billed %s"
|
997 |
-
msgstr "Účtováno %s"
|
998 |
-
|
999 |
-
#: includes/fs-plugin-info-dialog.php:1151
|
1000 |
-
msgctxt "as once a year"
|
1001 |
-
msgid "Annually"
|
1002 |
-
msgstr "Ročně"
|
1003 |
-
|
1004 |
-
#: includes/fs-plugin-info-dialog.php:1153
|
1005 |
-
msgctxt "as once a year"
|
1006 |
-
msgid "Once"
|
1007 |
-
msgstr "Jedenkrát"
|
1008 |
-
|
1009 |
-
#: includes/fs-plugin-info-dialog.php:1159
|
1010 |
-
msgid "Single Site License"
|
1011 |
-
msgstr "Single Site License"
|
1012 |
-
|
1013 |
-
#: includes/fs-plugin-info-dialog.php:1161
|
1014 |
-
msgid "Unlimited Licenses"
|
1015 |
-
msgstr "Unlimited Licenses"
|
1016 |
-
|
1017 |
-
#: includes/fs-plugin-info-dialog.php:1163
|
1018 |
-
msgid "Up to %s Sites"
|
1019 |
-
msgstr "Až pro %s webů"
|
1020 |
-
|
1021 |
-
#: includes/fs-plugin-info-dialog.php1173,
|
1022 |
-
#: templates/plugin-info/features.php:82
|
1023 |
-
msgctxt "as monthly period"
|
1024 |
-
msgid "mo"
|
1025 |
-
msgstr "po"
|
1026 |
-
|
1027 |
-
#: includes/fs-plugin-info-dialog.php1180,
|
1028 |
-
#: templates/plugin-info/features.php:80
|
1029 |
-
msgctxt "as annual period"
|
1030 |
-
msgid "year"
|
1031 |
-
msgstr "rok"
|
1032 |
-
|
1033 |
-
#: includes/fs-plugin-info-dialog.php:1234
|
1034 |
-
msgctxt "noun"
|
1035 |
-
msgid "Price"
|
1036 |
-
msgstr "Cena"
|
1037 |
-
|
1038 |
-
#: includes/fs-plugin-info-dialog.php:1282
|
1039 |
-
msgid "Save %s"
|
1040 |
-
msgstr "Uložit %s"
|
1041 |
-
|
1042 |
-
#: includes/fs-plugin-info-dialog.php:1292
|
1043 |
-
msgid "No commitment for %s - cancel anytime"
|
1044 |
-
msgstr "No commitment for %s - cancel anytime"
|
1045 |
-
|
1046 |
-
#: includes/fs-plugin-info-dialog.php:1295
|
1047 |
-
msgid "After your free %s, pay as little as %s"
|
1048 |
-
msgstr "Po bezplatné %s platit jen v %s"
|
1049 |
-
|
1050 |
-
#: includes/fs-plugin-info-dialog.php:1306
|
1051 |
-
msgid "Details"
|
1052 |
-
msgstr "Detaily"
|
1053 |
-
|
1054 |
-
#: includes/fs-plugin-info-dialog.php1310, templates/account.php102,
|
1055 |
-
#: templates/debug.php203, templates/debug.php240, templates/debug.php457,
|
1056 |
-
#: templates/account/partials/addon.php:36
|
1057 |
-
msgctxt "product version"
|
1058 |
-
msgid "Version"
|
1059 |
-
msgstr "Verze"
|
1060 |
-
|
1061 |
-
#: includes/fs-plugin-info-dialog.php:1317
|
1062 |
-
msgctxt "as the plugin author"
|
1063 |
-
msgid "Author"
|
1064 |
-
msgstr "Autor"
|
1065 |
-
|
1066 |
-
#: includes/fs-plugin-info-dialog.php:1324
|
1067 |
-
msgid "Last Updated"
|
1068 |
-
msgstr "Poslední aktualizace"
|
1069 |
-
|
1070 |
-
#: includes/fs-plugin-info-dialog.php1329, templates/account.php:468
|
1071 |
-
msgctxt "x-ago"
|
1072 |
-
msgid "%s ago"
|
1073 |
-
msgstr "Před %s"
|
1074 |
-
|
1075 |
-
#: includes/fs-plugin-info-dialog.php:1338
|
1076 |
-
msgid "Requires WordPress Version"
|
1077 |
-
msgstr "Vyžaduje verzi WordPress"
|
1078 |
-
|
1079 |
-
#: includes/fs-plugin-info-dialog.php:1339
|
1080 |
-
msgid "%s or higher"
|
1081 |
-
msgstr "%s nebo vyšší"
|
1082 |
-
|
1083 |
-
#: includes/fs-plugin-info-dialog.php:1346
|
1084 |
-
msgid "Compatible up to"
|
1085 |
-
msgstr "Kompatibilní až po"
|
1086 |
-
|
1087 |
-
#: includes/fs-plugin-info-dialog.php:1354
|
1088 |
-
msgid "Downloaded"
|
1089 |
-
msgstr "Staženo"
|
1090 |
-
|
1091 |
-
#: includes/fs-plugin-info-dialog.php:1358
|
1092 |
-
msgid "%s time"
|
1093 |
-
msgstr "%s krát"
|
1094 |
-
|
1095 |
-
#: includes/fs-plugin-info-dialog.php:1360
|
1096 |
-
msgid "%s times"
|
1097 |
-
msgstr "%s krát"
|
1098 |
-
|
1099 |
-
#: includes/fs-plugin-info-dialog.php:1370
|
1100 |
-
msgid "WordPress.org Plugin Page"
|
1101 |
-
msgstr "Název pluginu na WordPress.org"
|
1102 |
-
|
1103 |
-
#: includes/fs-plugin-info-dialog.php:1378
|
1104 |
-
msgid "Plugin Homepage"
|
1105 |
-
msgstr "Hlavní stránka pluginu"
|
1106 |
-
|
1107 |
-
#: includes/fs-plugin-info-dialog.php1386,
|
1108 |
-
#: includes/fs-plugin-info-dialog.php:1468
|
1109 |
-
msgid "Donate to this plugin"
|
1110 |
-
msgstr "Přispějte na tento plugin"
|
1111 |
-
|
1112 |
-
#: includes/fs-plugin-info-dialog.php:1393
|
1113 |
-
msgid "Average Rating"
|
1114 |
-
msgstr "Průměrné hodnocení"
|
1115 |
-
|
1116 |
-
#: includes/fs-plugin-info-dialog.php:1400
|
1117 |
-
msgid "based on %s"
|
1118 |
-
msgstr "založeno na %s"
|
1119 |
-
|
1120 |
-
#: includes/fs-plugin-info-dialog.php:1404
|
1121 |
-
msgid "%s rating"
|
1122 |
-
msgstr "%s hodnocení"
|
1123 |
-
|
1124 |
-
#: includes/fs-plugin-info-dialog.php:1406
|
1125 |
-
msgid "%s ratings"
|
1126 |
-
msgstr "%s hodnocení"
|
1127 |
-
|
1128 |
-
#: includes/fs-plugin-info-dialog.php:1421
|
1129 |
-
msgid "%s star"
|
1130 |
-
msgstr "%s hvězda"
|
1131 |
-
|
1132 |
-
#: includes/fs-plugin-info-dialog.php:1423
|
1133 |
-
msgid "%s stars"
|
1134 |
-
msgstr "%s hvězd"
|
1135 |
-
|
1136 |
-
#: includes/fs-plugin-info-dialog.php:1434
|
1137 |
-
msgid "Click to see reviews that provided a rating of %s"
|
1138 |
-
msgstr "Click to see reviews that provided a rating of %s"
|
1139 |
-
|
1140 |
-
#: includes/fs-plugin-info-dialog.php:1447
|
1141 |
-
msgid "Contributors"
|
1142 |
-
msgstr "Přispěvatelé"
|
1143 |
-
|
1144 |
-
#: includes/fs-plugin-info-dialog.php1476,
|
1145 |
-
#: includes/fs-plugin-info-dialog.php:1478
|
1146 |
-
msgid "Warning"
|
1147 |
-
msgstr "Varování"
|
1148 |
-
|
1149 |
-
#: includes/fs-plugin-info-dialog.php:1476
|
1150 |
-
msgid "This plugin has not been tested with your current version of WordPress."
|
1151 |
-
msgstr "This plugin has not been tested with your current version of WordPress."
|
1152 |
-
|
1153 |
-
#: includes/fs-plugin-info-dialog.php:1478
|
1154 |
-
msgid "This plugin has not been marked as compatible with your version of WordPress."
|
1155 |
-
msgstr "This plugin has not been marked as compatible with your version of WordPress."
|
1156 |
-
|
1157 |
-
#: includes/fs-plugin-info-dialog.php:1497
|
1158 |
-
msgid "Paid add-on must be deployed to Freemius."
|
1159 |
-
msgstr "Placený doplněk musí být nasazen na Freemius."
|
1160 |
-
|
1161 |
-
#: includes/fs-plugin-info-dialog.php:1498
|
1162 |
-
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1163 |
-
msgstr "Rozšíření musí být nasazeno na WordPress.org nebo na Freemius."
|
1164 |
-
|
1165 |
-
#: includes/fs-plugin-info-dialog.php:1519
|
1166 |
-
msgid "Newer Version (%s) Installed"
|
1167 |
-
msgstr "Novější verze (%s) nainstalována"
|
1168 |
-
|
1169 |
-
#: includes/fs-plugin-info-dialog.php:1520
|
1170 |
-
msgid "Newer Free Version (%s) Installed"
|
1171 |
-
msgstr "Novější verze zdarma (%s) nainstalována"
|
1172 |
-
|
1173 |
-
#: includes/fs-plugin-info-dialog.php:1527
|
1174 |
-
msgid "Latest Version Installed"
|
1175 |
-
msgstr "Nainstalována nejnovější verze"
|
1176 |
-
|
1177 |
-
#: includes/fs-plugin-info-dialog.php:1528
|
1178 |
-
msgid "Latest Free Version Installed"
|
1179 |
-
msgstr "Nainstalována nejnovější verze zdarma"
|
1180 |
-
|
1181 |
-
#: templates/account.php92, templates/forms/subscription-cancellation.php96,
|
1182 |
-
#: templates/account/partials/addon.php26,
|
1183 |
-
#: templates/account/partials/site.php:311
|
1184 |
-
msgid "Downgrading your plan"
|
1185 |
-
msgstr "Snižuji vaše předplatné"
|
1186 |
-
|
1187 |
-
#: templates/account.php93, templates/forms/subscription-cancellation.php97,
|
1188 |
-
#: templates/account/partials/addon.php27,
|
1189 |
-
#: templates/account/partials/site.php:312
|
1190 |
-
msgid "Cancelling the subscription"
|
1191 |
-
msgstr "Ruším předplatné"
|
1192 |
-
|
1193 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the
|
1194 |
-
#. subscription'
|
1195 |
-
#: templates/account.php95, templates/forms/subscription-cancellation.php99,
|
1196 |
-
#: templates/account/partials/site.php:314
|
1197 |
-
msgid "%1$s will immediately stop all future recurring payments and your %2$s plan license will expire in %3$s."
|
1198 |
-
msgstr "%1s okamžitě zastaví všechny budoucí opakující se platby a licence k plánu %s vyprší za %s."
|
1199 |
-
|
1200 |
-
#: templates/account.php96, templates/forms/subscription-cancellation.php100,
|
1201 |
-
#: templates/account/partials/addon.php30,
|
1202 |
-
#: templates/account/partials/site.php:315
|
1203 |
-
msgid "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1204 |
-
msgstr "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1205 |
-
|
1206 |
-
#: templates/account.php97, templates/forms/subscription-cancellation.php106,
|
1207 |
-
#: templates/account/partials/addon.php:31
|
1208 |
-
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
1209 |
-
msgstr "Zrušení zkušební verze okamžitě zablokuje přístup ke všem prémiovým funkcím. Opravdu chcete pokračovat?"
|
1210 |
-
|
1211 |
-
#: templates/account.php98, templates/forms/subscription-cancellation.php101,
|
1212 |
-
#: templates/account/partials/addon.php32,
|
1213 |
-
#: templates/account/partials/site.php:316
|
1214 |
-
msgid "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1215 |
-
msgstr "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1216 |
-
|
1217 |
-
#: templates/account.php99, templates/forms/subscription-cancellation.php102,
|
1218 |
-
#: templates/account/partials/addon.php33,
|
1219 |
-
#: templates/account/partials/site.php:317
|
1220 |
-
msgid "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1221 |
-
msgstr "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1222 |
-
|
1223 |
-
#. translators: %s: Plan title (e.g. "Professional")
|
1224 |
-
#: templates/account.php101,
|
1225 |
-
#: templates/account/partials/activate-license-button.php31,
|
1226 |
-
#: templates/account/partials/addon.php:35
|
1227 |
-
msgid "Activate %s Plan"
|
1228 |
-
msgstr "Aktivovat %s plán"
|
1229 |
-
|
1230 |
-
#. translators: %s: Time period (e.g. Auto renews in "2 months")
|
1231 |
-
#: templates/account.php104, templates/account/partials/addon.php38,
|
1232 |
-
#: templates/account/partials/site.php:291
|
1233 |
-
msgid "Auto renews in %s"
|
1234 |
-
msgstr "Automaticky se obnoví za %s"
|
1235 |
-
|
1236 |
-
#. translators: %s: Time period (e.g. Expires in "2 months")
|
1237 |
-
#: templates/account.php106, templates/account/partials/addon.php40,
|
1238 |
-
#: templates/account/partials/site.php:293
|
1239 |
-
msgid "Expires in %s"
|
1240 |
-
msgstr "Vyprší za %s"
|
1241 |
-
|
1242 |
-
#: templates/account.php:107
|
1243 |
-
msgctxt "as synchronize license"
|
1244 |
-
msgid "Sync License"
|
1245 |
-
msgstr "Synchronizovat licence"
|
1246 |
-
|
1247 |
-
#: templates/account.php108, templates/account/partials/addon.php:41
|
1248 |
-
msgid "Cancel Trial"
|
1249 |
-
msgstr "Zrušit zkušební verzi"
|
1250 |
-
|
1251 |
-
#: templates/account.php109, templates/account/partials/addon.php:42
|
1252 |
-
msgid "Change Plan"
|
1253 |
-
msgstr "Změnit plán"
|
1254 |
-
|
1255 |
-
#: templates/account.php110, templates/account/partials/addon.php:43
|
1256 |
-
msgctxt "verb"
|
1257 |
-
msgid "Upgrade"
|
1258 |
-
msgstr "Vylepšit"
|
1259 |
-
|
1260 |
-
#: templates/account.php112, templates/account/partials/addon.php45,
|
1261 |
-
#: templates/account/partials/site.php:318
|
1262 |
-
msgctxt "verb"
|
1263 |
-
msgid "Downgrade"
|
1264 |
-
msgstr "Přejít na nižší verzi"
|
1265 |
-
|
1266 |
-
#: templates/account.php114, templates/add-ons.php246,
|
1267 |
-
#: templates/plugin-info/features.php72,
|
1268 |
-
#: templates/account/partials/addon.php47,
|
1269 |
-
#: templates/account/partials/site.php:33
|
1270 |
-
msgid "Free"
|
1271 |
-
msgstr "Zdarma"
|
1272 |
-
|
1273 |
-
#: templates/account.php116, templates/debug.php373,
|
1274 |
-
#: includes/customizer/class-fs-customizer-upsell-control.php110,
|
1275 |
-
#: templates/account/partials/addon.php:49
|
1276 |
-
msgctxt "as product pricing plan"
|
1277 |
-
msgid "Plan"
|
1278 |
-
msgstr "Druh členství"
|
1279 |
-
|
1280 |
-
#: templates/account.php:117
|
1281 |
-
msgid "Bundle Plan"
|
1282 |
-
msgstr "Bundle Plan"
|
1283 |
-
|
1284 |
-
#: templates/account.php:191
|
1285 |
-
msgid "Free Trial"
|
1286 |
-
msgstr "Zkušební verze zdarma"
|
1287 |
-
|
1288 |
-
#: templates/account.php:202
|
1289 |
-
msgid "Account Details"
|
1290 |
-
msgstr "Detaily účtu"
|
1291 |
-
|
1292 |
-
#: templates/account.php209, templates/forms/data-debug-mode.php:33
|
1293 |
-
msgid "Start Debug"
|
1294 |
-
msgstr "Start Debug"
|
1295 |
-
|
1296 |
-
#: templates/account.php:211
|
1297 |
-
msgid "Stop Debug"
|
1298 |
-
msgstr "Stop Debug"
|
1299 |
-
|
1300 |
-
#: templates/account.php:218
|
1301 |
-
msgid "Billing & Invoices"
|
1302 |
-
msgstr "Billing & Invoices"
|
1303 |
-
|
1304 |
-
#: templates/account.php:229
|
1305 |
-
msgid "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1306 |
-
msgstr "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1307 |
-
|
1308 |
-
#: templates/account.php:231
|
1309 |
-
msgid "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1310 |
-
msgstr "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1311 |
-
|
1312 |
-
#: templates/account.php:234
|
1313 |
-
msgid "Delete Account"
|
1314 |
-
msgstr "Smazat účet"
|
1315 |
-
|
1316 |
-
#: templates/account.php246, templates/account/partials/addon.php231,
|
1317 |
-
#: templates/account/partials/deactivate-license-button.php:35
|
1318 |
-
msgid "Deactivate License"
|
1319 |
-
msgstr "Deaktivovat licenci"
|
1320 |
-
|
1321 |
-
#: templates/account.php269, templates/forms/subscription-cancellation.php:125
|
1322 |
-
msgid "Are you sure you want to proceed?"
|
1323 |
-
msgstr "Opravdu chcete pokračovat?"
|
1324 |
-
|
1325 |
-
#: templates/account.php269, templates/account/partials/addon.php:255
|
1326 |
-
msgid "Cancel Subscription"
|
1327 |
-
msgstr "Zrušit předplatné"
|
1328 |
-
|
1329 |
-
#: templates/account.php298, templates/account/partials/addon.php:340
|
1330 |
-
msgctxt "as synchronize"
|
1331 |
-
msgid "Sync"
|
1332 |
-
msgstr "Synchronizovat"
|
1333 |
-
|
1334 |
-
#: templates/account.php313, templates/debug.php:507
|
1335 |
-
msgid "Name"
|
1336 |
-
msgstr "Jméno"
|
1337 |
-
|
1338 |
-
#: templates/account.php319, templates/debug.php:508
|
1339 |
-
msgid "Email"
|
1340 |
-
msgstr "Email"
|
1341 |
-
|
1342 |
-
#: templates/account.php326, templates/debug.php371, templates/debug.php:557
|
1343 |
-
msgid "User ID"
|
1344 |
-
msgstr "ID uživatele"
|
1345 |
-
|
1346 |
-
#: templates/account.php344, templates/account.php637,
|
1347 |
-
#: templates/account.php682, templates/debug.php238, templates/debug.php365,
|
1348 |
-
#: templates/debug.php454, templates/debug.php506, templates/debug.php555,
|
1349 |
-
#: templates/debug.php632, templates/account/payments.php35,
|
1350 |
-
#: templates/debug/logger.php:21
|
1351 |
-
msgid "ID"
|
1352 |
-
msgstr "ID"
|
1353 |
-
|
1354 |
-
#: templates/account.php:351
|
1355 |
-
msgid "Site ID"
|
1356 |
-
msgstr "ID stránky"
|
1357 |
-
|
1358 |
-
#: templates/account.php:354
|
1359 |
-
msgid "No ID"
|
1360 |
-
msgstr "Žádné ID"
|
1361 |
-
|
1362 |
-
#: templates/account.php359, templates/debug.php245, templates/debug.php374,
|
1363 |
-
#: templates/debug.php458, templates/debug.php510,
|
1364 |
-
#: templates/account/partials/site.php:227
|
1365 |
-
msgid "Public Key"
|
1366 |
-
msgstr "Veřejný klíč"
|
1367 |
-
|
1368 |
-
#: templates/account.php365, templates/debug.php375, templates/debug.php459,
|
1369 |
-
#: templates/debug.php511, templates/account/partials/site.php:239
|
1370 |
-
msgid "Secret Key"
|
1371 |
-
msgstr "Tajný klíč"
|
1372 |
-
|
1373 |
-
#: templates/account.php:368
|
1374 |
-
msgctxt "as secret encryption key missing"
|
1375 |
-
msgid "No Secret"
|
1376 |
-
msgstr "Tajný klíč chybí"
|
1377 |
-
|
1378 |
-
#: templates/account.php395, templates/account/partials/site.php120,
|
1379 |
-
#: templates/account/partials/site.php:122
|
1380 |
-
msgid "Trial"
|
1381 |
-
msgstr "Zkouška"
|
1382 |
-
|
1383 |
-
#: templates/account.php422, templates/debug.php562,
|
1384 |
-
#: templates/account/partials/site.php:260
|
1385 |
-
msgid "License Key"
|
1386 |
-
msgstr "Licenční klíč"
|
1387 |
-
|
1388 |
-
#: templates/account.php:453
|
1389 |
-
msgid "Join the Beta program"
|
1390 |
-
msgstr "Join the Beta program"
|
1391 |
-
|
1392 |
-
#: templates/account.php:459
|
1393 |
-
msgid "not verified"
|
1394 |
-
msgstr "není ověřeno"
|
1395 |
-
|
1396 |
-
#: templates/account.php468, templates/account/partials/addon.php:190
|
1397 |
-
msgid "Expired"
|
1398 |
-
msgstr "Vypršelo"
|
1399 |
-
|
1400 |
-
#: templates/account.php:528
|
1401 |
-
msgid "Premium version"
|
1402 |
-
msgstr "Prémiová verze"
|
1403 |
-
|
1404 |
-
#: templates/account.php:530
|
1405 |
-
msgid "Free version"
|
1406 |
-
msgstr "Verze zdarma"
|
1407 |
-
|
1408 |
-
#: templates/account.php:542
|
1409 |
-
msgid "Verify Email"
|
1410 |
-
msgstr "Ověřit e-mail"
|
1411 |
-
|
1412 |
-
#: templates/account.php:553
|
1413 |
-
msgid "Download %s Version"
|
1414 |
-
msgstr "Stáhnout verzi %s"
|
1415 |
-
|
1416 |
-
#: templates/account.php568, templates/account.php820,
|
1417 |
-
#: templates/account/partials/site.php248,
|
1418 |
-
#: templates/account/partials/site.php:270
|
1419 |
-
msgctxt "verb"
|
1420 |
-
msgid "Show"
|
1421 |
-
msgstr "Zobrazit"
|
1422 |
-
|
1423 |
-
#: templates/account.php:583
|
1424 |
-
msgid "What is your %s?"
|
1425 |
-
msgstr "Jaké je vaše \"%s\"?"
|
1426 |
-
|
1427 |
-
#: templates/account.php591, templates/account/billing.php:21
|
1428 |
-
msgctxt "verb"
|
1429 |
-
msgid "Edit"
|
1430 |
-
msgstr "Upravit"
|
1431 |
-
|
1432 |
-
#: templates/account.php:616
|
1433 |
-
msgid "Sites"
|
1434 |
-
msgstr "Weby"
|
1435 |
-
|
1436 |
-
#: templates/account.php:629
|
1437 |
-
msgid "Search by address"
|
1438 |
-
msgstr "Hledat podle adresy"
|
1439 |
-
|
1440 |
-
#: templates/account.php638, templates/debug.php:368
|
1441 |
-
msgid "Address"
|
1442 |
-
msgstr "Adresa"
|
1443 |
-
|
1444 |
-
#: templates/account.php:639
|
1445 |
-
msgid "License"
|
1446 |
-
msgstr "Licence"
|
1447 |
-
|
1448 |
-
#: templates/account.php:640
|
1449 |
-
msgid "Plan"
|
1450 |
-
msgstr "Druh členství"
|
1451 |
-
|
1452 |
-
#: templates/account.php:685
|
1453 |
-
msgctxt "as software license"
|
1454 |
-
msgid "License"
|
1455 |
-
msgstr "Licence"
|
1456 |
-
|
1457 |
-
#: templates/account.php:814
|
1458 |
-
msgctxt "verb"
|
1459 |
-
msgid "Hide"
|
1460 |
-
msgstr "Skrýt"
|
1461 |
-
|
1462 |
-
#: templates/account.php836, templates/forms/data-debug-mode.php:31
|
1463 |
-
msgid "Processing"
|
1464 |
-
msgstr "Processing"
|
1465 |
-
|
1466 |
-
#: templates/account.php:839
|
1467 |
-
msgid "Get updates for bleeding edge Beta versions of %s."
|
1468 |
-
msgstr "Get updates for bleeding edge Beta versions of %s."
|
1469 |
-
|
1470 |
-
#: templates/account.php:897
|
1471 |
-
msgid "Cancelling %s"
|
1472 |
-
msgstr "Ruším %s"
|
1473 |
-
|
1474 |
-
#: templates/account.php897, templates/account.php914,
|
1475 |
-
#: templates/forms/subscription-cancellation.php27,
|
1476 |
-
#: templates/forms/deactivation/form.php:133
|
1477 |
-
msgid "trial"
|
1478 |
-
msgstr "zkušební"
|
1479 |
-
|
1480 |
-
#: templates/account.php912, templates/forms/deactivation/form.php:150
|
1481 |
-
msgid "Cancelling %s..."
|
1482 |
-
msgstr "Ruším %s..."
|
1483 |
-
|
1484 |
-
#: templates/account.php915, templates/forms/subscription-cancellation.php28,
|
1485 |
-
#: templates/forms/deactivation/form.php:134
|
1486 |
-
msgid "subscription"
|
1487 |
-
msgstr "předplatné"
|
1488 |
-
|
1489 |
-
#: templates/account.php:929
|
1490 |
-
msgid "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1491 |
-
msgstr "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1492 |
-
|
1493 |
-
#: templates/add-ons.php:38
|
1494 |
-
msgid "View details"
|
1495 |
-
msgstr "Zobrazit podrobnosti"
|
1496 |
-
|
1497 |
-
#: templates/add-ons.php:48
|
1498 |
-
msgid "Add Ons for %s"
|
1499 |
-
msgstr "Rozšíření pro %s"
|
1500 |
-
|
1501 |
-
#: templates/add-ons.php:58
|
1502 |
-
msgid "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1503 |
-
msgstr "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1504 |
-
|
1505 |
-
#: templates/add-ons.php:229
|
1506 |
-
msgctxt "active add-on"
|
1507 |
-
msgid "Active"
|
1508 |
-
msgstr "Active"
|
1509 |
-
|
1510 |
-
#: templates/add-ons.php:230
|
1511 |
-
msgctxt "installed add-on"
|
1512 |
-
msgid "Installed"
|
1513 |
-
msgstr "Installed"
|
1514 |
-
|
1515 |
-
#: templates/admin-notice.php13, templates/forms/license-activation.php207,
|
1516 |
-
#: templates/forms/resend-key.php:77
|
1517 |
-
msgctxt "as close a window"
|
1518 |
-
msgid "Dismiss"
|
1519 |
-
msgstr "Skrýt"
|
1520 |
-
|
1521 |
-
#: templates/auto-installation.php:45
|
1522 |
-
msgid "%s sec"
|
1523 |
-
msgstr "%s s"
|
1524 |
-
|
1525 |
-
#: templates/auto-installation.php:83
|
1526 |
-
msgid "Automatic Installation"
|
1527 |
-
msgstr "Automatic Installation"
|
1528 |
-
|
1529 |
-
#: templates/auto-installation.php:93
|
1530 |
-
msgid "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1531 |
-
msgstr "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1532 |
-
|
1533 |
-
#: templates/auto-installation.php:104
|
1534 |
-
msgid "The installation process has started and may take a few minutes to complete. Please wait until it is done - do not refresh this page."
|
1535 |
-
msgstr "Proces instalace byl zahájen a může trvat několik minut. Počkejte prosím na dokončení - neobnovujte tuto stránku."
|
1536 |
-
|
1537 |
-
#: templates/auto-installation.php:109
|
1538 |
-
msgid "Cancel Installation"
|
1539 |
-
msgstr "Cancel Installation"
|
1540 |
-
|
1541 |
-
#: templates/checkout.php:180
|
1542 |
-
msgid "Checkout"
|
1543 |
-
msgstr "Pokladna"
|
1544 |
-
|
1545 |
-
#: templates/checkout.php:180
|
1546 |
-
msgid "PCI compliant"
|
1547 |
-
msgstr "Kompatibilní s PCI"
|
1548 |
-
|
1549 |
-
#. translators: %s: name (e.g. Hey John,)
|
1550 |
-
#: templates/connect.php:112
|
1551 |
-
msgctxt "greeting"
|
1552 |
-
msgid "Hey %s,"
|
1553 |
-
msgstr "Dobrý den %s,"
|
1554 |
-
|
1555 |
-
#: templates/connect.php:154
|
1556 |
-
msgid "Allow & Continue"
|
1557 |
-
msgstr "Povolit a pokračovat"
|
1558 |
-
|
1559 |
-
#: templates/connect.php:158
|
1560 |
-
msgid "Re-send activation email"
|
1561 |
-
msgstr "Znovu poslat aktivační email"
|
1562 |
-
|
1563 |
-
#: templates/connect.php:162
|
1564 |
-
msgid "Thanks %s!"
|
1565 |
-
msgstr "Děkujeme %s!"
|
1566 |
-
|
1567 |
-
#: templates/connect.php172, templates/forms/license-activation.php:46
|
1568 |
-
msgid "Agree & Activate License"
|
1569 |
-
msgstr "Aktivovat licenci"
|
1570 |
-
|
1571 |
-
#: templates/connect.php:181
|
1572 |
-
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
1573 |
-
msgstr "Děkujeme za nákup %s! Pro aktivaci zadejte prosím svůj licenční klíč:"
|
1574 |
-
|
1575 |
-
#: templates/connect.php:188
|
1576 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s."
|
1577 |
-
msgstr "Nezmeškejte žádnou důležitou aktualizaci - dovolte nám sbírat anonymní a obecná diagnostická data s %4$s a nechte se upozornit na nové funkce, výukové materiály, nabídky a bezpečnostní aktualizace."
|
1578 |
-
|
1579 |
-
#: templates/connect.php:189
|
1580 |
-
msgid "Never miss an important update - opt in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
1581 |
-
msgstr "Nezmeškejte žádnou důležitou aktualizaci - dovolte nám sbírat anonymní a obecná diagnostická data s %4$s a nechte se upozornit na nové funkce a bezpečnostní aktualizace."
|
1582 |
-
|
1583 |
-
#: templates/connect.php:195
|
1584 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1585 |
-
msgstr "Nezmeškejte žádnou důležitou aktualizaci - dovolte nám sbírat anonymní a obecná diagnostická data s %4$s a nechte se upozornit na nové funkce, výukové materiály, nabídky a bezpečnostní aktualizace. Pokud tohle přeskočíte tak se nic neděje. %1$s bude bez problémů dál fungovat."
|
1586 |
-
|
1587 |
-
#: templates/connect.php:196
|
1588 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1589 |
-
msgstr "Nezmeškejte žádnou důležitou aktualizaci - dovolte nám sbírat anonymní a obecná diagnostická data s %4$s a nechte se upozornit na nové funkce a bezpečnostní aktualizace. Pokud tohle přeskočíte tak se nic neděje. %1$s bude bez problémů dál fungovat."
|
1590 |
-
|
1591 |
-
#: templates/connect.php:230
|
1592 |
-
msgid "We're excited to introduce the Freemius network-level integration."
|
1593 |
-
msgstr "Jsme rádi, že vám můžeme ukázat integraci Freemiusu i v rámci sítě webů."
|
1594 |
-
|
1595 |
-
#: templates/connect.php:233
|
1596 |
-
msgid "During the update process we detected %d site(s) that are still pending license activation."
|
1597 |
-
msgstr "During the update process we detected %d site(s) that are still pending license activation."
|
1598 |
-
|
1599 |
-
#: templates/connect.php:235
|
1600 |
-
msgid "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1601 |
-
msgstr "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1602 |
-
|
1603 |
-
#: templates/connect.php:237
|
1604 |
-
msgid "%s's paid features"
|
1605 |
-
msgstr "%s's paid features"
|
1606 |
-
|
1607 |
-
#: templates/connect.php:242
|
1608 |
-
msgid "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1609 |
-
msgstr "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1610 |
-
|
1611 |
-
#: templates/connect.php:244
|
1612 |
-
msgid "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1613 |
-
msgstr "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1614 |
-
|
1615 |
-
#: templates/connect.php253, templates/forms/data-debug-mode.php35,
|
1616 |
-
#: templates/forms/license-activation.php:49
|
1617 |
-
msgid "License key"
|
1618 |
-
msgstr "Licenční klíč"
|
1619 |
-
|
1620 |
-
#: templates/connect.php256, templates/forms/license-activation.php:22
|
1621 |
-
msgid "Can't find your license key?"
|
1622 |
-
msgstr "Nemůžete najít svůj licenční klíč?"
|
1623 |
-
|
1624 |
-
#: templates/connect.php315, templates/connect.php652,
|
1625 |
-
#: templates/forms/deactivation/retry-skip.php:20
|
1626 |
-
msgctxt "verb"
|
1627 |
-
msgid "Skip"
|
1628 |
-
msgstr "Přeskočit"
|
1629 |
-
|
1630 |
-
#: templates/connect.php:318
|
1631 |
-
msgid "Delegate to Site Admins"
|
1632 |
-
msgstr "Delegate to Site Admins"
|
1633 |
-
|
1634 |
-
#: templates/connect.php:318
|
1635 |
-
msgid "If you click it, this decision will be delegated to the sites administrators."
|
1636 |
-
msgstr "If you click it, this decision will be delegated to the sites administrators."
|
1637 |
-
|
1638 |
-
#: templates/connect.php:346
|
1639 |
-
msgid "Your Profile Overview"
|
1640 |
-
msgstr "Informace o vašem profilu"
|
1641 |
-
|
1642 |
-
#: templates/connect.php:347
|
1643 |
-
msgid "Name and email address"
|
1644 |
-
msgstr "Jméno a emailová adresa"
|
1645 |
-
|
1646 |
-
#: templates/connect.php:352
|
1647 |
-
msgid "Your Site Overview"
|
1648 |
-
msgstr "Informace o vaší stránce"
|
1649 |
-
|
1650 |
-
#: templates/connect.php:353
|
1651 |
-
msgid "Site URL, WP version, PHP info, plugins & themes"
|
1652 |
-
msgstr "URL webu, verze WP, PHP info, pluginy a šablony"
|
1653 |
-
|
1654 |
-
#: templates/connect.php:358
|
1655 |
-
msgid "Admin Notices"
|
1656 |
-
msgstr "Zobrazení oznámení v adminu"
|
1657 |
-
|
1658 |
-
#: templates/connect.php359, templates/connect.php:375
|
1659 |
-
msgid "Updates, announcements, marketing, no spam"
|
1660 |
-
msgstr "Aktualizace, oznámení, marketing, žádný spam"
|
1661 |
-
|
1662 |
-
#: templates/connect.php:364
|
1663 |
-
msgid "Current %s Events"
|
1664 |
-
msgstr "Informace o událostech pro %s"
|
1665 |
-
|
1666 |
-
#: templates/connect.php:365
|
1667 |
-
msgid "Activation, deactivation and uninstall"
|
1668 |
-
msgstr "Aktivace, deaktivace a odinstalace"
|
1669 |
-
|
1670 |
-
#: templates/connect.php:374
|
1671 |
-
msgid "Newsletter"
|
1672 |
-
msgstr "Newsletter"
|
1673 |
-
|
1674 |
-
#: templates/connect.php391, templates/forms/license-activation.php:41
|
1675 |
-
msgid "The %1$s will be periodically sending data to %2$s to check for security and feature updates, and verify the validity of your license."
|
1676 |
-
msgstr "Pro ověření platnosti vaší licence a automatických aktualizací bude tento %1$s periodicky odesílat data do %2$s."
|
1677 |
-
|
1678 |
-
#: templates/connect.php:396
|
1679 |
-
msgid "What permissions are being granted?"
|
1680 |
-
msgstr "Jaká oprávnění budou udělena?"
|
1681 |
-
|
1682 |
-
#: templates/connect.php:417
|
1683 |
-
msgid "Don't have a license key?"
|
1684 |
-
msgstr "Nemáte licenční klíč?"
|
1685 |
-
|
1686 |
-
#: templates/connect.php:420
|
1687 |
-
msgid "Have a license key?"
|
1688 |
-
msgstr "Máte licenční klíč?"
|
1689 |
-
|
1690 |
-
#: templates/connect.php:428
|
1691 |
-
msgid "Privacy Policy"
|
1692 |
-
msgstr "Zásady ochrany osobních údajů"
|
1693 |
-
|
1694 |
-
#: templates/connect.php:430
|
1695 |
-
msgid "License Agreement"
|
1696 |
-
msgstr "Licenční smlouva"
|
1697 |
-
|
1698 |
-
#: templates/connect.php:430
|
1699 |
-
msgid "Terms of Service"
|
1700 |
-
msgstr "Podmínky služby"
|
1701 |
-
|
1702 |
-
#: templates/connect.php:805
|
1703 |
-
msgctxt "as in the process of sending an email"
|
1704 |
-
msgid "Sending email"
|
1705 |
-
msgstr "Probíhá odesílání emailů"
|
1706 |
-
|
1707 |
-
#: templates/connect.php:806
|
1708 |
-
msgctxt "as activating plugin"
|
1709 |
-
msgid "Activating"
|
1710 |
-
msgstr "Probíhá aktivace"
|
1711 |
-
|
1712 |
-
#: templates/contact.php:78
|
1713 |
-
msgid "Contact"
|
1714 |
-
msgstr "Kontakt"
|
1715 |
-
|
1716 |
-
#: templates/debug.php:17
|
1717 |
-
msgctxt "as turned off"
|
1718 |
-
msgid "Off"
|
1719 |
-
msgstr "Vypnuto"
|
1720 |
-
|
1721 |
-
#: templates/debug.php:18
|
1722 |
-
msgctxt "as turned on"
|
1723 |
-
msgid "On"
|
1724 |
-
msgstr "Zapnuto"
|
1725 |
-
|
1726 |
-
#: templates/debug.php:20
|
1727 |
-
msgid "SDK"
|
1728 |
-
msgstr "SDK"
|
1729 |
-
|
1730 |
-
#: templates/debug.php:24
|
1731 |
-
msgctxt "as code debugging"
|
1732 |
-
msgid "Debugging"
|
1733 |
-
msgstr "Debugging"
|
1734 |
-
|
1735 |
-
#: templates/debug.php54, templates/debug.php250, templates/debug.php376,
|
1736 |
-
#: templates/debug.php:512
|
1737 |
-
msgid "Actions"
|
1738 |
-
msgstr "Akce objednávky"
|
1739 |
-
|
1740 |
-
#: templates/debug.php:64
|
1741 |
-
msgid "Are you sure you want to delete all Freemius data?"
|
1742 |
-
msgstr "Opravdu chcete smazat veškerá Freemius data?"
|
1743 |
-
|
1744 |
-
#: templates/debug.php:64
|
1745 |
-
msgid "Delete All Accounts"
|
1746 |
-
msgstr "Delete All Accounts"
|
1747 |
-
|
1748 |
-
#: templates/debug.php:71
|
1749 |
-
msgid "Clear API Cache"
|
1750 |
-
msgstr "Vymazat paměť API"
|
1751 |
-
|
1752 |
-
#: templates/debug.php:79
|
1753 |
-
msgid "Clear Updates Transients"
|
1754 |
-
msgstr "Clear Updates Transients"
|
1755 |
-
|
1756 |
-
#: templates/debug.php:86
|
1757 |
-
msgid "Sync Data From Server"
|
1758 |
-
msgstr "Synchronizovat data ze serveru"
|
1759 |
-
|
1760 |
-
#: templates/debug.php:95
|
1761 |
-
msgid "Migrate Options to Network"
|
1762 |
-
msgstr "Migrate Options to Network"
|
1763 |
-
|
1764 |
-
#: templates/debug.php:100
|
1765 |
-
msgid "Load DB Option"
|
1766 |
-
msgstr "Load DB Option"
|
1767 |
-
|
1768 |
-
#: templates/debug.php:103
|
1769 |
-
msgid "Set DB Option"
|
1770 |
-
msgstr "Set DB Option"
|
1771 |
-
|
1772 |
-
#: templates/debug.php:182
|
1773 |
-
msgid "Key"
|
1774 |
-
msgstr "Klíč"
|
1775 |
-
|
1776 |
-
#: templates/debug.php:183
|
1777 |
-
msgid "Value"
|
1778 |
-
msgstr "Hodnota"
|
1779 |
-
|
1780 |
-
#: templates/debug.php:199
|
1781 |
-
msgctxt "as software development kit versions"
|
1782 |
-
msgid "SDK Versions"
|
1783 |
-
msgstr "SDK Versions"
|
1784 |
-
|
1785 |
-
#: templates/debug.php:204
|
1786 |
-
msgid "SDK Path"
|
1787 |
-
msgstr "Cesta l SDK"
|
1788 |
-
|
1789 |
-
#: templates/debug.php205, templates/debug.php:244
|
1790 |
-
msgid "Module Path"
|
1791 |
-
msgstr "Cesta k modulu"
|
1792 |
-
|
1793 |
-
#: templates/debug.php:206
|
1794 |
-
msgid "Is Active"
|
1795 |
-
msgstr "Je aktivní"
|
1796 |
-
|
1797 |
-
#: templates/debug.php234, templates/debug/plugins-themes-sync.php:35
|
1798 |
-
msgid "Plugins"
|
1799 |
-
msgstr "Pluginy"
|
1800 |
-
|
1801 |
-
#: templates/debug.php234, templates/debug/plugins-themes-sync.php:56
|
1802 |
-
msgid "Themes"
|
1803 |
-
msgstr "Šablony"
|
1804 |
-
|
1805 |
-
#: templates/debug.php239, templates/debug.php370, templates/debug.php456,
|
1806 |
-
#: templates/debug/scheduled-crons.php:80
|
1807 |
-
msgid "Slug"
|
1808 |
-
msgstr "Zkratka"
|
1809 |
-
|
1810 |
-
#: templates/debug.php241, templates/debug.php:455
|
1811 |
-
msgid "Title"
|
1812 |
-
msgstr "Nadpis"
|
1813 |
-
|
1814 |
-
#: templates/debug.php:242
|
1815 |
-
msgctxt "as application program interface"
|
1816 |
-
msgid "API"
|
1817 |
-
msgstr "API"
|
1818 |
-
|
1819 |
-
#: templates/debug.php:243
|
1820 |
-
msgid "Freemius State"
|
1821 |
-
msgstr "Stav Freemius"
|
1822 |
-
|
1823 |
-
#: templates/debug.php:247
|
1824 |
-
msgid "Network Blog"
|
1825 |
-
msgstr "Network Blog"
|
1826 |
-
|
1827 |
-
#: templates/debug.php:248
|
1828 |
-
msgid "Network User"
|
1829 |
-
msgstr "Network User"
|
1830 |
-
|
1831 |
-
#: templates/debug.php:285
|
1832 |
-
msgctxt "as connection was successful"
|
1833 |
-
msgid "Connected"
|
1834 |
-
msgstr "Připojeno"
|
1835 |
-
|
1836 |
-
#: templates/debug.php:286
|
1837 |
-
msgctxt "as connection blocked"
|
1838 |
-
msgid "Blocked"
|
1839 |
-
msgstr "Zablokováno"
|
1840 |
-
|
1841 |
-
#: templates/debug.php:322
|
1842 |
-
msgid "Simulate Trial Promotion"
|
1843 |
-
msgstr "Simulate Trial Promotion"
|
1844 |
-
|
1845 |
-
#: templates/debug.php:334
|
1846 |
-
msgid "Simulate Network Upgrade"
|
1847 |
-
msgstr "Simulate Network Upgrade"
|
1848 |
-
|
1849 |
-
#: templates/debug.php:359
|
1850 |
-
msgid "%s Installs"
|
1851 |
-
msgstr "%s instalací"
|
1852 |
-
|
1853 |
-
#: templates/debug.php:361
|
1854 |
-
msgctxt "like websites"
|
1855 |
-
msgid "Sites"
|
1856 |
-
msgstr "Weby"
|
1857 |
-
|
1858 |
-
#: templates/debug.php367, templates/account/partials/site.php:156
|
1859 |
-
msgid "Blog ID"
|
1860 |
-
msgstr "Blog ID"
|
1861 |
-
|
1862 |
-
#: templates/debug.php:372
|
1863 |
-
msgid "License ID"
|
1864 |
-
msgstr "License ID"
|
1865 |
-
|
1866 |
-
#: templates/debug.php436, templates/debug.php535,
|
1867 |
-
#: templates/account/partials/addon.php:435
|
1868 |
-
msgctxt "verb"
|
1869 |
-
msgid "Delete"
|
1870 |
-
msgstr "Smazat"
|
1871 |
-
|
1872 |
-
#: templates/debug.php:450
|
1873 |
-
msgid "Add Ons of module %s"
|
1874 |
-
msgstr "Add Ons of module %s"
|
1875 |
-
|
1876 |
-
#: templates/debug.php:502
|
1877 |
-
msgid "Users"
|
1878 |
-
msgstr "Uživatelé"
|
1879 |
-
|
1880 |
-
#: templates/debug.php:509
|
1881 |
-
msgid "Verified"
|
1882 |
-
msgstr "Ověřeno"
|
1883 |
-
|
1884 |
-
#: templates/debug.php:551
|
1885 |
-
msgid "%s Licenses"
|
1886 |
-
msgstr "%s licencí"
|
1887 |
-
|
1888 |
-
#: templates/debug.php:556
|
1889 |
-
msgid "Plugin ID"
|
1890 |
-
msgstr "ID pluginu"
|
1891 |
-
|
1892 |
-
#: templates/debug.php:558
|
1893 |
-
msgid "Plan ID"
|
1894 |
-
msgstr "ID členství"
|
1895 |
-
|
1896 |
-
#: templates/debug.php:559
|
1897 |
-
msgid "Quota"
|
1898 |
-
msgstr "Quota"
|
1899 |
-
|
1900 |
-
#: templates/debug.php:560
|
1901 |
-
msgid "Activated"
|
1902 |
-
msgstr "Aktivovaný"
|
1903 |
-
|
1904 |
-
#: templates/debug.php:561
|
1905 |
-
msgid "Blocking"
|
1906 |
-
msgstr "Blokování"
|
1907 |
-
|
1908 |
-
#: templates/debug.php:563
|
1909 |
-
msgctxt "as expiration date"
|
1910 |
-
msgid "Expiration"
|
1911 |
-
msgstr "Expirace"
|
1912 |
-
|
1913 |
-
#: templates/debug.php:590
|
1914 |
-
msgid "Debug Log"
|
1915 |
-
msgstr "Ladící log"
|
1916 |
-
|
1917 |
-
#: templates/debug.php:594
|
1918 |
-
msgid "All Types"
|
1919 |
-
msgstr "Všechny typy"
|
1920 |
-
|
1921 |
-
#: templates/debug.php:601
|
1922 |
-
msgid "All Requests"
|
1923 |
-
msgstr "All Requests"
|
1924 |
-
|
1925 |
-
#: templates/debug.php606, templates/debug.php635,
|
1926 |
-
#: templates/debug/logger.php:25
|
1927 |
-
msgid "File"
|
1928 |
-
msgstr "Soubor"
|
1929 |
-
|
1930 |
-
#: templates/debug.php607, templates/debug.php633,
|
1931 |
-
#: templates/debug/logger.php:23
|
1932 |
-
msgid "Function"
|
1933 |
-
msgstr "Funkce"
|
1934 |
-
|
1935 |
-
#: templates/debug.php:608
|
1936 |
-
msgid "Process ID"
|
1937 |
-
msgstr "Process ID"
|
1938 |
-
|
1939 |
-
#: templates/debug.php:609
|
1940 |
-
msgid "Logger"
|
1941 |
-
msgstr "Logger"
|
1942 |
-
|
1943 |
-
#: templates/debug.php610, templates/debug.php634,
|
1944 |
-
#: templates/debug/logger.php:24
|
1945 |
-
msgid "Message"
|
1946 |
-
msgstr "Zpráva"
|
1947 |
-
|
1948 |
-
#: templates/debug.php:612
|
1949 |
-
msgid "Filter"
|
1950 |
-
msgstr "Filtr"
|
1951 |
-
|
1952 |
-
#: templates/debug.php:620
|
1953 |
-
msgid "Download"
|
1954 |
-
msgstr "Stáhnout"
|
1955 |
-
|
1956 |
-
#: templates/debug.php631, templates/debug/logger.php:22
|
1957 |
-
msgid "Type"
|
1958 |
-
msgstr "Typ"
|
1959 |
-
|
1960 |
-
#: templates/debug.php636, templates/debug/logger.php:26
|
1961 |
-
msgid "Timestamp"
|
1962 |
-
msgstr "Datum a čas"
|
1963 |
-
|
1964 |
-
#: templates/secure-https-header.php:28
|
1965 |
-
msgid "Secure HTTPS %s page, running from an external domain"
|
1966 |
-
msgstr "Zabezpečená stránka HTTPS %s spuštěná z externí domény"
|
1967 |
-
|
1968 |
-
#: includes/customizer/class-fs-customizer-support-section.php55,
|
1969 |
-
#: templates/plugin-info/features.php:43
|
1970 |
-
msgid "Support"
|
1971 |
-
msgstr "Podpora"
|
1972 |
-
|
1973 |
-
#: includes/debug/class-fs-debug-bar-panel.php48,
|
1974 |
-
#: templates/debug/api-calls.php54, templates/debug/logger.php:62
|
1975 |
-
msgctxt "milliseconds"
|
1976 |
-
msgid "ms"
|
1977 |
-
msgstr "ms"
|
1978 |
-
|
1979 |
-
#: includes/debug/debug-bar-start.php:41
|
1980 |
-
msgid "Freemius API"
|
1981 |
-
msgstr "Freemius API"
|
1982 |
-
|
1983 |
-
#: includes/debug/debug-bar-start.php:42
|
1984 |
-
msgid "Requests"
|
1985 |
-
msgstr "Žádosti"
|
1986 |
-
|
1987 |
-
#: templates/account/billing.php:22
|
1988 |
-
msgctxt "verb"
|
1989 |
-
msgid "Update"
|
1990 |
-
msgstr "Aktualizovat"
|
1991 |
-
|
1992 |
-
#: templates/account/billing.php:33
|
1993 |
-
msgid "Billing"
|
1994 |
-
msgstr "Fakturace"
|
1995 |
-
|
1996 |
-
#: templates/account/billing.php38, templates/account/billing.php:38
|
1997 |
-
msgid "Business name"
|
1998 |
-
msgstr "Jméno firmy"
|
1999 |
-
|
2000 |
-
#: templates/account/billing.php39, templates/account/billing.php:39
|
2001 |
-
msgid "Tax / VAT ID"
|
2002 |
-
msgstr "Tax / VAT ID"
|
2003 |
-
|
2004 |
-
#: templates/account/billing.php42, templates/account/billing.php42,
|
2005 |
-
#: templates/account/billing.php43, templates/account/billing.php:43
|
2006 |
-
msgid "Address Line %d"
|
2007 |
-
msgstr "Address Line %d"
|
2008 |
-
|
2009 |
-
#: templates/account/billing.php46, templates/account/billing.php:46
|
2010 |
-
msgid "City"
|
2011 |
-
msgstr "Město"
|
2012 |
-
|
2013 |
-
#: templates/account/billing.php46, templates/account/billing.php:46
|
2014 |
-
msgid "Town"
|
2015 |
-
msgstr "Město"
|
2016 |
-
|
2017 |
-
#: templates/account/billing.php47, templates/account/billing.php:47
|
2018 |
-
msgid "ZIP / Postal Code"
|
2019 |
-
msgstr "PSČ / směrovací číslo"
|
2020 |
-
|
2021 |
-
#: templates/account/billing.php:302
|
2022 |
-
msgid "Country"
|
2023 |
-
msgstr "Země"
|
2024 |
-
|
2025 |
-
#: templates/account/billing.php:304
|
2026 |
-
msgid "Select Country"
|
2027 |
-
msgstr "Vyberte zemi"
|
2028 |
-
|
2029 |
-
#: templates/account/billing.php311, templates/account/billing.php:312
|
2030 |
-
msgid "State"
|
2031 |
-
msgstr "Kraj"
|
2032 |
-
|
2033 |
-
#: templates/account/billing.php311, templates/account/billing.php:312
|
2034 |
-
msgid "Province"
|
2035 |
-
msgstr "Okres"
|
2036 |
-
|
2037 |
-
#: templates/account/payments.php:29
|
2038 |
-
msgid "Payments"
|
2039 |
-
msgstr "Platby"
|
2040 |
-
|
2041 |
-
#: templates/account/payments.php:36
|
2042 |
-
msgid "Date"
|
2043 |
-
msgstr "Datum"
|
2044 |
-
|
2045 |
-
#: templates/account/payments.php:37
|
2046 |
-
msgid "Amount"
|
2047 |
-
msgstr "Částka"
|
2048 |
-
|
2049 |
-
#: templates/account/payments.php38, templates/account/payments.php:50
|
2050 |
-
msgid "Invoice"
|
2051 |
-
msgstr "Faktura"
|
2052 |
-
|
2053 |
-
#: templates/debug/api-calls.php:56
|
2054 |
-
msgid "API"
|
2055 |
-
msgstr "API"
|
2056 |
-
|
2057 |
-
#: templates/debug/api-calls.php:68
|
2058 |
-
msgid "Method"
|
2059 |
-
msgstr "Metoda"
|
2060 |
-
|
2061 |
-
#: templates/debug/api-calls.php:69
|
2062 |
-
msgid "Code"
|
2063 |
-
msgstr "Kód"
|
2064 |
-
|
2065 |
-
#: templates/debug/api-calls.php:70
|
2066 |
-
msgid "Length"
|
2067 |
-
msgstr "Délka"
|
2068 |
-
|
2069 |
-
#: templates/debug/api-calls.php:71
|
2070 |
-
msgctxt "as file/folder path"
|
2071 |
-
msgid "Path"
|
2072 |
-
msgstr "Složka"
|
2073 |
-
|
2074 |
-
#: templates/debug/api-calls.php:73
|
2075 |
-
msgid "Body"
|
2076 |
-
msgstr "Tělo"
|
2077 |
-
|
2078 |
-
#: templates/debug/api-calls.php:75
|
2079 |
-
msgid "Result"
|
2080 |
-
msgstr "Výsledek"
|
2081 |
-
|
2082 |
-
#: templates/debug/api-calls.php:76
|
2083 |
-
msgid "Start"
|
2084 |
-
msgstr "Začátek"
|
2085 |
-
|
2086 |
-
#: templates/debug/api-calls.php:77
|
2087 |
-
msgid "End"
|
2088 |
-
msgstr "Konec"
|
2089 |
-
|
2090 |
-
#: templates/debug/logger.php:15
|
2091 |
-
msgid "Log"
|
2092 |
-
msgstr "Záznam"
|
2093 |
-
|
2094 |
-
#. translators: %s: time period (e.g. In "2 hours")
|
2095 |
-
#: templates/debug/plugins-themes-sync.php18,
|
2096 |
-
#: templates/debug/scheduled-crons.php:91
|
2097 |
-
msgid "In %s"
|
2098 |
-
msgstr "Za %s"
|
2099 |
-
|
2100 |
-
#. translators: %s: time period (e.g. "2 hours" ago)
|
2101 |
-
#: templates/debug/plugins-themes-sync.php20,
|
2102 |
-
#: templates/debug/scheduled-crons.php:93
|
2103 |
-
msgid "%s ago"
|
2104 |
-
msgstr "Před %s"
|
2105 |
-
|
2106 |
-
#: templates/debug/plugins-themes-sync.php21,
|
2107 |
-
#: templates/debug/scheduled-crons.php:74
|
2108 |
-
msgctxt "seconds"
|
2109 |
-
msgid "sec"
|
2110 |
-
msgstr "s"
|
2111 |
-
|
2112 |
-
#: templates/debug/plugins-themes-sync.php:23
|
2113 |
-
msgid "Plugins & Themes Sync"
|
2114 |
-
msgstr "Pluginy a synchronizace šablon"
|
2115 |
-
|
2116 |
-
#: templates/debug/plugins-themes-sync.php:28
|
2117 |
-
msgid "Total"
|
2118 |
-
msgstr "Celkem"
|
2119 |
-
|
2120 |
-
#: templates/debug/plugins-themes-sync.php29,
|
2121 |
-
#: templates/debug/scheduled-crons.php:84
|
2122 |
-
msgid "Last"
|
2123 |
-
msgstr "Poslední"
|
2124 |
-
|
2125 |
-
#: templates/debug/scheduled-crons.php:76
|
2126 |
-
msgid "Scheduled Crons"
|
2127 |
-
msgstr "Plánované crony"
|
2128 |
-
|
2129 |
-
#: templates/debug/scheduled-crons.php:81
|
2130 |
-
msgid "Module"
|
2131 |
-
msgstr "Modul"
|
2132 |
-
|
2133 |
-
#: templates/debug/scheduled-crons.php:82
|
2134 |
-
msgid "Module Type"
|
2135 |
-
msgstr "Typ modulu"
|
2136 |
-
|
2137 |
-
#: templates/debug/scheduled-crons.php:83
|
2138 |
-
msgid "Cron Type"
|
2139 |
-
msgstr "Cron Type"
|
2140 |
-
|
2141 |
-
#: templates/debug/scheduled-crons.php:85
|
2142 |
-
msgid "Next"
|
2143 |
-
msgstr "Následující"
|
2144 |
-
|
2145 |
-
#: templates/forms/affiliation.php:82
|
2146 |
-
msgid "Non-expiring"
|
2147 |
-
msgstr "Non-expiring"
|
2148 |
-
|
2149 |
-
#: templates/forms/affiliation.php:85
|
2150 |
-
msgid "Apply to become an affiliate"
|
2151 |
-
msgstr "Apply to become an affiliate"
|
2152 |
-
|
2153 |
-
#: templates/forms/affiliation.php:104
|
2154 |
-
msgid "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2155 |
-
msgstr "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2156 |
-
|
2157 |
-
#: templates/forms/affiliation.php:119
|
2158 |
-
msgid "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2159 |
-
msgstr "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2160 |
-
|
2161 |
-
#: templates/forms/affiliation.php:122
|
2162 |
-
msgid "Your affiliation account was temporarily suspended."
|
2163 |
-
msgstr "Your affiliation account was temporarily suspended."
|
2164 |
-
|
2165 |
-
#: templates/forms/affiliation.php:125
|
2166 |
-
msgid "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2167 |
-
msgstr "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2168 |
-
|
2169 |
-
#: templates/forms/affiliation.php:128
|
2170 |
-
msgid "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2171 |
-
msgstr "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2172 |
-
|
2173 |
-
#: templates/forms/affiliation.php:141
|
2174 |
-
msgid "Like the %s? Become our ambassador and earn cash ;-)"
|
2175 |
-
msgstr "Like the %s? Become our ambassador and earn cash ;-)"
|
2176 |
-
|
2177 |
-
#: templates/forms/affiliation.php:142
|
2178 |
-
msgid "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2179 |
-
msgstr "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2180 |
-
|
2181 |
-
#: templates/forms/affiliation.php:145
|
2182 |
-
msgid "Program Summary"
|
2183 |
-
msgstr "Program Summary"
|
2184 |
-
|
2185 |
-
#: templates/forms/affiliation.php:147
|
2186 |
-
msgid "%s commission when a customer purchases a new license."
|
2187 |
-
msgstr "%s provizi, když zákazník zakoupí novou licenci."
|
2188 |
-
|
2189 |
-
#: templates/forms/affiliation.php:149
|
2190 |
-
msgid "Get commission for automated subscription renewals."
|
2191 |
-
msgstr "Get commission for automated subscription renewals."
|
2192 |
-
|
2193 |
-
#: templates/forms/affiliation.php:152
|
2194 |
-
msgid "%s tracking cookie after the first visit to maximize earnings potential."
|
2195 |
-
msgstr "%s tracking cookie after the first visit to maximize earnings potential."
|
2196 |
-
|
2197 |
-
#: templates/forms/affiliation.php:155
|
2198 |
-
msgid "Unlimited commissions."
|
2199 |
-
msgstr "Unlimited commissions."
|
2200 |
-
|
2201 |
-
#: templates/forms/affiliation.php:157
|
2202 |
-
msgid "%s minimum payout amount."
|
2203 |
-
msgstr "%s minimální částka výplaty."
|
2204 |
-
|
2205 |
-
#: templates/forms/affiliation.php:158
|
2206 |
-
msgid "Payouts are in USD and processed monthly via PayPal."
|
2207 |
-
msgstr "Payouts are in USD and processed monthly via PayPal."
|
2208 |
-
|
2209 |
-
#: templates/forms/affiliation.php:159
|
2210 |
-
msgid "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2211 |
-
msgstr "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2212 |
-
|
2213 |
-
#: templates/forms/affiliation.php:162
|
2214 |
-
msgid "Affiliate"
|
2215 |
-
msgstr "Partner"
|
2216 |
-
|
2217 |
-
#: templates/forms/affiliation.php165, templates/forms/resend-key.php:23
|
2218 |
-
msgid "Email address"
|
2219 |
-
msgstr "Emailová adresa"
|
2220 |
-
|
2221 |
-
#: templates/forms/affiliation.php:169
|
2222 |
-
msgid "Full name"
|
2223 |
-
msgstr "Celé jméno"
|
2224 |
-
|
2225 |
-
#: templates/forms/affiliation.php:173
|
2226 |
-
msgid "PayPal account email address"
|
2227 |
-
msgstr "E-mailová adresa účtu PayPal"
|
2228 |
-
|
2229 |
-
#: templates/forms/affiliation.php:177
|
2230 |
-
msgid "Where are you going to promote the %s?"
|
2231 |
-
msgstr "Where are you going to promote the %s?"
|
2232 |
-
|
2233 |
-
#: templates/forms/affiliation.php:179
|
2234 |
-
msgid "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2235 |
-
msgstr "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2236 |
-
|
2237 |
-
#: templates/forms/affiliation.php:181
|
2238 |
-
msgid "Add another domain"
|
2239 |
-
msgstr "Add another domain"
|
2240 |
-
|
2241 |
-
#: templates/forms/affiliation.php:185
|
2242 |
-
msgid "Extra Domains"
|
2243 |
-
msgstr "Další domény"
|
2244 |
-
|
2245 |
-
#: templates/forms/affiliation.php:186
|
2246 |
-
msgid "Extra domains where you will be marketing the product from."
|
2247 |
-
msgstr "Extra domains where you will be marketing the product from."
|
2248 |
-
|
2249 |
-
#: templates/forms/affiliation.php:196
|
2250 |
-
msgid "Promotion methods"
|
2251 |
-
msgstr "Promotion methods"
|
2252 |
-
|
2253 |
-
#: templates/forms/affiliation.php:199
|
2254 |
-
msgid "Social media (Facebook, Twitter, etc.)"
|
2255 |
-
msgstr "Social media (Facebook, Twitter, etc.)"
|
2256 |
-
|
2257 |
-
#: templates/forms/affiliation.php:203
|
2258 |
-
msgid "Mobile apps"
|
2259 |
-
msgstr "Mobile apps"
|
2260 |
-
|
2261 |
-
#: templates/forms/affiliation.php:207
|
2262 |
-
msgid "Website, email, and social media statistics (optional)"
|
2263 |
-
msgstr "Statistika o webová stránc, emaiul a sociálních médiích"
|
2264 |
-
|
2265 |
-
#: templates/forms/affiliation.php:210
|
2266 |
-
msgid "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2267 |
-
msgstr "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2268 |
-
|
2269 |
-
#: templates/forms/affiliation.php:214
|
2270 |
-
msgid "How will you promote us?"
|
2271 |
-
msgstr "Jakým způsobem budete mé produkty propagovat?"
|
2272 |
-
|
2273 |
-
#: templates/forms/affiliation.php:217
|
2274 |
-
msgid "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2275 |
-
msgstr "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2276 |
-
|
2277 |
-
#: templates/forms/affiliation.php223, templates/forms/resend-key.php:22
|
2278 |
-
msgid "Cancel"
|
2279 |
-
msgstr "Zrušit"
|
2280 |
-
|
2281 |
-
#: templates/forms/affiliation.php:225
|
2282 |
-
msgid "Become an affiliate"
|
2283 |
-
msgstr "Staňte se naším afiliátem"
|
2284 |
-
|
2285 |
-
#: templates/forms/data-debug-mode.php:25
|
2286 |
-
msgid "Please enter the license key to enable the debug mode:"
|
2287 |
-
msgstr "Please enter the license key to enable the debug mode:"
|
2288 |
-
|
2289 |
-
#: templates/forms/data-debug-mode.php:27
|
2290 |
-
msgid "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2291 |
-
msgstr "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2292 |
-
|
2293 |
-
#: templates/forms/data-debug-mode.php:32
|
2294 |
-
msgid "Submit"
|
2295 |
-
msgstr "Submit"
|
2296 |
-
|
2297 |
-
#: templates/forms/data-debug-mode.php:36
|
2298 |
-
msgid "User key"
|
2299 |
-
msgstr "User key"
|
2300 |
-
|
2301 |
-
#: templates/forms/license-activation.php:23
|
2302 |
-
msgid "Please enter the license key that you received in the email right after the purchase:"
|
2303 |
-
msgstr "Please enter the license key that you received in the email right after the purchase:"
|
2304 |
-
|
2305 |
-
#: templates/forms/license-activation.php:28
|
2306 |
-
msgid "Update License"
|
2307 |
-
msgstr "Aktualizovat licenci"
|
2308 |
-
|
2309 |
-
#: templates/forms/optout.php:30
|
2310 |
-
msgctxt "verb"
|
2311 |
-
msgid "Opt Out"
|
2312 |
-
msgstr "Odhlásit se"
|
2313 |
-
|
2314 |
-
#: templates/forms/optout.php:31
|
2315 |
-
msgctxt "verb"
|
2316 |
-
msgid "Opt In"
|
2317 |
-
msgstr "Zúčastnit se"
|
2318 |
-
|
2319 |
-
#: templates/forms/optout.php:33
|
2320 |
-
msgid "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2321 |
-
msgstr "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2322 |
-
|
2323 |
-
#: templates/forms/optout.php:35
|
2324 |
-
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
2325 |
-
msgstr "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
2326 |
-
|
2327 |
-
#: templates/forms/premium-versions-upgrade-handler.php:40
|
2328 |
-
msgid "There is a new version of %s available."
|
2329 |
-
msgstr "Je k dispozici nová verze %s."
|
2330 |
-
|
2331 |
-
#: templates/forms/premium-versions-upgrade-handler.php:41
|
2332 |
-
msgid " %s to access version %s security & feature updates, and support."
|
2333 |
-
msgstr " %s pro přístup k verzi %s zajišťující podporu a nejen bezpečnostní aktualizace."
|
2334 |
-
|
2335 |
-
#: templates/forms/premium-versions-upgrade-handler.php:54
|
2336 |
-
msgid "New Version Available"
|
2337 |
-
msgstr "Nová verze k dispozici"
|
2338 |
-
|
2339 |
-
#: templates/forms/premium-versions-upgrade-handler.php:75
|
2340 |
-
msgctxt "close a window"
|
2341 |
-
msgid "Dismiss"
|
2342 |
-
msgstr "Skrýt"
|
2343 |
-
|
2344 |
-
#: templates/forms/resend-key.php:21
|
2345 |
-
msgid "Send License Key"
|
2346 |
-
msgstr "Odeslat licenční klíč"
|
2347 |
-
|
2348 |
-
#: templates/forms/resend-key.php:57
|
2349 |
-
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
2350 |
-
msgstr "Níže zadejte emailovou adresu, kterou jste použili pro koupi pluginu a my vám znovu odešleme váš licenční klíč."
|
2351 |
-
|
2352 |
-
#: templates/forms/subscription-cancellation.php:37
|
2353 |
-
msgid "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2354 |
-
msgstr "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2355 |
-
|
2356 |
-
#: templates/forms/subscription-cancellation.php:47
|
2357 |
-
msgid "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2358 |
-
msgstr "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2359 |
-
|
2360 |
-
#: templates/forms/subscription-cancellation.php:52
|
2361 |
-
msgid "license"
|
2362 |
-
msgstr "licence"
|
2363 |
-
|
2364 |
-
#: templates/forms/subscription-cancellation.php:57
|
2365 |
-
msgid "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2366 |
-
msgstr "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2367 |
-
|
2368 |
-
#: templates/forms/subscription-cancellation.php:68
|
2369 |
-
msgid "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2370 |
-
msgstr "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2371 |
-
|
2372 |
-
#: templates/forms/subscription-cancellation.php:103
|
2373 |
-
msgid "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2374 |
-
msgstr "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2375 |
-
|
2376 |
-
#: templates/forms/subscription-cancellation.php:136
|
2377 |
-
msgid "Cancel %s?"
|
2378 |
-
msgstr "Cancel %s?"
|
2379 |
-
|
2380 |
-
#: templates/forms/subscription-cancellation.php:143
|
2381 |
-
msgid "Proceed"
|
2382 |
-
msgstr "Pokračovat"
|
2383 |
-
|
2384 |
-
#: templates/forms/subscription-cancellation.php191,
|
2385 |
-
#: templates/forms/deactivation/form.php:171
|
2386 |
-
msgid "Cancel %s & Proceed"
|
2387 |
-
msgstr "Zrušit %s > pokračovat"
|
2388 |
-
|
2389 |
-
#: templates/forms/trial-start.php:22
|
2390 |
-
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
2391 |
-
msgstr "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
2392 |
-
|
2393 |
-
#: templates/forms/trial-start.php:28
|
2394 |
-
msgid "For compliance with the WordPress.org guidelines, before we start the trial we ask that you opt in with your user and non-sensitive site information, allowing the %s to periodically send data to %s to check for version updates and to validate your trial."
|
2395 |
-
msgstr "Aby bylo vyhověno WordPress.org pokynům, před zahájením zkušebního období vás žádáme, abyste se rozhodli pro uživatele a necitlivé informace o webu, aby %s umožňoval periodicky odesílat data do %s za účelem kontroly aktualizací verzí a ověření zkušební verze."
|
2396 |
-
|
2397 |
-
#: templates/js/style-premium-theme.php:39
|
2398 |
-
msgid "Premium"
|
2399 |
-
msgstr "Prémium"
|
2400 |
-
|
2401 |
-
#: templates/js/style-premium-theme.php:42
|
2402 |
-
msgid "Beta"
|
2403 |
-
msgstr "Beta"
|
2404 |
-
|
2405 |
-
#: templates/partials/network-activation.php:27
|
2406 |
-
msgid "Activate license on all sites in the network."
|
2407 |
-
msgstr "Activate license on all sites in the network."
|
2408 |
-
|
2409 |
-
#: templates/partials/network-activation.php:28
|
2410 |
-
msgid "Apply on all sites in the network."
|
2411 |
-
msgstr "Apply on all sites in the network."
|
2412 |
-
|
2413 |
-
#: templates/partials/network-activation.php:31
|
2414 |
-
msgid "Activate license on all pending sites."
|
2415 |
-
msgstr "Activate license on all pending sites."
|
2416 |
-
|
2417 |
-
#: templates/partials/network-activation.php:32
|
2418 |
-
msgid "Apply on all pending sites."
|
2419 |
-
msgstr "Apply on all pending sites."
|
2420 |
-
|
2421 |
-
#: templates/partials/network-activation.php40,
|
2422 |
-
#: templates/partials/network-activation.php:74
|
2423 |
-
msgid "allow"
|
2424 |
-
msgstr "povolit"
|
2425 |
-
|
2426 |
-
#: templates/partials/network-activation.php43,
|
2427 |
-
#: templates/partials/network-activation.php:77
|
2428 |
-
msgid "delegate"
|
2429 |
-
msgstr "delegovat"
|
2430 |
-
|
2431 |
-
#: templates/partials/network-activation.php47,
|
2432 |
-
#: templates/partials/network-activation.php:81
|
2433 |
-
msgid "skip"
|
2434 |
-
msgstr "přeskočit"
|
2435 |
-
|
2436 |
-
#: templates/plugin-info/description.php72,
|
2437 |
-
#: templates/plugin-info/screenshots.php:31
|
2438 |
-
msgid "Click to view full-size screenshot %d"
|
2439 |
-
msgstr "Klikněte pro zobrazení plné velikosti snímku obrazovky %d"
|
2440 |
-
|
2441 |
-
#: templates/plugin-info/features.php:56
|
2442 |
-
msgid "Unlimited Updates"
|
2443 |
-
msgstr "Neomezené aktualizace"
|
2444 |
-
|
2445 |
-
#: templates/account/partials/activate-license-button.php:46
|
2446 |
-
msgid "Localhost"
|
2447 |
-
msgstr "Localhost"
|
2448 |
-
|
2449 |
-
#: templates/account/partials/activate-license-button.php:50
|
2450 |
-
msgctxt "as 5 licenses left"
|
2451 |
-
msgid "%s left"
|
2452 |
-
msgstr "Zbývá %s"
|
2453 |
-
|
2454 |
-
#: templates/account/partials/activate-license-button.php:51
|
2455 |
-
msgid "Last license"
|
2456 |
-
msgstr "Poslední licence"
|
2457 |
-
|
2458 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the
|
2459 |
-
#. subscription'
|
2460 |
-
#: templates/account/partials/addon.php:29
|
2461 |
-
msgid "%1$s will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
2462 |
-
msgstr "%1$s okamžitě zastaví všechny budoucí opakující se platby a licence k plánu %s vyprší za %s."
|
2463 |
-
|
2464 |
-
#: templates/account/partials/addon.php:185
|
2465 |
-
msgid "Cancelled"
|
2466 |
-
msgstr "Zrušena"
|
2467 |
-
|
2468 |
-
#: templates/account/partials/addon.php:195
|
2469 |
-
msgid "No expiration"
|
2470 |
-
msgstr "Bez vypršení"
|
2471 |
-
|
2472 |
-
#: templates/account/partials/site.php:189
|
2473 |
-
msgid "Owner Name"
|
2474 |
-
msgstr "Jméno vlastníka"
|
2475 |
-
|
2476 |
-
#: templates/account/partials/site.php:201
|
2477 |
-
msgid "Owner Email"
|
2478 |
-
msgstr "E-mail vlastníka"
|
2479 |
-
|
2480 |
-
#: templates/account/partials/site.php:213
|
2481 |
-
msgid "Owner ID"
|
2482 |
-
msgstr "ID vlastníka"
|
2483 |
-
|
2484 |
-
#: templates/account/partials/site.php:286
|
2485 |
-
msgid "Subscription"
|
2486 |
-
msgstr "Předplatné"
|
2487 |
-
|
2488 |
-
#: templates/forms/deactivation/contact.php:19
|
2489 |
-
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
2490 |
-
msgstr "Omlouváme se za způsobené nepříjemnosti, ale když se nám dáte šanci, tak se vám ze všech sil pokusíme pomoci."
|
2491 |
-
|
2492 |
-
#: templates/forms/deactivation/contact.php:22
|
2493 |
-
msgid "Contact Support"
|
2494 |
-
msgstr "Kontaktovat podporu"
|
2495 |
-
|
2496 |
-
#: templates/forms/deactivation/form.php:64
|
2497 |
-
msgid "Anonymous feedback"
|
2498 |
-
msgstr "Anonymní zpětná vazba"
|
2499 |
-
|
2500 |
-
#: templates/forms/deactivation/form.php:70
|
2501 |
-
msgid "Deactivate"
|
2502 |
-
msgstr "Deaktivovat"
|
2503 |
-
|
2504 |
-
#: templates/forms/deactivation/form.php:72
|
2505 |
-
msgid "Activate %s"
|
2506 |
-
msgstr "Aktivovat %s"
|
2507 |
-
|
2508 |
-
#: templates/forms/deactivation/form.php:87
|
2509 |
-
msgid "Quick Feedback"
|
2510 |
-
msgstr "Rychlá zpětná vazba"
|
2511 |
-
|
2512 |
-
#: templates/forms/deactivation/form.php:91
|
2513 |
-
msgid "If you have a moment, please let us know why you are %s"
|
2514 |
-
msgstr "Máte-li chvilku, dejte nám vědět, proč %s"
|
2515 |
-
|
2516 |
-
#: templates/forms/deactivation/form.php:91
|
2517 |
-
msgid "deactivating"
|
2518 |
-
msgstr "deaktivujete"
|
2519 |
-
|
2520 |
-
#: templates/forms/deactivation/form.php:91
|
2521 |
-
msgid "switching"
|
2522 |
-
msgstr "přepínám"
|
2523 |
-
|
2524 |
-
#: templates/forms/deactivation/form.php:365
|
2525 |
-
msgid "Submit & %s"
|
2526 |
-
msgstr "Odeslat & %s"
|
2527 |
-
|
2528 |
-
#: templates/forms/deactivation/form.php:386
|
2529 |
-
msgid "Kindly tell us the reason so we can improve."
|
2530 |
-
msgstr "Dejte nám prosím vědět z jakého důvodu, ať to můžeme zlepšit."
|
2531 |
-
|
2532 |
-
#: templates/forms/deactivation/form.php:511
|
2533 |
-
msgid "Yes - %s"
|
2534 |
-
msgstr "Ano - %s"
|
2535 |
-
|
2536 |
-
#: templates/forms/deactivation/form.php:518
|
2537 |
-
msgid "Skip & %s"
|
2538 |
-
msgstr "Přeskočit & %s"
|
2539 |
-
|
2540 |
-
#: templates/forms/deactivation/retry-skip.php:21
|
2541 |
-
msgid "Click here to use the plugin anonymously"
|
2542 |
-
msgstr "Klikněte zde pro anonymní používání tohoto pluginu"
|
2543 |
-
|
2544 |
-
#: templates/forms/deactivation/retry-skip.php:23
|
2545 |
-
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
2546 |
-
msgstr "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
freemius/languages/freemius-da_DK.mo
CHANGED
Binary file
|
freemius/languages/freemius-da_DK.po
DELETED
@@ -1,2548 +0,0 @@
|
|
1 |
-
# Copyright (C) 2019 freemius
|
2 |
-
# This file is distributed under the same license as the freemius package.
|
3 |
-
# Translators:
|
4 |
-
# Joachim Jensen, 2019
|
5 |
-
# Joachim Jensen, 2016-2018
|
6 |
-
# Lars Koudal, 2018-2019
|
7 |
-
msgid ""
|
8 |
-
msgstr ""
|
9 |
-
"Project-Id-Version: WordPress SDK\n"
|
10 |
-
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
11 |
-
"POT-Creation-Date: \n"
|
12 |
-
"PO-Revision-Date: 2019-10-07 15:33+0000\n"
|
13 |
-
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
14 |
-
"Language: da_DK\n"
|
15 |
-
"Language-Team: Danish (Denmark) (http://www.transifex.com/freemius/wordpress-sdk/language/da_DK/)\n"
|
16 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
17 |
-
"Content-Transfer-Encoding: 8bit\n"
|
18 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
19 |
-
"MIME-Version: 1.0\n"
|
20 |
-
"X-Poedit-Basepath: ..\n"
|
21 |
-
"X-Poedit-KeywordsList: get_text_inline;fs_text_inline;fs_echo_inline;fs_esc_js_inline;fs_esc_attr_inline;fs_esc_attr_echo_inline;fs_esc_html_inline;fs_esc_html_echo_inline;get_text_x_inline:1,2c;fs_text_x_inline:1,2c;fs_echo_x_inline:1,2c;fs_esc_attr_x_inline:1,2c;fs_esc_js_x_inline:1,2c;fs_esc_js_echo_x_inline:1,2c;fs_esc_html_x_inline:1,2c;fs_esc_html_echo_x_inline:1,2c\n"
|
22 |
-
"X-Poedit-SearchPath-0: .\n"
|
23 |
-
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
24 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
25 |
-
|
26 |
-
#: includes/class-freemius.php1880, templates/account.php:840
|
27 |
-
msgid "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
28 |
-
msgstr "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
29 |
-
|
30 |
-
#: includes/class-freemius.php:1887
|
31 |
-
msgid "Would you like to proceed with the update?"
|
32 |
-
msgstr "Vil du fortsætte med opdateringen?"
|
33 |
-
|
34 |
-
#: includes/class-freemius.php:2095
|
35 |
-
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
36 |
-
msgstr "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
37 |
-
|
38 |
-
#: includes/class-freemius.php:2097
|
39 |
-
msgid "Error"
|
40 |
-
msgstr "Fejl"
|
41 |
-
|
42 |
-
#: includes/class-freemius.php:2491
|
43 |
-
msgid "I found a better %s"
|
44 |
-
msgstr "Jeg fandt et bedre %s"
|
45 |
-
|
46 |
-
#: includes/class-freemius.php:2493
|
47 |
-
msgid "What's the %s's name?"
|
48 |
-
msgstr "Hvad er navnet på %s?"
|
49 |
-
|
50 |
-
#: includes/class-freemius.php:2499
|
51 |
-
msgid "It's a temporary %s. I'm just debugging an issue."
|
52 |
-
msgstr "Det er en midlertidig %s. Jeg er i gang med fejlrettelser."
|
53 |
-
|
54 |
-
#: includes/class-freemius.php:2501
|
55 |
-
msgid "Deactivation"
|
56 |
-
msgstr "Deaktivering"
|
57 |
-
|
58 |
-
#: includes/class-freemius.php:2502
|
59 |
-
msgid "Theme Switch"
|
60 |
-
msgstr "Temaskift"
|
61 |
-
|
62 |
-
#: includes/class-freemius.php2511, templates/forms/resend-key.php:24
|
63 |
-
msgid "Other"
|
64 |
-
msgstr "Andet"
|
65 |
-
|
66 |
-
#: includes/class-freemius.php:2519
|
67 |
-
msgid "I no longer need the %s"
|
68 |
-
msgstr "Jeg har ikke længere brug for %s"
|
69 |
-
|
70 |
-
#: includes/class-freemius.php:2526
|
71 |
-
msgid "I only needed the %s for a short period"
|
72 |
-
msgstr "Jeg behøvede kun %s i en kort periode"
|
73 |
-
|
74 |
-
#: includes/class-freemius.php:2532
|
75 |
-
msgid "The %s broke my site"
|
76 |
-
msgstr "%s ødelagde min webside"
|
77 |
-
|
78 |
-
#: includes/class-freemius.php:2539
|
79 |
-
msgid "The %s suddenly stopped working"
|
80 |
-
msgstr "%s stoppede pludseligt med at virke"
|
81 |
-
|
82 |
-
#: includes/class-freemius.php:2549
|
83 |
-
msgid "I can't pay for it anymore"
|
84 |
-
msgstr "Jeg kan ikke længere betale for det"
|
85 |
-
|
86 |
-
#: includes/class-freemius.php:2551
|
87 |
-
msgid "What price would you feel comfortable paying?"
|
88 |
-
msgstr "Hvilken pris ville du foretrække at betale?"
|
89 |
-
|
90 |
-
#: includes/class-freemius.php:2557
|
91 |
-
msgid "I don't like to share my information with you"
|
92 |
-
msgstr "Jeg har ikke lyst til at dele mine informationer med jer"
|
93 |
-
|
94 |
-
#: includes/class-freemius.php:2578
|
95 |
-
msgid "The %s didn't work"
|
96 |
-
msgstr "%s virkede ikke"
|
97 |
-
|
98 |
-
#: includes/class-freemius.php:2588
|
99 |
-
msgid "I couldn't understand how to make it work"
|
100 |
-
msgstr "Jeg forstod ikke, hvordan jeg skulle få det til at fungere."
|
101 |
-
|
102 |
-
#: includes/class-freemius.php:2596
|
103 |
-
msgid "The %s is great, but I need specific feature that you don't support"
|
104 |
-
msgstr "%s er godt, men jeg har brug for en specifik feature, som ikke understøttes"
|
105 |
-
|
106 |
-
#: includes/class-freemius.php:2598
|
107 |
-
msgid "What feature?"
|
108 |
-
msgstr "Hvilken feature?"
|
109 |
-
|
110 |
-
#: includes/class-freemius.php:2602
|
111 |
-
msgid "The %s is not working"
|
112 |
-
msgstr "%s virker ikke"
|
113 |
-
|
114 |
-
#: includes/class-freemius.php:2604
|
115 |
-
msgid "Kindly share what didn't work so we can fix it for future users..."
|
116 |
-
msgstr "Vær venlig at dele hvad der ikke virkede så vi kan rette det for kommende brugere...."
|
117 |
-
|
118 |
-
#: includes/class-freemius.php:2608
|
119 |
-
msgid "It's not what I was looking for"
|
120 |
-
msgstr "Det er ikke, hvad jeg søgte"
|
121 |
-
|
122 |
-
#: includes/class-freemius.php:2610
|
123 |
-
msgid "What you've been looking for?"
|
124 |
-
msgstr "Hvad ledte du efter?"
|
125 |
-
|
126 |
-
#: includes/class-freemius.php:2614
|
127 |
-
msgid "The %s didn't work as expected"
|
128 |
-
msgstr "%s virkede ikke som forventet"
|
129 |
-
|
130 |
-
#: includes/class-freemius.php:2616
|
131 |
-
msgid "What did you expect?"
|
132 |
-
msgstr "Hvad forventede du?"
|
133 |
-
|
134 |
-
#: includes/class-freemius.php3471, templates/debug.php:20
|
135 |
-
msgid "Freemius Debug"
|
136 |
-
msgstr "Freemius Debug"
|
137 |
-
|
138 |
-
#: includes/class-freemius.php:4223
|
139 |
-
msgid "I don't know what is cURL or how to install it, help me!"
|
140 |
-
msgstr "Jeg ved ikke hvad cURL er, eller hvordan jeg installerer det. Hjælp mig!"
|
141 |
-
|
142 |
-
#: includes/class-freemius.php:4225
|
143 |
-
msgid "We'll make sure to contact your hosting company and resolve the issue. You will get a follow-up email to %s once we have an update."
|
144 |
-
msgstr "Vi vil kontakte din udbyder og løse problemet. Når vi har opdatinger i sagen, vil vi følge op med en email til dig på %s."
|
145 |
-
|
146 |
-
#: includes/class-freemius.php:4232
|
147 |
-
msgid "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
148 |
-
msgstr "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
149 |
-
|
150 |
-
#: includes/class-freemius.php:4337
|
151 |
-
msgid "Yes - do your thing"
|
152 |
-
msgstr "Ja - fortsæt bare"
|
153 |
-
|
154 |
-
#: includes/class-freemius.php:4342
|
155 |
-
msgid "No - just deactivate"
|
156 |
-
msgstr "Nej - bare deaktiver"
|
157 |
-
|
158 |
-
#: includes/class-freemius.php4387, includes/class-freemius.php4881,
|
159 |
-
#: includes/class-freemius.php6032, includes/class-freemius.php13153,
|
160 |
-
#: includes/class-freemius.php16558, includes/class-freemius.php16646,
|
161 |
-
#: includes/class-freemius.php16812, includes/class-freemius.php19040,
|
162 |
-
#: includes/class-freemius.php19381, includes/class-freemius.php19391,
|
163 |
-
#: includes/class-freemius.php20051, includes/class-freemius.php20924,
|
164 |
-
#: includes/class-freemius.php21039, includes/class-freemius.php21183,
|
165 |
-
#: templates/add-ons.php:57
|
166 |
-
msgctxt "exclamation"
|
167 |
-
msgid "Oops"
|
168 |
-
msgstr "Ups"
|
169 |
-
|
170 |
-
#: includes/class-freemius.php:4456
|
171 |
-
msgid "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
172 |
-
msgstr "Tak fordi du giver os en chance for at fixe det! En besked er lige blevet sendt til vores tekniske personale. Vi vil vende tilbage, så snart der er nyt om %s. Vi sætter pris på din tålmodighed."
|
173 |
-
|
174 |
-
#: includes/class-freemius.php:4878
|
175 |
-
msgctxt "addonX cannot run without pluginY"
|
176 |
-
msgid "%s cannot run without %s."
|
177 |
-
msgstr "%s virker ikke uden %s."
|
178 |
-
|
179 |
-
#: includes/class-freemius.php:4879
|
180 |
-
msgctxt "addonX cannot run..."
|
181 |
-
msgid "%s cannot run without the plugin."
|
182 |
-
msgstr "%s virker ikke uden pluginnet."
|
183 |
-
|
184 |
-
#: includes/class-freemius.php5052, includes/class-freemius.php5077,
|
185 |
-
#: includes/class-freemius.php:20122
|
186 |
-
msgid "Unexpected API error. Please contact the %s's author with the following error."
|
187 |
-
msgstr "Uventet API-fejl. Kontakt %s's forfatter med følgende fejl."
|
188 |
-
|
189 |
-
#: includes/class-freemius.php:5720
|
190 |
-
msgid "Premium %s version was successfully activated."
|
191 |
-
msgstr "Premium-versionen af %s blev aktiveret."
|
192 |
-
|
193 |
-
#: includes/class-freemius.php5732, includes/class-freemius.php:7599
|
194 |
-
msgctxt ""
|
195 |
-
msgid "W00t"
|
196 |
-
msgstr "W00t"
|
197 |
-
|
198 |
-
#: includes/class-freemius.php:5747
|
199 |
-
msgid "You have a %s license."
|
200 |
-
msgstr "Du har en %s licens."
|
201 |
-
|
202 |
-
#: includes/class-freemius.php5751, includes/class-freemius.php15975,
|
203 |
-
#: includes/class-freemius.php15986, includes/class-freemius.php19292,
|
204 |
-
#: includes/class-freemius.php19642, includes/class-freemius.php19711,
|
205 |
-
#: includes/class-freemius.php:19876
|
206 |
-
msgctxt "interjection expressing joy or exuberance"
|
207 |
-
msgid "Yee-haw"
|
208 |
-
msgstr "Yee-haw"
|
209 |
-
|
210 |
-
#: includes/class-freemius.php:6015
|
211 |
-
msgid "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
212 |
-
msgstr "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
213 |
-
|
214 |
-
#: includes/class-freemius.php:6019
|
215 |
-
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
216 |
-
msgstr "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
217 |
-
|
218 |
-
#: includes/class-freemius.php6028, templates/add-ons.php186,
|
219 |
-
#: templates/account/partials/addon.php:381
|
220 |
-
msgid "More information about %s"
|
221 |
-
msgstr "Mere information om %s"
|
222 |
-
|
223 |
-
#: includes/class-freemius.php:6029
|
224 |
-
msgid "Purchase License"
|
225 |
-
msgstr "Køb licens"
|
226 |
-
|
227 |
-
#: includes/class-freemius.php6964, templates/connect.php:163
|
228 |
-
msgid "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
229 |
-
msgstr "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
230 |
-
|
231 |
-
#: includes/class-freemius.php:6968
|
232 |
-
msgid "start the trial"
|
233 |
-
msgstr "start prøveperioden"
|
234 |
-
|
235 |
-
#: includes/class-freemius.php6969, templates/connect.php:167
|
236 |
-
msgid "complete the install"
|
237 |
-
msgstr "færdiggør installeringen"
|
238 |
-
|
239 |
-
#: includes/class-freemius.php:7081
|
240 |
-
msgid "You are just one step away - %s"
|
241 |
-
msgstr "Du mangler kun ét skridt - %s"
|
242 |
-
|
243 |
-
#: includes/class-freemius.php:7084
|
244 |
-
msgctxt "%s - plugin name. As complete \"PluginX\" activation now"
|
245 |
-
msgid "Complete \"%s\" Activation Now"
|
246 |
-
msgstr "Færdiggør aktivering af \"%s\" nu"
|
247 |
-
|
248 |
-
#: includes/class-freemius.php:7162
|
249 |
-
msgid "We made a few tweaks to the %s, %s"
|
250 |
-
msgstr "Vi har foretaget nogle rettelser til %s, %s"
|
251 |
-
|
252 |
-
#: includes/class-freemius.php:7166
|
253 |
-
msgid "Opt in to make \"%s\" better!"
|
254 |
-
msgstr "Accepter for at gøre \"%s\" bedre!"
|
255 |
-
|
256 |
-
#: includes/class-freemius.php:7598
|
257 |
-
msgid "The upgrade of %s was successfully completed."
|
258 |
-
msgstr "Opgraderingen af %s blev fuldendt."
|
259 |
-
|
260 |
-
#: includes/class-freemius.php9802, includes/class-fs-plugin-updater.php1038,
|
261 |
-
#: includes/class-fs-plugin-updater.php1233,
|
262 |
-
#: includes/class-fs-plugin-updater.php1240,
|
263 |
-
#: templates/auto-installation.php:32
|
264 |
-
msgid "Add-On"
|
265 |
-
msgstr "Tilføjelse"
|
266 |
-
|
267 |
-
#: includes/class-freemius.php9804, templates/account.php335,
|
268 |
-
#: templates/account.php343, templates/debug.php360, templates/debug.php:551
|
269 |
-
msgid "Plugin"
|
270 |
-
msgstr "Plugin"
|
271 |
-
|
272 |
-
#: includes/class-freemius.php9805, templates/account.php336,
|
273 |
-
#: templates/account.php344, templates/debug.php360, templates/debug.php551,
|
274 |
-
#: templates/forms/deactivation/form.php:71
|
275 |
-
msgid "Theme"
|
276 |
-
msgstr "Tema"
|
277 |
-
|
278 |
-
#: includes/class-freemius.php:12596
|
279 |
-
msgid "An unknown error has occurred while trying to set the user's beta mode."
|
280 |
-
msgstr "An unknown error has occurred while trying to set the user's beta mode."
|
281 |
-
|
282 |
-
#: includes/class-freemius.php:13020
|
283 |
-
msgid "Invalid site details collection."
|
284 |
-
msgstr "Invalid site details collection."
|
285 |
-
|
286 |
-
#: includes/class-freemius.php:13140
|
287 |
-
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
288 |
-
msgstr "Vi kunne ikke finde din e-mailadresse i systemet, er du sikker på, det er den rigtige adresse?"
|
289 |
-
|
290 |
-
#: includes/class-freemius.php:13142
|
291 |
-
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
292 |
-
msgstr "Vi kan ikke finde nogen aktive licenser knyttet til den e-mailadresse, er du sikker på, det er den rigtige adresse?"
|
293 |
-
|
294 |
-
#: includes/class-freemius.php:13416
|
295 |
-
msgid "Account is pending activation."
|
296 |
-
msgstr "Konto afventer aktivering."
|
297 |
-
|
298 |
-
#: includes/class-freemius.php13528,
|
299 |
-
#: templates/forms/premium-versions-upgrade-handler.php:47
|
300 |
-
msgid "Buy a license now"
|
301 |
-
msgstr "Køb en licens nu"
|
302 |
-
|
303 |
-
#: includes/class-freemius.php13540,
|
304 |
-
#: templates/forms/premium-versions-upgrade-handler.php:46
|
305 |
-
msgid "Renew your license now"
|
306 |
-
msgstr "Forny din licens nu"
|
307 |
-
|
308 |
-
#: includes/class-freemius.php:13544
|
309 |
-
msgid "%s to access version %s security & feature updates, and support."
|
310 |
-
msgstr "%s to access version %s security & feature updates, and support."
|
311 |
-
|
312 |
-
#: includes/class-freemius.php:15957
|
313 |
-
msgid "%s activation was successfully completed."
|
314 |
-
msgstr "Aktivering af %s blev gennemført."
|
315 |
-
|
316 |
-
#: includes/class-freemius.php:15971
|
317 |
-
msgid "Your account was successfully activated with the %s plan."
|
318 |
-
msgstr "Din konto blev aktiveret med planen %s."
|
319 |
-
|
320 |
-
#: includes/class-freemius.php15982, includes/class-freemius.php:19707
|
321 |
-
msgid "Your trial has been successfully started."
|
322 |
-
msgstr "Din prøveperiode er begyndt."
|
323 |
-
|
324 |
-
#: includes/class-freemius.php16556, includes/class-freemius.php16644,
|
325 |
-
#: includes/class-freemius.php:16810
|
326 |
-
msgid "Couldn't activate %s."
|
327 |
-
msgstr "Kunne ikke aktivere %s."
|
328 |
-
|
329 |
-
#: includes/class-freemius.php16557, includes/class-freemius.php16645,
|
330 |
-
#: includes/class-freemius.php:16811
|
331 |
-
msgid "Please contact us with the following message:"
|
332 |
-
msgstr "Kontakt os venligst med følgende besked:"
|
333 |
-
|
334 |
-
#: includes/class-freemius.php16641, templates/forms/data-debug-mode.php:162
|
335 |
-
msgid "An unknown error has occurred."
|
336 |
-
msgstr "Der skete en ukendt fejl."
|
337 |
-
|
338 |
-
#: includes/class-freemius.php17168, includes/class-freemius.php:22082
|
339 |
-
msgid "Upgrade"
|
340 |
-
msgstr "Opgrader"
|
341 |
-
|
342 |
-
#: includes/class-freemius.php:17174
|
343 |
-
msgid "Start Trial"
|
344 |
-
msgstr "Start prøveperiode"
|
345 |
-
|
346 |
-
#: includes/class-freemius.php:17176
|
347 |
-
msgid "Pricing"
|
348 |
-
msgstr "Priser"
|
349 |
-
|
350 |
-
#: includes/class-freemius.php17256, includes/class-freemius.php:17258
|
351 |
-
msgid "Affiliation"
|
352 |
-
msgstr "Affiliation"
|
353 |
-
|
354 |
-
#: includes/class-freemius.php17286, includes/class-freemius.php17288,
|
355 |
-
#: templates/account.php183, templates/debug.php:326
|
356 |
-
msgid "Account"
|
357 |
-
msgstr "Konto"
|
358 |
-
|
359 |
-
#: includes/class-freemius.php17302, includes/class-freemius.php17304,
|
360 |
-
#: includes/customizer/class-fs-customizer-support-section.php:60
|
361 |
-
msgid "Contact Us"
|
362 |
-
msgstr "Kontakt os"
|
363 |
-
|
364 |
-
#: includes/class-freemius.php17315, includes/class-freemius.php17317,
|
365 |
-
#: includes/class-freemius.php22096, templates/account.php111,
|
366 |
-
#: templates/account/partials/addon.php:44
|
367 |
-
msgid "Add-Ons"
|
368 |
-
msgstr "Tilføjelser"
|
369 |
-
|
370 |
-
#: includes/class-freemius.php:17351
|
371 |
-
msgctxt "ASCII arrow left icon"
|
372 |
-
msgid "←"
|
373 |
-
msgstr "←"
|
374 |
-
|
375 |
-
#: includes/class-freemius.php:17351
|
376 |
-
msgctxt "ASCII arrow right icon"
|
377 |
-
msgid "➤"
|
378 |
-
msgstr "➤"
|
379 |
-
|
380 |
-
#: includes/class-freemius.php17353, templates/pricing.php:103
|
381 |
-
msgctxt "noun"
|
382 |
-
msgid "Pricing"
|
383 |
-
msgstr "Priser"
|
384 |
-
|
385 |
-
#: includes/class-freemius.php17566,
|
386 |
-
#: includes/customizer/class-fs-customizer-support-section.php:67
|
387 |
-
msgid "Support Forum"
|
388 |
-
msgstr "Supportforum"
|
389 |
-
|
390 |
-
#: includes/class-freemius.php:18536
|
391 |
-
msgid "Your email has been successfully verified - you are AWESOME!"
|
392 |
-
msgstr "Din e-mailadresse er blevet verificeret - du er FOR SEJ!"
|
393 |
-
|
394 |
-
#: includes/class-freemius.php:18537
|
395 |
-
msgctxt "a positive response"
|
396 |
-
msgid "Right on"
|
397 |
-
msgstr "Sådan"
|
398 |
-
|
399 |
-
#: includes/class-freemius.php:19041
|
400 |
-
msgid "seems like the key you entered doesn't match our records."
|
401 |
-
msgstr "seems like the key you entered doesn't match our records."
|
402 |
-
|
403 |
-
#: includes/class-freemius.php:19065
|
404 |
-
msgid "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
405 |
-
msgstr "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
406 |
-
|
407 |
-
#: includes/class-freemius.php:19283
|
408 |
-
msgid "Your %s Add-on plan was successfully upgraded."
|
409 |
-
msgstr "Your %s Add-on plan was successfully upgraded."
|
410 |
-
|
411 |
-
#: includes/class-freemius.php:19285
|
412 |
-
msgid "%s Add-on was successfully purchased."
|
413 |
-
msgstr "Betalingen for tilføjelsen %s blev gennemført."
|
414 |
-
|
415 |
-
#: includes/class-freemius.php:19288
|
416 |
-
msgid "Download the latest version"
|
417 |
-
msgstr "Download den seneste version"
|
418 |
-
|
419 |
-
#: includes/class-freemius.php:19374
|
420 |
-
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
421 |
-
msgstr "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
422 |
-
|
423 |
-
#: includes/class-freemius.php19380, includes/class-freemius.php19390,
|
424 |
-
#: includes/class-freemius.php19835, includes/class-freemius.php:19924
|
425 |
-
msgid "Error received from the server:"
|
426 |
-
msgstr "Fejl modtager fra serveren:"
|
427 |
-
|
428 |
-
#: includes/class-freemius.php:19390
|
429 |
-
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
430 |
-
msgstr "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
431 |
-
|
432 |
-
#: includes/class-freemius.php19604, includes/class-freemius.php19840,
|
433 |
-
#: includes/class-freemius.php19895, includes/class-freemius.php:19998
|
434 |
-
msgctxt ""
|
435 |
-
msgid "Hmm"
|
436 |
-
msgstr "Hmm"
|
437 |
-
|
438 |
-
#: includes/class-freemius.php:19617
|
439 |
-
msgid "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
440 |
-
msgstr "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
441 |
-
|
442 |
-
#: includes/class-freemius.php19618, templates/account.php113,
|
443 |
-
#: templates/add-ons.php250, templates/account/partials/addon.php:46
|
444 |
-
msgctxt "trial period"
|
445 |
-
msgid "Trial"
|
446 |
-
msgstr "Prøveperiode"
|
447 |
-
|
448 |
-
#: includes/class-freemius.php:19623
|
449 |
-
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
450 |
-
msgstr "Jeg har opgraderet min konto, men når jeg forsøger at synkronisere licensen, forbliver planen %s."
|
451 |
-
|
452 |
-
#: includes/class-freemius.php19627, includes/class-freemius.php:19686
|
453 |
-
msgid "Please contact us here"
|
454 |
-
msgstr "Kontakt os her"
|
455 |
-
|
456 |
-
#: includes/class-freemius.php:19638
|
457 |
-
msgid "Your plan was successfully activated."
|
458 |
-
msgstr "Din plan er blevet aktiveret."
|
459 |
-
|
460 |
-
#: includes/class-freemius.php:19639
|
461 |
-
msgid "Your plan was successfully upgraded."
|
462 |
-
msgstr "Din plan er blevet opgraderet."
|
463 |
-
|
464 |
-
#: includes/class-freemius.php:19656
|
465 |
-
msgid "Your plan was successfully changed to %s."
|
466 |
-
msgstr "Din plan er blevet ændret til %s."
|
467 |
-
|
468 |
-
#: includes/class-freemius.php:19672
|
469 |
-
msgid "Your license has expired. You can still continue using the free %s forever."
|
470 |
-
msgstr "Din licens er udløbet. Du kan stadig fortsætte med at benytte den gratis udgave af %s."
|
471 |
-
|
472 |
-
#: includes/class-freemius.php:19674
|
473 |
-
msgid "Your license has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
474 |
-
msgstr "Din licens er udløbet. %1$sOpgrader nu%2$s for at fortsætte med at benytte %3$s uden forstyrrelser."
|
475 |
-
|
476 |
-
#: includes/class-freemius.php:19682
|
477 |
-
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
478 |
-
msgstr "Din licens er blevet annulleret. Hvis du mener, dette er en fejl, så kontakt venligst support."
|
479 |
-
|
480 |
-
#: includes/class-freemius.php:19695
|
481 |
-
msgid "Your license has expired. You can still continue using all the %s features, but you'll need to renew your license to continue getting updates and support."
|
482 |
-
msgstr "Din licens er udløbet. Du kan stadig benytte alle funktionerne i %s, men du bliver nødt til at fornye din licens for at få opdateringer og support."
|
483 |
-
|
484 |
-
#: includes/class-freemius.php:19721
|
485 |
-
msgid "Your free trial has expired. You can still continue using all our free features."
|
486 |
-
msgstr "Din gratis prøveperiode er udløbet. Du kan stadig benytte alle de gratis features."
|
487 |
-
|
488 |
-
#: includes/class-freemius.php:19723
|
489 |
-
msgid "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
490 |
-
msgstr "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
491 |
-
|
492 |
-
#: includes/class-freemius.php:19831
|
493 |
-
msgid "It looks like the license could not be activated."
|
494 |
-
msgstr "Det ser ud til, at licensen ikke kunne aktiveres."
|
495 |
-
|
496 |
-
#: includes/class-freemius.php:19873
|
497 |
-
msgid "Your license was successfully activated."
|
498 |
-
msgstr "Din licens er blevet aktiveret."
|
499 |
-
|
500 |
-
#: includes/class-freemius.php:19899
|
501 |
-
msgid "It looks like your site currently doesn't have an active license."
|
502 |
-
msgstr "Det ser ud til, at dit websted endnu ikke har en aktiv licens."
|
503 |
-
|
504 |
-
#: includes/class-freemius.php:19923
|
505 |
-
msgid "It looks like the license deactivation failed."
|
506 |
-
msgstr "Det ser ud til, at licens-deaktiveringen mislykkedes."
|
507 |
-
|
508 |
-
#: includes/class-freemius.php:19951
|
509 |
-
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
510 |
-
msgstr "Din licens blev deaktiveret, du er tilbage på planen %s."
|
511 |
-
|
512 |
-
#: includes/class-freemius.php:19952
|
513 |
-
msgid "O.K"
|
514 |
-
msgstr "O.K"
|
515 |
-
|
516 |
-
#: includes/class-freemius.php:20005
|
517 |
-
msgid "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
518 |
-
msgstr "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
519 |
-
|
520 |
-
#: includes/class-freemius.php:20014
|
521 |
-
msgid "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
522 |
-
msgstr "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
523 |
-
|
524 |
-
#: includes/class-freemius.php:20056
|
525 |
-
msgid "You are already running the %s in a trial mode."
|
526 |
-
msgstr "Du benytter allerede %s under en prøveperiode."
|
527 |
-
|
528 |
-
#: includes/class-freemius.php:20067
|
529 |
-
msgid "You already utilized a trial before."
|
530 |
-
msgstr "Du har allerede brugt din prøveperiode."
|
531 |
-
|
532 |
-
#: includes/class-freemius.php:20081
|
533 |
-
msgid "Plan %s do not exist, therefore, can't start a trial."
|
534 |
-
msgstr "Plan %s eksisterer ikke og kan derfor ikke starte prøveperiode."
|
535 |
-
|
536 |
-
#: includes/class-freemius.php:20092
|
537 |
-
msgid "Plan %s does not support a trial period."
|
538 |
-
msgstr "Plan %s understøtter ikke en prøveperiode."
|
539 |
-
|
540 |
-
#: includes/class-freemius.php:20103
|
541 |
-
msgid "None of the %s's plans supports a trial period."
|
542 |
-
msgstr "Ingen af %s's planer understøtter prøveperiode."
|
543 |
-
|
544 |
-
#: includes/class-freemius.php:20153
|
545 |
-
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
546 |
-
msgstr "Det lader ikke til du er i en prøveperiode længere, så der er ikke noget at annullere :-)"
|
547 |
-
|
548 |
-
#: includes/class-freemius.php:20189
|
549 |
-
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
550 |
-
msgstr "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
551 |
-
|
552 |
-
#: includes/class-freemius.php:20208
|
553 |
-
msgid "Your %s free trial was successfully cancelled."
|
554 |
-
msgstr "Din gratis prøveperiode for %s er blevet annulleret."
|
555 |
-
|
556 |
-
#: includes/class-freemius.php:20524
|
557 |
-
msgid "Version %s was released."
|
558 |
-
msgstr "Version %s er blevet udgivet."
|
559 |
-
|
560 |
-
#: includes/class-freemius.php:20524
|
561 |
-
msgid "Please download %s."
|
562 |
-
msgstr "Download venligst %s."
|
563 |
-
|
564 |
-
#: includes/class-freemius.php:20531
|
565 |
-
msgid "the latest %s version here"
|
566 |
-
msgstr "den seneste version af %s her"
|
567 |
-
|
568 |
-
#: includes/class-freemius.php:20536
|
569 |
-
msgid "New"
|
570 |
-
msgstr "Ny"
|
571 |
-
|
572 |
-
#: includes/class-freemius.php:20541
|
573 |
-
msgid "Seems like you got the latest release."
|
574 |
-
msgstr "Det ser ud til, at du har den seneste udgivelse."
|
575 |
-
|
576 |
-
#: includes/class-freemius.php:20542
|
577 |
-
msgid "You are all good!"
|
578 |
-
msgstr "Det var det!"
|
579 |
-
|
580 |
-
#: includes/class-freemius.php:20812
|
581 |
-
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
582 |
-
msgstr "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
583 |
-
|
584 |
-
#: includes/class-freemius.php:20951
|
585 |
-
msgid "Site successfully opted in."
|
586 |
-
msgstr "Websted er tilmeldt."
|
587 |
-
|
588 |
-
#: includes/class-freemius.php20952, includes/class-freemius.php:21792
|
589 |
-
msgid "Awesome"
|
590 |
-
msgstr "Sejt"
|
591 |
-
|
592 |
-
#: includes/class-freemius.php20968, templates/forms/optout.php:32
|
593 |
-
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
594 |
-
msgstr "Vi sætter pris på din hjælp med at forbedre %s ved at lade os indsamle brugsdata."
|
595 |
-
|
596 |
-
#: includes/class-freemius.php:20969
|
597 |
-
msgid "Thank you!"
|
598 |
-
msgstr "Mange tak!"
|
599 |
-
|
600 |
-
#: includes/class-freemius.php:20976
|
601 |
-
msgid "We will no longer be sending any usage data of %s on %s to %s."
|
602 |
-
msgstr "Vi vil ikke længere indsende brugsdata af %s på %s til %s."
|
603 |
-
|
604 |
-
#: includes/class-freemius.php:21105
|
605 |
-
msgid "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
606 |
-
msgstr "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
607 |
-
|
608 |
-
#: includes/class-freemius.php:21111
|
609 |
-
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
610 |
-
msgstr "Tak fordi du bekræftede skift af ejerskab. En e-mail er blevet sendt til %s for sidste godkendelse."
|
611 |
-
|
612 |
-
#: includes/class-freemius.php:21116
|
613 |
-
msgid "%s is the new owner of the account."
|
614 |
-
msgstr "%s er den nye ejer af kontoen."
|
615 |
-
|
616 |
-
#: includes/class-freemius.php:21118
|
617 |
-
msgctxt "as congratulations"
|
618 |
-
msgid "Congrats"
|
619 |
-
msgstr "Tillykke"
|
620 |
-
|
621 |
-
#: includes/class-freemius.php:21138
|
622 |
-
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
623 |
-
msgstr "Beklager, vi kunne ikke opdatere e-mailen. Der er allerede registreret en anden bruger med samme e-mail."
|
624 |
-
|
625 |
-
#: includes/class-freemius.php:21139
|
626 |
-
msgid "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
627 |
-
msgstr "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
628 |
-
|
629 |
-
#: includes/class-freemius.php:21146
|
630 |
-
msgid "Change Ownership"
|
631 |
-
msgstr "Skift ejerskab"
|
632 |
-
|
633 |
-
#: includes/class-freemius.php:21154
|
634 |
-
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
635 |
-
msgstr "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
636 |
-
|
637 |
-
#: includes/class-freemius.php:21166
|
638 |
-
msgid "Please provide your full name."
|
639 |
-
msgstr "Indtast venligst dit fulde navn."
|
640 |
-
|
641 |
-
#: includes/class-freemius.php:21171
|
642 |
-
msgid "Your name was successfully updated."
|
643 |
-
msgstr "Dit navn er blevet opdateret."
|
644 |
-
|
645 |
-
#: includes/class-freemius.php:21232
|
646 |
-
msgid "You have successfully updated your %s."
|
647 |
-
msgstr "Opdatering af %s blev gennemført."
|
648 |
-
|
649 |
-
#: includes/class-freemius.php:21372
|
650 |
-
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
651 |
-
msgstr "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
652 |
-
|
653 |
-
#: includes/class-freemius.php:21373
|
654 |
-
msgctxt "advance notice of something that will need attention."
|
655 |
-
msgid "Heads up"
|
656 |
-
msgstr "Se her"
|
657 |
-
|
658 |
-
#: includes/class-freemius.php:21832
|
659 |
-
msgctxt "exclamation"
|
660 |
-
msgid "Hey"
|
661 |
-
msgstr "Hey"
|
662 |
-
|
663 |
-
#: includes/class-freemius.php:21832
|
664 |
-
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
665 |
-
msgstr "Hvad synes du om %s indtil videre? Test alle vores premium funktioner i %s med en %d-dags gratis prøveperiode."
|
666 |
-
|
667 |
-
#: includes/class-freemius.php:21840
|
668 |
-
msgid "No commitment for %s days - cancel anytime!"
|
669 |
-
msgstr "Ingen bindinger i %s dage - annuller når som helst!"
|
670 |
-
|
671 |
-
#: includes/class-freemius.php:21841
|
672 |
-
msgid "No credit card required"
|
673 |
-
msgstr "Betalingskort ikke påkrævet"
|
674 |
-
|
675 |
-
#: includes/class-freemius.php21848, templates/forms/trial-start.php:53
|
676 |
-
msgctxt "call to action"
|
677 |
-
msgid "Start free trial"
|
678 |
-
msgstr "Start gratis prøveperiode"
|
679 |
-
|
680 |
-
#: includes/class-freemius.php:21925
|
681 |
-
msgid "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
682 |
-
msgstr "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
683 |
-
|
684 |
-
#: includes/class-freemius.php:21934
|
685 |
-
msgid "Learn more"
|
686 |
-
msgstr "Læs mere"
|
687 |
-
|
688 |
-
#: includes/class-freemius.php22120, templates/account.php499,
|
689 |
-
#: templates/account.php624, templates/connect.php171,
|
690 |
-
#: templates/connect.php421, templates/forms/license-activation.php27,
|
691 |
-
#: templates/account/partials/addon.php:321
|
692 |
-
msgid "Activate License"
|
693 |
-
msgstr "Aktiver licens"
|
694 |
-
|
695 |
-
#: includes/class-freemius.php22121, templates/account.php571,
|
696 |
-
#: templates/account.php623, templates/account/partials/addon.php322,
|
697 |
-
#: templates/account/partials/site.php:271
|
698 |
-
msgid "Change License"
|
699 |
-
msgstr "Skift licens"
|
700 |
-
|
701 |
-
#: includes/class-freemius.php22217, templates/account/partials/site.php:169
|
702 |
-
msgid "Opt Out"
|
703 |
-
msgstr "Frameld"
|
704 |
-
|
705 |
-
#: includes/class-freemius.php22219, includes/class-freemius.php22225,
|
706 |
-
#: templates/account/partials/site.php49,
|
707 |
-
#: templates/account/partials/site.php:169
|
708 |
-
msgid "Opt In"
|
709 |
-
msgstr "Tilmeld"
|
710 |
-
|
711 |
-
#: includes/class-freemius.php:22453
|
712 |
-
msgid " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
713 |
-
msgstr " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
714 |
-
|
715 |
-
#: includes/class-freemius.php:22461
|
716 |
-
msgid "Activate %s features"
|
717 |
-
msgstr "Aktiver funktioner i %s"
|
718 |
-
|
719 |
-
#: includes/class-freemius.php:22474
|
720 |
-
msgid "Please follow these steps to complete the upgrade"
|
721 |
-
msgstr "Følg venligst disse trin for at færdiggøre opgraderingen"
|
722 |
-
|
723 |
-
#: includes/class-freemius.php:22478
|
724 |
-
msgid "Download the latest %s version"
|
725 |
-
msgstr "Download den seneste version af %s"
|
726 |
-
|
727 |
-
#: includes/class-freemius.php:22482
|
728 |
-
msgid "Upload and activate the downloaded version"
|
729 |
-
msgstr "Upload og aktiver den downloadede version"
|
730 |
-
|
731 |
-
#: includes/class-freemius.php:22484
|
732 |
-
msgid "How to upload and activate?"
|
733 |
-
msgstr "Upload og aktivering, hvordan?"
|
734 |
-
|
735 |
-
#: includes/class-freemius.php:22618
|
736 |
-
msgid "%sClick here%s to choose the sites where you'd like to activate the license on."
|
737 |
-
msgstr "%sClick here%s to choose the sites where you'd like to activate the license on."
|
738 |
-
|
739 |
-
#: includes/class-freemius.php:22779
|
740 |
-
msgid "Auto installation only works for opted-in users."
|
741 |
-
msgstr "Auto-installation fungerer kun for tilmeldte brugere."
|
742 |
-
|
743 |
-
#: includes/class-freemius.php22789, includes/class-freemius.php22822,
|
744 |
-
#: includes/class-fs-plugin-updater.php1212,
|
745 |
-
#: includes/class-fs-plugin-updater.php:1226
|
746 |
-
msgid "Invalid module ID."
|
747 |
-
msgstr "Ugyldigt modul-ID."
|
748 |
-
|
749 |
-
#: includes/class-freemius.php22798, includes/class-fs-plugin-updater.php:1248
|
750 |
-
msgid "Premium version already active."
|
751 |
-
msgstr "Premium version allerede aktiv."
|
752 |
-
|
753 |
-
#: includes/class-freemius.php:22805
|
754 |
-
msgid "You do not have a valid license to access the premium version."
|
755 |
-
msgstr "Du har ikke en gyldig licens til at benytte premium-versionen."
|
756 |
-
|
757 |
-
#: includes/class-freemius.php:22812
|
758 |
-
msgid "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
759 |
-
msgstr "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
760 |
-
|
761 |
-
#: includes/class-freemius.php22830, includes/class-fs-plugin-updater.php:1247
|
762 |
-
msgid "Premium add-on version already installed."
|
763 |
-
msgstr "Premium tilføjelse er allerede installeret."
|
764 |
-
|
765 |
-
#: includes/class-freemius.php:23180
|
766 |
-
msgid "View paid features"
|
767 |
-
msgstr "Vis betalte features"
|
768 |
-
|
769 |
-
#: includes/class-freemius.php:23502
|
770 |
-
msgid "Thank you so much for using %s and its add-ons!"
|
771 |
-
msgstr "Mange tak for, at du benytter %s og tilhørende add-ons!"
|
772 |
-
|
773 |
-
#: includes/class-freemius.php:23503
|
774 |
-
msgid "Thank you so much for using %s!"
|
775 |
-
msgstr "Tak fordi du benytter %s!"
|
776 |
-
|
777 |
-
#: includes/class-freemius.php:23509
|
778 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
779 |
-
msgstr "Du er allerede tilmeldt vores brugssporing, hvilket hjælper os med at forbedre %s."
|
780 |
-
|
781 |
-
#: includes/class-freemius.php:23513
|
782 |
-
msgid "Thank you so much for using our products!"
|
783 |
-
msgstr "Mange tak for at benytte vores produkter!"
|
784 |
-
|
785 |
-
#: includes/class-freemius.php:23514
|
786 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
787 |
-
msgstr "Du er allerede tilmeldt vores brugssporing, hvilket hjælper os med at forbedre dem."
|
788 |
-
|
789 |
-
#: includes/class-freemius.php:23533
|
790 |
-
msgid "%s and its add-ons"
|
791 |
-
msgstr "%s og tilføjelser"
|
792 |
-
|
793 |
-
#: includes/class-freemius.php:23542
|
794 |
-
msgid "Products"
|
795 |
-
msgstr "Produkter"
|
796 |
-
|
797 |
-
#: includes/class-freemius.php23549, templates/connect.php:272
|
798 |
-
msgid "Yes"
|
799 |
-
msgstr "Ja"
|
800 |
-
|
801 |
-
#: includes/class-freemius.php23550, templates/connect.php:273
|
802 |
-
msgid "send me security & feature updates, educational content and offers."
|
803 |
-
msgstr "send mig sikkerheds- og feature-opdateringer, informativt indhold og tilbud."
|
804 |
-
|
805 |
-
#: includes/class-freemius.php23551, templates/connect.php:278
|
806 |
-
msgid "No"
|
807 |
-
msgstr "Nej"
|
808 |
-
|
809 |
-
#: includes/class-freemius.php23553, templates/connect.php:280
|
810 |
-
msgid "do %sNOT%s send me security & feature updates, educational content and offers."
|
811 |
-
msgstr "send %sIKKE%s sikkerheds- og feature-opdateringer, informativt indhold og tilbud."
|
812 |
-
|
813 |
-
#: includes/class-freemius.php:23563
|
814 |
-
msgid "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
815 |
-
msgstr "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
816 |
-
|
817 |
-
#: includes/class-freemius.php23565, templates/connect.php:287
|
818 |
-
msgid "Please let us know if you'd like us to contact you for security & feature updates, educational content, and occasional offers:"
|
819 |
-
msgstr "Lad os vide, om vi har lov til at kontakte dig med sikkerheds- og feature-opdateringer, informativt indhold og lejlighedsvise tilbud:"
|
820 |
-
|
821 |
-
#: includes/class-freemius.php:23847
|
822 |
-
msgid "License key is empty."
|
823 |
-
msgstr "Licensnøglen er tom."
|
824 |
-
|
825 |
-
#: includes/class-fs-plugin-updater.php206,
|
826 |
-
#: templates/forms/premium-versions-upgrade-handler.php:57
|
827 |
-
msgid "Renew license"
|
828 |
-
msgstr "Forny licens"
|
829 |
-
|
830 |
-
#: includes/class-fs-plugin-updater.php211,
|
831 |
-
#: templates/forms/premium-versions-upgrade-handler.php:58
|
832 |
-
msgid "Buy license"
|
833 |
-
msgstr "Køb licens"
|
834 |
-
|
835 |
-
#: includes/class-fs-plugin-updater.php321,
|
836 |
-
#: includes/class-fs-plugin-updater.php:354
|
837 |
-
msgid "There is a %s of %s available."
|
838 |
-
msgstr "There is a %s of %s available."
|
839 |
-
|
840 |
-
#: includes/class-fs-plugin-updater.php323,
|
841 |
-
#: includes/class-fs-plugin-updater.php:359
|
842 |
-
msgid "new Beta version"
|
843 |
-
msgstr "ny Beta-version"
|
844 |
-
|
845 |
-
#: includes/class-fs-plugin-updater.php324,
|
846 |
-
#: includes/class-fs-plugin-updater.php:360
|
847 |
-
msgid "new version"
|
848 |
-
msgstr "ny version"
|
849 |
-
|
850 |
-
#: includes/class-fs-plugin-updater.php:383
|
851 |
-
msgid "Important Upgrade Notice:"
|
852 |
-
msgstr "Vigtig meddelelse til opgradering:"
|
853 |
-
|
854 |
-
#: includes/class-fs-plugin-updater.php:1277
|
855 |
-
msgid "Installing plugin: %s"
|
856 |
-
msgstr "Installerer plugin: %s"
|
857 |
-
|
858 |
-
#: includes/class-fs-plugin-updater.php:1318
|
859 |
-
msgid "Unable to connect to the filesystem. Please confirm your credentials."
|
860 |
-
msgstr "Unable to connect to the filesystem. Please confirm your credentials."
|
861 |
-
|
862 |
-
#: includes/class-fs-plugin-updater.php:1500
|
863 |
-
msgid "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
|
864 |
-
msgstr "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
|
865 |
-
|
866 |
-
#: includes/fs-plugin-info-dialog.php:535
|
867 |
-
msgid "Purchase More"
|
868 |
-
msgstr "Køb flere"
|
869 |
-
|
870 |
-
#: includes/fs-plugin-info-dialog.php536,
|
871 |
-
#: templates/account/partials/addon.php:385
|
872 |
-
msgctxt "verb"
|
873 |
-
msgid "Purchase"
|
874 |
-
msgstr "Køb"
|
875 |
-
|
876 |
-
#: includes/fs-plugin-info-dialog.php:540
|
877 |
-
msgid "Start my free %s"
|
878 |
-
msgstr "Start min gratis %s"
|
879 |
-
|
880 |
-
#: includes/fs-plugin-info-dialog.php:738
|
881 |
-
msgid "Install Free Version Update Now"
|
882 |
-
msgstr "Installer opdatering til gratis version nu"
|
883 |
-
|
884 |
-
#: includes/fs-plugin-info-dialog.php739, templates/account.php:560
|
885 |
-
msgid "Install Update Now"
|
886 |
-
msgstr "Installer opdatering nu"
|
887 |
-
|
888 |
-
#: includes/fs-plugin-info-dialog.php:748
|
889 |
-
msgid "Install Free Version Now"
|
890 |
-
msgstr "Installer gratis version nu"
|
891 |
-
|
892 |
-
#: includes/fs-plugin-info-dialog.php749, templates/add-ons.php323,
|
893 |
-
#: templates/auto-installation.php111,
|
894 |
-
#: templates/account/partials/addon.php365,
|
895 |
-
#: templates/account/partials/addon.php:418
|
896 |
-
msgid "Install Now"
|
897 |
-
msgstr "Installer nu"
|
898 |
-
|
899 |
-
#: includes/fs-plugin-info-dialog.php:765
|
900 |
-
msgctxt "as download latest version"
|
901 |
-
msgid "Download Latest Free Version"
|
902 |
-
msgstr "Download seneste gratis version"
|
903 |
-
|
904 |
-
#: includes/fs-plugin-info-dialog.php766, templates/account.php91,
|
905 |
-
#: templates/add-ons.php37, templates/account/partials/addon.php:25
|
906 |
-
msgctxt "as download latest version"
|
907 |
-
msgid "Download Latest"
|
908 |
-
msgstr "Download seneste"
|
909 |
-
|
910 |
-
#: includes/fs-plugin-info-dialog.php781, templates/add-ons.php329,
|
911 |
-
#: templates/account/partials/addon.php356,
|
912 |
-
#: templates/account/partials/addon.php:412
|
913 |
-
msgid "Activate this add-on"
|
914 |
-
msgstr "Aktiver denne tilføjelse"
|
915 |
-
|
916 |
-
#: includes/fs-plugin-info-dialog.php783, templates/connect.php:418
|
917 |
-
msgid "Activate Free Version"
|
918 |
-
msgstr "Aktiver gratis version"
|
919 |
-
|
920 |
-
#: includes/fs-plugin-info-dialog.php784, templates/account.php115,
|
921 |
-
#: templates/add-ons.php330, templates/account/partials/addon.php:48
|
922 |
-
msgid "Activate"
|
923 |
-
msgstr "Aktiver"
|
924 |
-
|
925 |
-
#: includes/fs-plugin-info-dialog.php:994
|
926 |
-
msgctxt "Plugin installer section title"
|
927 |
-
msgid "Description"
|
928 |
-
msgstr "Beskrivelse"
|
929 |
-
|
930 |
-
#: includes/fs-plugin-info-dialog.php:995
|
931 |
-
msgctxt "Plugin installer section title"
|
932 |
-
msgid "Installation"
|
933 |
-
msgstr "Installering"
|
934 |
-
|
935 |
-
#: includes/fs-plugin-info-dialog.php:996
|
936 |
-
msgctxt "Plugin installer section title"
|
937 |
-
msgid "FAQ"
|
938 |
-
msgstr "FAQ"
|
939 |
-
|
940 |
-
#: includes/fs-plugin-info-dialog.php997,
|
941 |
-
#: templates/plugin-info/description.php:55
|
942 |
-
msgid "Screenshots"
|
943 |
-
msgstr "Skærmbilleder"
|
944 |
-
|
945 |
-
#: includes/fs-plugin-info-dialog.php:998
|
946 |
-
msgctxt "Plugin installer section title"
|
947 |
-
msgid "Changelog"
|
948 |
-
msgstr "Ændringslog"
|
949 |
-
|
950 |
-
#: includes/fs-plugin-info-dialog.php:999
|
951 |
-
msgctxt "Plugin installer section title"
|
952 |
-
msgid "Reviews"
|
953 |
-
msgstr "Anmeldelser"
|
954 |
-
|
955 |
-
#: includes/fs-plugin-info-dialog.php:1000
|
956 |
-
msgctxt "Plugin installer section title"
|
957 |
-
msgid "Other Notes"
|
958 |
-
msgstr "Andre noter"
|
959 |
-
|
960 |
-
#: includes/fs-plugin-info-dialog.php:1015
|
961 |
-
msgctxt "Plugin installer section title"
|
962 |
-
msgid "Features & Pricing"
|
963 |
-
msgstr "Funktioner og priser"
|
964 |
-
|
965 |
-
#: includes/fs-plugin-info-dialog.php:1025
|
966 |
-
msgid "Plugin Install"
|
967 |
-
msgstr "Plugin-installering"
|
968 |
-
|
969 |
-
#: includes/fs-plugin-info-dialog.php:1097
|
970 |
-
msgctxt "e.g. Professional Plan"
|
971 |
-
msgid "%s Plan"
|
972 |
-
msgstr "%s Plan"
|
973 |
-
|
974 |
-
#: includes/fs-plugin-info-dialog.php:1123
|
975 |
-
msgctxt "e.g. the best product"
|
976 |
-
msgid "Best"
|
977 |
-
msgstr "Bedste"
|
978 |
-
|
979 |
-
#: includes/fs-plugin-info-dialog.php1129,
|
980 |
-
#: includes/fs-plugin-info-dialog.php:1149
|
981 |
-
msgctxt "as every month"
|
982 |
-
msgid "Monthly"
|
983 |
-
msgstr "Månedligt"
|
984 |
-
|
985 |
-
#: includes/fs-plugin-info-dialog.php:1132
|
986 |
-
msgctxt "as once a year"
|
987 |
-
msgid "Annual"
|
988 |
-
msgstr "Årligt"
|
989 |
-
|
990 |
-
#: includes/fs-plugin-info-dialog.php:1135
|
991 |
-
msgid "Lifetime"
|
992 |
-
msgstr "Livstid"
|
993 |
-
|
994 |
-
#: includes/fs-plugin-info-dialog.php1149,
|
995 |
-
#: includes/fs-plugin-info-dialog.php1151,
|
996 |
-
#: includes/fs-plugin-info-dialog.php:1153
|
997 |
-
msgctxt "e.g. billed monthly"
|
998 |
-
msgid "Billed %s"
|
999 |
-
msgstr "Faktureret %s"
|
1000 |
-
|
1001 |
-
#: includes/fs-plugin-info-dialog.php:1151
|
1002 |
-
msgctxt "as once a year"
|
1003 |
-
msgid "Annually"
|
1004 |
-
msgstr "Årligt"
|
1005 |
-
|
1006 |
-
#: includes/fs-plugin-info-dialog.php:1153
|
1007 |
-
msgctxt "as once a year"
|
1008 |
-
msgid "Once"
|
1009 |
-
msgstr "Engangsbeløb"
|
1010 |
-
|
1011 |
-
#: includes/fs-plugin-info-dialog.php:1159
|
1012 |
-
msgid "Single Site License"
|
1013 |
-
msgstr "Enkelt site licens"
|
1014 |
-
|
1015 |
-
#: includes/fs-plugin-info-dialog.php:1161
|
1016 |
-
msgid "Unlimited Licenses"
|
1017 |
-
msgstr "Ubegrænsede licenser"
|
1018 |
-
|
1019 |
-
#: includes/fs-plugin-info-dialog.php:1163
|
1020 |
-
msgid "Up to %s Sites"
|
1021 |
-
msgstr "Op til %s websteder"
|
1022 |
-
|
1023 |
-
#: includes/fs-plugin-info-dialog.php1173,
|
1024 |
-
#: templates/plugin-info/features.php:82
|
1025 |
-
msgctxt "as monthly period"
|
1026 |
-
msgid "mo"
|
1027 |
-
msgstr "md"
|
1028 |
-
|
1029 |
-
#: includes/fs-plugin-info-dialog.php1180,
|
1030 |
-
#: templates/plugin-info/features.php:80
|
1031 |
-
msgctxt "as annual period"
|
1032 |
-
msgid "year"
|
1033 |
-
msgstr "år"
|
1034 |
-
|
1035 |
-
#: includes/fs-plugin-info-dialog.php:1234
|
1036 |
-
msgctxt "noun"
|
1037 |
-
msgid "Price"
|
1038 |
-
msgstr "Pris"
|
1039 |
-
|
1040 |
-
#: includes/fs-plugin-info-dialog.php:1282
|
1041 |
-
msgid "Save %s"
|
1042 |
-
msgstr "Spar %s"
|
1043 |
-
|
1044 |
-
#: includes/fs-plugin-info-dialog.php:1292
|
1045 |
-
msgid "No commitment for %s - cancel anytime"
|
1046 |
-
msgstr "Ingen bindinger ved %s - annuller når som helst"
|
1047 |
-
|
1048 |
-
#: includes/fs-plugin-info-dialog.php:1295
|
1049 |
-
msgid "After your free %s, pay as little as %s"
|
1050 |
-
msgstr "Efter din gratis %s er prisen kun %s"
|
1051 |
-
|
1052 |
-
#: includes/fs-plugin-info-dialog.php:1306
|
1053 |
-
msgid "Details"
|
1054 |
-
msgstr "Detaljer"
|
1055 |
-
|
1056 |
-
#: includes/fs-plugin-info-dialog.php1310, templates/account.php102,
|
1057 |
-
#: templates/debug.php203, templates/debug.php240, templates/debug.php457,
|
1058 |
-
#: templates/account/partials/addon.php:36
|
1059 |
-
msgctxt "product version"
|
1060 |
-
msgid "Version"
|
1061 |
-
msgstr "Version"
|
1062 |
-
|
1063 |
-
#: includes/fs-plugin-info-dialog.php:1317
|
1064 |
-
msgctxt "as the plugin author"
|
1065 |
-
msgid "Author"
|
1066 |
-
msgstr "Forfatter"
|
1067 |
-
|
1068 |
-
#: includes/fs-plugin-info-dialog.php:1324
|
1069 |
-
msgid "Last Updated"
|
1070 |
-
msgstr "Senest opdateret"
|
1071 |
-
|
1072 |
-
#: includes/fs-plugin-info-dialog.php1329, templates/account.php:468
|
1073 |
-
msgctxt "x-ago"
|
1074 |
-
msgid "%s ago"
|
1075 |
-
msgstr "%s siden"
|
1076 |
-
|
1077 |
-
#: includes/fs-plugin-info-dialog.php:1338
|
1078 |
-
msgid "Requires WordPress Version"
|
1079 |
-
msgstr "Kræver WordPress-version"
|
1080 |
-
|
1081 |
-
#: includes/fs-plugin-info-dialog.php:1339
|
1082 |
-
msgid "%s or higher"
|
1083 |
-
msgstr "%s eller højere"
|
1084 |
-
|
1085 |
-
#: includes/fs-plugin-info-dialog.php:1346
|
1086 |
-
msgid "Compatible up to"
|
1087 |
-
msgstr "Kompatibel op til"
|
1088 |
-
|
1089 |
-
#: includes/fs-plugin-info-dialog.php:1354
|
1090 |
-
msgid "Downloaded"
|
1091 |
-
msgstr "Downloadet"
|
1092 |
-
|
1093 |
-
#: includes/fs-plugin-info-dialog.php:1358
|
1094 |
-
msgid "%s time"
|
1095 |
-
msgstr "%s gang"
|
1096 |
-
|
1097 |
-
#: includes/fs-plugin-info-dialog.php:1360
|
1098 |
-
msgid "%s times"
|
1099 |
-
msgstr "%s gange"
|
1100 |
-
|
1101 |
-
#: includes/fs-plugin-info-dialog.php:1370
|
1102 |
-
msgid "WordPress.org Plugin Page"
|
1103 |
-
msgstr "WordPress.org Plugin-side"
|
1104 |
-
|
1105 |
-
#: includes/fs-plugin-info-dialog.php:1378
|
1106 |
-
msgid "Plugin Homepage"
|
1107 |
-
msgstr "Plugin-websted"
|
1108 |
-
|
1109 |
-
#: includes/fs-plugin-info-dialog.php1386,
|
1110 |
-
#: includes/fs-plugin-info-dialog.php:1468
|
1111 |
-
msgid "Donate to this plugin"
|
1112 |
-
msgstr "Donér til dette plugin"
|
1113 |
-
|
1114 |
-
#: includes/fs-plugin-info-dialog.php:1393
|
1115 |
-
msgid "Average Rating"
|
1116 |
-
msgstr "Gennemsnitlig vurdering"
|
1117 |
-
|
1118 |
-
#: includes/fs-plugin-info-dialog.php:1400
|
1119 |
-
msgid "based on %s"
|
1120 |
-
msgstr "baseret på %s"
|
1121 |
-
|
1122 |
-
#: includes/fs-plugin-info-dialog.php:1404
|
1123 |
-
msgid "%s rating"
|
1124 |
-
msgstr "%s vurdering"
|
1125 |
-
|
1126 |
-
#: includes/fs-plugin-info-dialog.php:1406
|
1127 |
-
msgid "%s ratings"
|
1128 |
-
msgstr "%s vurderinger"
|
1129 |
-
|
1130 |
-
#: includes/fs-plugin-info-dialog.php:1421
|
1131 |
-
msgid "%s star"
|
1132 |
-
msgstr "%s stjerne"
|
1133 |
-
|
1134 |
-
#: includes/fs-plugin-info-dialog.php:1423
|
1135 |
-
msgid "%s stars"
|
1136 |
-
msgstr "%s stjerner"
|
1137 |
-
|
1138 |
-
#: includes/fs-plugin-info-dialog.php:1434
|
1139 |
-
msgid "Click to see reviews that provided a rating of %s"
|
1140 |
-
msgstr "Click to see reviews that provided a rating of %s"
|
1141 |
-
|
1142 |
-
#: includes/fs-plugin-info-dialog.php:1447
|
1143 |
-
msgid "Contributors"
|
1144 |
-
msgstr "Bidragsydere"
|
1145 |
-
|
1146 |
-
#: includes/fs-plugin-info-dialog.php1476,
|
1147 |
-
#: includes/fs-plugin-info-dialog.php:1478
|
1148 |
-
msgid "Warning"
|
1149 |
-
msgstr "Advarsel"
|
1150 |
-
|
1151 |
-
#: includes/fs-plugin-info-dialog.php:1476
|
1152 |
-
msgid "This plugin has not been tested with your current version of WordPress."
|
1153 |
-
msgstr "Dette plugin er ikke blevet testet med din nuværende version af WordPress."
|
1154 |
-
|
1155 |
-
#: includes/fs-plugin-info-dialog.php:1478
|
1156 |
-
msgid "This plugin has not been marked as compatible with your version of WordPress."
|
1157 |
-
msgstr "Dette plugin er ikke markeret som kompatibel med din nuværende version af WordPress."
|
1158 |
-
|
1159 |
-
#: includes/fs-plugin-info-dialog.php:1497
|
1160 |
-
msgid "Paid add-on must be deployed to Freemius."
|
1161 |
-
msgstr "Paid add-on must be deployed to Freemius."
|
1162 |
-
|
1163 |
-
#: includes/fs-plugin-info-dialog.php:1498
|
1164 |
-
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1165 |
-
msgstr "Add-on must be deployed to WordPress.org or Freemius."
|
1166 |
-
|
1167 |
-
#: includes/fs-plugin-info-dialog.php:1519
|
1168 |
-
msgid "Newer Version (%s) Installed"
|
1169 |
-
msgstr "Nyere version (%s) installeret"
|
1170 |
-
|
1171 |
-
#: includes/fs-plugin-info-dialog.php:1520
|
1172 |
-
msgid "Newer Free Version (%s) Installed"
|
1173 |
-
msgstr "Nyere gratis version (%s) installeret"
|
1174 |
-
|
1175 |
-
#: includes/fs-plugin-info-dialog.php:1527
|
1176 |
-
msgid "Latest Version Installed"
|
1177 |
-
msgstr "Seneste version installeret"
|
1178 |
-
|
1179 |
-
#: includes/fs-plugin-info-dialog.php:1528
|
1180 |
-
msgid "Latest Free Version Installed"
|
1181 |
-
msgstr "Seneste gratis version installeret"
|
1182 |
-
|
1183 |
-
#: templates/account.php92, templates/forms/subscription-cancellation.php96,
|
1184 |
-
#: templates/account/partials/addon.php26,
|
1185 |
-
#: templates/account/partials/site.php:311
|
1186 |
-
msgid "Downgrading your plan"
|
1187 |
-
msgstr "Nedgraderer din plan"
|
1188 |
-
|
1189 |
-
#: templates/account.php93, templates/forms/subscription-cancellation.php97,
|
1190 |
-
#: templates/account/partials/addon.php27,
|
1191 |
-
#: templates/account/partials/site.php:312
|
1192 |
-
msgid "Cancelling the subscription"
|
1193 |
-
msgstr "Annullerer abonnementet"
|
1194 |
-
|
1195 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the
|
1196 |
-
#. subscription'
|
1197 |
-
#: templates/account.php95, templates/forms/subscription-cancellation.php99,
|
1198 |
-
#: templates/account/partials/site.php:314
|
1199 |
-
msgid "%1$s will immediately stop all future recurring payments and your %2$s plan license will expire in %3$s."
|
1200 |
-
msgstr "%1$s will immediately stop all future recurring payments and your %2$s plan license will expire in %3$s."
|
1201 |
-
|
1202 |
-
#: templates/account.php96, templates/forms/subscription-cancellation.php100,
|
1203 |
-
#: templates/account/partials/addon.php30,
|
1204 |
-
#: templates/account/partials/site.php:315
|
1205 |
-
msgid "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1206 |
-
msgstr "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1207 |
-
|
1208 |
-
#: templates/account.php97, templates/forms/subscription-cancellation.php106,
|
1209 |
-
#: templates/account/partials/addon.php:31
|
1210 |
-
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
1211 |
-
msgstr "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
1212 |
-
|
1213 |
-
#: templates/account.php98, templates/forms/subscription-cancellation.php101,
|
1214 |
-
#: templates/account/partials/addon.php32,
|
1215 |
-
#: templates/account/partials/site.php:316
|
1216 |
-
msgid "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1217 |
-
msgstr "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1218 |
-
|
1219 |
-
#: templates/account.php99, templates/forms/subscription-cancellation.php102,
|
1220 |
-
#: templates/account/partials/addon.php33,
|
1221 |
-
#: templates/account/partials/site.php:317
|
1222 |
-
msgid "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1223 |
-
msgstr "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1224 |
-
|
1225 |
-
#. translators: %s: Plan title (e.g. "Professional")
|
1226 |
-
#: templates/account.php101,
|
1227 |
-
#: templates/account/partials/activate-license-button.php31,
|
1228 |
-
#: templates/account/partials/addon.php:35
|
1229 |
-
msgid "Activate %s Plan"
|
1230 |
-
msgstr "Aktiver %s plan"
|
1231 |
-
|
1232 |
-
#. translators: %s: Time period (e.g. Auto renews in "2 months")
|
1233 |
-
#: templates/account.php104, templates/account/partials/addon.php38,
|
1234 |
-
#: templates/account/partials/site.php:291
|
1235 |
-
msgid "Auto renews in %s"
|
1236 |
-
msgstr "Auto-fornyer om %s"
|
1237 |
-
|
1238 |
-
#. translators: %s: Time period (e.g. Expires in "2 months")
|
1239 |
-
#: templates/account.php106, templates/account/partials/addon.php40,
|
1240 |
-
#: templates/account/partials/site.php:293
|
1241 |
-
msgid "Expires in %s"
|
1242 |
-
msgstr "Udløber om %s"
|
1243 |
-
|
1244 |
-
#: templates/account.php:107
|
1245 |
-
msgctxt "as synchronize license"
|
1246 |
-
msgid "Sync License"
|
1247 |
-
msgstr "Synkroniser licens"
|
1248 |
-
|
1249 |
-
#: templates/account.php108, templates/account/partials/addon.php:41
|
1250 |
-
msgid "Cancel Trial"
|
1251 |
-
msgstr "Annuller prøveperiode"
|
1252 |
-
|
1253 |
-
#: templates/account.php109, templates/account/partials/addon.php:42
|
1254 |
-
msgid "Change Plan"
|
1255 |
-
msgstr "Skift plan"
|
1256 |
-
|
1257 |
-
#: templates/account.php110, templates/account/partials/addon.php:43
|
1258 |
-
msgctxt "verb"
|
1259 |
-
msgid "Upgrade"
|
1260 |
-
msgstr "Opgrader"
|
1261 |
-
|
1262 |
-
#: templates/account.php112, templates/account/partials/addon.php45,
|
1263 |
-
#: templates/account/partials/site.php:318
|
1264 |
-
msgctxt "verb"
|
1265 |
-
msgid "Downgrade"
|
1266 |
-
msgstr "Nedgrader"
|
1267 |
-
|
1268 |
-
#: templates/account.php114, templates/add-ons.php246,
|
1269 |
-
#: templates/plugin-info/features.php72,
|
1270 |
-
#: templates/account/partials/addon.php47,
|
1271 |
-
#: templates/account/partials/site.php:33
|
1272 |
-
msgid "Free"
|
1273 |
-
msgstr "Gratis"
|
1274 |
-
|
1275 |
-
#: templates/account.php116, templates/debug.php373,
|
1276 |
-
#: includes/customizer/class-fs-customizer-upsell-control.php110,
|
1277 |
-
#: templates/account/partials/addon.php:49
|
1278 |
-
msgctxt "as product pricing plan"
|
1279 |
-
msgid "Plan"
|
1280 |
-
msgstr "Plan"
|
1281 |
-
|
1282 |
-
#: templates/account.php:117
|
1283 |
-
msgid "Bundle Plan"
|
1284 |
-
msgstr "Bundle Plan"
|
1285 |
-
|
1286 |
-
#: templates/account.php:191
|
1287 |
-
msgid "Free Trial"
|
1288 |
-
msgstr "Gratis prøveperiode"
|
1289 |
-
|
1290 |
-
#: templates/account.php:202
|
1291 |
-
msgid "Account Details"
|
1292 |
-
msgstr "Kontodetaljer"
|
1293 |
-
|
1294 |
-
#: templates/account.php209, templates/forms/data-debug-mode.php:33
|
1295 |
-
msgid "Start Debug"
|
1296 |
-
msgstr "Start Debug"
|
1297 |
-
|
1298 |
-
#: templates/account.php:211
|
1299 |
-
msgid "Stop Debug"
|
1300 |
-
msgstr "Stop Debug"
|
1301 |
-
|
1302 |
-
#: templates/account.php:218
|
1303 |
-
msgid "Billing & Invoices"
|
1304 |
-
msgstr "Fakturering"
|
1305 |
-
|
1306 |
-
#: templates/account.php:229
|
1307 |
-
msgid "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1308 |
-
msgstr "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1309 |
-
|
1310 |
-
#: templates/account.php:231
|
1311 |
-
msgid "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1312 |
-
msgstr "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1313 |
-
|
1314 |
-
#: templates/account.php:234
|
1315 |
-
msgid "Delete Account"
|
1316 |
-
msgstr "Slet konto"
|
1317 |
-
|
1318 |
-
#: templates/account.php246, templates/account/partials/addon.php231,
|
1319 |
-
#: templates/account/partials/deactivate-license-button.php:35
|
1320 |
-
msgid "Deactivate License"
|
1321 |
-
msgstr "Deaktiver licens"
|
1322 |
-
|
1323 |
-
#: templates/account.php269, templates/forms/subscription-cancellation.php:125
|
1324 |
-
msgid "Are you sure you want to proceed?"
|
1325 |
-
msgstr "Er du sikker på, du vil fortsætte?"
|
1326 |
-
|
1327 |
-
#: templates/account.php269, templates/account/partials/addon.php:255
|
1328 |
-
msgid "Cancel Subscription"
|
1329 |
-
msgstr "Annuller abonnement"
|
1330 |
-
|
1331 |
-
#: templates/account.php298, templates/account/partials/addon.php:340
|
1332 |
-
msgctxt "as synchronize"
|
1333 |
-
msgid "Sync"
|
1334 |
-
msgstr "Synkroniser"
|
1335 |
-
|
1336 |
-
#: templates/account.php313, templates/debug.php:507
|
1337 |
-
msgid "Name"
|
1338 |
-
msgstr "Navn"
|
1339 |
-
|
1340 |
-
#: templates/account.php319, templates/debug.php:508
|
1341 |
-
msgid "Email"
|
1342 |
-
msgstr "E-mail"
|
1343 |
-
|
1344 |
-
#: templates/account.php326, templates/debug.php371, templates/debug.php:557
|
1345 |
-
msgid "User ID"
|
1346 |
-
msgstr "Bruger-ID"
|
1347 |
-
|
1348 |
-
#: templates/account.php344, templates/account.php637,
|
1349 |
-
#: templates/account.php682, templates/debug.php238, templates/debug.php365,
|
1350 |
-
#: templates/debug.php454, templates/debug.php506, templates/debug.php555,
|
1351 |
-
#: templates/debug.php632, templates/account/payments.php35,
|
1352 |
-
#: templates/debug/logger.php:21
|
1353 |
-
msgid "ID"
|
1354 |
-
msgstr "ID"
|
1355 |
-
|
1356 |
-
#: templates/account.php:351
|
1357 |
-
msgid "Site ID"
|
1358 |
-
msgstr "Websteds-ID"
|
1359 |
-
|
1360 |
-
#: templates/account.php:354
|
1361 |
-
msgid "No ID"
|
1362 |
-
msgstr "Intet ID"
|
1363 |
-
|
1364 |
-
#: templates/account.php359, templates/debug.php245, templates/debug.php374,
|
1365 |
-
#: templates/debug.php458, templates/debug.php510,
|
1366 |
-
#: templates/account/partials/site.php:227
|
1367 |
-
msgid "Public Key"
|
1368 |
-
msgstr "Offentlig nøgle"
|
1369 |
-
|
1370 |
-
#: templates/account.php365, templates/debug.php375, templates/debug.php459,
|
1371 |
-
#: templates/debug.php511, templates/account/partials/site.php:239
|
1372 |
-
msgid "Secret Key"
|
1373 |
-
msgstr "Privat nøgle"
|
1374 |
-
|
1375 |
-
#: templates/account.php:368
|
1376 |
-
msgctxt "as secret encryption key missing"
|
1377 |
-
msgid "No Secret"
|
1378 |
-
msgstr "Ingen privat nøgle"
|
1379 |
-
|
1380 |
-
#: templates/account.php395, templates/account/partials/site.php120,
|
1381 |
-
#: templates/account/partials/site.php:122
|
1382 |
-
msgid "Trial"
|
1383 |
-
msgstr "Prøveperiode"
|
1384 |
-
|
1385 |
-
#: templates/account.php422, templates/debug.php562,
|
1386 |
-
#: templates/account/partials/site.php:260
|
1387 |
-
msgid "License Key"
|
1388 |
-
msgstr "Licensnøgle"
|
1389 |
-
|
1390 |
-
#: templates/account.php:453
|
1391 |
-
msgid "Join the Beta program"
|
1392 |
-
msgstr "Deltag i Beta-programmet"
|
1393 |
-
|
1394 |
-
#: templates/account.php:459
|
1395 |
-
msgid "not verified"
|
1396 |
-
msgstr "ikke verificeret"
|
1397 |
-
|
1398 |
-
#: templates/account.php468, templates/account/partials/addon.php:190
|
1399 |
-
msgid "Expired"
|
1400 |
-
msgstr "Udløbet"
|
1401 |
-
|
1402 |
-
#: templates/account.php:528
|
1403 |
-
msgid "Premium version"
|
1404 |
-
msgstr "Premium version"
|
1405 |
-
|
1406 |
-
#: templates/account.php:530
|
1407 |
-
msgid "Free version"
|
1408 |
-
msgstr "Gratis version"
|
1409 |
-
|
1410 |
-
#: templates/account.php:542
|
1411 |
-
msgid "Verify Email"
|
1412 |
-
msgstr "Verificer e-mail"
|
1413 |
-
|
1414 |
-
#: templates/account.php:553
|
1415 |
-
msgid "Download %s Version"
|
1416 |
-
msgstr "Download 1%s version"
|
1417 |
-
|
1418 |
-
#: templates/account.php568, templates/account.php820,
|
1419 |
-
#: templates/account/partials/site.php248,
|
1420 |
-
#: templates/account/partials/site.php:270
|
1421 |
-
msgctxt "verb"
|
1422 |
-
msgid "Show"
|
1423 |
-
msgstr "Vis"
|
1424 |
-
|
1425 |
-
#: templates/account.php:583
|
1426 |
-
msgid "What is your %s?"
|
1427 |
-
msgstr "Angiv venligst %s?"
|
1428 |
-
|
1429 |
-
#: templates/account.php591, templates/account/billing.php:21
|
1430 |
-
msgctxt "verb"
|
1431 |
-
msgid "Edit"
|
1432 |
-
msgstr "Rediger"
|
1433 |
-
|
1434 |
-
#: templates/account.php:616
|
1435 |
-
msgid "Sites"
|
1436 |
-
msgstr "Websteder"
|
1437 |
-
|
1438 |
-
#: templates/account.php:629
|
1439 |
-
msgid "Search by address"
|
1440 |
-
msgstr "Søg efter adresse"
|
1441 |
-
|
1442 |
-
#: templates/account.php638, templates/debug.php:368
|
1443 |
-
msgid "Address"
|
1444 |
-
msgstr "Adresse"
|
1445 |
-
|
1446 |
-
#: templates/account.php:639
|
1447 |
-
msgid "License"
|
1448 |
-
msgstr "Licens"
|
1449 |
-
|
1450 |
-
#: templates/account.php:640
|
1451 |
-
msgid "Plan"
|
1452 |
-
msgstr "Plan"
|
1453 |
-
|
1454 |
-
#: templates/account.php:685
|
1455 |
-
msgctxt "as software license"
|
1456 |
-
msgid "License"
|
1457 |
-
msgstr "Licens"
|
1458 |
-
|
1459 |
-
#: templates/account.php:814
|
1460 |
-
msgctxt "verb"
|
1461 |
-
msgid "Hide"
|
1462 |
-
msgstr "Skjul"
|
1463 |
-
|
1464 |
-
#: templates/account.php836, templates/forms/data-debug-mode.php:31
|
1465 |
-
msgid "Processing"
|
1466 |
-
msgstr "Arbejder"
|
1467 |
-
|
1468 |
-
#: templates/account.php:839
|
1469 |
-
msgid "Get updates for bleeding edge Beta versions of %s."
|
1470 |
-
msgstr "Get updates for bleeding edge Beta versions of %s."
|
1471 |
-
|
1472 |
-
#: templates/account.php:897
|
1473 |
-
msgid "Cancelling %s"
|
1474 |
-
msgstr "Annullerer %s"
|
1475 |
-
|
1476 |
-
#: templates/account.php897, templates/account.php914,
|
1477 |
-
#: templates/forms/subscription-cancellation.php27,
|
1478 |
-
#: templates/forms/deactivation/form.php:133
|
1479 |
-
msgid "trial"
|
1480 |
-
msgstr "prøveperiode"
|
1481 |
-
|
1482 |
-
#: templates/account.php912, templates/forms/deactivation/form.php:150
|
1483 |
-
msgid "Cancelling %s..."
|
1484 |
-
msgstr "Annullerer %s..."
|
1485 |
-
|
1486 |
-
#: templates/account.php915, templates/forms/subscription-cancellation.php28,
|
1487 |
-
#: templates/forms/deactivation/form.php:134
|
1488 |
-
msgid "subscription"
|
1489 |
-
msgstr "abonnement"
|
1490 |
-
|
1491 |
-
#: templates/account.php:929
|
1492 |
-
msgid "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1493 |
-
msgstr "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1494 |
-
|
1495 |
-
#: templates/add-ons.php:38
|
1496 |
-
msgid "View details"
|
1497 |
-
msgstr "Vis detaljer"
|
1498 |
-
|
1499 |
-
#: templates/add-ons.php:48
|
1500 |
-
msgid "Add Ons for %s"
|
1501 |
-
msgstr "Tilføjelser til %s"
|
1502 |
-
|
1503 |
-
#: templates/add-ons.php:58
|
1504 |
-
msgid "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1505 |
-
msgstr "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1506 |
-
|
1507 |
-
#: templates/add-ons.php:229
|
1508 |
-
msgctxt "active add-on"
|
1509 |
-
msgid "Active"
|
1510 |
-
msgstr "Aktiv"
|
1511 |
-
|
1512 |
-
#: templates/add-ons.php:230
|
1513 |
-
msgctxt "installed add-on"
|
1514 |
-
msgid "Installed"
|
1515 |
-
msgstr "Installeret"
|
1516 |
-
|
1517 |
-
#: templates/admin-notice.php13, templates/forms/license-activation.php207,
|
1518 |
-
#: templates/forms/resend-key.php:77
|
1519 |
-
msgctxt "as close a window"
|
1520 |
-
msgid "Dismiss"
|
1521 |
-
msgstr "Fjern"
|
1522 |
-
|
1523 |
-
#: templates/auto-installation.php:45
|
1524 |
-
msgid "%s sec"
|
1525 |
-
msgstr "1%s sek"
|
1526 |
-
|
1527 |
-
#: templates/auto-installation.php:83
|
1528 |
-
msgid "Automatic Installation"
|
1529 |
-
msgstr "Automatisk installering"
|
1530 |
-
|
1531 |
-
#: templates/auto-installation.php:93
|
1532 |
-
msgid "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1533 |
-
msgstr "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1534 |
-
|
1535 |
-
#: templates/auto-installation.php:104
|
1536 |
-
msgid "The installation process has started and may take a few minutes to complete. Please wait until it is done - do not refresh this page."
|
1537 |
-
msgstr "The installation process has started and may take a few minutes to complete. Please wait until it is done - do not refresh this page."
|
1538 |
-
|
1539 |
-
#: templates/auto-installation.php:109
|
1540 |
-
msgid "Cancel Installation"
|
1541 |
-
msgstr "Annuller installering"
|
1542 |
-
|
1543 |
-
#: templates/checkout.php:180
|
1544 |
-
msgid "Checkout"
|
1545 |
-
msgstr "Udtjekning"
|
1546 |
-
|
1547 |
-
#: templates/checkout.php:180
|
1548 |
-
msgid "PCI compliant"
|
1549 |
-
msgstr "PCI-kompatibel"
|
1550 |
-
|
1551 |
-
#. translators: %s: name (e.g. Hey John,)
|
1552 |
-
#: templates/connect.php:112
|
1553 |
-
msgctxt "greeting"
|
1554 |
-
msgid "Hey %s,"
|
1555 |
-
msgstr "Hey %s,"
|
1556 |
-
|
1557 |
-
#: templates/connect.php:154
|
1558 |
-
msgid "Allow & Continue"
|
1559 |
-
msgstr "Tillad & Fortsæt"
|
1560 |
-
|
1561 |
-
#: templates/connect.php:158
|
1562 |
-
msgid "Re-send activation email"
|
1563 |
-
msgstr "Gensend e-mail om aktivering"
|
1564 |
-
|
1565 |
-
#: templates/connect.php:162
|
1566 |
-
msgid "Thanks %s!"
|
1567 |
-
msgstr "Tak %s!"
|
1568 |
-
|
1569 |
-
#: templates/connect.php172, templates/forms/license-activation.php:46
|
1570 |
-
msgid "Agree & Activate License"
|
1571 |
-
msgstr "Accepter & aktiver licens"
|
1572 |
-
|
1573 |
-
#: templates/connect.php:181
|
1574 |
-
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
1575 |
-
msgstr "Tak for at købe %s! For at komme i gang, venligst indtast din licensnøgle:"
|
1576 |
-
|
1577 |
-
#: templates/connect.php:188
|
1578 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s."
|
1579 |
-
msgstr "Gå aldrig glip af en vigtig opdatering - tilmeld dig vores sikkerheds- og funktionsopdateringsmeddelelser, uddannelsesindhold, tilbud og ikke-følsom diagnosesporing med %4$s. "
|
1580 |
-
|
1581 |
-
#: templates/connect.php:189
|
1582 |
-
msgid "Never miss an important update - opt in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
1583 |
-
msgstr "Gå aldrig glip af en vigtig opdatering - tilmeld dig vores sikkerheds- og funktionsopdateringsmeddelelser, uddannelsesindhold, tilbud og ikke-følsom diagnosesporing med %%4$s."
|
1584 |
-
|
1585 |
-
#: templates/connect.php:195
|
1586 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1587 |
-
msgstr "Gå aldrig glip af en vigtig opdatering - tilmeld dig vores sikkerheds- og funktionsopdateringsmeddelelser, uddannelsesindhold, tilbud og ikke-følsom diagnosesporing med %4$s. Hvis du springer dette over, er det okay! %1$s fungerer stadig fint."
|
1588 |
-
|
1589 |
-
#: templates/connect.php:196
|
1590 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1591 |
-
msgstr "Gå aldrig glip af en vigtig opdatering - tilmeld dig vores sikkerheds- og funktionsopdateringsmeddelelser, uddannelsesindhold, tilbud og ikke-følsom diagnosesporing med %4$s. Hvis du springer dette over, er det okay! %1$s fungerer stadig fint."
|
1592 |
-
|
1593 |
-
#: templates/connect.php:230
|
1594 |
-
msgid "We're excited to introduce the Freemius network-level integration."
|
1595 |
-
msgstr "We're excited to introduce the Freemius network-level integration."
|
1596 |
-
|
1597 |
-
#: templates/connect.php:233
|
1598 |
-
msgid "During the update process we detected %d site(s) that are still pending license activation."
|
1599 |
-
msgstr "During the update process we detected %d site(s) that are still pending license activation."
|
1600 |
-
|
1601 |
-
#: templates/connect.php:235
|
1602 |
-
msgid "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1603 |
-
msgstr "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1604 |
-
|
1605 |
-
#: templates/connect.php:237
|
1606 |
-
msgid "%s's paid features"
|
1607 |
-
msgstr "%s's betalte features"
|
1608 |
-
|
1609 |
-
#: templates/connect.php:242
|
1610 |
-
msgid "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1611 |
-
msgstr "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1612 |
-
|
1613 |
-
#: templates/connect.php:244
|
1614 |
-
msgid "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1615 |
-
msgstr "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1616 |
-
|
1617 |
-
#: templates/connect.php253, templates/forms/data-debug-mode.php35,
|
1618 |
-
#: templates/forms/license-activation.php:49
|
1619 |
-
msgid "License key"
|
1620 |
-
msgstr "Licensnøgle"
|
1621 |
-
|
1622 |
-
#: templates/connect.php256, templates/forms/license-activation.php:22
|
1623 |
-
msgid "Can't find your license key?"
|
1624 |
-
msgstr "Kan du ikke finde din licensnøgle?"
|
1625 |
-
|
1626 |
-
#: templates/connect.php315, templates/connect.php652,
|
1627 |
-
#: templates/forms/deactivation/retry-skip.php:20
|
1628 |
-
msgctxt "verb"
|
1629 |
-
msgid "Skip"
|
1630 |
-
msgstr "Spring over"
|
1631 |
-
|
1632 |
-
#: templates/connect.php:318
|
1633 |
-
msgid "Delegate to Site Admins"
|
1634 |
-
msgstr "Uddeleger til webstedsadministratorer"
|
1635 |
-
|
1636 |
-
#: templates/connect.php:318
|
1637 |
-
msgid "If you click it, this decision will be delegated to the sites administrators."
|
1638 |
-
msgstr "If you click it, this decision will be delegated to the sites administrators."
|
1639 |
-
|
1640 |
-
#: templates/connect.php:346
|
1641 |
-
msgid "Your Profile Overview"
|
1642 |
-
msgstr "Overblik af din profil"
|
1643 |
-
|
1644 |
-
#: templates/connect.php:347
|
1645 |
-
msgid "Name and email address"
|
1646 |
-
msgstr "Navn og e-mailadresse"
|
1647 |
-
|
1648 |
-
#: templates/connect.php:352
|
1649 |
-
msgid "Your Site Overview"
|
1650 |
-
msgstr "Overblik af dit websted"
|
1651 |
-
|
1652 |
-
#: templates/connect.php:353
|
1653 |
-
msgid "Site URL, WP version, PHP info, plugins & themes"
|
1654 |
-
msgstr "Websteds-URL, WP version, PHP info, plugins og temaer"
|
1655 |
-
|
1656 |
-
#: templates/connect.php:358
|
1657 |
-
msgid "Admin Notices"
|
1658 |
-
msgstr "Admin-meddelelser"
|
1659 |
-
|
1660 |
-
#: templates/connect.php359, templates/connect.php:375
|
1661 |
-
msgid "Updates, announcements, marketing, no spam"
|
1662 |
-
msgstr "Opdateringer, annonceringer, marketing, ingen spam"
|
1663 |
-
|
1664 |
-
#: templates/connect.php:364
|
1665 |
-
msgid "Current %s Events"
|
1666 |
-
msgstr "Current %s Events"
|
1667 |
-
|
1668 |
-
#: templates/connect.php:365
|
1669 |
-
msgid "Activation, deactivation and uninstall"
|
1670 |
-
msgstr "Aktivering, deaktivering og afinstallering"
|
1671 |
-
|
1672 |
-
#: templates/connect.php:374
|
1673 |
-
msgid "Newsletter"
|
1674 |
-
msgstr "Nyhedsbrev"
|
1675 |
-
|
1676 |
-
#: templates/connect.php391, templates/forms/license-activation.php:41
|
1677 |
-
msgid "The %1$s will be periodically sending data to %2$s to check for security and feature updates, and verify the validity of your license."
|
1678 |
-
msgstr "The %1$s will be periodically sending data to %2$s to check for security and feature updates, and verify the validity of your license."
|
1679 |
-
|
1680 |
-
#: templates/connect.php:396
|
1681 |
-
msgid "What permissions are being granted?"
|
1682 |
-
msgstr "Hvilke tilladelser bliver givet?"
|
1683 |
-
|
1684 |
-
#: templates/connect.php:417
|
1685 |
-
msgid "Don't have a license key?"
|
1686 |
-
msgstr "Har du ikke en licensnøgle?"
|
1687 |
-
|
1688 |
-
#: templates/connect.php:420
|
1689 |
-
msgid "Have a license key?"
|
1690 |
-
msgstr "Har du en licensnøgle?"
|
1691 |
-
|
1692 |
-
#: templates/connect.php:428
|
1693 |
-
msgid "Privacy Policy"
|
1694 |
-
msgstr "Privatlivspolitik"
|
1695 |
-
|
1696 |
-
#: templates/connect.php:430
|
1697 |
-
msgid "License Agreement"
|
1698 |
-
msgstr "Licensaftale"
|
1699 |
-
|
1700 |
-
#: templates/connect.php:430
|
1701 |
-
msgid "Terms of Service"
|
1702 |
-
msgstr "Servicevilkår"
|
1703 |
-
|
1704 |
-
#: templates/connect.php:805
|
1705 |
-
msgctxt "as in the process of sending an email"
|
1706 |
-
msgid "Sending email"
|
1707 |
-
msgstr "Sender e-mail"
|
1708 |
-
|
1709 |
-
#: templates/connect.php:806
|
1710 |
-
msgctxt "as activating plugin"
|
1711 |
-
msgid "Activating"
|
1712 |
-
msgstr "Aktiverer"
|
1713 |
-
|
1714 |
-
#: templates/contact.php:78
|
1715 |
-
msgid "Contact"
|
1716 |
-
msgstr "Kontakt"
|
1717 |
-
|
1718 |
-
#: templates/debug.php:17
|
1719 |
-
msgctxt "as turned off"
|
1720 |
-
msgid "Off"
|
1721 |
-
msgstr "Fra"
|
1722 |
-
|
1723 |
-
#: templates/debug.php:18
|
1724 |
-
msgctxt "as turned on"
|
1725 |
-
msgid "On"
|
1726 |
-
msgstr "Til"
|
1727 |
-
|
1728 |
-
#: templates/debug.php:20
|
1729 |
-
msgid "SDK"
|
1730 |
-
msgstr "SDK"
|
1731 |
-
|
1732 |
-
#: templates/debug.php:24
|
1733 |
-
msgctxt "as code debugging"
|
1734 |
-
msgid "Debugging"
|
1735 |
-
msgstr "Fejlfinding"
|
1736 |
-
|
1737 |
-
#: templates/debug.php54, templates/debug.php250, templates/debug.php376,
|
1738 |
-
#: templates/debug.php:512
|
1739 |
-
msgid "Actions"
|
1740 |
-
msgstr "Handlinger"
|
1741 |
-
|
1742 |
-
#: templates/debug.php:64
|
1743 |
-
msgid "Are you sure you want to delete all Freemius data?"
|
1744 |
-
msgstr "Er du sikker på, du vil slette al Freemius data?"
|
1745 |
-
|
1746 |
-
#: templates/debug.php:64
|
1747 |
-
msgid "Delete All Accounts"
|
1748 |
-
msgstr "Slet alle konti"
|
1749 |
-
|
1750 |
-
#: templates/debug.php:71
|
1751 |
-
msgid "Clear API Cache"
|
1752 |
-
msgstr "Ryd API-cache"
|
1753 |
-
|
1754 |
-
#: templates/debug.php:79
|
1755 |
-
msgid "Clear Updates Transients"
|
1756 |
-
msgstr "Clear Updates Transients"
|
1757 |
-
|
1758 |
-
#: templates/debug.php:86
|
1759 |
-
msgid "Sync Data From Server"
|
1760 |
-
msgstr "Synkroniser data fra server"
|
1761 |
-
|
1762 |
-
#: templates/debug.php:95
|
1763 |
-
msgid "Migrate Options to Network"
|
1764 |
-
msgstr "Migrate Options to Network"
|
1765 |
-
|
1766 |
-
#: templates/debug.php:100
|
1767 |
-
msgid "Load DB Option"
|
1768 |
-
msgstr "Hent DB-indstilling"
|
1769 |
-
|
1770 |
-
#: templates/debug.php:103
|
1771 |
-
msgid "Set DB Option"
|
1772 |
-
msgstr "Sæt DB-indstilling"
|
1773 |
-
|
1774 |
-
#: templates/debug.php:182
|
1775 |
-
msgid "Key"
|
1776 |
-
msgstr "Nøgle"
|
1777 |
-
|
1778 |
-
#: templates/debug.php:183
|
1779 |
-
msgid "Value"
|
1780 |
-
msgstr "Værdi"
|
1781 |
-
|
1782 |
-
#: templates/debug.php:199
|
1783 |
-
msgctxt "as software development kit versions"
|
1784 |
-
msgid "SDK Versions"
|
1785 |
-
msgstr "SDK-versioner"
|
1786 |
-
|
1787 |
-
#: templates/debug.php:204
|
1788 |
-
msgid "SDK Path"
|
1789 |
-
msgstr "SDK-sti"
|
1790 |
-
|
1791 |
-
#: templates/debug.php205, templates/debug.php:244
|
1792 |
-
msgid "Module Path"
|
1793 |
-
msgstr "Modul-sti"
|
1794 |
-
|
1795 |
-
#: templates/debug.php:206
|
1796 |
-
msgid "Is Active"
|
1797 |
-
msgstr "Er aktiv"
|
1798 |
-
|
1799 |
-
#: templates/debug.php234, templates/debug/plugins-themes-sync.php:35
|
1800 |
-
msgid "Plugins"
|
1801 |
-
msgstr "Plugins"
|
1802 |
-
|
1803 |
-
#: templates/debug.php234, templates/debug/plugins-themes-sync.php:56
|
1804 |
-
msgid "Themes"
|
1805 |
-
msgstr "Temaer"
|
1806 |
-
|
1807 |
-
#: templates/debug.php239, templates/debug.php370, templates/debug.php456,
|
1808 |
-
#: templates/debug/scheduled-crons.php:80
|
1809 |
-
msgid "Slug"
|
1810 |
-
msgstr "Kortnavn"
|
1811 |
-
|
1812 |
-
#: templates/debug.php241, templates/debug.php:455
|
1813 |
-
msgid "Title"
|
1814 |
-
msgstr "Titel"
|
1815 |
-
|
1816 |
-
#: templates/debug.php:242
|
1817 |
-
msgctxt "as application program interface"
|
1818 |
-
msgid "API"
|
1819 |
-
msgstr "API"
|
1820 |
-
|
1821 |
-
#: templates/debug.php:243
|
1822 |
-
msgid "Freemius State"
|
1823 |
-
msgstr "Freemius tilstand"
|
1824 |
-
|
1825 |
-
#: templates/debug.php:247
|
1826 |
-
msgid "Network Blog"
|
1827 |
-
msgstr "Netværksblog"
|
1828 |
-
|
1829 |
-
#: templates/debug.php:248
|
1830 |
-
msgid "Network User"
|
1831 |
-
msgstr "Netværksbruger"
|
1832 |
-
|
1833 |
-
#: templates/debug.php:285
|
1834 |
-
msgctxt "as connection was successful"
|
1835 |
-
msgid "Connected"
|
1836 |
-
msgstr "Forbundet"
|
1837 |
-
|
1838 |
-
#: templates/debug.php:286
|
1839 |
-
msgctxt "as connection blocked"
|
1840 |
-
msgid "Blocked"
|
1841 |
-
msgstr "Blokeret"
|
1842 |
-
|
1843 |
-
#: templates/debug.php:322
|
1844 |
-
msgid "Simulate Trial Promotion"
|
1845 |
-
msgstr "Simulate Trial Promotion"
|
1846 |
-
|
1847 |
-
#: templates/debug.php:334
|
1848 |
-
msgid "Simulate Network Upgrade"
|
1849 |
-
msgstr "Simuler netværksopgradering"
|
1850 |
-
|
1851 |
-
#: templates/debug.php:359
|
1852 |
-
msgid "%s Installs"
|
1853 |
-
msgstr "%s installeringer"
|
1854 |
-
|
1855 |
-
#: templates/debug.php:361
|
1856 |
-
msgctxt "like websites"
|
1857 |
-
msgid "Sites"
|
1858 |
-
msgstr "Websteder"
|
1859 |
-
|
1860 |
-
#: templates/debug.php367, templates/account/partials/site.php:156
|
1861 |
-
msgid "Blog ID"
|
1862 |
-
msgstr "Blog-ID"
|
1863 |
-
|
1864 |
-
#: templates/debug.php:372
|
1865 |
-
msgid "License ID"
|
1866 |
-
msgstr "License ID"
|
1867 |
-
|
1868 |
-
#: templates/debug.php436, templates/debug.php535,
|
1869 |
-
#: templates/account/partials/addon.php:435
|
1870 |
-
msgctxt "verb"
|
1871 |
-
msgid "Delete"
|
1872 |
-
msgstr "Slet"
|
1873 |
-
|
1874 |
-
#: templates/debug.php:450
|
1875 |
-
msgid "Add Ons of module %s"
|
1876 |
-
msgstr "Tilføjelser til modul %s"
|
1877 |
-
|
1878 |
-
#: templates/debug.php:502
|
1879 |
-
msgid "Users"
|
1880 |
-
msgstr "Brugere"
|
1881 |
-
|
1882 |
-
#: templates/debug.php:509
|
1883 |
-
msgid "Verified"
|
1884 |
-
msgstr "Verificeret"
|
1885 |
-
|
1886 |
-
#: templates/debug.php:551
|
1887 |
-
msgid "%s Licenses"
|
1888 |
-
msgstr "1%s licenser"
|
1889 |
-
|
1890 |
-
#: templates/debug.php:556
|
1891 |
-
msgid "Plugin ID"
|
1892 |
-
msgstr "Plugin-ID"
|
1893 |
-
|
1894 |
-
#: templates/debug.php:558
|
1895 |
-
msgid "Plan ID"
|
1896 |
-
msgstr "Plan-ID"
|
1897 |
-
|
1898 |
-
#: templates/debug.php:559
|
1899 |
-
msgid "Quota"
|
1900 |
-
msgstr "Kvote"
|
1901 |
-
|
1902 |
-
#: templates/debug.php:560
|
1903 |
-
msgid "Activated"
|
1904 |
-
msgstr "Aktiveret"
|
1905 |
-
|
1906 |
-
#: templates/debug.php:561
|
1907 |
-
msgid "Blocking"
|
1908 |
-
msgstr "Blokerer"
|
1909 |
-
|
1910 |
-
#: templates/debug.php:563
|
1911 |
-
msgctxt "as expiration date"
|
1912 |
-
msgid "Expiration"
|
1913 |
-
msgstr "Udløber"
|
1914 |
-
|
1915 |
-
#: templates/debug.php:590
|
1916 |
-
msgid "Debug Log"
|
1917 |
-
msgstr "Fejlfindingslog"
|
1918 |
-
|
1919 |
-
#: templates/debug.php:594
|
1920 |
-
msgid "All Types"
|
1921 |
-
msgstr "Alle typer"
|
1922 |
-
|
1923 |
-
#: templates/debug.php:601
|
1924 |
-
msgid "All Requests"
|
1925 |
-
msgstr "Alle forespørgsler"
|
1926 |
-
|
1927 |
-
#: templates/debug.php606, templates/debug.php635,
|
1928 |
-
#: templates/debug/logger.php:25
|
1929 |
-
msgid "File"
|
1930 |
-
msgstr "Fil"
|
1931 |
-
|
1932 |
-
#: templates/debug.php607, templates/debug.php633,
|
1933 |
-
#: templates/debug/logger.php:23
|
1934 |
-
msgid "Function"
|
1935 |
-
msgstr "Funktion"
|
1936 |
-
|
1937 |
-
#: templates/debug.php:608
|
1938 |
-
msgid "Process ID"
|
1939 |
-
msgstr "Proces-ID"
|
1940 |
-
|
1941 |
-
#: templates/debug.php:609
|
1942 |
-
msgid "Logger"
|
1943 |
-
msgstr "Logger"
|
1944 |
-
|
1945 |
-
#: templates/debug.php610, templates/debug.php634,
|
1946 |
-
#: templates/debug/logger.php:24
|
1947 |
-
msgid "Message"
|
1948 |
-
msgstr "Besked"
|
1949 |
-
|
1950 |
-
#: templates/debug.php:612
|
1951 |
-
msgid "Filter"
|
1952 |
-
msgstr "Filter"
|
1953 |
-
|
1954 |
-
#: templates/debug.php:620
|
1955 |
-
msgid "Download"
|
1956 |
-
msgstr "Download"
|
1957 |
-
|
1958 |
-
#: templates/debug.php631, templates/debug/logger.php:22
|
1959 |
-
msgid "Type"
|
1960 |
-
msgstr "Type"
|
1961 |
-
|
1962 |
-
#: templates/debug.php636, templates/debug/logger.php:26
|
1963 |
-
msgid "Timestamp"
|
1964 |
-
msgstr "Tidsstempel"
|
1965 |
-
|
1966 |
-
#: templates/secure-https-header.php:28
|
1967 |
-
msgid "Secure HTTPS %s page, running from an external domain"
|
1968 |
-
msgstr "Secure HTTPS %s page, running from an external domain"
|
1969 |
-
|
1970 |
-
#: includes/customizer/class-fs-customizer-support-section.php55,
|
1971 |
-
#: templates/plugin-info/features.php:43
|
1972 |
-
msgid "Support"
|
1973 |
-
msgstr "Support"
|
1974 |
-
|
1975 |
-
#: includes/debug/class-fs-debug-bar-panel.php48,
|
1976 |
-
#: templates/debug/api-calls.php54, templates/debug/logger.php:62
|
1977 |
-
msgctxt "milliseconds"
|
1978 |
-
msgid "ms"
|
1979 |
-
msgstr "ms"
|
1980 |
-
|
1981 |
-
#: includes/debug/debug-bar-start.php:41
|
1982 |
-
msgid "Freemius API"
|
1983 |
-
msgstr "Freemius API"
|
1984 |
-
|
1985 |
-
#: includes/debug/debug-bar-start.php:42
|
1986 |
-
msgid "Requests"
|
1987 |
-
msgstr "Forespørgsler"
|
1988 |
-
|
1989 |
-
#: templates/account/billing.php:22
|
1990 |
-
msgctxt "verb"
|
1991 |
-
msgid "Update"
|
1992 |
-
msgstr "Opdater"
|
1993 |
-
|
1994 |
-
#: templates/account/billing.php:33
|
1995 |
-
msgid "Billing"
|
1996 |
-
msgstr "Betaling"
|
1997 |
-
|
1998 |
-
#: templates/account/billing.php38, templates/account/billing.php:38
|
1999 |
-
msgid "Business name"
|
2000 |
-
msgstr "Firmanavn"
|
2001 |
-
|
2002 |
-
#: templates/account/billing.php39, templates/account/billing.php:39
|
2003 |
-
msgid "Tax / VAT ID"
|
2004 |
-
msgstr "Moms / VAT ID"
|
2005 |
-
|
2006 |
-
#: templates/account/billing.php42, templates/account/billing.php42,
|
2007 |
-
#: templates/account/billing.php43, templates/account/billing.php:43
|
2008 |
-
msgid "Address Line %d"
|
2009 |
-
msgstr "Adresselinje %d"
|
2010 |
-
|
2011 |
-
#: templates/account/billing.php46, templates/account/billing.php:46
|
2012 |
-
msgid "City"
|
2013 |
-
msgstr "By"
|
2014 |
-
|
2015 |
-
#: templates/account/billing.php46, templates/account/billing.php:46
|
2016 |
-
msgid "Town"
|
2017 |
-
msgstr "By"
|
2018 |
-
|
2019 |
-
#: templates/account/billing.php47, templates/account/billing.php:47
|
2020 |
-
msgid "ZIP / Postal Code"
|
2021 |
-
msgstr "ZIP / Postnummer"
|
2022 |
-
|
2023 |
-
#: templates/account/billing.php:302
|
2024 |
-
msgid "Country"
|
2025 |
-
msgstr "Land"
|
2026 |
-
|
2027 |
-
#: templates/account/billing.php:304
|
2028 |
-
msgid "Select Country"
|
2029 |
-
msgstr "Vælg land"
|
2030 |
-
|
2031 |
-
#: templates/account/billing.php311, templates/account/billing.php:312
|
2032 |
-
msgid "State"
|
2033 |
-
msgstr "Stat"
|
2034 |
-
|
2035 |
-
#: templates/account/billing.php311, templates/account/billing.php:312
|
2036 |
-
msgid "Province"
|
2037 |
-
msgstr "Provins"
|
2038 |
-
|
2039 |
-
#: templates/account/payments.php:29
|
2040 |
-
msgid "Payments"
|
2041 |
-
msgstr "Betalinger"
|
2042 |
-
|
2043 |
-
#: templates/account/payments.php:36
|
2044 |
-
msgid "Date"
|
2045 |
-
msgstr "Dato"
|
2046 |
-
|
2047 |
-
#: templates/account/payments.php:37
|
2048 |
-
msgid "Amount"
|
2049 |
-
msgstr "Beløb"
|
2050 |
-
|
2051 |
-
#: templates/account/payments.php38, templates/account/payments.php:50
|
2052 |
-
msgid "Invoice"
|
2053 |
-
msgstr "Faktura"
|
2054 |
-
|
2055 |
-
#: templates/debug/api-calls.php:56
|
2056 |
-
msgid "API"
|
2057 |
-
msgstr "API"
|
2058 |
-
|
2059 |
-
#: templates/debug/api-calls.php:68
|
2060 |
-
msgid "Method"
|
2061 |
-
msgstr "Metode"
|
2062 |
-
|
2063 |
-
#: templates/debug/api-calls.php:69
|
2064 |
-
msgid "Code"
|
2065 |
-
msgstr "Kode"
|
2066 |
-
|
2067 |
-
#: templates/debug/api-calls.php:70
|
2068 |
-
msgid "Length"
|
2069 |
-
msgstr "Længde"
|
2070 |
-
|
2071 |
-
#: templates/debug/api-calls.php:71
|
2072 |
-
msgctxt "as file/folder path"
|
2073 |
-
msgid "Path"
|
2074 |
-
msgstr "Sti"
|
2075 |
-
|
2076 |
-
#: templates/debug/api-calls.php:73
|
2077 |
-
msgid "Body"
|
2078 |
-
msgstr "Body"
|
2079 |
-
|
2080 |
-
#: templates/debug/api-calls.php:75
|
2081 |
-
msgid "Result"
|
2082 |
-
msgstr "Resultat"
|
2083 |
-
|
2084 |
-
#: templates/debug/api-calls.php:76
|
2085 |
-
msgid "Start"
|
2086 |
-
msgstr "Start"
|
2087 |
-
|
2088 |
-
#: templates/debug/api-calls.php:77
|
2089 |
-
msgid "End"
|
2090 |
-
msgstr "Slut"
|
2091 |
-
|
2092 |
-
#: templates/debug/logger.php:15
|
2093 |
-
msgid "Log"
|
2094 |
-
msgstr "Log"
|
2095 |
-
|
2096 |
-
#. translators: %s: time period (e.g. In "2 hours")
|
2097 |
-
#: templates/debug/plugins-themes-sync.php18,
|
2098 |
-
#: templates/debug/scheduled-crons.php:91
|
2099 |
-
msgid "In %s"
|
2100 |
-
msgstr "Om %s"
|
2101 |
-
|
2102 |
-
#. translators: %s: time period (e.g. "2 hours" ago)
|
2103 |
-
#: templates/debug/plugins-themes-sync.php20,
|
2104 |
-
#: templates/debug/scheduled-crons.php:93
|
2105 |
-
msgid "%s ago"
|
2106 |
-
msgstr "%s siden"
|
2107 |
-
|
2108 |
-
#: templates/debug/plugins-themes-sync.php21,
|
2109 |
-
#: templates/debug/scheduled-crons.php:74
|
2110 |
-
msgctxt "seconds"
|
2111 |
-
msgid "sec"
|
2112 |
-
msgstr "sek"
|
2113 |
-
|
2114 |
-
#: templates/debug/plugins-themes-sync.php:23
|
2115 |
-
msgid "Plugins & Themes Sync"
|
2116 |
-
msgstr "Synkronisering af plugins og temaer"
|
2117 |
-
|
2118 |
-
#: templates/debug/plugins-themes-sync.php:28
|
2119 |
-
msgid "Total"
|
2120 |
-
msgstr "Total"
|
2121 |
-
|
2122 |
-
#: templates/debug/plugins-themes-sync.php29,
|
2123 |
-
#: templates/debug/scheduled-crons.php:84
|
2124 |
-
msgid "Last"
|
2125 |
-
msgstr "Sidste"
|
2126 |
-
|
2127 |
-
#: templates/debug/scheduled-crons.php:76
|
2128 |
-
msgid "Scheduled Crons"
|
2129 |
-
msgstr "Planlagte cron jobs"
|
2130 |
-
|
2131 |
-
#: templates/debug/scheduled-crons.php:81
|
2132 |
-
msgid "Module"
|
2133 |
-
msgstr "Modul"
|
2134 |
-
|
2135 |
-
#: templates/debug/scheduled-crons.php:82
|
2136 |
-
msgid "Module Type"
|
2137 |
-
msgstr "Modultype"
|
2138 |
-
|
2139 |
-
#: templates/debug/scheduled-crons.php:83
|
2140 |
-
msgid "Cron Type"
|
2141 |
-
msgstr "Cron Type"
|
2142 |
-
|
2143 |
-
#: templates/debug/scheduled-crons.php:85
|
2144 |
-
msgid "Next"
|
2145 |
-
msgstr "Næste"
|
2146 |
-
|
2147 |
-
#: templates/forms/affiliation.php:82
|
2148 |
-
msgid "Non-expiring"
|
2149 |
-
msgstr "Udløber ikke"
|
2150 |
-
|
2151 |
-
#: templates/forms/affiliation.php:85
|
2152 |
-
msgid "Apply to become an affiliate"
|
2153 |
-
msgstr "Ansøg om at blive en affiliate"
|
2154 |
-
|
2155 |
-
#: templates/forms/affiliation.php:104
|
2156 |
-
msgid "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2157 |
-
msgstr "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2158 |
-
|
2159 |
-
#: templates/forms/affiliation.php:119
|
2160 |
-
msgid "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2161 |
-
msgstr "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2162 |
-
|
2163 |
-
#: templates/forms/affiliation.php:122
|
2164 |
-
msgid "Your affiliation account was temporarily suspended."
|
2165 |
-
msgstr "Your affiliation account was temporarily suspended."
|
2166 |
-
|
2167 |
-
#: templates/forms/affiliation.php:125
|
2168 |
-
msgid "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2169 |
-
msgstr "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2170 |
-
|
2171 |
-
#: templates/forms/affiliation.php:128
|
2172 |
-
msgid "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2173 |
-
msgstr "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2174 |
-
|
2175 |
-
#: templates/forms/affiliation.php:141
|
2176 |
-
msgid "Like the %s? Become our ambassador and earn cash ;-)"
|
2177 |
-
msgstr "Like the %s? Become our ambassador and earn cash ;-)"
|
2178 |
-
|
2179 |
-
#: templates/forms/affiliation.php:142
|
2180 |
-
msgid "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2181 |
-
msgstr "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2182 |
-
|
2183 |
-
#: templates/forms/affiliation.php:145
|
2184 |
-
msgid "Program Summary"
|
2185 |
-
msgstr "Programoversigt"
|
2186 |
-
|
2187 |
-
#: templates/forms/affiliation.php:147
|
2188 |
-
msgid "%s commission when a customer purchases a new license."
|
2189 |
-
msgstr "%s commission when a customer purchases a new license."
|
2190 |
-
|
2191 |
-
#: templates/forms/affiliation.php:149
|
2192 |
-
msgid "Get commission for automated subscription renewals."
|
2193 |
-
msgstr "Get commission for automated subscription renewals."
|
2194 |
-
|
2195 |
-
#: templates/forms/affiliation.php:152
|
2196 |
-
msgid "%s tracking cookie after the first visit to maximize earnings potential."
|
2197 |
-
msgstr "%s tracking cookie after the first visit to maximize earnings potential."
|
2198 |
-
|
2199 |
-
#: templates/forms/affiliation.php:155
|
2200 |
-
msgid "Unlimited commissions."
|
2201 |
-
msgstr "Ubegrænset provision."
|
2202 |
-
|
2203 |
-
#: templates/forms/affiliation.php:157
|
2204 |
-
msgid "%s minimum payout amount."
|
2205 |
-
msgstr "%s minimum payout amount."
|
2206 |
-
|
2207 |
-
#: templates/forms/affiliation.php:158
|
2208 |
-
msgid "Payouts are in USD and processed monthly via PayPal."
|
2209 |
-
msgstr "Udbetalinger er i USD og behandles hver måned via PayPal."
|
2210 |
-
|
2211 |
-
#: templates/forms/affiliation.php:159
|
2212 |
-
msgid "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2213 |
-
msgstr "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2214 |
-
|
2215 |
-
#: templates/forms/affiliation.php:162
|
2216 |
-
msgid "Affiliate"
|
2217 |
-
msgstr "Affiliate"
|
2218 |
-
|
2219 |
-
#: templates/forms/affiliation.php165, templates/forms/resend-key.php:23
|
2220 |
-
msgid "Email address"
|
2221 |
-
msgstr "E-mailadresse"
|
2222 |
-
|
2223 |
-
#: templates/forms/affiliation.php:169
|
2224 |
-
msgid "Full name"
|
2225 |
-
msgstr "Fulde navn"
|
2226 |
-
|
2227 |
-
#: templates/forms/affiliation.php:173
|
2228 |
-
msgid "PayPal account email address"
|
2229 |
-
msgstr "E-mailadresse til PayPal-konto"
|
2230 |
-
|
2231 |
-
#: templates/forms/affiliation.php:177
|
2232 |
-
msgid "Where are you going to promote the %s?"
|
2233 |
-
msgstr "Hvor vil du promovere %s?"
|
2234 |
-
|
2235 |
-
#: templates/forms/affiliation.php:179
|
2236 |
-
msgid "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2237 |
-
msgstr "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2238 |
-
|
2239 |
-
#: templates/forms/affiliation.php:181
|
2240 |
-
msgid "Add another domain"
|
2241 |
-
msgstr "Tilføj andet domæne"
|
2242 |
-
|
2243 |
-
#: templates/forms/affiliation.php:185
|
2244 |
-
msgid "Extra Domains"
|
2245 |
-
msgstr "Ekstra domæner"
|
2246 |
-
|
2247 |
-
#: templates/forms/affiliation.php:186
|
2248 |
-
msgid "Extra domains where you will be marketing the product from."
|
2249 |
-
msgstr "Andre domæner du vil markedsføre produktet fra."
|
2250 |
-
|
2251 |
-
#: templates/forms/affiliation.php:196
|
2252 |
-
msgid "Promotion methods"
|
2253 |
-
msgstr "Promoveringsmetoder"
|
2254 |
-
|
2255 |
-
#: templates/forms/affiliation.php:199
|
2256 |
-
msgid "Social media (Facebook, Twitter, etc.)"
|
2257 |
-
msgstr "Sociale medier (Facebook, Twitter osv.)"
|
2258 |
-
|
2259 |
-
#: templates/forms/affiliation.php:203
|
2260 |
-
msgid "Mobile apps"
|
2261 |
-
msgstr "Mobil-apps"
|
2262 |
-
|
2263 |
-
#: templates/forms/affiliation.php:207
|
2264 |
-
msgid "Website, email, and social media statistics (optional)"
|
2265 |
-
msgstr "Websted, e-mail, og statistikker for sociale medier (valgfrit)"
|
2266 |
-
|
2267 |
-
#: templates/forms/affiliation.php:210
|
2268 |
-
msgid "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2269 |
-
msgstr "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2270 |
-
|
2271 |
-
#: templates/forms/affiliation.php:214
|
2272 |
-
msgid "How will you promote us?"
|
2273 |
-
msgstr "Hvordan vil du promovere os?"
|
2274 |
-
|
2275 |
-
#: templates/forms/affiliation.php:217
|
2276 |
-
msgid "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2277 |
-
msgstr "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2278 |
-
|
2279 |
-
#: templates/forms/affiliation.php223, templates/forms/resend-key.php:22
|
2280 |
-
msgid "Cancel"
|
2281 |
-
msgstr "Annuller"
|
2282 |
-
|
2283 |
-
#: templates/forms/affiliation.php:225
|
2284 |
-
msgid "Become an affiliate"
|
2285 |
-
msgstr "Bliv en affiliate"
|
2286 |
-
|
2287 |
-
#: templates/forms/data-debug-mode.php:25
|
2288 |
-
msgid "Please enter the license key to enable the debug mode:"
|
2289 |
-
msgstr "Please enter the license key to enable the debug mode:"
|
2290 |
-
|
2291 |
-
#: templates/forms/data-debug-mode.php:27
|
2292 |
-
msgid "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2293 |
-
msgstr "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2294 |
-
|
2295 |
-
#: templates/forms/data-debug-mode.php:32
|
2296 |
-
msgid "Submit"
|
2297 |
-
msgstr "Submit"
|
2298 |
-
|
2299 |
-
#: templates/forms/data-debug-mode.php:36
|
2300 |
-
msgid "User key"
|
2301 |
-
msgstr "User key"
|
2302 |
-
|
2303 |
-
#: templates/forms/license-activation.php:23
|
2304 |
-
msgid "Please enter the license key that you received in the email right after the purchase:"
|
2305 |
-
msgstr "Indtast licensnøglen, du modtog i e-mailen lige efter købet:"
|
2306 |
-
|
2307 |
-
#: templates/forms/license-activation.php:28
|
2308 |
-
msgid "Update License"
|
2309 |
-
msgstr "Opdater licens"
|
2310 |
-
|
2311 |
-
#: templates/forms/optout.php:30
|
2312 |
-
msgctxt "verb"
|
2313 |
-
msgid "Opt Out"
|
2314 |
-
msgstr "Frameld"
|
2315 |
-
|
2316 |
-
#: templates/forms/optout.php:31
|
2317 |
-
msgctxt "verb"
|
2318 |
-
msgid "Opt In"
|
2319 |
-
msgstr "Tilmeld"
|
2320 |
-
|
2321 |
-
#: templates/forms/optout.php:33
|
2322 |
-
msgid "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2323 |
-
msgstr "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2324 |
-
|
2325 |
-
#: templates/forms/optout.php:35
|
2326 |
-
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
2327 |
-
msgstr "Ved at klikke \"Frameld\" vil vi ikke længere sende data fra %s til %s."
|
2328 |
-
|
2329 |
-
#: templates/forms/premium-versions-upgrade-handler.php:40
|
2330 |
-
msgid "There is a new version of %s available."
|
2331 |
-
msgstr "En ny version af %s er tilgængelig."
|
2332 |
-
|
2333 |
-
#: templates/forms/premium-versions-upgrade-handler.php:41
|
2334 |
-
msgid " %s to access version %s security & feature updates, and support."
|
2335 |
-
msgstr " %s to access version %s security & feature updates, and support."
|
2336 |
-
|
2337 |
-
#: templates/forms/premium-versions-upgrade-handler.php:54
|
2338 |
-
msgid "New Version Available"
|
2339 |
-
msgstr "Ny version tilgængelig"
|
2340 |
-
|
2341 |
-
#: templates/forms/premium-versions-upgrade-handler.php:75
|
2342 |
-
msgctxt "close a window"
|
2343 |
-
msgid "Dismiss"
|
2344 |
-
msgstr "Fjern"
|
2345 |
-
|
2346 |
-
#: templates/forms/resend-key.php:21
|
2347 |
-
msgid "Send License Key"
|
2348 |
-
msgstr "Send licensnøgle"
|
2349 |
-
|
2350 |
-
#: templates/forms/resend-key.php:57
|
2351 |
-
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
2352 |
-
msgstr "Indtast e-mailadressen, som du benyttede ved opgraderingen, nedenfor og vi vil gensende licensnøglen til dig."
|
2353 |
-
|
2354 |
-
#: templates/forms/subscription-cancellation.php:37
|
2355 |
-
msgid "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2356 |
-
msgstr "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2357 |
-
|
2358 |
-
#: templates/forms/subscription-cancellation.php:47
|
2359 |
-
msgid "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2360 |
-
msgstr "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2361 |
-
|
2362 |
-
#: templates/forms/subscription-cancellation.php:52
|
2363 |
-
msgid "license"
|
2364 |
-
msgstr "licens"
|
2365 |
-
|
2366 |
-
#: templates/forms/subscription-cancellation.php:57
|
2367 |
-
msgid "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2368 |
-
msgstr "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2369 |
-
|
2370 |
-
#: templates/forms/subscription-cancellation.php:68
|
2371 |
-
msgid "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2372 |
-
msgstr "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2373 |
-
|
2374 |
-
#: templates/forms/subscription-cancellation.php:103
|
2375 |
-
msgid "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2376 |
-
msgstr "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2377 |
-
|
2378 |
-
#: templates/forms/subscription-cancellation.php:136
|
2379 |
-
msgid "Cancel %s?"
|
2380 |
-
msgstr "Annuller %s?"
|
2381 |
-
|
2382 |
-
#: templates/forms/subscription-cancellation.php:143
|
2383 |
-
msgid "Proceed"
|
2384 |
-
msgstr "Fortsæt"
|
2385 |
-
|
2386 |
-
#: templates/forms/subscription-cancellation.php191,
|
2387 |
-
#: templates/forms/deactivation/form.php:171
|
2388 |
-
msgid "Cancel %s & Proceed"
|
2389 |
-
msgstr "Annuller %s og fortsæt"
|
2390 |
-
|
2391 |
-
#: templates/forms/trial-start.php:22
|
2392 |
-
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
2393 |
-
msgstr "Du er 1 klik fra at begynde din %1$s dages gratis prøveperiode af planen %2$s."
|
2394 |
-
|
2395 |
-
#: templates/forms/trial-start.php:28
|
2396 |
-
msgid "For compliance with the WordPress.org guidelines, before we start the trial we ask that you opt in with your user and non-sensitive site information, allowing the %s to periodically send data to %s to check for version updates and to validate your trial."
|
2397 |
-
msgstr "For compliance with the WordPress.org guidelines, before we start the trial we ask that you opt in with your user and non-sensitive site information, allowing the %s to periodically send data to %s to check for version updates and to validate your trial."
|
2398 |
-
|
2399 |
-
#: templates/js/style-premium-theme.php:39
|
2400 |
-
msgid "Premium"
|
2401 |
-
msgstr "Premium"
|
2402 |
-
|
2403 |
-
#: templates/js/style-premium-theme.php:42
|
2404 |
-
msgid "Beta"
|
2405 |
-
msgstr "Beta"
|
2406 |
-
|
2407 |
-
#: templates/partials/network-activation.php:27
|
2408 |
-
msgid "Activate license on all sites in the network."
|
2409 |
-
msgstr "Aktiver licens på alle websteder i netværket."
|
2410 |
-
|
2411 |
-
#: templates/partials/network-activation.php:28
|
2412 |
-
msgid "Apply on all sites in the network."
|
2413 |
-
msgstr "Anvend på alle websteder i netværket."
|
2414 |
-
|
2415 |
-
#: templates/partials/network-activation.php:31
|
2416 |
-
msgid "Activate license on all pending sites."
|
2417 |
-
msgstr "Akiver licens på alle afventende websteder."
|
2418 |
-
|
2419 |
-
#: templates/partials/network-activation.php:32
|
2420 |
-
msgid "Apply on all pending sites."
|
2421 |
-
msgstr "Anvend på alle afventende websteder."
|
2422 |
-
|
2423 |
-
#: templates/partials/network-activation.php40,
|
2424 |
-
#: templates/partials/network-activation.php:74
|
2425 |
-
msgid "allow"
|
2426 |
-
msgstr "tillad"
|
2427 |
-
|
2428 |
-
#: templates/partials/network-activation.php43,
|
2429 |
-
#: templates/partials/network-activation.php:77
|
2430 |
-
msgid "delegate"
|
2431 |
-
msgstr "delegér"
|
2432 |
-
|
2433 |
-
#: templates/partials/network-activation.php47,
|
2434 |
-
#: templates/partials/network-activation.php:81
|
2435 |
-
msgid "skip"
|
2436 |
-
msgstr "spring over"
|
2437 |
-
|
2438 |
-
#: templates/plugin-info/description.php72,
|
2439 |
-
#: templates/plugin-info/screenshots.php:31
|
2440 |
-
msgid "Click to view full-size screenshot %d"
|
2441 |
-
msgstr "Klik for at vise skærmbillede %d i fuld skærm"
|
2442 |
-
|
2443 |
-
#: templates/plugin-info/features.php:56
|
2444 |
-
msgid "Unlimited Updates"
|
2445 |
-
msgstr "Ubegrænsede opdateringer"
|
2446 |
-
|
2447 |
-
#: templates/account/partials/activate-license-button.php:46
|
2448 |
-
msgid "Localhost"
|
2449 |
-
msgstr "Localhost"
|
2450 |
-
|
2451 |
-
#: templates/account/partials/activate-license-button.php:50
|
2452 |
-
msgctxt "as 5 licenses left"
|
2453 |
-
msgid "%s left"
|
2454 |
-
msgstr "%s tilbage"
|
2455 |
-
|
2456 |
-
#: templates/account/partials/activate-license-button.php:51
|
2457 |
-
msgid "Last license"
|
2458 |
-
msgstr "Seneste license"
|
2459 |
-
|
2460 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the
|
2461 |
-
#. subscription'
|
2462 |
-
#: templates/account/partials/addon.php:29
|
2463 |
-
msgid "%1$s will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
2464 |
-
msgstr "%1$s will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
2465 |
-
|
2466 |
-
#: templates/account/partials/addon.php:185
|
2467 |
-
msgid "Cancelled"
|
2468 |
-
msgstr "Annulleret"
|
2469 |
-
|
2470 |
-
#: templates/account/partials/addon.php:195
|
2471 |
-
msgid "No expiration"
|
2472 |
-
msgstr "Udløber ikke"
|
2473 |
-
|
2474 |
-
#: templates/account/partials/site.php:189
|
2475 |
-
msgid "Owner Name"
|
2476 |
-
msgstr "Ejer-navn"
|
2477 |
-
|
2478 |
-
#: templates/account/partials/site.php:201
|
2479 |
-
msgid "Owner Email"
|
2480 |
-
msgstr "E-mailadresse for ejer"
|
2481 |
-
|
2482 |
-
#: templates/account/partials/site.php:213
|
2483 |
-
msgid "Owner ID"
|
2484 |
-
msgstr "Ejer-ID"
|
2485 |
-
|
2486 |
-
#: templates/account/partials/site.php:286
|
2487 |
-
msgid "Subscription"
|
2488 |
-
msgstr "Abonnement"
|
2489 |
-
|
2490 |
-
#: templates/forms/deactivation/contact.php:19
|
2491 |
-
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
2492 |
-
msgstr "Vi beklager ulejligheden, og vi er her for at hjælpe, hvis du giver os chancen."
|
2493 |
-
|
2494 |
-
#: templates/forms/deactivation/contact.php:22
|
2495 |
-
msgid "Contact Support"
|
2496 |
-
msgstr "Kontakt support"
|
2497 |
-
|
2498 |
-
#: templates/forms/deactivation/form.php:64
|
2499 |
-
msgid "Anonymous feedback"
|
2500 |
-
msgstr "Anonym feedback"
|
2501 |
-
|
2502 |
-
#: templates/forms/deactivation/form.php:70
|
2503 |
-
msgid "Deactivate"
|
2504 |
-
msgstr "Deaktiver"
|
2505 |
-
|
2506 |
-
#: templates/forms/deactivation/form.php:72
|
2507 |
-
msgid "Activate %s"
|
2508 |
-
msgstr "Aktiver %s"
|
2509 |
-
|
2510 |
-
#: templates/forms/deactivation/form.php:87
|
2511 |
-
msgid "Quick Feedback"
|
2512 |
-
msgstr "Hurtig feedback"
|
2513 |
-
|
2514 |
-
#: templates/forms/deactivation/form.php:91
|
2515 |
-
msgid "If you have a moment, please let us know why you are %s"
|
2516 |
-
msgstr "Hvis du har tid, så lad os venligst vide hvorfor du %s"
|
2517 |
-
|
2518 |
-
#: templates/forms/deactivation/form.php:91
|
2519 |
-
msgid "deactivating"
|
2520 |
-
msgstr "deaktiverer"
|
2521 |
-
|
2522 |
-
#: templates/forms/deactivation/form.php:91
|
2523 |
-
msgid "switching"
|
2524 |
-
msgstr "skifter"
|
2525 |
-
|
2526 |
-
#: templates/forms/deactivation/form.php:365
|
2527 |
-
msgid "Submit & %s"
|
2528 |
-
msgstr "Send & %s"
|
2529 |
-
|
2530 |
-
#: templates/forms/deactivation/form.php:386
|
2531 |
-
msgid "Kindly tell us the reason so we can improve."
|
2532 |
-
msgstr "Fortæl os venligst årsagen, så vi kan forbedre det."
|
2533 |
-
|
2534 |
-
#: templates/forms/deactivation/form.php:511
|
2535 |
-
msgid "Yes - %s"
|
2536 |
-
msgstr "Ja - %s"
|
2537 |
-
|
2538 |
-
#: templates/forms/deactivation/form.php:518
|
2539 |
-
msgid "Skip & %s"
|
2540 |
-
msgstr "Spring over & %s"
|
2541 |
-
|
2542 |
-
#: templates/forms/deactivation/retry-skip.php:21
|
2543 |
-
msgid "Click here to use the plugin anonymously"
|
2544 |
-
msgstr "Klik her for at benytte pluginnet anonymt"
|
2545 |
-
|
2546 |
-
#: templates/forms/deactivation/retry-skip.php:23
|
2547 |
-
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
2548 |
-
msgstr "Du har måske overset det, men du behøver ikke at dele data og kan blot %s tilmeldingen."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
freemius/languages/freemius-en.mo
CHANGED
Binary file
|
freemius/languages/freemius-en.po
DELETED
@@ -1,2422 +0,0 @@
|
|
1 |
-
# Copyright (C) 2019 freemius
|
2 |
-
# This file is distributed under the same license as the freemius package.
|
3 |
-
msgid ""
|
4 |
-
msgstr ""
|
5 |
-
"Project-Id-Version: freemius\n"
|
6 |
-
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
7 |
-
"POT-Creation-Date: \n"
|
8 |
-
"PO-Revision-Date: \n"
|
9 |
-
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
10 |
-
"Language: \n"
|
11 |
-
"Language-Team: Freemius Team <admin@freemius.com>\n"
|
12 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
13 |
-
"Content-Transfer-Encoding: 8bit\n"
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"MIME-Version: 1.0\n"
|
16 |
-
"X-Poedit-Basepath: ..\n"
|
17 |
-
"X-Poedit-KeywordsList: get_text_inline;fs_text_inline;fs_echo_inline;fs_esc_js_inline;fs_esc_attr_inline;fs_esc_attr_echo_inline;fs_esc_html_inline;fs_esc_html_echo_inline;get_text_x_inline:1,2c;fs_text_x_inline:1,2c;fs_echo_x_inline:1,2c;fs_esc_attr_x_inline:1,2c;fs_esc_js_x_inline:1,2c;fs_esc_js_echo_x_inline:1,2c;fs_esc_html_x_inline:1,2c;fs_esc_html_echo_x_inline:1,2c\n"
|
18 |
-
"X-Poedit-SearchPath-0: .\n"
|
19 |
-
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
20 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
21 |
-
|
22 |
-
#: includes/class-freemius.php:1880, templates/account.php:840
|
23 |
-
msgid "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
24 |
-
msgstr "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
25 |
-
|
26 |
-
#: includes/class-freemius.php:1887
|
27 |
-
msgid "Would you like to proceed with the update?"
|
28 |
-
msgstr "Would you like to proceed with the update?"
|
29 |
-
|
30 |
-
#: includes/class-freemius.php:2095
|
31 |
-
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
32 |
-
msgstr "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
33 |
-
|
34 |
-
#: includes/class-freemius.php:2097
|
35 |
-
msgid "Error"
|
36 |
-
msgstr "Error"
|
37 |
-
|
38 |
-
#: includes/class-freemius.php:2491
|
39 |
-
msgid "I found a better %s"
|
40 |
-
msgstr "I found a better %s"
|
41 |
-
|
42 |
-
#: includes/class-freemius.php:2493
|
43 |
-
msgid "What's the %s's name?"
|
44 |
-
msgstr "What's the %s's name?"
|
45 |
-
|
46 |
-
#: includes/class-freemius.php:2499
|
47 |
-
msgid "It's a temporary %s. I'm just debugging an issue."
|
48 |
-
msgstr "It's a temporary %s. I'm just debugging an issue."
|
49 |
-
|
50 |
-
#: includes/class-freemius.php:2501
|
51 |
-
msgid "Deactivation"
|
52 |
-
msgstr "Deactivation"
|
53 |
-
|
54 |
-
#: includes/class-freemius.php:2502
|
55 |
-
msgid "Theme Switch"
|
56 |
-
msgstr "Theme Switch"
|
57 |
-
|
58 |
-
#: includes/class-freemius.php:2511, templates/forms/resend-key.php:24
|
59 |
-
msgid "Other"
|
60 |
-
msgstr "Other"
|
61 |
-
|
62 |
-
#: includes/class-freemius.php:2519
|
63 |
-
msgid "I no longer need the %s"
|
64 |
-
msgstr "I no longer need the %s"
|
65 |
-
|
66 |
-
#: includes/class-freemius.php:2526
|
67 |
-
msgid "I only needed the %s for a short period"
|
68 |
-
msgstr "I only needed the %s for a short period"
|
69 |
-
|
70 |
-
#: includes/class-freemius.php:2532
|
71 |
-
msgid "The %s broke my site"
|
72 |
-
msgstr "The %s broke my site"
|
73 |
-
|
74 |
-
#: includes/class-freemius.php:2539
|
75 |
-
msgid "The %s suddenly stopped working"
|
76 |
-
msgstr "The %s suddenly stopped working"
|
77 |
-
|
78 |
-
#: includes/class-freemius.php:2549
|
79 |
-
msgid "I can't pay for it anymore"
|
80 |
-
msgstr "I can't pay for it anymore"
|
81 |
-
|
82 |
-
#: includes/class-freemius.php:2551
|
83 |
-
msgid "What price would you feel comfortable paying?"
|
84 |
-
msgstr "What price would you feel comfortable paying?"
|
85 |
-
|
86 |
-
#: includes/class-freemius.php:2557
|
87 |
-
msgid "I don't like to share my information with you"
|
88 |
-
msgstr "I don't like to share my information with you"
|
89 |
-
|
90 |
-
#: includes/class-freemius.php:2578
|
91 |
-
msgid "The %s didn't work"
|
92 |
-
msgstr "The %s didn't work"
|
93 |
-
|
94 |
-
#: includes/class-freemius.php:2588
|
95 |
-
msgid "I couldn't understand how to make it work"
|
96 |
-
msgstr "I couldn't understand how to make it work"
|
97 |
-
|
98 |
-
#: includes/class-freemius.php:2596
|
99 |
-
msgid "The %s is great, but I need specific feature that you don't support"
|
100 |
-
msgstr "The %s is great, but I need specific feature that you don't support"
|
101 |
-
|
102 |
-
#: includes/class-freemius.php:2598
|
103 |
-
msgid "What feature?"
|
104 |
-
msgstr "What feature?"
|
105 |
-
|
106 |
-
#: includes/class-freemius.php:2602
|
107 |
-
msgid "The %s is not working"
|
108 |
-
msgstr "The %s is not working"
|
109 |
-
|
110 |
-
#: includes/class-freemius.php:2604
|
111 |
-
msgid "Kindly share what didn't work so we can fix it for future users..."
|
112 |
-
msgstr "Kindly share what didn't work so we can fix it for future users..."
|
113 |
-
|
114 |
-
#: includes/class-freemius.php:2608
|
115 |
-
msgid "It's not what I was looking for"
|
116 |
-
msgstr "It's not what I was looking for"
|
117 |
-
|
118 |
-
#: includes/class-freemius.php:2610
|
119 |
-
msgid "What you've been looking for?"
|
120 |
-
msgstr "What you've been looking for?"
|
121 |
-
|
122 |
-
#: includes/class-freemius.php:2614
|
123 |
-
msgid "The %s didn't work as expected"
|
124 |
-
msgstr "The %s didn't work as expected"
|
125 |
-
|
126 |
-
#: includes/class-freemius.php:2616
|
127 |
-
msgid "What did you expect?"
|
128 |
-
msgstr "What did you expect?"
|
129 |
-
|
130 |
-
#: includes/class-freemius.php:3471, templates/debug.php:20
|
131 |
-
msgid "Freemius Debug"
|
132 |
-
msgstr "Freemius Debug"
|
133 |
-
|
134 |
-
#: includes/class-freemius.php:4223
|
135 |
-
msgid "I don't know what is cURL or how to install it, help me!"
|
136 |
-
msgstr "I don't know what is cURL or how to install it, help me!"
|
137 |
-
|
138 |
-
#: includes/class-freemius.php:4225
|
139 |
-
msgid "We'll make sure to contact your hosting company and resolve the issue. You will get a follow-up email to %s once we have an update."
|
140 |
-
msgstr "We'll make sure to contact your hosting company and resolve the issue. You will get a follow-up email to %s once we have an update."
|
141 |
-
|
142 |
-
#: includes/class-freemius.php:4232
|
143 |
-
msgid "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
144 |
-
msgstr "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
145 |
-
|
146 |
-
#: includes/class-freemius.php:4337
|
147 |
-
msgid "Yes - do your thing"
|
148 |
-
msgstr "Yes - do your thing"
|
149 |
-
|
150 |
-
#: includes/class-freemius.php:4342
|
151 |
-
msgid "No - just deactivate"
|
152 |
-
msgstr "No - just deactivate"
|
153 |
-
|
154 |
-
#: includes/class-freemius.php:4387, includes/class-freemius.php:4881, includes/class-freemius.php:6032, includes/class-freemius.php:13153, includes/class-freemius.php:16558, includes/class-freemius.php:16646, includes/class-freemius.php:16812, includes/class-freemius.php:19040, includes/class-freemius.php:19381, includes/class-freemius.php:19391, includes/class-freemius.php:20051, includes/class-freemius.php:20924, includes/class-freemius.php:21039, includes/class-freemius.php:21183, templates/add-ons.php:57
|
155 |
-
msgctxt "exclamation"
|
156 |
-
msgid "Oops"
|
157 |
-
msgstr "Oops"
|
158 |
-
|
159 |
-
#: includes/class-freemius.php:4456
|
160 |
-
msgid "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
161 |
-
msgstr "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
162 |
-
|
163 |
-
#: includes/class-freemius.php:4878
|
164 |
-
msgctxt "addonX cannot run without pluginY"
|
165 |
-
msgid "%s cannot run without %s."
|
166 |
-
msgstr "%s cannot run without %s."
|
167 |
-
|
168 |
-
#: includes/class-freemius.php:4879
|
169 |
-
msgctxt "addonX cannot run..."
|
170 |
-
msgid "%s cannot run without the plugin."
|
171 |
-
msgstr "%s cannot run without the plugin."
|
172 |
-
|
173 |
-
#: includes/class-freemius.php:5052, includes/class-freemius.php:5077, includes/class-freemius.php:20122
|
174 |
-
msgid "Unexpected API error. Please contact the %s's author with the following error."
|
175 |
-
msgstr "Unexpected API error. Please contact the %s's author with the following error."
|
176 |
-
|
177 |
-
#: includes/class-freemius.php:5720
|
178 |
-
msgid "Premium %s version was successfully activated."
|
179 |
-
msgstr "Premium %s version was successfully activated."
|
180 |
-
|
181 |
-
#: includes/class-freemius.php:5732, includes/class-freemius.php:7599
|
182 |
-
msgctxt "Used to express elation, enthusiasm, or triumph (especially in electronic communication)."
|
183 |
-
msgid "W00t"
|
184 |
-
msgstr "W00t"
|
185 |
-
|
186 |
-
#: includes/class-freemius.php:5747
|
187 |
-
msgid "You have a %s license."
|
188 |
-
msgstr "You have a %s license."
|
189 |
-
|
190 |
-
#: includes/class-freemius.php:5751, includes/class-freemius.php:15975, includes/class-freemius.php:15986, includes/class-freemius.php:19292, includes/class-freemius.php:19642, includes/class-freemius.php:19711, includes/class-freemius.php:19876
|
191 |
-
msgctxt "interjection expressing joy or exuberance"
|
192 |
-
msgid "Yee-haw"
|
193 |
-
msgstr "Yee-haw"
|
194 |
-
|
195 |
-
#: includes/class-freemius.php:6015
|
196 |
-
msgid "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
197 |
-
msgstr "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
198 |
-
|
199 |
-
#: includes/class-freemius.php:6019
|
200 |
-
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
201 |
-
msgstr "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
202 |
-
|
203 |
-
#: includes/class-freemius.php:6028, templates/add-ons.php:186, templates/account/partials/addon.php:381
|
204 |
-
msgid "More information about %s"
|
205 |
-
msgstr "More information about %s"
|
206 |
-
|
207 |
-
#: includes/class-freemius.php:6029
|
208 |
-
msgid "Purchase License"
|
209 |
-
msgstr "Purchase License"
|
210 |
-
|
211 |
-
#: includes/class-freemius.php:6964, templates/connect.php:163
|
212 |
-
msgid "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
213 |
-
msgstr "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
214 |
-
|
215 |
-
#: includes/class-freemius.php:6968
|
216 |
-
msgid "start the trial"
|
217 |
-
msgstr "start the trial"
|
218 |
-
|
219 |
-
#: includes/class-freemius.php:6969, templates/connect.php:167
|
220 |
-
msgid "complete the install"
|
221 |
-
msgstr "complete the install"
|
222 |
-
|
223 |
-
#: includes/class-freemius.php:7081
|
224 |
-
msgid "You are just one step away - %s"
|
225 |
-
msgstr "You are just one step away - %s"
|
226 |
-
|
227 |
-
#: includes/class-freemius.php:7084
|
228 |
-
msgctxt "%s - plugin name. As complete \"PluginX\" activation now"
|
229 |
-
msgid "Complete \"%s\" Activation Now"
|
230 |
-
msgstr "Complete \"%s\" Activation Now"
|
231 |
-
|
232 |
-
#: includes/class-freemius.php:7162
|
233 |
-
msgid "We made a few tweaks to the %s, %s"
|
234 |
-
msgstr "We made a few tweaks to the %s, %s"
|
235 |
-
|
236 |
-
#: includes/class-freemius.php:7166
|
237 |
-
msgid "Opt in to make \"%s\" better!"
|
238 |
-
msgstr "Opt in to make \"%s\" better!"
|
239 |
-
|
240 |
-
#: includes/class-freemius.php:7598
|
241 |
-
msgid "The upgrade of %s was successfully completed."
|
242 |
-
msgstr "The upgrade of %s was successfully completed."
|
243 |
-
|
244 |
-
#: includes/class-freemius.php:9802, includes/class-fs-plugin-updater.php:1038, includes/class-fs-plugin-updater.php:1233, includes/class-fs-plugin-updater.php:1240, templates/auto-installation.php:32
|
245 |
-
msgid "Add-On"
|
246 |
-
msgstr "Add-On"
|
247 |
-
|
248 |
-
#: includes/class-freemius.php:9804, templates/account.php:335, templates/account.php:343, templates/debug.php:360, templates/debug.php:551
|
249 |
-
msgid "Plugin"
|
250 |
-
msgstr "Plugin"
|
251 |
-
|
252 |
-
#: includes/class-freemius.php:9805, templates/account.php:336, templates/account.php:344, templates/debug.php:360, templates/debug.php:551, templates/forms/deactivation/form.php:71
|
253 |
-
msgid "Theme"
|
254 |
-
msgstr "Theme"
|
255 |
-
|
256 |
-
#: includes/class-freemius.php:12596
|
257 |
-
msgid "An unknown error has occurred while trying to set the user's beta mode."
|
258 |
-
msgstr "An unknown error has occurred while trying to set the user's beta mode."
|
259 |
-
|
260 |
-
#: includes/class-freemius.php:13020
|
261 |
-
msgid "Invalid site details collection."
|
262 |
-
msgstr "Invalid site details collection."
|
263 |
-
|
264 |
-
#: includes/class-freemius.php:13140
|
265 |
-
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
266 |
-
msgstr "We couldn't find your email address in the system, are you sure it's the right address?"
|
267 |
-
|
268 |
-
#: includes/class-freemius.php:13142
|
269 |
-
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
270 |
-
msgstr "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
271 |
-
|
272 |
-
#: includes/class-freemius.php:13416
|
273 |
-
msgid "Account is pending activation."
|
274 |
-
msgstr "Account is pending activation."
|
275 |
-
|
276 |
-
#: includes/class-freemius.php:13528, templates/forms/premium-versions-upgrade-handler.php:47
|
277 |
-
msgid "Buy a license now"
|
278 |
-
msgstr "Buy a license now"
|
279 |
-
|
280 |
-
#: includes/class-freemius.php:13540, templates/forms/premium-versions-upgrade-handler.php:46
|
281 |
-
msgid "Renew your license now"
|
282 |
-
msgstr "Renew your license now"
|
283 |
-
|
284 |
-
#: includes/class-freemius.php:13544
|
285 |
-
msgid "%s to access version %s security & feature updates, and support."
|
286 |
-
msgstr "%s to access version %s security & feature updates, and support."
|
287 |
-
|
288 |
-
#: includes/class-freemius.php:15957
|
289 |
-
msgid "%s activation was successfully completed."
|
290 |
-
msgstr "%s activation was successfully completed."
|
291 |
-
|
292 |
-
#: includes/class-freemius.php:15971
|
293 |
-
msgid "Your account was successfully activated with the %s plan."
|
294 |
-
msgstr "Your account was successfully activated with the %s plan."
|
295 |
-
|
296 |
-
#: includes/class-freemius.php:15982, includes/class-freemius.php:19707
|
297 |
-
msgid "Your trial has been successfully started."
|
298 |
-
msgstr "Your trial has been successfully started."
|
299 |
-
|
300 |
-
#: includes/class-freemius.php:16556, includes/class-freemius.php:16644, includes/class-freemius.php:16810
|
301 |
-
msgid "Couldn't activate %s."
|
302 |
-
msgstr "Couldn't activate %s."
|
303 |
-
|
304 |
-
#: includes/class-freemius.php:16557, includes/class-freemius.php:16645, includes/class-freemius.php:16811
|
305 |
-
msgid "Please contact us with the following message:"
|
306 |
-
msgstr "Please contact us with the following message:"
|
307 |
-
|
308 |
-
#: includes/class-freemius.php:16641, templates/forms/data-debug-mode.php:162
|
309 |
-
msgid "An unknown error has occurred."
|
310 |
-
msgstr "An unknown error has occurred."
|
311 |
-
|
312 |
-
#: includes/class-freemius.php:17168, includes/class-freemius.php:22082
|
313 |
-
msgid "Upgrade"
|
314 |
-
msgstr "Upgrade"
|
315 |
-
|
316 |
-
#: includes/class-freemius.php:17174
|
317 |
-
msgid "Start Trial"
|
318 |
-
msgstr "Start Trial"
|
319 |
-
|
320 |
-
#: includes/class-freemius.php:17176
|
321 |
-
msgid "Pricing"
|
322 |
-
msgstr "Pricing"
|
323 |
-
|
324 |
-
#: includes/class-freemius.php:17256, includes/class-freemius.php:17258
|
325 |
-
msgid "Affiliation"
|
326 |
-
msgstr "Affiliation"
|
327 |
-
|
328 |
-
#: includes/class-freemius.php:17286, includes/class-freemius.php:17288, templates/account.php:183, templates/debug.php:326
|
329 |
-
msgid "Account"
|
330 |
-
msgstr "Account"
|
331 |
-
|
332 |
-
#: includes/class-freemius.php:17302, includes/class-freemius.php:17304, includes/customizer/class-fs-customizer-support-section.php:60
|
333 |
-
msgid "Contact Us"
|
334 |
-
msgstr "Contact Us"
|
335 |
-
|
336 |
-
#: includes/class-freemius.php:17315, includes/class-freemius.php:17317, includes/class-freemius.php:22096, templates/account.php:111, templates/account/partials/addon.php:44
|
337 |
-
msgid "Add-Ons"
|
338 |
-
msgstr "Add-Ons"
|
339 |
-
|
340 |
-
#: includes/class-freemius.php:17351
|
341 |
-
msgctxt "ASCII arrow left icon"
|
342 |
-
msgid "←"
|
343 |
-
msgstr "←"
|
344 |
-
|
345 |
-
#: includes/class-freemius.php:17351
|
346 |
-
msgctxt "ASCII arrow right icon"
|
347 |
-
msgid "➤"
|
348 |
-
msgstr "➤"
|
349 |
-
|
350 |
-
#: includes/class-freemius.php:17353, templates/pricing.php:103
|
351 |
-
msgctxt "noun"
|
352 |
-
msgid "Pricing"
|
353 |
-
msgstr "Pricing"
|
354 |
-
|
355 |
-
#: includes/class-freemius.php:17566, includes/customizer/class-fs-customizer-support-section.php:67
|
356 |
-
msgid "Support Forum"
|
357 |
-
msgstr "Support Forum"
|
358 |
-
|
359 |
-
#: includes/class-freemius.php:18536
|
360 |
-
msgid "Your email has been successfully verified - you are AWESOME!"
|
361 |
-
msgstr "Your email has been successfully verified - you are AWESOME!"
|
362 |
-
|
363 |
-
#: includes/class-freemius.php:18537
|
364 |
-
msgctxt "a positive response"
|
365 |
-
msgid "Right on"
|
366 |
-
msgstr "Right on"
|
367 |
-
|
368 |
-
#: includes/class-freemius.php:19041
|
369 |
-
msgid "seems like the key you entered doesn't match our records."
|
370 |
-
msgstr "seems like the key you entered doesn't match our records."
|
371 |
-
|
372 |
-
#: includes/class-freemius.php:19065
|
373 |
-
msgid "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
374 |
-
msgstr "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
375 |
-
|
376 |
-
#: includes/class-freemius.php:19283
|
377 |
-
msgid "Your %s Add-on plan was successfully upgraded."
|
378 |
-
msgstr "Your %s Add-on plan was successfully upgraded."
|
379 |
-
|
380 |
-
#: includes/class-freemius.php:19285
|
381 |
-
msgid "%s Add-on was successfully purchased."
|
382 |
-
msgstr "%s Add-on was successfully purchased."
|
383 |
-
|
384 |
-
#: includes/class-freemius.php:19288
|
385 |
-
msgid "Download the latest version"
|
386 |
-
msgstr "Download the latest version"
|
387 |
-
|
388 |
-
#: includes/class-freemius.php:19374
|
389 |
-
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
390 |
-
msgstr "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
391 |
-
|
392 |
-
#: includes/class-freemius.php:19380, includes/class-freemius.php:19390, includes/class-freemius.php:19835, includes/class-freemius.php:19924
|
393 |
-
msgid "Error received from the server:"
|
394 |
-
msgstr "Error received from the server:"
|
395 |
-
|
396 |
-
#: includes/class-freemius.php:19390
|
397 |
-
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
398 |
-
msgstr "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
399 |
-
|
400 |
-
#: includes/class-freemius.php:19604, includes/class-freemius.php:19840, includes/class-freemius.php:19895, includes/class-freemius.php:19998
|
401 |
-
msgctxt "something somebody says when they are thinking about what you have just said."
|
402 |
-
msgid "Hmm"
|
403 |
-
msgstr "Hmm"
|
404 |
-
|
405 |
-
#: includes/class-freemius.php:19617
|
406 |
-
msgid "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
407 |
-
msgstr "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
408 |
-
|
409 |
-
#: includes/class-freemius.php:19618, templates/account.php:113, templates/add-ons.php:250, templates/account/partials/addon.php:46
|
410 |
-
msgctxt "trial period"
|
411 |
-
msgid "Trial"
|
412 |
-
msgstr "Trial"
|
413 |
-
|
414 |
-
#: includes/class-freemius.php:19623
|
415 |
-
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
416 |
-
msgstr "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
417 |
-
|
418 |
-
#: includes/class-freemius.php:19627, includes/class-freemius.php:19686
|
419 |
-
msgid "Please contact us here"
|
420 |
-
msgstr "Please contact us here"
|
421 |
-
|
422 |
-
#: includes/class-freemius.php:19638
|
423 |
-
msgid "Your plan was successfully activated."
|
424 |
-
msgstr "Your plan was successfully activated."
|
425 |
-
|
426 |
-
#: includes/class-freemius.php:19639
|
427 |
-
msgid "Your plan was successfully upgraded."
|
428 |
-
msgstr "Your plan was successfully upgraded."
|
429 |
-
|
430 |
-
#: includes/class-freemius.php:19656
|
431 |
-
msgid "Your plan was successfully changed to %s."
|
432 |
-
msgstr "Your plan was successfully changed to %s."
|
433 |
-
|
434 |
-
#: includes/class-freemius.php:19672
|
435 |
-
msgid "Your license has expired. You can still continue using the free %s forever."
|
436 |
-
msgstr "Your license has expired. You can still continue using the free %s forever."
|
437 |
-
|
438 |
-
#: includes/class-freemius.php:19674
|
439 |
-
msgid "Your license has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
440 |
-
msgstr "Your license has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
441 |
-
|
442 |
-
#: includes/class-freemius.php:19682
|
443 |
-
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
444 |
-
msgstr "Your license has been cancelled. If you think it's a mistake, please contact support."
|
445 |
-
|
446 |
-
#: includes/class-freemius.php:19695
|
447 |
-
msgid "Your license has expired. You can still continue using all the %s features, but you'll need to renew your license to continue getting updates and support."
|
448 |
-
msgstr "Your license has expired. You can still continue using all the %s features, but you'll need to renew your license to continue getting updates and support."
|
449 |
-
|
450 |
-
#: includes/class-freemius.php:19721
|
451 |
-
msgid "Your free trial has expired. You can still continue using all our free features."
|
452 |
-
msgstr "Your free trial has expired. You can still continue using all our free features."
|
453 |
-
|
454 |
-
#: includes/class-freemius.php:19723
|
455 |
-
msgid "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
456 |
-
msgstr "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
457 |
-
|
458 |
-
#: includes/class-freemius.php:19831
|
459 |
-
msgid "It looks like the license could not be activated."
|
460 |
-
msgstr "It looks like the license could not be activated."
|
461 |
-
|
462 |
-
#: includes/class-freemius.php:19873
|
463 |
-
msgid "Your license was successfully activated."
|
464 |
-
msgstr "Your license was successfully activated."
|
465 |
-
|
466 |
-
#: includes/class-freemius.php:19899
|
467 |
-
msgid "It looks like your site currently doesn't have an active license."
|
468 |
-
msgstr "It looks like your site currently doesn't have an active license."
|
469 |
-
|
470 |
-
#: includes/class-freemius.php:19923
|
471 |
-
msgid "It looks like the license deactivation failed."
|
472 |
-
msgstr "It looks like the license deactivation failed."
|
473 |
-
|
474 |
-
#: includes/class-freemius.php:19951
|
475 |
-
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
476 |
-
msgstr "Your license was successfully deactivated, you are back to the %s plan."
|
477 |
-
|
478 |
-
#: includes/class-freemius.php:19952
|
479 |
-
msgid "O.K"
|
480 |
-
msgstr "O.K"
|
481 |
-
|
482 |
-
#: includes/class-freemius.php:20005
|
483 |
-
msgid "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
484 |
-
msgstr "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
485 |
-
|
486 |
-
#: includes/class-freemius.php:20014
|
487 |
-
msgid "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
488 |
-
msgstr "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
489 |
-
|
490 |
-
#: includes/class-freemius.php:20056
|
491 |
-
msgid "You are already running the %s in a trial mode."
|
492 |
-
msgstr "You are already running the %s in a trial mode."
|
493 |
-
|
494 |
-
#: includes/class-freemius.php:20067
|
495 |
-
msgid "You already utilized a trial before."
|
496 |
-
msgstr "You already utilized a trial before."
|
497 |
-
|
498 |
-
#: includes/class-freemius.php:20081
|
499 |
-
msgid "Plan %s do not exist, therefore, can't start a trial."
|
500 |
-
msgstr "Plan %s do not exist, therefore, can't start a trial."
|
501 |
-
|
502 |
-
#: includes/class-freemius.php:20092
|
503 |
-
msgid "Plan %s does not support a trial period."
|
504 |
-
msgstr "Plan %s does not support a trial period."
|
505 |
-
|
506 |
-
#: includes/class-freemius.php:20103
|
507 |
-
msgid "None of the %s's plans supports a trial period."
|
508 |
-
msgstr "None of the %s's plans supports a trial period."
|
509 |
-
|
510 |
-
#: includes/class-freemius.php:20153
|
511 |
-
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
512 |
-
msgstr "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
513 |
-
|
514 |
-
#: includes/class-freemius.php:20189
|
515 |
-
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
516 |
-
msgstr "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
517 |
-
|
518 |
-
#: includes/class-freemius.php:20208
|
519 |
-
msgid "Your %s free trial was successfully cancelled."
|
520 |
-
msgstr "Your %s free trial was successfully cancelled."
|
521 |
-
|
522 |
-
#: includes/class-freemius.php:20524
|
523 |
-
msgid "Version %s was released."
|
524 |
-
msgstr "Version %s was released."
|
525 |
-
|
526 |
-
#: includes/class-freemius.php:20524
|
527 |
-
msgid "Please download %s."
|
528 |
-
msgstr "Please download %s."
|
529 |
-
|
530 |
-
#: includes/class-freemius.php:20531
|
531 |
-
msgid "the latest %s version here"
|
532 |
-
msgstr "the latest %s version here"
|
533 |
-
|
534 |
-
#: includes/class-freemius.php:20536
|
535 |
-
msgid "New"
|
536 |
-
msgstr "New"
|
537 |
-
|
538 |
-
#: includes/class-freemius.php:20541
|
539 |
-
msgid "Seems like you got the latest release."
|
540 |
-
msgstr "Seems like you got the latest release."
|
541 |
-
|
542 |
-
#: includes/class-freemius.php:20542
|
543 |
-
msgid "You are all good!"
|
544 |
-
msgstr "You are all good!"
|
545 |
-
|
546 |
-
#: includes/class-freemius.php:20812
|
547 |
-
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
548 |
-
msgstr "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
549 |
-
|
550 |
-
#: includes/class-freemius.php:20951
|
551 |
-
msgid "Site successfully opted in."
|
552 |
-
msgstr "Site successfully opted in."
|
553 |
-
|
554 |
-
#: includes/class-freemius.php:20952, includes/class-freemius.php:21792
|
555 |
-
msgid "Awesome"
|
556 |
-
msgstr "Awesome"
|
557 |
-
|
558 |
-
#: includes/class-freemius.php:20968, templates/forms/optout.php:32
|
559 |
-
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
560 |
-
msgstr "We appreciate your help in making the %s better by letting us track some usage data."
|
561 |
-
|
562 |
-
#: includes/class-freemius.php:20969
|
563 |
-
msgid "Thank you!"
|
564 |
-
msgstr "Thank you!"
|
565 |
-
|
566 |
-
#: includes/class-freemius.php:20976
|
567 |
-
msgid "We will no longer be sending any usage data of %s on %s to %s."
|
568 |
-
msgstr "We will no longer be sending any usage data of %s on %s to %s."
|
569 |
-
|
570 |
-
#: includes/class-freemius.php:21105
|
571 |
-
msgid "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
572 |
-
msgstr "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
573 |
-
|
574 |
-
#: includes/class-freemius.php:21111
|
575 |
-
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
576 |
-
msgstr "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
577 |
-
|
578 |
-
#: includes/class-freemius.php:21116
|
579 |
-
msgid "%s is the new owner of the account."
|
580 |
-
msgstr "%s is the new owner of the account."
|
581 |
-
|
582 |
-
#: includes/class-freemius.php:21118
|
583 |
-
msgctxt "as congratulations"
|
584 |
-
msgid "Congrats"
|
585 |
-
msgstr "Congrats"
|
586 |
-
|
587 |
-
#: includes/class-freemius.php:21138
|
588 |
-
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
589 |
-
msgstr "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
590 |
-
|
591 |
-
#: includes/class-freemius.php:21139
|
592 |
-
msgid "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
593 |
-
msgstr "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
594 |
-
|
595 |
-
#: includes/class-freemius.php:21146
|
596 |
-
msgid "Change Ownership"
|
597 |
-
msgstr "Change Ownership"
|
598 |
-
|
599 |
-
#: includes/class-freemius.php:21154
|
600 |
-
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
601 |
-
msgstr "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
602 |
-
|
603 |
-
#: includes/class-freemius.php:21166
|
604 |
-
msgid "Please provide your full name."
|
605 |
-
msgstr "Please provide your full name."
|
606 |
-
|
607 |
-
#: includes/class-freemius.php:21171
|
608 |
-
msgid "Your name was successfully updated."
|
609 |
-
msgstr "Your name was successfully updated."
|
610 |
-
|
611 |
-
#: includes/class-freemius.php:21232
|
612 |
-
msgid "You have successfully updated your %s."
|
613 |
-
msgstr "You have successfully updated your %s."
|
614 |
-
|
615 |
-
#: includes/class-freemius.php:21372
|
616 |
-
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
617 |
-
msgstr "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
618 |
-
|
619 |
-
#: includes/class-freemius.php:21373
|
620 |
-
msgctxt "advance notice of something that will need attention."
|
621 |
-
msgid "Heads up"
|
622 |
-
msgstr "Heads up"
|
623 |
-
|
624 |
-
#: includes/class-freemius.php:21832
|
625 |
-
msgctxt "exclamation"
|
626 |
-
msgid "Hey"
|
627 |
-
msgstr "Hey"
|
628 |
-
|
629 |
-
#: includes/class-freemius.php:21832
|
630 |
-
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
631 |
-
msgstr "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
632 |
-
|
633 |
-
#: includes/class-freemius.php:21840
|
634 |
-
msgid "No commitment for %s days - cancel anytime!"
|
635 |
-
msgstr "No commitment for %s days - cancel anytime!"
|
636 |
-
|
637 |
-
#: includes/class-freemius.php:21841
|
638 |
-
msgid "No credit card required"
|
639 |
-
msgstr "No credit card required"
|
640 |
-
|
641 |
-
#: includes/class-freemius.php:21848, templates/forms/trial-start.php:53
|
642 |
-
msgctxt "call to action"
|
643 |
-
msgid "Start free trial"
|
644 |
-
msgstr "Start free trial"
|
645 |
-
|
646 |
-
#: includes/class-freemius.php:21925
|
647 |
-
msgid "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
648 |
-
msgstr "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
649 |
-
|
650 |
-
#: includes/class-freemius.php:21934
|
651 |
-
msgid "Learn more"
|
652 |
-
msgstr "Learn more"
|
653 |
-
|
654 |
-
#: includes/class-freemius.php:22120, templates/account.php:499, templates/account.php:624, templates/connect.php:171, templates/connect.php:421, templates/forms/license-activation.php:27, templates/account/partials/addon.php:321
|
655 |
-
msgid "Activate License"
|
656 |
-
msgstr "Activate License"
|
657 |
-
|
658 |
-
#: includes/class-freemius.php:22121, templates/account.php:571, templates/account.php:623, templates/account/partials/addon.php:322, templates/account/partials/site.php:271
|
659 |
-
msgid "Change License"
|
660 |
-
msgstr "Change License"
|
661 |
-
|
662 |
-
#: includes/class-freemius.php:22217, templates/account/partials/site.php:169
|
663 |
-
msgid "Opt Out"
|
664 |
-
msgstr "Opt Out"
|
665 |
-
|
666 |
-
#: includes/class-freemius.php:22219, includes/class-freemius.php:22225, templates/account/partials/site.php:49, templates/account/partials/site.php:169
|
667 |
-
msgid "Opt In"
|
668 |
-
msgstr "Opt In"
|
669 |
-
|
670 |
-
#: includes/class-freemius.php:22453
|
671 |
-
msgid " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
672 |
-
msgstr " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
673 |
-
|
674 |
-
#: includes/class-freemius.php:22461
|
675 |
-
msgid "Activate %s features"
|
676 |
-
msgstr "Activate %s features"
|
677 |
-
|
678 |
-
#: includes/class-freemius.php:22474
|
679 |
-
msgid "Please follow these steps to complete the upgrade"
|
680 |
-
msgstr "Please follow these steps to complete the upgrade"
|
681 |
-
|
682 |
-
#: includes/class-freemius.php:22478
|
683 |
-
msgid "Download the latest %s version"
|
684 |
-
msgstr "Download the latest %s version"
|
685 |
-
|
686 |
-
#: includes/class-freemius.php:22482
|
687 |
-
msgid "Upload and activate the downloaded version"
|
688 |
-
msgstr "Upload and activate the downloaded version"
|
689 |
-
|
690 |
-
#: includes/class-freemius.php:22484
|
691 |
-
msgid "How to upload and activate?"
|
692 |
-
msgstr "How to upload and activate?"
|
693 |
-
|
694 |
-
#: includes/class-freemius.php:22618
|
695 |
-
msgid "%sClick here%s to choose the sites where you'd like to activate the license on."
|
696 |
-
msgstr "%sClick here%s to choose the sites where you'd like to activate the license on."
|
697 |
-
|
698 |
-
#: includes/class-freemius.php:22779
|
699 |
-
msgid "Auto installation only works for opted-in users."
|
700 |
-
msgstr "Auto installation only works for opted-in users."
|
701 |
-
|
702 |
-
#: includes/class-freemius.php:22789, includes/class-freemius.php:22822, includes/class-fs-plugin-updater.php:1212, includes/class-fs-plugin-updater.php:1226
|
703 |
-
msgid "Invalid module ID."
|
704 |
-
msgstr "Invalid module ID."
|
705 |
-
|
706 |
-
#: includes/class-freemius.php:22798, includes/class-fs-plugin-updater.php:1248
|
707 |
-
msgid "Premium version already active."
|
708 |
-
msgstr "Premium version already active."
|
709 |
-
|
710 |
-
#: includes/class-freemius.php:22805
|
711 |
-
msgid "You do not have a valid license to access the premium version."
|
712 |
-
msgstr "You do not have a valid license to access the premium version."
|
713 |
-
|
714 |
-
#: includes/class-freemius.php:22812
|
715 |
-
msgid "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
716 |
-
msgstr "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
717 |
-
|
718 |
-
#: includes/class-freemius.php:22830, includes/class-fs-plugin-updater.php:1247
|
719 |
-
msgid "Premium add-on version already installed."
|
720 |
-
msgstr "Premium add-on version already installed."
|
721 |
-
|
722 |
-
#: includes/class-freemius.php:23180
|
723 |
-
msgid "View paid features"
|
724 |
-
msgstr "View paid features"
|
725 |
-
|
726 |
-
#: includes/class-freemius.php:23502
|
727 |
-
msgid "Thank you so much for using %s and its add-ons!"
|
728 |
-
msgstr "Thank you so much for using %s and its add-ons!"
|
729 |
-
|
730 |
-
#: includes/class-freemius.php:23503
|
731 |
-
msgid "Thank you so much for using %s!"
|
732 |
-
msgstr "Thank you so much for using %s!"
|
733 |
-
|
734 |
-
#: includes/class-freemius.php:23509
|
735 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
736 |
-
msgstr "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
737 |
-
|
738 |
-
#: includes/class-freemius.php:23513
|
739 |
-
msgid "Thank you so much for using our products!"
|
740 |
-
msgstr "Thank you so much for using our products!"
|
741 |
-
|
742 |
-
#: includes/class-freemius.php:23514
|
743 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
744 |
-
msgstr "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
745 |
-
|
746 |
-
#: includes/class-freemius.php:23533
|
747 |
-
msgid "%s and its add-ons"
|
748 |
-
msgstr "%s and its add-ons"
|
749 |
-
|
750 |
-
#: includes/class-freemius.php:23542
|
751 |
-
msgid "Products"
|
752 |
-
msgstr "Products"
|
753 |
-
|
754 |
-
#: includes/class-freemius.php:23549, templates/connect.php:272
|
755 |
-
msgid "Yes"
|
756 |
-
msgstr "Yes"
|
757 |
-
|
758 |
-
#: includes/class-freemius.php:23550, templates/connect.php:273
|
759 |
-
msgid "send me security & feature updates, educational content and offers."
|
760 |
-
msgstr "send me security & feature updates, educational content and offers."
|
761 |
-
|
762 |
-
#: includes/class-freemius.php:23551, templates/connect.php:278
|
763 |
-
msgid "No"
|
764 |
-
msgstr "No"
|
765 |
-
|
766 |
-
#: includes/class-freemius.php:23553, templates/connect.php:280
|
767 |
-
msgid "do %sNOT%s send me security & feature updates, educational content and offers."
|
768 |
-
msgstr "do %sNOT%s send me security & feature updates, educational content and offers."
|
769 |
-
|
770 |
-
#: includes/class-freemius.php:23563
|
771 |
-
msgid "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
772 |
-
msgstr "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
773 |
-
|
774 |
-
#: includes/class-freemius.php:23565, templates/connect.php:287
|
775 |
-
msgid "Please let us know if you'd like us to contact you for security & feature updates, educational content, and occasional offers:"
|
776 |
-
msgstr "Please let us know if you'd like us to contact you for security & feature updates, educational content, and occasional offers:"
|
777 |
-
|
778 |
-
#: includes/class-freemius.php:23847
|
779 |
-
msgid "License key is empty."
|
780 |
-
msgstr "License key is empty."
|
781 |
-
|
782 |
-
#: includes/class-fs-plugin-updater.php:206, templates/forms/premium-versions-upgrade-handler.php:57
|
783 |
-
msgid "Renew license"
|
784 |
-
msgstr "Renew license"
|
785 |
-
|
786 |
-
#: includes/class-fs-plugin-updater.php:211, templates/forms/premium-versions-upgrade-handler.php:58
|
787 |
-
msgid "Buy license"
|
788 |
-
msgstr "Buy license"
|
789 |
-
|
790 |
-
#: includes/class-fs-plugin-updater.php:321, includes/class-fs-plugin-updater.php:354
|
791 |
-
msgid "There is a %s of %s available."
|
792 |
-
msgstr "There is a %s of %s available."
|
793 |
-
|
794 |
-
#: includes/class-fs-plugin-updater.php:323, includes/class-fs-plugin-updater.php:359
|
795 |
-
msgid "new Beta version"
|
796 |
-
msgstr "new Beta version"
|
797 |
-
|
798 |
-
#: includes/class-fs-plugin-updater.php:324, includes/class-fs-plugin-updater.php:360
|
799 |
-
msgid "new version"
|
800 |
-
msgstr "new version"
|
801 |
-
|
802 |
-
#: includes/class-fs-plugin-updater.php:383
|
803 |
-
msgid "Important Upgrade Notice:"
|
804 |
-
msgstr "Important Upgrade Notice:"
|
805 |
-
|
806 |
-
#: includes/class-fs-plugin-updater.php:1277
|
807 |
-
msgid "Installing plugin: %s"
|
808 |
-
msgstr "Installing plugin: %s"
|
809 |
-
|
810 |
-
#: includes/class-fs-plugin-updater.php:1318
|
811 |
-
msgid "Unable to connect to the filesystem. Please confirm your credentials."
|
812 |
-
msgstr "Unable to connect to the filesystem. Please confirm your credentials."
|
813 |
-
|
814 |
-
#: includes/class-fs-plugin-updater.php:1500
|
815 |
-
msgid "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
|
816 |
-
msgstr "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
|
817 |
-
|
818 |
-
#: includes/fs-plugin-info-dialog.php:535
|
819 |
-
msgid "Purchase More"
|
820 |
-
msgstr "Purchase More"
|
821 |
-
|
822 |
-
#: includes/fs-plugin-info-dialog.php:536, templates/account/partials/addon.php:385
|
823 |
-
msgctxt "verb"
|
824 |
-
msgid "Purchase"
|
825 |
-
msgstr "Purchase"
|
826 |
-
|
827 |
-
#: includes/fs-plugin-info-dialog.php:540
|
828 |
-
msgid "Start my free %s"
|
829 |
-
msgstr "Start my free %s"
|
830 |
-
|
831 |
-
#: includes/fs-plugin-info-dialog.php:738
|
832 |
-
msgid "Install Free Version Update Now"
|
833 |
-
msgstr "Install Free Version Update Now"
|
834 |
-
|
835 |
-
#: includes/fs-plugin-info-dialog.php:739, templates/account.php:560
|
836 |
-
msgid "Install Update Now"
|
837 |
-
msgstr "Install Update Now"
|
838 |
-
|
839 |
-
#: includes/fs-plugin-info-dialog.php:748
|
840 |
-
msgid "Install Free Version Now"
|
841 |
-
msgstr "Install Free Version Now"
|
842 |
-
|
843 |
-
#: includes/fs-plugin-info-dialog.php:749, templates/add-ons.php:323, templates/auto-installation.php:111, templates/account/partials/addon.php:365, templates/account/partials/addon.php:418
|
844 |
-
msgid "Install Now"
|
845 |
-
msgstr "Install Now"
|
846 |
-
|
847 |
-
#: includes/fs-plugin-info-dialog.php:765
|
848 |
-
msgctxt "as download latest version"
|
849 |
-
msgid "Download Latest Free Version"
|
850 |
-
msgstr "Download Latest Free Version"
|
851 |
-
|
852 |
-
#: includes/fs-plugin-info-dialog.php:766, templates/account.php:91, templates/add-ons.php:37, templates/account/partials/addon.php:25
|
853 |
-
msgctxt "as download latest version"
|
854 |
-
msgid "Download Latest"
|
855 |
-
msgstr "Download Latest"
|
856 |
-
|
857 |
-
#: includes/fs-plugin-info-dialog.php:781, templates/add-ons.php:329, templates/account/partials/addon.php:356, templates/account/partials/addon.php:412
|
858 |
-
msgid "Activate this add-on"
|
859 |
-
msgstr "Activate this add-on"
|
860 |
-
|
861 |
-
#: includes/fs-plugin-info-dialog.php:783, templates/connect.php:418
|
862 |
-
msgid "Activate Free Version"
|
863 |
-
msgstr "Activate Free Version"
|
864 |
-
|
865 |
-
#: includes/fs-plugin-info-dialog.php:784, templates/account.php:115, templates/add-ons.php:330, templates/account/partials/addon.php:48
|
866 |
-
msgid "Activate"
|
867 |
-
msgstr "Activate"
|
868 |
-
|
869 |
-
#: includes/fs-plugin-info-dialog.php:994
|
870 |
-
msgctxt "Plugin installer section title"
|
871 |
-
msgid "Description"
|
872 |
-
msgstr "Description"
|
873 |
-
|
874 |
-
#: includes/fs-plugin-info-dialog.php:995
|
875 |
-
msgctxt "Plugin installer section title"
|
876 |
-
msgid "Installation"
|
877 |
-
msgstr "Installation"
|
878 |
-
|
879 |
-
#: includes/fs-plugin-info-dialog.php:996
|
880 |
-
msgctxt "Plugin installer section title"
|
881 |
-
msgid "FAQ"
|
882 |
-
msgstr "FAQ"
|
883 |
-
|
884 |
-
#: includes/fs-plugin-info-dialog.php:997, templates/plugin-info/description.php:55
|
885 |
-
msgid "Screenshots"
|
886 |
-
msgstr "Screenshots"
|
887 |
-
|
888 |
-
#: includes/fs-plugin-info-dialog.php:998
|
889 |
-
msgctxt "Plugin installer section title"
|
890 |
-
msgid "Changelog"
|
891 |
-
msgstr "Changelog"
|
892 |
-
|
893 |
-
#: includes/fs-plugin-info-dialog.php:999
|
894 |
-
msgctxt "Plugin installer section title"
|
895 |
-
msgid "Reviews"
|
896 |
-
msgstr "Reviews"
|
897 |
-
|
898 |
-
#: includes/fs-plugin-info-dialog.php:1000
|
899 |
-
msgctxt "Plugin installer section title"
|
900 |
-
msgid "Other Notes"
|
901 |
-
msgstr "Other Notes"
|
902 |
-
|
903 |
-
#: includes/fs-plugin-info-dialog.php:1015
|
904 |
-
msgctxt "Plugin installer section title"
|
905 |
-
msgid "Features & Pricing"
|
906 |
-
msgstr "Features & Pricing"
|
907 |
-
|
908 |
-
#: includes/fs-plugin-info-dialog.php:1025
|
909 |
-
msgid "Plugin Install"
|
910 |
-
msgstr "Plugin Install"
|
911 |
-
|
912 |
-
#: includes/fs-plugin-info-dialog.php:1097
|
913 |
-
msgctxt "e.g. Professional Plan"
|
914 |
-
msgid "%s Plan"
|
915 |
-
msgstr "%s Plan"
|
916 |
-
|
917 |
-
#: includes/fs-plugin-info-dialog.php:1123
|
918 |
-
msgctxt "e.g. the best product"
|
919 |
-
msgid "Best"
|
920 |
-
msgstr "Best"
|
921 |
-
|
922 |
-
#: includes/fs-plugin-info-dialog.php:1129, includes/fs-plugin-info-dialog.php:1149
|
923 |
-
msgctxt "as every month"
|
924 |
-
msgid "Monthly"
|
925 |
-
msgstr "Monthly"
|
926 |
-
|
927 |
-
#: includes/fs-plugin-info-dialog.php:1132
|
928 |
-
msgctxt "as once a year"
|
929 |
-
msgid "Annual"
|
930 |
-
msgstr "Annual"
|
931 |
-
|
932 |
-
#: includes/fs-plugin-info-dialog.php:1135
|
933 |
-
msgid "Lifetime"
|
934 |
-
msgstr "Lifetime"
|
935 |
-
|
936 |
-
#: includes/fs-plugin-info-dialog.php:1149, includes/fs-plugin-info-dialog.php:1151, includes/fs-plugin-info-dialog.php:1153
|
937 |
-
msgctxt "e.g. billed monthly"
|
938 |
-
msgid "Billed %s"
|
939 |
-
msgstr "Billed %s"
|
940 |
-
|
941 |
-
#: includes/fs-plugin-info-dialog.php:1151
|
942 |
-
msgctxt "as once a year"
|
943 |
-
msgid "Annually"
|
944 |
-
msgstr "Annually"
|
945 |
-
|
946 |
-
#: includes/fs-plugin-info-dialog.php:1153
|
947 |
-
msgctxt "as once a year"
|
948 |
-
msgid "Once"
|
949 |
-
msgstr "Once"
|
950 |
-
|
951 |
-
#: includes/fs-plugin-info-dialog.php:1159
|
952 |
-
msgid "Single Site License"
|
953 |
-
msgstr "Single Site License"
|
954 |
-
|
955 |
-
#: includes/fs-plugin-info-dialog.php:1161
|
956 |
-
msgid "Unlimited Licenses"
|
957 |
-
msgstr "Unlimited Licenses"
|
958 |
-
|
959 |
-
#: includes/fs-plugin-info-dialog.php:1163
|
960 |
-
msgid "Up to %s Sites"
|
961 |
-
msgstr "Up to %s Sites"
|
962 |
-
|
963 |
-
#: includes/fs-plugin-info-dialog.php:1173, templates/plugin-info/features.php:82
|
964 |
-
msgctxt "as monthly period"
|
965 |
-
msgid "mo"
|
966 |
-
msgstr "mo"
|
967 |
-
|
968 |
-
#: includes/fs-plugin-info-dialog.php:1180, templates/plugin-info/features.php:80
|
969 |
-
msgctxt "as annual period"
|
970 |
-
msgid "year"
|
971 |
-
msgstr "year"
|
972 |
-
|
973 |
-
#: includes/fs-plugin-info-dialog.php:1234
|
974 |
-
msgctxt "noun"
|
975 |
-
msgid "Price"
|
976 |
-
msgstr "Price"
|
977 |
-
|
978 |
-
#: includes/fs-plugin-info-dialog.php:1282
|
979 |
-
msgid "Save %s"
|
980 |
-
msgstr "Save %s"
|
981 |
-
|
982 |
-
#: includes/fs-plugin-info-dialog.php:1292
|
983 |
-
msgid "No commitment for %s - cancel anytime"
|
984 |
-
msgstr "No commitment for %s - cancel anytime"
|
985 |
-
|
986 |
-
#: includes/fs-plugin-info-dialog.php:1295
|
987 |
-
msgid "After your free %s, pay as little as %s"
|
988 |
-
msgstr "After your free %s, pay as little as %s"
|
989 |
-
|
990 |
-
#: includes/fs-plugin-info-dialog.php:1306
|
991 |
-
msgid "Details"
|
992 |
-
msgstr "Details"
|
993 |
-
|
994 |
-
#: includes/fs-plugin-info-dialog.php:1310, templates/account.php:102, templates/debug.php:203, templates/debug.php:240, templates/debug.php:457, templates/account/partials/addon.php:36
|
995 |
-
msgctxt "product version"
|
996 |
-
msgid "Version"
|
997 |
-
msgstr "Version"
|
998 |
-
|
999 |
-
#: includes/fs-plugin-info-dialog.php:1317
|
1000 |
-
msgctxt "as the plugin author"
|
1001 |
-
msgid "Author"
|
1002 |
-
msgstr "Author"
|
1003 |
-
|
1004 |
-
#: includes/fs-plugin-info-dialog.php:1324
|
1005 |
-
msgid "Last Updated"
|
1006 |
-
msgstr "Last Updated"
|
1007 |
-
|
1008 |
-
#: includes/fs-plugin-info-dialog.php:1329, templates/account.php:468
|
1009 |
-
msgctxt "x-ago"
|
1010 |
-
msgid "%s ago"
|
1011 |
-
msgstr "%s ago"
|
1012 |
-
|
1013 |
-
#: includes/fs-plugin-info-dialog.php:1338
|
1014 |
-
msgid "Requires WordPress Version"
|
1015 |
-
msgstr "Requires WordPress Version"
|
1016 |
-
|
1017 |
-
#: includes/fs-plugin-info-dialog.php:1339
|
1018 |
-
msgid "%s or higher"
|
1019 |
-
msgstr "%s or higher"
|
1020 |
-
|
1021 |
-
#: includes/fs-plugin-info-dialog.php:1346
|
1022 |
-
msgid "Compatible up to"
|
1023 |
-
msgstr "Compatible up to"
|
1024 |
-
|
1025 |
-
#: includes/fs-plugin-info-dialog.php:1354
|
1026 |
-
msgid "Downloaded"
|
1027 |
-
msgstr "Downloaded"
|
1028 |
-
|
1029 |
-
#: includes/fs-plugin-info-dialog.php:1358
|
1030 |
-
msgid "%s time"
|
1031 |
-
msgstr "%s time"
|
1032 |
-
|
1033 |
-
#: includes/fs-plugin-info-dialog.php:1360
|
1034 |
-
msgid "%s times"
|
1035 |
-
msgstr "%s times"
|
1036 |
-
|
1037 |
-
#: includes/fs-plugin-info-dialog.php:1370
|
1038 |
-
msgid "WordPress.org Plugin Page"
|
1039 |
-
msgstr "WordPress.org Plugin Page"
|
1040 |
-
|
1041 |
-
#: includes/fs-plugin-info-dialog.php:1378
|
1042 |
-
msgid "Plugin Homepage"
|
1043 |
-
msgstr "Plugin Homepage"
|
1044 |
-
|
1045 |
-
#: includes/fs-plugin-info-dialog.php:1386, includes/fs-plugin-info-dialog.php:1468
|
1046 |
-
msgid "Donate to this plugin"
|
1047 |
-
msgstr "Donate to this plugin"
|
1048 |
-
|
1049 |
-
#: includes/fs-plugin-info-dialog.php:1393
|
1050 |
-
msgid "Average Rating"
|
1051 |
-
msgstr "Average Rating"
|
1052 |
-
|
1053 |
-
#: includes/fs-plugin-info-dialog.php:1400
|
1054 |
-
msgid "based on %s"
|
1055 |
-
msgstr "based on %s"
|
1056 |
-
|
1057 |
-
#: includes/fs-plugin-info-dialog.php:1404
|
1058 |
-
msgid "%s rating"
|
1059 |
-
msgstr "%s rating"
|
1060 |
-
|
1061 |
-
#: includes/fs-plugin-info-dialog.php:1406
|
1062 |
-
msgid "%s ratings"
|
1063 |
-
msgstr "%s ratings"
|
1064 |
-
|
1065 |
-
#: includes/fs-plugin-info-dialog.php:1421
|
1066 |
-
msgid "%s star"
|
1067 |
-
msgstr "%s star"
|
1068 |
-
|
1069 |
-
#: includes/fs-plugin-info-dialog.php:1423
|
1070 |
-
msgid "%s stars"
|
1071 |
-
msgstr "%s stars"
|
1072 |
-
|
1073 |
-
#: includes/fs-plugin-info-dialog.php:1434
|
1074 |
-
msgid "Click to see reviews that provided a rating of %s"
|
1075 |
-
msgstr "Click to see reviews that provided a rating of %s"
|
1076 |
-
|
1077 |
-
#: includes/fs-plugin-info-dialog.php:1447
|
1078 |
-
msgid "Contributors"
|
1079 |
-
msgstr "Contributors"
|
1080 |
-
|
1081 |
-
#: includes/fs-plugin-info-dialog.php:1476, includes/fs-plugin-info-dialog.php:1478
|
1082 |
-
msgid "Warning"
|
1083 |
-
msgstr "Warning"
|
1084 |
-
|
1085 |
-
#: includes/fs-plugin-info-dialog.php:1476
|
1086 |
-
msgid "This plugin has not been tested with your current version of WordPress."
|
1087 |
-
msgstr "This plugin has not been tested with your current version of WordPress."
|
1088 |
-
|
1089 |
-
#: includes/fs-plugin-info-dialog.php:1478
|
1090 |
-
msgid "This plugin has not been marked as compatible with your version of WordPress."
|
1091 |
-
msgstr "This plugin has not been marked as compatible with your version of WordPress."
|
1092 |
-
|
1093 |
-
#: includes/fs-plugin-info-dialog.php:1497
|
1094 |
-
msgid "Paid add-on must be deployed to Freemius."
|
1095 |
-
msgstr "Paid add-on must be deployed to Freemius."
|
1096 |
-
|
1097 |
-
#: includes/fs-plugin-info-dialog.php:1498
|
1098 |
-
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1099 |
-
msgstr "Add-on must be deployed to WordPress.org or Freemius."
|
1100 |
-
|
1101 |
-
#: includes/fs-plugin-info-dialog.php:1519
|
1102 |
-
msgid "Newer Version (%s) Installed"
|
1103 |
-
msgstr "Newer Version (%s) Installed"
|
1104 |
-
|
1105 |
-
#: includes/fs-plugin-info-dialog.php:1520
|
1106 |
-
msgid "Newer Free Version (%s) Installed"
|
1107 |
-
msgstr "Newer Free Version (%s) Installed"
|
1108 |
-
|
1109 |
-
#: includes/fs-plugin-info-dialog.php:1527
|
1110 |
-
msgid "Latest Version Installed"
|
1111 |
-
msgstr "Latest Version Installed"
|
1112 |
-
|
1113 |
-
#: includes/fs-plugin-info-dialog.php:1528
|
1114 |
-
msgid "Latest Free Version Installed"
|
1115 |
-
msgstr "Latest Free Version Installed"
|
1116 |
-
|
1117 |
-
#: templates/account.php:92, templates/forms/subscription-cancellation.php:96, templates/account/partials/addon.php:26, templates/account/partials/site.php:311
|
1118 |
-
msgid "Downgrading your plan"
|
1119 |
-
msgstr "Downgrading your plan"
|
1120 |
-
|
1121 |
-
#: templates/account.php:93, templates/forms/subscription-cancellation.php:97, templates/account/partials/addon.php:27, templates/account/partials/site.php:312
|
1122 |
-
msgid "Cancelling the subscription"
|
1123 |
-
msgstr "Cancelling the subscription"
|
1124 |
-
|
1125 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the subscription'
|
1126 |
-
#: templates/account.php:95, templates/forms/subscription-cancellation.php:99, templates/account/partials/site.php:314
|
1127 |
-
msgid "%1$s will immediately stop all future recurring payments and your %2$s plan license will expire in %3$s."
|
1128 |
-
msgstr "%1$s will immediately stop all future recurring payments and your %2$s plan license will expire in %3$s."
|
1129 |
-
|
1130 |
-
#: templates/account.php:96, templates/forms/subscription-cancellation.php:100, templates/account/partials/addon.php:30, templates/account/partials/site.php:315
|
1131 |
-
msgid "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1132 |
-
msgstr "Please note that we will not be able to grandfather outdated pricing for renewals/new subscriptions after a cancellation. If you choose to renew the subscription manually in the future, after a price increase, which typically occurs once a year, you will be charged the updated price."
|
1133 |
-
|
1134 |
-
#: templates/account.php:97, templates/forms/subscription-cancellation.php:106, templates/account/partials/addon.php:31
|
1135 |
-
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
1136 |
-
msgstr "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
1137 |
-
|
1138 |
-
#: templates/account.php:98, templates/forms/subscription-cancellation.php:101, templates/account/partials/addon.php:32, templates/account/partials/site.php:316
|
1139 |
-
msgid "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1140 |
-
msgstr "You can still enjoy all %s features but you will not have access to %s security & feature updates, nor support."
|
1141 |
-
|
1142 |
-
#: templates/account.php:99, templates/forms/subscription-cancellation.php:102, templates/account/partials/addon.php:33, templates/account/partials/site.php:317
|
1143 |
-
msgid "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1144 |
-
msgstr "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
1145 |
-
|
1146 |
-
#. translators: %s: Plan title (e.g. "Professional")
|
1147 |
-
#: templates/account.php:101, templates/account/partials/activate-license-button.php:31, templates/account/partials/addon.php:35
|
1148 |
-
msgid "Activate %s Plan"
|
1149 |
-
msgstr "Activate %s Plan"
|
1150 |
-
|
1151 |
-
#. translators: %s: Time period (e.g. Auto renews in "2 months")
|
1152 |
-
#: templates/account.php:104, templates/account/partials/addon.php:38, templates/account/partials/site.php:291
|
1153 |
-
msgid "Auto renews in %s"
|
1154 |
-
msgstr "Auto renews in %s"
|
1155 |
-
|
1156 |
-
#. translators: %s: Time period (e.g. Expires in "2 months")
|
1157 |
-
#: templates/account.php:106, templates/account/partials/addon.php:40, templates/account/partials/site.php:293
|
1158 |
-
msgid "Expires in %s"
|
1159 |
-
msgstr "Expires in %s"
|
1160 |
-
|
1161 |
-
#: templates/account.php:107
|
1162 |
-
msgctxt "as synchronize license"
|
1163 |
-
msgid "Sync License"
|
1164 |
-
msgstr "Sync License"
|
1165 |
-
|
1166 |
-
#: templates/account.php:108, templates/account/partials/addon.php:41
|
1167 |
-
msgid "Cancel Trial"
|
1168 |
-
msgstr "Cancel Trial"
|
1169 |
-
|
1170 |
-
#: templates/account.php:109, templates/account/partials/addon.php:42
|
1171 |
-
msgid "Change Plan"
|
1172 |
-
msgstr "Change Plan"
|
1173 |
-
|
1174 |
-
#: templates/account.php:110, templates/account/partials/addon.php:43
|
1175 |
-
msgctxt "verb"
|
1176 |
-
msgid "Upgrade"
|
1177 |
-
msgstr "Upgrade"
|
1178 |
-
|
1179 |
-
#: templates/account.php:112, templates/account/partials/addon.php:45, templates/account/partials/site.php:318
|
1180 |
-
msgctxt "verb"
|
1181 |
-
msgid "Downgrade"
|
1182 |
-
msgstr "Downgrade"
|
1183 |
-
|
1184 |
-
#: templates/account.php:114, templates/add-ons.php:246, templates/plugin-info/features.php:72, templates/account/partials/addon.php:47, templates/account/partials/site.php:33
|
1185 |
-
msgid "Free"
|
1186 |
-
msgstr "Free"
|
1187 |
-
|
1188 |
-
#: templates/account.php:116, templates/debug.php:373, includes/customizer/class-fs-customizer-upsell-control.php:110, templates/account/partials/addon.php:49
|
1189 |
-
msgctxt "as product pricing plan"
|
1190 |
-
msgid "Plan"
|
1191 |
-
msgstr "Plan"
|
1192 |
-
|
1193 |
-
#: templates/account.php:117
|
1194 |
-
msgid "Bundle Plan"
|
1195 |
-
msgstr "Bundle Plan"
|
1196 |
-
|
1197 |
-
#: templates/account.php:191
|
1198 |
-
msgid "Free Trial"
|
1199 |
-
msgstr "Free Trial"
|
1200 |
-
|
1201 |
-
#: templates/account.php:202
|
1202 |
-
msgid "Account Details"
|
1203 |
-
msgstr "Account Details"
|
1204 |
-
|
1205 |
-
#: templates/account.php:209, templates/forms/data-debug-mode.php:33
|
1206 |
-
msgid "Start Debug"
|
1207 |
-
msgstr "Start Debug"
|
1208 |
-
|
1209 |
-
#: templates/account.php:211
|
1210 |
-
msgid "Stop Debug"
|
1211 |
-
msgstr "Stop Debug"
|
1212 |
-
|
1213 |
-
#: templates/account.php:218
|
1214 |
-
msgid "Billing & Invoices"
|
1215 |
-
msgstr "Billing & Invoices"
|
1216 |
-
|
1217 |
-
#: templates/account.php:229
|
1218 |
-
msgid "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1219 |
-
msgstr "Deleting the account will automatically deactivate your %s plan license so you can use it on other sites. If you want to terminate the recurring payments as well, click the \"Cancel\" button, and first \"Downgrade\" your account. Are you sure you would like to continue with the deletion?"
|
1220 |
-
|
1221 |
-
#: templates/account.php:231
|
1222 |
-
msgid "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1223 |
-
msgstr "Deletion is not temporary. Only delete if you no longer want to use this %s anymore. Are you sure you would like to continue with the deletion?"
|
1224 |
-
|
1225 |
-
#: templates/account.php:234
|
1226 |
-
msgid "Delete Account"
|
1227 |
-
msgstr "Delete Account"
|
1228 |
-
|
1229 |
-
#: templates/account.php:246, templates/account/partials/addon.php:231, templates/account/partials/deactivate-license-button.php:35
|
1230 |
-
msgid "Deactivate License"
|
1231 |
-
msgstr "Deactivate License"
|
1232 |
-
|
1233 |
-
#: templates/account.php:269, templates/forms/subscription-cancellation.php:125
|
1234 |
-
msgid "Are you sure you want to proceed?"
|
1235 |
-
msgstr "Are you sure you want to proceed?"
|
1236 |
-
|
1237 |
-
#: templates/account.php:269, templates/account/partials/addon.php:255
|
1238 |
-
msgid "Cancel Subscription"
|
1239 |
-
msgstr "Cancel Subscription"
|
1240 |
-
|
1241 |
-
#: templates/account.php:298, templates/account/partials/addon.php:340
|
1242 |
-
msgctxt "as synchronize"
|
1243 |
-
msgid "Sync"
|
1244 |
-
msgstr "Sync"
|
1245 |
-
|
1246 |
-
#: templates/account.php:313, templates/debug.php:507
|
1247 |
-
msgid "Name"
|
1248 |
-
msgstr "Name"
|
1249 |
-
|
1250 |
-
#: templates/account.php:319, templates/debug.php:508
|
1251 |
-
msgid "Email"
|
1252 |
-
msgstr "Email"
|
1253 |
-
|
1254 |
-
#: templates/account.php:326, templates/debug.php:371, templates/debug.php:557
|
1255 |
-
msgid "User ID"
|
1256 |
-
msgstr "User ID"
|
1257 |
-
|
1258 |
-
#: templates/account.php:344, templates/account.php:637, templates/account.php:682, templates/debug.php:238, templates/debug.php:365, templates/debug.php:454, templates/debug.php:506, templates/debug.php:555, templates/debug.php:632, templates/account/payments.php:35, templates/debug/logger.php:21
|
1259 |
-
msgid "ID"
|
1260 |
-
msgstr "ID"
|
1261 |
-
|
1262 |
-
#: templates/account.php:351
|
1263 |
-
msgid "Site ID"
|
1264 |
-
msgstr "Site ID"
|
1265 |
-
|
1266 |
-
#: templates/account.php:354
|
1267 |
-
msgid "No ID"
|
1268 |
-
msgstr "No ID"
|
1269 |
-
|
1270 |
-
#: templates/account.php:359, templates/debug.php:245, templates/debug.php:374, templates/debug.php:458, templates/debug.php:510, templates/account/partials/site.php:227
|
1271 |
-
msgid "Public Key"
|
1272 |
-
msgstr "Public Key"
|
1273 |
-
|
1274 |
-
#: templates/account.php:365, templates/debug.php:375, templates/debug.php:459, templates/debug.php:511, templates/account/partials/site.php:239
|
1275 |
-
msgid "Secret Key"
|
1276 |
-
msgstr "Secret Key"
|
1277 |
-
|
1278 |
-
#: templates/account.php:368
|
1279 |
-
msgctxt "as secret encryption key missing"
|
1280 |
-
msgid "No Secret"
|
1281 |
-
msgstr "No Secret"
|
1282 |
-
|
1283 |
-
#: templates/account.php:395, templates/account/partials/site.php:120, templates/account/partials/site.php:122
|
1284 |
-
msgid "Trial"
|
1285 |
-
msgstr "Trial"
|
1286 |
-
|
1287 |
-
#: templates/account.php:422, templates/debug.php:562, templates/account/partials/site.php:260
|
1288 |
-
msgid "License Key"
|
1289 |
-
msgstr "License Key"
|
1290 |
-
|
1291 |
-
#: templates/account.php:453
|
1292 |
-
msgid "Join the Beta program"
|
1293 |
-
msgstr "Join the Beta program"
|
1294 |
-
|
1295 |
-
#: templates/account.php:459
|
1296 |
-
msgid "not verified"
|
1297 |
-
msgstr "not verified"
|
1298 |
-
|
1299 |
-
#: templates/account.php:468, templates/account/partials/addon.php:190
|
1300 |
-
msgid "Expired"
|
1301 |
-
msgstr "Expired"
|
1302 |
-
|
1303 |
-
#: templates/account.php:528
|
1304 |
-
msgid "Premium version"
|
1305 |
-
msgstr "Premium version"
|
1306 |
-
|
1307 |
-
#: templates/account.php:530
|
1308 |
-
msgid "Free version"
|
1309 |
-
msgstr "Free version"
|
1310 |
-
|
1311 |
-
#: templates/account.php:542
|
1312 |
-
msgid "Verify Email"
|
1313 |
-
msgstr "Verify Email"
|
1314 |
-
|
1315 |
-
#: templates/account.php:553
|
1316 |
-
msgid "Download %s Version"
|
1317 |
-
msgstr "Download %s Version"
|
1318 |
-
|
1319 |
-
#: templates/account.php:568, templates/account.php:820, templates/account/partials/site.php:248, templates/account/partials/site.php:270
|
1320 |
-
msgctxt "verb"
|
1321 |
-
msgid "Show"
|
1322 |
-
msgstr "Show"
|
1323 |
-
|
1324 |
-
#: templates/account.php:583
|
1325 |
-
msgid "What is your %s?"
|
1326 |
-
msgstr "What is your %s?"
|
1327 |
-
|
1328 |
-
#: templates/account.php:591, templates/account/billing.php:21
|
1329 |
-
msgctxt "verb"
|
1330 |
-
msgid "Edit"
|
1331 |
-
msgstr "Edit"
|
1332 |
-
|
1333 |
-
#: templates/account.php:616
|
1334 |
-
msgid "Sites"
|
1335 |
-
msgstr "Sites"
|
1336 |
-
|
1337 |
-
#: templates/account.php:629
|
1338 |
-
msgid "Search by address"
|
1339 |
-
msgstr "Search by address"
|
1340 |
-
|
1341 |
-
#: templates/account.php:638, templates/debug.php:368
|
1342 |
-
msgid "Address"
|
1343 |
-
msgstr "Address"
|
1344 |
-
|
1345 |
-
#: templates/account.php:639
|
1346 |
-
msgid "License"
|
1347 |
-
msgstr "License"
|
1348 |
-
|
1349 |
-
#: templates/account.php:640
|
1350 |
-
msgid "Plan"
|
1351 |
-
msgstr "Plan"
|
1352 |
-
|
1353 |
-
#: templates/account.php:685
|
1354 |
-
msgctxt "as software license"
|
1355 |
-
msgid "License"
|
1356 |
-
msgstr "License"
|
1357 |
-
|
1358 |
-
#: templates/account.php:814
|
1359 |
-
msgctxt "verb"
|
1360 |
-
msgid "Hide"
|
1361 |
-
msgstr "Hide"
|
1362 |
-
|
1363 |
-
#: templates/account.php:836, templates/forms/data-debug-mode.php:31
|
1364 |
-
msgid "Processing"
|
1365 |
-
msgstr "Processing"
|
1366 |
-
|
1367 |
-
#: templates/account.php:839
|
1368 |
-
msgid "Get updates for bleeding edge Beta versions of %s."
|
1369 |
-
msgstr "Get updates for bleeding edge Beta versions of %s."
|
1370 |
-
|
1371 |
-
#: templates/account.php:897
|
1372 |
-
msgid "Cancelling %s"
|
1373 |
-
msgstr "Cancelling %s"
|
1374 |
-
|
1375 |
-
#: templates/account.php:897, templates/account.php:914, templates/forms/subscription-cancellation.php:27, templates/forms/deactivation/form.php:133
|
1376 |
-
msgid "trial"
|
1377 |
-
msgstr "trial"
|
1378 |
-
|
1379 |
-
#: templates/account.php:912, templates/forms/deactivation/form.php:150
|
1380 |
-
msgid "Cancelling %s..."
|
1381 |
-
msgstr "Cancelling %s..."
|
1382 |
-
|
1383 |
-
#: templates/account.php:915, templates/forms/subscription-cancellation.php:28, templates/forms/deactivation/form.php:134
|
1384 |
-
msgid "subscription"
|
1385 |
-
msgstr "subscription"
|
1386 |
-
|
1387 |
-
#: templates/account.php:929
|
1388 |
-
msgid "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1389 |
-
msgstr "Deactivating your license will block all premium features, but will enable activating the license on another site. Are you sure you want to proceed?"
|
1390 |
-
|
1391 |
-
#: templates/add-ons.php:38
|
1392 |
-
msgid "View details"
|
1393 |
-
msgstr "View details"
|
1394 |
-
|
1395 |
-
#: templates/add-ons.php:48
|
1396 |
-
msgid "Add Ons for %s"
|
1397 |
-
msgstr "Add Ons for %s"
|
1398 |
-
|
1399 |
-
#: templates/add-ons.php:58
|
1400 |
-
msgid "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1401 |
-
msgstr "We couldn't load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
1402 |
-
|
1403 |
-
#: templates/add-ons.php:229
|
1404 |
-
msgctxt "active add-on"
|
1405 |
-
msgid "Active"
|
1406 |
-
msgstr "Active"
|
1407 |
-
|
1408 |
-
#: templates/add-ons.php:230
|
1409 |
-
msgctxt "installed add-on"
|
1410 |
-
msgid "Installed"
|
1411 |
-
msgstr "Installed"
|
1412 |
-
|
1413 |
-
#: templates/admin-notice.php:13, templates/forms/license-activation.php:207, templates/forms/resend-key.php:77
|
1414 |
-
msgctxt "as close a window"
|
1415 |
-
msgid "Dismiss"
|
1416 |
-
msgstr "Dismiss"
|
1417 |
-
|
1418 |
-
#: templates/auto-installation.php:45
|
1419 |
-
msgid "%s sec"
|
1420 |
-
msgstr "%s sec"
|
1421 |
-
|
1422 |
-
#: templates/auto-installation.php:83
|
1423 |
-
msgid "Automatic Installation"
|
1424 |
-
msgstr "Automatic Installation"
|
1425 |
-
|
1426 |
-
#: templates/auto-installation.php:93
|
1427 |
-
msgid "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1428 |
-
msgstr "An automated download and installation of %s (paid version) from %s will start in %s. If you would like to do it manually - click the cancellation button now."
|
1429 |
-
|
1430 |
-
#: templates/auto-installation.php:104
|
1431 |
-
msgid "The installation process has started and may take a few minutes to complete. Please wait until it is done - do not refresh this page."
|
1432 |
-
msgstr "The installation process has started and may take a few minutes to complete. Please wait until it is done - do not refresh this page."
|
1433 |
-
|
1434 |
-
#: templates/auto-installation.php:109
|
1435 |
-
msgid "Cancel Installation"
|
1436 |
-
msgstr "Cancel Installation"
|
1437 |
-
|
1438 |
-
#: templates/checkout.php:180
|
1439 |
-
msgid "Checkout"
|
1440 |
-
msgstr "Checkout"
|
1441 |
-
|
1442 |
-
#: templates/checkout.php:180
|
1443 |
-
msgid "PCI compliant"
|
1444 |
-
msgstr "PCI compliant"
|
1445 |
-
|
1446 |
-
#. translators: %s: name (e.g. Hey John,)
|
1447 |
-
#: templates/connect.php:112
|
1448 |
-
msgctxt "greeting"
|
1449 |
-
msgid "Hey %s,"
|
1450 |
-
msgstr "Hey %s,"
|
1451 |
-
|
1452 |
-
#: templates/connect.php:154
|
1453 |
-
msgid "Allow & Continue"
|
1454 |
-
msgstr "Allow & Continue"
|
1455 |
-
|
1456 |
-
#: templates/connect.php:158
|
1457 |
-
msgid "Re-send activation email"
|
1458 |
-
msgstr "Re-send activation email"
|
1459 |
-
|
1460 |
-
#: templates/connect.php:162
|
1461 |
-
msgid "Thanks %s!"
|
1462 |
-
msgstr "Thanks %s!"
|
1463 |
-
|
1464 |
-
#: templates/connect.php:172, templates/forms/license-activation.php:46
|
1465 |
-
msgid "Agree & Activate License"
|
1466 |
-
msgstr "Agree & Activate License"
|
1467 |
-
|
1468 |
-
#: templates/connect.php:181
|
1469 |
-
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
1470 |
-
msgstr "Thanks for purchasing %s! To get started, please enter your license key:"
|
1471 |
-
|
1472 |
-
#: templates/connect.php:188
|
1473 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s."
|
1474 |
-
msgstr "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s."
|
1475 |
-
|
1476 |
-
#: templates/connect.php:189
|
1477 |
-
msgid "Never miss an important update - opt in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
1478 |
-
msgstr "Never miss an important update - opt in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
1479 |
-
|
1480 |
-
#: templates/connect.php:195
|
1481 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1482 |
-
msgstr "Never miss an important update - opt in to our security & feature updates notifications, educational content, offers, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1483 |
-
|
1484 |
-
#: templates/connect.php:196
|
1485 |
-
msgid "Never miss an important update - opt in to our security & feature updates notifications, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1486 |
-
msgstr "Never miss an important update - opt in to our security & feature updates notifications, and non-sensitive diagnostic tracking with %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
1487 |
-
|
1488 |
-
#: templates/connect.php:230
|
1489 |
-
msgid "We're excited to introduce the Freemius network-level integration."
|
1490 |
-
msgstr "We're excited to introduce the Freemius network-level integration."
|
1491 |
-
|
1492 |
-
#: templates/connect.php:233
|
1493 |
-
msgid "During the update process we detected %d site(s) that are still pending license activation."
|
1494 |
-
msgstr "During the update process we detected %d site(s) that are still pending license activation."
|
1495 |
-
|
1496 |
-
#: templates/connect.php:235
|
1497 |
-
msgid "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1498 |
-
msgstr "If you'd like to use the %s on those sites, please enter your license key below and click the activation button."
|
1499 |
-
|
1500 |
-
#: templates/connect.php:237
|
1501 |
-
msgid "%s's paid features"
|
1502 |
-
msgstr "%s's paid features"
|
1503 |
-
|
1504 |
-
#: templates/connect.php:242
|
1505 |
-
msgid "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1506 |
-
msgstr "Alternatively, you can skip it for now and activate the license later, in your %s's network-level Account page."
|
1507 |
-
|
1508 |
-
#: templates/connect.php:244
|
1509 |
-
msgid "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1510 |
-
msgstr "During the update process we detected %s site(s) in the network that are still pending your attention."
|
1511 |
-
|
1512 |
-
#: templates/connect.php:253, templates/forms/data-debug-mode.php:35, templates/forms/license-activation.php:49
|
1513 |
-
msgid "License key"
|
1514 |
-
msgstr "License key"
|
1515 |
-
|
1516 |
-
#: templates/connect.php:256, templates/forms/license-activation.php:22
|
1517 |
-
msgid "Can't find your license key?"
|
1518 |
-
msgstr "Can't find your license key?"
|
1519 |
-
|
1520 |
-
#: templates/connect.php:315, templates/connect.php:652, templates/forms/deactivation/retry-skip.php:20
|
1521 |
-
msgctxt "verb"
|
1522 |
-
msgid "Skip"
|
1523 |
-
msgstr "Skip"
|
1524 |
-
|
1525 |
-
#: templates/connect.php:318
|
1526 |
-
msgid "Delegate to Site Admins"
|
1527 |
-
msgstr "Delegate to Site Admins"
|
1528 |
-
|
1529 |
-
#: templates/connect.php:318
|
1530 |
-
msgid "If you click it, this decision will be delegated to the sites administrators."
|
1531 |
-
msgstr "If you click it, this decision will be delegated to the sites administrators."
|
1532 |
-
|
1533 |
-
#: templates/connect.php:346
|
1534 |
-
msgid "Your Profile Overview"
|
1535 |
-
msgstr "Your Profile Overview"
|
1536 |
-
|
1537 |
-
#: templates/connect.php:347
|
1538 |
-
msgid "Name and email address"
|
1539 |
-
msgstr "Name and email address"
|
1540 |
-
|
1541 |
-
#: templates/connect.php:352
|
1542 |
-
msgid "Your Site Overview"
|
1543 |
-
msgstr "Your Site Overview"
|
1544 |
-
|
1545 |
-
#: templates/connect.php:353
|
1546 |
-
msgid "Site URL, WP version, PHP info, plugins & themes"
|
1547 |
-
msgstr "Site URL, WP version, PHP info, plugins & themes"
|
1548 |
-
|
1549 |
-
#: templates/connect.php:358
|
1550 |
-
msgid "Admin Notices"
|
1551 |
-
msgstr "Admin Notices"
|
1552 |
-
|
1553 |
-
#: templates/connect.php:359, templates/connect.php:375
|
1554 |
-
msgid "Updates, announcements, marketing, no spam"
|
1555 |
-
msgstr "Updates, announcements, marketing, no spam"
|
1556 |
-
|
1557 |
-
#: templates/connect.php:364
|
1558 |
-
msgid "Current %s Events"
|
1559 |
-
msgstr "Current %s Events"
|
1560 |
-
|
1561 |
-
#: templates/connect.php:365
|
1562 |
-
msgid "Activation, deactivation and uninstall"
|
1563 |
-
msgstr "Activation, deactivation and uninstall"
|
1564 |
-
|
1565 |
-
#: templates/connect.php:374
|
1566 |
-
msgid "Newsletter"
|
1567 |
-
msgstr "Newsletter"
|
1568 |
-
|
1569 |
-
#: templates/connect.php:391, templates/forms/license-activation.php:41
|
1570 |
-
msgid "The %1$s will be periodically sending data to %2$s to check for security and feature updates, and verify the validity of your license."
|
1571 |
-
msgstr "The %1$s will be periodically sending data to %2$s to check for security and feature updates, and verify the validity of your license."
|
1572 |
-
|
1573 |
-
#: templates/connect.php:396
|
1574 |
-
msgid "What permissions are being granted?"
|
1575 |
-
msgstr "What permissions are being granted?"
|
1576 |
-
|
1577 |
-
#: templates/connect.php:417
|
1578 |
-
msgid "Don't have a license key?"
|
1579 |
-
msgstr "Don't have a license key?"
|
1580 |
-
|
1581 |
-
#: templates/connect.php:420
|
1582 |
-
msgid "Have a license key?"
|
1583 |
-
msgstr "Have a license key?"
|
1584 |
-
|
1585 |
-
#: templates/connect.php:428
|
1586 |
-
msgid "Privacy Policy"
|
1587 |
-
msgstr "Privacy Policy"
|
1588 |
-
|
1589 |
-
#: templates/connect.php:430
|
1590 |
-
msgid "License Agreement"
|
1591 |
-
msgstr "License Agreement"
|
1592 |
-
|
1593 |
-
#: templates/connect.php:430
|
1594 |
-
msgid "Terms of Service"
|
1595 |
-
msgstr "Terms of Service"
|
1596 |
-
|
1597 |
-
#: templates/connect.php:805
|
1598 |
-
msgctxt "as in the process of sending an email"
|
1599 |
-
msgid "Sending email"
|
1600 |
-
msgstr "Sending email"
|
1601 |
-
|
1602 |
-
#: templates/connect.php:806
|
1603 |
-
msgctxt "as activating plugin"
|
1604 |
-
msgid "Activating"
|
1605 |
-
msgstr "Activating"
|
1606 |
-
|
1607 |
-
#: templates/contact.php:78
|
1608 |
-
msgid "Contact"
|
1609 |
-
msgstr "Contact"
|
1610 |
-
|
1611 |
-
#: templates/debug.php:17
|
1612 |
-
msgctxt "as turned off"
|
1613 |
-
msgid "Off"
|
1614 |
-
msgstr "Off"
|
1615 |
-
|
1616 |
-
#: templates/debug.php:18
|
1617 |
-
msgctxt "as turned on"
|
1618 |
-
msgid "On"
|
1619 |
-
msgstr "On"
|
1620 |
-
|
1621 |
-
#: templates/debug.php:20
|
1622 |
-
msgid "SDK"
|
1623 |
-
msgstr "SDK"
|
1624 |
-
|
1625 |
-
#: templates/debug.php:24
|
1626 |
-
msgctxt "as code debugging"
|
1627 |
-
msgid "Debugging"
|
1628 |
-
msgstr "Debugging"
|
1629 |
-
|
1630 |
-
#: templates/debug.php:54, templates/debug.php:250, templates/debug.php:376, templates/debug.php:512
|
1631 |
-
msgid "Actions"
|
1632 |
-
msgstr "Actions"
|
1633 |
-
|
1634 |
-
#: templates/debug.php:64
|
1635 |
-
msgid "Are you sure you want to delete all Freemius data?"
|
1636 |
-
msgstr "Are you sure you want to delete all Freemius data?"
|
1637 |
-
|
1638 |
-
#: templates/debug.php:64
|
1639 |
-
msgid "Delete All Accounts"
|
1640 |
-
msgstr "Delete All Accounts"
|
1641 |
-
|
1642 |
-
#: templates/debug.php:71
|
1643 |
-
msgid "Clear API Cache"
|
1644 |
-
msgstr "Clear API Cache"
|
1645 |
-
|
1646 |
-
#: templates/debug.php:79
|
1647 |
-
msgid "Clear Updates Transients"
|
1648 |
-
msgstr "Clear Updates Transients"
|
1649 |
-
|
1650 |
-
#: templates/debug.php:86
|
1651 |
-
msgid "Sync Data From Server"
|
1652 |
-
msgstr "Sync Data From Server"
|
1653 |
-
|
1654 |
-
#: templates/debug.php:95
|
1655 |
-
msgid "Migrate Options to Network"
|
1656 |
-
msgstr "Migrate Options to Network"
|
1657 |
-
|
1658 |
-
#: templates/debug.php:100
|
1659 |
-
msgid "Load DB Option"
|
1660 |
-
msgstr "Load DB Option"
|
1661 |
-
|
1662 |
-
#: templates/debug.php:103
|
1663 |
-
msgid "Set DB Option"
|
1664 |
-
msgstr "Set DB Option"
|
1665 |
-
|
1666 |
-
#: templates/debug.php:182
|
1667 |
-
msgid "Key"
|
1668 |
-
msgstr "Key"
|
1669 |
-
|
1670 |
-
#: templates/debug.php:183
|
1671 |
-
msgid "Value"
|
1672 |
-
msgstr "Value"
|
1673 |
-
|
1674 |
-
#: templates/debug.php:199
|
1675 |
-
msgctxt "as software development kit versions"
|
1676 |
-
msgid "SDK Versions"
|
1677 |
-
msgstr "SDK Versions"
|
1678 |
-
|
1679 |
-
#: templates/debug.php:204
|
1680 |
-
msgid "SDK Path"
|
1681 |
-
msgstr "SDK Path"
|
1682 |
-
|
1683 |
-
#: templates/debug.php:205, templates/debug.php:244
|
1684 |
-
msgid "Module Path"
|
1685 |
-
msgstr "Module Path"
|
1686 |
-
|
1687 |
-
#: templates/debug.php:206
|
1688 |
-
msgid "Is Active"
|
1689 |
-
msgstr "Is Active"
|
1690 |
-
|
1691 |
-
#: templates/debug.php:234, templates/debug/plugins-themes-sync.php:35
|
1692 |
-
msgid "Plugins"
|
1693 |
-
msgstr "Plugins"
|
1694 |
-
|
1695 |
-
#: templates/debug.php:234, templates/debug/plugins-themes-sync.php:56
|
1696 |
-
msgid "Themes"
|
1697 |
-
msgstr "Themes"
|
1698 |
-
|
1699 |
-
#: templates/debug.php:239, templates/debug.php:370, templates/debug.php:456, templates/debug/scheduled-crons.php:80
|
1700 |
-
msgid "Slug"
|
1701 |
-
msgstr "Slug"
|
1702 |
-
|
1703 |
-
#: templates/debug.php:241, templates/debug.php:455
|
1704 |
-
msgid "Title"
|
1705 |
-
msgstr "Title"
|
1706 |
-
|
1707 |
-
#: templates/debug.php:242
|
1708 |
-
msgctxt "as application program interface"
|
1709 |
-
msgid "API"
|
1710 |
-
msgstr "API"
|
1711 |
-
|
1712 |
-
#: templates/debug.php:243
|
1713 |
-
msgid "Freemius State"
|
1714 |
-
msgstr "Freemius State"
|
1715 |
-
|
1716 |
-
#: templates/debug.php:247
|
1717 |
-
msgid "Network Blog"
|
1718 |
-
msgstr "Network Blog"
|
1719 |
-
|
1720 |
-
#: templates/debug.php:248
|
1721 |
-
msgid "Network User"
|
1722 |
-
msgstr "Network User"
|
1723 |
-
|
1724 |
-
#: templates/debug.php:285
|
1725 |
-
msgctxt "as connection was successful"
|
1726 |
-
msgid "Connected"
|
1727 |
-
msgstr "Connected"
|
1728 |
-
|
1729 |
-
#: templates/debug.php:286
|
1730 |
-
msgctxt "as connection blocked"
|
1731 |
-
msgid "Blocked"
|
1732 |
-
msgstr "Blocked"
|
1733 |
-
|
1734 |
-
#: templates/debug.php:322
|
1735 |
-
msgid "Simulate Trial Promotion"
|
1736 |
-
msgstr "Simulate Trial Promotion"
|
1737 |
-
|
1738 |
-
#: templates/debug.php:334
|
1739 |
-
msgid "Simulate Network Upgrade"
|
1740 |
-
msgstr "Simulate Network Upgrade"
|
1741 |
-
|
1742 |
-
#: templates/debug.php:359
|
1743 |
-
msgid "%s Installs"
|
1744 |
-
msgstr "%s Installs"
|
1745 |
-
|
1746 |
-
#: templates/debug.php:361
|
1747 |
-
msgctxt "like websites"
|
1748 |
-
msgid "Sites"
|
1749 |
-
msgstr "Sites"
|
1750 |
-
|
1751 |
-
#: templates/debug.php:367, templates/account/partials/site.php:156
|
1752 |
-
msgid "Blog ID"
|
1753 |
-
msgstr "Blog ID"
|
1754 |
-
|
1755 |
-
#: templates/debug.php:372
|
1756 |
-
msgid "License ID"
|
1757 |
-
msgstr "License ID"
|
1758 |
-
|
1759 |
-
#: templates/debug.php:436, templates/debug.php:535, templates/account/partials/addon.php:435
|
1760 |
-
msgctxt "verb"
|
1761 |
-
msgid "Delete"
|
1762 |
-
msgstr "Delete"
|
1763 |
-
|
1764 |
-
#: templates/debug.php:450
|
1765 |
-
msgid "Add Ons of module %s"
|
1766 |
-
msgstr "Add Ons of module %s"
|
1767 |
-
|
1768 |
-
#: templates/debug.php:502
|
1769 |
-
msgid "Users"
|
1770 |
-
msgstr "Users"
|
1771 |
-
|
1772 |
-
#: templates/debug.php:509
|
1773 |
-
msgid "Verified"
|
1774 |
-
msgstr "Verified"
|
1775 |
-
|
1776 |
-
#: templates/debug.php:551
|
1777 |
-
msgid "%s Licenses"
|
1778 |
-
msgstr "%s Licenses"
|
1779 |
-
|
1780 |
-
#: templates/debug.php:556
|
1781 |
-
msgid "Plugin ID"
|
1782 |
-
msgstr "Plugin ID"
|
1783 |
-
|
1784 |
-
#: templates/debug.php:558
|
1785 |
-
msgid "Plan ID"
|
1786 |
-
msgstr "Plan ID"
|
1787 |
-
|
1788 |
-
#: templates/debug.php:559
|
1789 |
-
msgid "Quota"
|
1790 |
-
msgstr "Quota"
|
1791 |
-
|
1792 |
-
#: templates/debug.php:560
|
1793 |
-
msgid "Activated"
|
1794 |
-
msgstr "Activated"
|
1795 |
-
|
1796 |
-
#: templates/debug.php:561
|
1797 |
-
msgid "Blocking"
|
1798 |
-
msgstr "Blocking"
|
1799 |
-
|
1800 |
-
#: templates/debug.php:563
|
1801 |
-
msgctxt "as expiration date"
|
1802 |
-
msgid "Expiration"
|
1803 |
-
msgstr "Expiration"
|
1804 |
-
|
1805 |
-
#: templates/debug.php:590
|
1806 |
-
msgid "Debug Log"
|
1807 |
-
msgstr "Debug Log"
|
1808 |
-
|
1809 |
-
#: templates/debug.php:594
|
1810 |
-
msgid "All Types"
|
1811 |
-
msgstr "All Types"
|
1812 |
-
|
1813 |
-
#: templates/debug.php:601
|
1814 |
-
msgid "All Requests"
|
1815 |
-
msgstr "All Requests"
|
1816 |
-
|
1817 |
-
#: templates/debug.php:606, templates/debug.php:635, templates/debug/logger.php:25
|
1818 |
-
msgid "File"
|
1819 |
-
msgstr "File"
|
1820 |
-
|
1821 |
-
#: templates/debug.php:607, templates/debug.php:633, templates/debug/logger.php:23
|
1822 |
-
msgid "Function"
|
1823 |
-
msgstr "Function"
|
1824 |
-
|
1825 |
-
#: templates/debug.php:608
|
1826 |
-
msgid "Process ID"
|
1827 |
-
msgstr "Process ID"
|
1828 |
-
|
1829 |
-
#: templates/debug.php:609
|
1830 |
-
msgid "Logger"
|
1831 |
-
msgstr "Logger"
|
1832 |
-
|
1833 |
-
#: templates/debug.php:610, templates/debug.php:634, templates/debug/logger.php:24
|
1834 |
-
msgid "Message"
|
1835 |
-
msgstr "Message"
|
1836 |
-
|
1837 |
-
#: templates/debug.php:612
|
1838 |
-
msgid "Filter"
|
1839 |
-
msgstr "Filter"
|
1840 |
-
|
1841 |
-
#: templates/debug.php:620
|
1842 |
-
msgid "Download"
|
1843 |
-
msgstr "Download"
|
1844 |
-
|
1845 |
-
#: templates/debug.php:631, templates/debug/logger.php:22
|
1846 |
-
msgid "Type"
|
1847 |
-
msgstr "Type"
|
1848 |
-
|
1849 |
-
#: templates/debug.php:636, templates/debug/logger.php:26
|
1850 |
-
msgid "Timestamp"
|
1851 |
-
msgstr "Timestamp"
|
1852 |
-
|
1853 |
-
#: templates/secure-https-header.php:28
|
1854 |
-
msgid "Secure HTTPS %s page, running from an external domain"
|
1855 |
-
msgstr "Secure HTTPS %s page, running from an external domain"
|
1856 |
-
|
1857 |
-
#: includes/customizer/class-fs-customizer-support-section.php:55, templates/plugin-info/features.php:43
|
1858 |
-
msgid "Support"
|
1859 |
-
msgstr "Support"
|
1860 |
-
|
1861 |
-
#: includes/debug/class-fs-debug-bar-panel.php:48, templates/debug/api-calls.php:54, templates/debug/logger.php:62
|
1862 |
-
msgctxt "milliseconds"
|
1863 |
-
msgid "ms"
|
1864 |
-
msgstr "ms"
|
1865 |
-
|
1866 |
-
#: includes/debug/debug-bar-start.php:41
|
1867 |
-
msgid "Freemius API"
|
1868 |
-
msgstr "Freemius API"
|
1869 |
-
|
1870 |
-
#: includes/debug/debug-bar-start.php:42
|
1871 |
-
msgid "Requests"
|
1872 |
-
msgstr "Requests"
|
1873 |
-
|
1874 |
-
#: templates/account/billing.php:22
|
1875 |
-
msgctxt "verb"
|
1876 |
-
msgid "Update"
|
1877 |
-
msgstr "Update"
|
1878 |
-
|
1879 |
-
#: templates/account/billing.php:33
|
1880 |
-
msgid "Billing"
|
1881 |
-
msgstr "Billing"
|
1882 |
-
|
1883 |
-
#: templates/account/billing.php:38, templates/account/billing.php:38
|
1884 |
-
msgid "Business name"
|
1885 |
-
msgstr "Business name"
|
1886 |
-
|
1887 |
-
#: templates/account/billing.php:39, templates/account/billing.php:39
|
1888 |
-
msgid "Tax / VAT ID"
|
1889 |
-
msgstr "Tax / VAT ID"
|
1890 |
-
|
1891 |
-
#: templates/account/billing.php:42, templates/account/billing.php:42, templates/account/billing.php:43, templates/account/billing.php:43
|
1892 |
-
msgid "Address Line %d"
|
1893 |
-
msgstr "Address Line %d"
|
1894 |
-
|
1895 |
-
#: templates/account/billing.php:46, templates/account/billing.php:46
|
1896 |
-
msgid "City"
|
1897 |
-
msgstr "City"
|
1898 |
-
|
1899 |
-
#: templates/account/billing.php:46, templates/account/billing.php:46
|
1900 |
-
msgid "Town"
|
1901 |
-
msgstr "Town"
|
1902 |
-
|
1903 |
-
#: templates/account/billing.php:47, templates/account/billing.php:47
|
1904 |
-
msgid "ZIP / Postal Code"
|
1905 |
-
msgstr "ZIP / Postal Code"
|
1906 |
-
|
1907 |
-
#: templates/account/billing.php:302
|
1908 |
-
msgid "Country"
|
1909 |
-
msgstr "Country"
|
1910 |
-
|
1911 |
-
#: templates/account/billing.php:304
|
1912 |
-
msgid "Select Country"
|
1913 |
-
msgstr "Select Country"
|
1914 |
-
|
1915 |
-
#: templates/account/billing.php:311, templates/account/billing.php:312
|
1916 |
-
msgid "State"
|
1917 |
-
msgstr "State"
|
1918 |
-
|
1919 |
-
#: templates/account/billing.php:311, templates/account/billing.php:312
|
1920 |
-
msgid "Province"
|
1921 |
-
msgstr "Province"
|
1922 |
-
|
1923 |
-
#: templates/account/payments.php:29
|
1924 |
-
msgid "Payments"
|
1925 |
-
msgstr "Payments"
|
1926 |
-
|
1927 |
-
#: templates/account/payments.php:36
|
1928 |
-
msgid "Date"
|
1929 |
-
msgstr "Date"
|
1930 |
-
|
1931 |
-
#: templates/account/payments.php:37
|
1932 |
-
msgid "Amount"
|
1933 |
-
msgstr "Amount"
|
1934 |
-
|
1935 |
-
#: templates/account/payments.php:38, templates/account/payments.php:50
|
1936 |
-
msgid "Invoice"
|
1937 |
-
msgstr "Invoice"
|
1938 |
-
|
1939 |
-
#: templates/debug/api-calls.php:56
|
1940 |
-
msgid "API"
|
1941 |
-
msgstr "API"
|
1942 |
-
|
1943 |
-
#: templates/debug/api-calls.php:68
|
1944 |
-
msgid "Method"
|
1945 |
-
msgstr "Method"
|
1946 |
-
|
1947 |
-
#: templates/debug/api-calls.php:69
|
1948 |
-
msgid "Code"
|
1949 |
-
msgstr "Code"
|
1950 |
-
|
1951 |
-
#: templates/debug/api-calls.php:70
|
1952 |
-
msgid "Length"
|
1953 |
-
msgstr "Length"
|
1954 |
-
|
1955 |
-
#: templates/debug/api-calls.php:71
|
1956 |
-
msgctxt "as file/folder path"
|
1957 |
-
msgid "Path"
|
1958 |
-
msgstr "Path"
|
1959 |
-
|
1960 |
-
#: templates/debug/api-calls.php:73
|
1961 |
-
msgid "Body"
|
1962 |
-
msgstr "Body"
|
1963 |
-
|
1964 |
-
#: templates/debug/api-calls.php:75
|
1965 |
-
msgid "Result"
|
1966 |
-
msgstr "Result"
|
1967 |
-
|
1968 |
-
#: templates/debug/api-calls.php:76
|
1969 |
-
msgid "Start"
|
1970 |
-
msgstr "Start"
|
1971 |
-
|
1972 |
-
#: templates/debug/api-calls.php:77
|
1973 |
-
msgid "End"
|
1974 |
-
msgstr "End"
|
1975 |
-
|
1976 |
-
#: templates/debug/logger.php:15
|
1977 |
-
msgid "Log"
|
1978 |
-
msgstr "Log"
|
1979 |
-
|
1980 |
-
#. translators: %s: time period (e.g. In "2 hours")
|
1981 |
-
#: templates/debug/plugins-themes-sync.php:18, templates/debug/scheduled-crons.php:91
|
1982 |
-
msgid "In %s"
|
1983 |
-
msgstr "In %s"
|
1984 |
-
|
1985 |
-
#. translators: %s: time period (e.g. "2 hours" ago)
|
1986 |
-
#: templates/debug/plugins-themes-sync.php:20, templates/debug/scheduled-crons.php:93
|
1987 |
-
msgid "%s ago"
|
1988 |
-
msgstr "%s ago"
|
1989 |
-
|
1990 |
-
#: templates/debug/plugins-themes-sync.php:21, templates/debug/scheduled-crons.php:74
|
1991 |
-
msgctxt "seconds"
|
1992 |
-
msgid "sec"
|
1993 |
-
msgstr "sec"
|
1994 |
-
|
1995 |
-
#: templates/debug/plugins-themes-sync.php:23
|
1996 |
-
msgid "Plugins & Themes Sync"
|
1997 |
-
msgstr "Plugins & Themes Sync"
|
1998 |
-
|
1999 |
-
#: templates/debug/plugins-themes-sync.php:28
|
2000 |
-
msgid "Total"
|
2001 |
-
msgstr "Total"
|
2002 |
-
|
2003 |
-
#: templates/debug/plugins-themes-sync.php:29, templates/debug/scheduled-crons.php:84
|
2004 |
-
msgid "Last"
|
2005 |
-
msgstr "Last"
|
2006 |
-
|
2007 |
-
#: templates/debug/scheduled-crons.php:76
|
2008 |
-
msgid "Scheduled Crons"
|
2009 |
-
msgstr "Scheduled Crons"
|
2010 |
-
|
2011 |
-
#: templates/debug/scheduled-crons.php:81
|
2012 |
-
msgid "Module"
|
2013 |
-
msgstr "Module"
|
2014 |
-
|
2015 |
-
#: templates/debug/scheduled-crons.php:82
|
2016 |
-
msgid "Module Type"
|
2017 |
-
msgstr "Module Type"
|
2018 |
-
|
2019 |
-
#: templates/debug/scheduled-crons.php:83
|
2020 |
-
msgid "Cron Type"
|
2021 |
-
msgstr "Cron Type"
|
2022 |
-
|
2023 |
-
#: templates/debug/scheduled-crons.php:85
|
2024 |
-
msgid "Next"
|
2025 |
-
msgstr "Next"
|
2026 |
-
|
2027 |
-
#: templates/forms/affiliation.php:82
|
2028 |
-
msgid "Non-expiring"
|
2029 |
-
msgstr "Non-expiring"
|
2030 |
-
|
2031 |
-
#: templates/forms/affiliation.php:85
|
2032 |
-
msgid "Apply to become an affiliate"
|
2033 |
-
msgstr "Apply to become an affiliate"
|
2034 |
-
|
2035 |
-
#: templates/forms/affiliation.php:104
|
2036 |
-
msgid "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2037 |
-
msgstr "Your affiliate application for %s has been accepted! Log in to your affiliate area at: %s."
|
2038 |
-
|
2039 |
-
#: templates/forms/affiliation.php:119
|
2040 |
-
msgid "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2041 |
-
msgstr "Thank you for applying for our affiliate program, we'll review your details during the next 14 days and will get back to you with further information."
|
2042 |
-
|
2043 |
-
#: templates/forms/affiliation.php:122
|
2044 |
-
msgid "Your affiliation account was temporarily suspended."
|
2045 |
-
msgstr "Your affiliation account was temporarily suspended."
|
2046 |
-
|
2047 |
-
#: templates/forms/affiliation.php:125
|
2048 |
-
msgid "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2049 |
-
msgstr "Thank you for applying for our affiliate program, unfortunately, we've decided at this point to reject your application. Please try again in 30 days."
|
2050 |
-
|
2051 |
-
#: templates/forms/affiliation.php:128
|
2052 |
-
msgid "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2053 |
-
msgstr "Due to violation of our affiliation terms, we decided to temporarily block your affiliation account. If you have any questions, please contact support."
|
2054 |
-
|
2055 |
-
#: templates/forms/affiliation.php:141
|
2056 |
-
msgid "Like the %s? Become our ambassador and earn cash ;-)"
|
2057 |
-
msgstr "Like the %s? Become our ambassador and earn cash ;-)"
|
2058 |
-
|
2059 |
-
#: templates/forms/affiliation.php:142
|
2060 |
-
msgid "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2061 |
-
msgstr "Refer new customers to our %s and earn %s commission on each successful sale you refer!"
|
2062 |
-
|
2063 |
-
#: templates/forms/affiliation.php:145
|
2064 |
-
msgid "Program Summary"
|
2065 |
-
msgstr "Program Summary"
|
2066 |
-
|
2067 |
-
#: templates/forms/affiliation.php:147
|
2068 |
-
msgid "%s commission when a customer purchases a new license."
|
2069 |
-
msgstr "%s commission when a customer purchases a new license."
|
2070 |
-
|
2071 |
-
#: templates/forms/affiliation.php:149
|
2072 |
-
msgid "Get commission for automated subscription renewals."
|
2073 |
-
msgstr "Get commission for automated subscription renewals."
|
2074 |
-
|
2075 |
-
#: templates/forms/affiliation.php:152
|
2076 |
-
msgid "%s tracking cookie after the first visit to maximize earnings potential."
|
2077 |
-
msgstr "%s tracking cookie after the first visit to maximize earnings potential."
|
2078 |
-
|
2079 |
-
#: templates/forms/affiliation.php:155
|
2080 |
-
msgid "Unlimited commissions."
|
2081 |
-
msgstr "Unlimited commissions."
|
2082 |
-
|
2083 |
-
#: templates/forms/affiliation.php:157
|
2084 |
-
msgid "%s minimum payout amount."
|
2085 |
-
msgstr "%s minimum payout amount."
|
2086 |
-
|
2087 |
-
#: templates/forms/affiliation.php:158
|
2088 |
-
msgid "Payouts are in USD and processed monthly via PayPal."
|
2089 |
-
msgstr "Payouts are in USD and processed monthly via PayPal."
|
2090 |
-
|
2091 |
-
#: templates/forms/affiliation.php:159
|
2092 |
-
msgid "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2093 |
-
msgstr "As we reserve 30 days for potential refunds, we only pay commissions that are older than 30 days."
|
2094 |
-
|
2095 |
-
#: templates/forms/affiliation.php:162
|
2096 |
-
msgid "Affiliate"
|
2097 |
-
msgstr "Affiliate"
|
2098 |
-
|
2099 |
-
#: templates/forms/affiliation.php:165, templates/forms/resend-key.php:23
|
2100 |
-
msgid "Email address"
|
2101 |
-
msgstr "Email address"
|
2102 |
-
|
2103 |
-
#: templates/forms/affiliation.php:169
|
2104 |
-
msgid "Full name"
|
2105 |
-
msgstr "Full name"
|
2106 |
-
|
2107 |
-
#: templates/forms/affiliation.php:173
|
2108 |
-
msgid "PayPal account email address"
|
2109 |
-
msgstr "PayPal account email address"
|
2110 |
-
|
2111 |
-
#: templates/forms/affiliation.php:177
|
2112 |
-
msgid "Where are you going to promote the %s?"
|
2113 |
-
msgstr "Where are you going to promote the %s?"
|
2114 |
-
|
2115 |
-
#: templates/forms/affiliation.php:179
|
2116 |
-
msgid "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2117 |
-
msgstr "Enter the domain of your website or other websites from where you plan to promote the %s."
|
2118 |
-
|
2119 |
-
#: templates/forms/affiliation.php:181
|
2120 |
-
msgid "Add another domain"
|
2121 |
-
msgstr "Add another domain"
|
2122 |
-
|
2123 |
-
#: templates/forms/affiliation.php:185
|
2124 |
-
msgid "Extra Domains"
|
2125 |
-
msgstr "Extra Domains"
|
2126 |
-
|
2127 |
-
#: templates/forms/affiliation.php:186
|
2128 |
-
msgid "Extra domains where you will be marketing the product from."
|
2129 |
-
msgstr "Extra domains where you will be marketing the product from."
|
2130 |
-
|
2131 |
-
#: templates/forms/affiliation.php:196
|
2132 |
-
msgid "Promotion methods"
|
2133 |
-
msgstr "Promotion methods"
|
2134 |
-
|
2135 |
-
#: templates/forms/affiliation.php:199
|
2136 |
-
msgid "Social media (Facebook, Twitter, etc.)"
|
2137 |
-
msgstr "Social media (Facebook, Twitter, etc.)"
|
2138 |
-
|
2139 |
-
#: templates/forms/affiliation.php:203
|
2140 |
-
msgid "Mobile apps"
|
2141 |
-
msgstr "Mobile apps"
|
2142 |
-
|
2143 |
-
#: templates/forms/affiliation.php:207
|
2144 |
-
msgid "Website, email, and social media statistics (optional)"
|
2145 |
-
msgstr "Website, email, and social media statistics (optional)"
|
2146 |
-
|
2147 |
-
#: templates/forms/affiliation.php:210
|
2148 |
-
msgid "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2149 |
-
msgstr "Please feel free to provide any relevant website or social media statistics, e.g. monthly unique site visits, number of email subscribers, followers, etc. (we will keep this information confidential)."
|
2150 |
-
|
2151 |
-
#: templates/forms/affiliation.php:214
|
2152 |
-
msgid "How will you promote us?"
|
2153 |
-
msgstr "How will you promote us?"
|
2154 |
-
|
2155 |
-
#: templates/forms/affiliation.php:217
|
2156 |
-
msgid "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2157 |
-
msgstr "Please provide details on how you intend to promote %s (please be as specific as possible)."
|
2158 |
-
|
2159 |
-
#: templates/forms/affiliation.php:223, templates/forms/resend-key.php:22
|
2160 |
-
msgid "Cancel"
|
2161 |
-
msgstr "Cancel"
|
2162 |
-
|
2163 |
-
#: templates/forms/affiliation.php:225
|
2164 |
-
msgid "Become an affiliate"
|
2165 |
-
msgstr "Become an affiliate"
|
2166 |
-
|
2167 |
-
#: templates/forms/data-debug-mode.php:25
|
2168 |
-
msgid "Please enter the license key to enable the debug mode:"
|
2169 |
-
msgstr "Please enter the license key to enable the debug mode:"
|
2170 |
-
|
2171 |
-
#: templates/forms/data-debug-mode.php:27
|
2172 |
-
msgid "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2173 |
-
msgstr "To enter the debug mode, please enter the secret key of the license owner (UserID = %d), which you can find in your \"My Profile\" section of your User Dashboard:"
|
2174 |
-
|
2175 |
-
#: templates/forms/data-debug-mode.php:32
|
2176 |
-
msgid "Submit"
|
2177 |
-
msgstr "Submit"
|
2178 |
-
|
2179 |
-
#: templates/forms/data-debug-mode.php:36
|
2180 |
-
msgid "User key"
|
2181 |
-
msgstr "User key"
|
2182 |
-
|
2183 |
-
#: templates/forms/license-activation.php:23
|
2184 |
-
msgid "Please enter the license key that you received in the email right after the purchase:"
|
2185 |
-
msgstr "Please enter the license key that you received in the email right after the purchase:"
|
2186 |
-
|
2187 |
-
#: templates/forms/license-activation.php:28
|
2188 |
-
msgid "Update License"
|
2189 |
-
msgstr "Update License"
|
2190 |
-
|
2191 |
-
#: templates/forms/optout.php:30
|
2192 |
-
msgctxt "verb"
|
2193 |
-
msgid "Opt Out"
|
2194 |
-
msgstr "Opt Out"
|
2195 |
-
|
2196 |
-
#: templates/forms/optout.php:31
|
2197 |
-
msgctxt "verb"
|
2198 |
-
msgid "Opt In"
|
2199 |
-
msgstr "Opt In"
|
2200 |
-
|
2201 |
-
#: templates/forms/optout.php:33
|
2202 |
-
msgid "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2203 |
-
msgstr "Usage tracking is done in the name of making %s better. Making a better user experience, prioritizing new features, and more good things. We'd really appreciate if you'll reconsider letting us continue with the tracking."
|
2204 |
-
|
2205 |
-
#: templates/forms/optout.php:35
|
2206 |
-
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
2207 |
-
msgstr "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
2208 |
-
|
2209 |
-
#: templates/forms/premium-versions-upgrade-handler.php:40
|
2210 |
-
msgid "There is a new version of %s available."
|
2211 |
-
msgstr "There is a new version of %s available."
|
2212 |
-
|
2213 |
-
#: templates/forms/premium-versions-upgrade-handler.php:41
|
2214 |
-
msgid " %s to access version %s security & feature updates, and support."
|
2215 |
-
msgstr " %s to access version %s security & feature updates, and support."
|
2216 |
-
|
2217 |
-
#: templates/forms/premium-versions-upgrade-handler.php:54
|
2218 |
-
msgid "New Version Available"
|
2219 |
-
msgstr "New Version Available"
|
2220 |
-
|
2221 |
-
#: templates/forms/premium-versions-upgrade-handler.php:75
|
2222 |
-
msgctxt "close a window"
|
2223 |
-
msgid "Dismiss"
|
2224 |
-
msgstr "Dismiss"
|
2225 |
-
|
2226 |
-
#: templates/forms/resend-key.php:21
|
2227 |
-
msgid "Send License Key"
|
2228 |
-
msgstr "Send License Key"
|
2229 |
-
|
2230 |
-
#: templates/forms/resend-key.php:57
|
2231 |
-
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
2232 |
-
msgstr "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
2233 |
-
|
2234 |
-
#: templates/forms/subscription-cancellation.php:37
|
2235 |
-
msgid "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2236 |
-
msgstr "Deactivating or uninstalling the %s will automatically disable the license, which you'll be able to use on another site."
|
2237 |
-
|
2238 |
-
#: templates/forms/subscription-cancellation.php:47
|
2239 |
-
msgid "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2240 |
-
msgstr "In case you are NOT planning on using this %s on this site (or any other site) - would you like to cancel the %s as well?"
|
2241 |
-
|
2242 |
-
#: templates/forms/subscription-cancellation.php:52
|
2243 |
-
msgid "license"
|
2244 |
-
msgstr "license"
|
2245 |
-
|
2246 |
-
#: templates/forms/subscription-cancellation.php:57
|
2247 |
-
msgid "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2248 |
-
msgstr "Cancel %s - I no longer need any security & feature updates, nor support for %s because I'm not planning to use the %s on this, or any other site."
|
2249 |
-
|
2250 |
-
#: templates/forms/subscription-cancellation.php:68
|
2251 |
-
msgid "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2252 |
-
msgstr "Don't cancel %s - I'm still interested in getting security & feature updates, as well as be able to contact support."
|
2253 |
-
|
2254 |
-
#: templates/forms/subscription-cancellation.php:103
|
2255 |
-
msgid "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2256 |
-
msgstr "Once your license expires you will no longer be able to use the %s, unless you activate it again with a valid premium license."
|
2257 |
-
|
2258 |
-
#: templates/forms/subscription-cancellation.php:136
|
2259 |
-
msgid "Cancel %s?"
|
2260 |
-
msgstr "Cancel %s?"
|
2261 |
-
|
2262 |
-
#: templates/forms/subscription-cancellation.php:143
|
2263 |
-
msgid "Proceed"
|
2264 |
-
msgstr "Proceed"
|
2265 |
-
|
2266 |
-
#: templates/forms/subscription-cancellation.php:191, templates/forms/deactivation/form.php:171
|
2267 |
-
msgid "Cancel %s & Proceed"
|
2268 |
-
msgstr "Cancel %s & Proceed"
|
2269 |
-
|
2270 |
-
#: templates/forms/trial-start.php:22
|
2271 |
-
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
2272 |
-
msgstr "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
2273 |
-
|
2274 |
-
#: templates/forms/trial-start.php:28
|
2275 |
-
msgid "For compliance with the WordPress.org guidelines, before we start the trial we ask that you opt in with your user and non-sensitive site information, allowing the %s to periodically send data to %s to check for version updates and to validate your trial."
|
2276 |
-
msgstr "For compliance with the WordPress.org guidelines, before we start the trial we ask that you opt in with your user and non-sensitive site information, allowing the %s to periodically send data to %s to check for version updates and to validate your trial."
|
2277 |
-
|
2278 |
-
#: templates/js/style-premium-theme.php:39
|
2279 |
-
msgid "Premium"
|
2280 |
-
msgstr "Premium"
|
2281 |
-
|
2282 |
-
#: templates/js/style-premium-theme.php:42
|
2283 |
-
msgid "Beta"
|
2284 |
-
msgstr "Beta"
|
2285 |
-
|
2286 |
-
#: templates/partials/network-activation.php:27
|
2287 |
-
msgid "Activate license on all sites in the network."
|
2288 |
-
msgstr "Activate license on all sites in the network."
|
2289 |
-
|
2290 |
-
#: templates/partials/network-activation.php:28
|
2291 |
-
msgid "Apply on all sites in the network."
|
2292 |
-
msgstr "Apply on all sites in the network."
|
2293 |
-
|
2294 |
-
#: templates/partials/network-activation.php:31
|
2295 |
-
msgid "Activate license on all pending sites."
|
2296 |
-
msgstr "Activate license on all pending sites."
|
2297 |
-
|
2298 |
-
#: templates/partials/network-activation.php:32
|
2299 |
-
msgid "Apply on all pending sites."
|
2300 |
-
msgstr "Apply on all pending sites."
|
2301 |
-
|
2302 |
-
#: templates/partials/network-activation.php:40, templates/partials/network-activation.php:74
|
2303 |
-
msgid "allow"
|
2304 |
-
msgstr "allow"
|
2305 |
-
|
2306 |
-
#: templates/partials/network-activation.php:43, templates/partials/network-activation.php:77
|
2307 |
-
msgid "delegate"
|
2308 |
-
msgstr "delegate"
|
2309 |
-
|
2310 |
-
#: templates/partials/network-activation.php:47, templates/partials/network-activation.php:81
|
2311 |
-
msgid "skip"
|
2312 |
-
msgstr "skip"
|
2313 |
-
|
2314 |
-
#: templates/plugin-info/description.php:72, templates/plugin-info/screenshots.php:31
|
2315 |
-
msgid "Click to view full-size screenshot %d"
|
2316 |
-
msgstr "Click to view full-size screenshot %d"
|
2317 |
-
|
2318 |
-
#: templates/plugin-info/features.php:56
|
2319 |
-
msgid "Unlimited Updates"
|
2320 |
-
msgstr "Unlimited Updates"
|
2321 |
-
|
2322 |
-
#: templates/account/partials/activate-license-button.php:46
|
2323 |
-
msgid "Localhost"
|
2324 |
-
msgstr "Localhost"
|
2325 |
-
|
2326 |
-
#: templates/account/partials/activate-license-button.php:50
|
2327 |
-
msgctxt "as 5 licenses left"
|
2328 |
-
msgid "%s left"
|
2329 |
-
msgstr "%s left"
|
2330 |
-
|
2331 |
-
#: templates/account/partials/activate-license-button.php:51
|
2332 |
-
msgid "Last license"
|
2333 |
-
msgstr "Last license"
|
2334 |
-
|
2335 |
-
#. translators: %1$s: Either 'Downgrading your plan' or 'Cancelling the subscription'
|
2336 |
-
#: templates/account/partials/addon.php:29
|
2337 |
-
msgid "%1$s will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
2338 |
-
msgstr "%1$s will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
2339 |
-
|
2340 |
-
#: templates/account/partials/addon.php:185
|
2341 |
-
msgid "Cancelled"
|
2342 |
-
msgstr "Cancelled"
|
2343 |
-
|
2344 |
-
#: templates/account/partials/addon.php:195
|
2345 |
-
msgid "No expiration"
|
2346 |
-
msgstr "No expiration"
|
2347 |
-
|
2348 |
-
#: templates/account/partials/site.php:189
|
2349 |
-
msgid "Owner Name"
|
2350 |
-
msgstr "Owner Name"
|
2351 |
-
|
2352 |
-
#: templates/account/partials/site.php:201
|
2353 |
-
msgid "Owner Email"
|
2354 |
-
msgstr "Owner Email"
|
2355 |
-
|
2356 |
-
#: templates/account/partials/site.php:213
|
2357 |
-
msgid "Owner ID"
|
2358 |
-
msgstr "Owner ID"
|
2359 |
-
|
2360 |
-
#: templates/account/partials/site.php:286
|
2361 |
-
msgid "Subscription"
|
2362 |
-
msgstr "Subscription"
|
2363 |
-
|
2364 |
-
#: templates/forms/deactivation/contact.php:19
|
2365 |
-
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
2366 |
-
msgstr "Sorry for the inconvenience and we are here to help if you give us a chance."
|
2367 |
-
|
2368 |
-
#: templates/forms/deactivation/contact.php:22
|
2369 |
-
msgid "Contact Support"
|
2370 |
-
msgstr "Contact Support"
|
2371 |
-
|
2372 |
-
#: templates/forms/deactivation/form.php:64
|
2373 |
-
msgid "Anonymous feedback"
|
2374 |
-
msgstr "Anonymous feedback"
|
2375 |
-
|
2376 |
-
#: templates/forms/deactivation/form.php:70
|
2377 |
-
msgid "Deactivate"
|
2378 |
-
msgstr "Deactivate"
|
2379 |
-
|
2380 |
-
#: templates/forms/deactivation/form.php:72
|
2381 |
-
msgid "Activate %s"
|
2382 |
-
msgstr "Activate %s"
|
2383 |
-
|
2384 |
-
#: templates/forms/deactivation/form.php:87
|
2385 |
-
msgid "Quick Feedback"
|
2386 |
-
msgstr "Quick Feedback"
|
2387 |
-
|
2388 |
-
#: templates/forms/deactivation/form.php:91
|
2389 |
-
msgid "If you have a moment, please let us know why you are %s"
|
2390 |
-
msgstr "If you have a moment, please let us know why you are %s"
|
2391 |
-
|
2392 |
-
#: templates/forms/deactivation/form.php:91
|
2393 |
-
msgid "deactivating"
|
2394 |
-
msgstr "deactivating"
|
2395 |
-
|
2396 |
-
#: templates/forms/deactivation/form.php:91
|
2397 |
-
msgid "switching"
|
2398 |
-
msgstr "switching"
|
2399 |
-
|
2400 |
-
#: templates/forms/deactivation/form.php:365
|
2401 |
-
msgid "Submit & %s"
|
2402 |
-
msgstr "Submit & %s"
|
2403 |
-
|
2404 |
-
#: templates/forms/deactivation/form.php:386
|
2405 |
-
msgid "Kindly tell us the reason so we can improve."
|
2406 |
-
msgstr "Kindly tell us the reason so we can improve."
|
2407 |
-
|
2408 |
-
#: templates/forms/deactivation/form.php:511
|
2409 |
-
msgid "Yes - %s"
|
2410 |
-
msgstr "Yes - %s"
|
2411 |
-
|
2412 |
-
#: templates/forms/deactivation/form.php:518
|
2413 |
-
msgid "Skip & %s"
|
2414 |
-
msgstr "Skip & %s"
|
2415 |
-
|
2416 |
-
#: templates/forms/deactivation/retry-skip.php:21
|
2417 |
-
msgid "Click here to use the plugin anonymously"
|
2418 |
-
msgstr "Click here to use the plugin anonymously"
|
2419 |
-
|
2420 |
-
#: templates/forms/deactivation/retry-skip.php:23
|
2421 |
-
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
2422 |
-
msgstr "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
freemius/languages/freemius-es_ES.mo
CHANGED
Binary file
|
freemius/languages/freemius-es_ES.po
DELETED
@@ -1,2546 +0,0 @@
|
|
1 |
-
# Copyright (C) 2019 freemius
|
2 |
-
# This file is distributed under the same license as the freemius package.
|
3 |
-
# Translators:
|
4 |
-
# Carlos Longarela <carlos@longarela.eu>, 2017-2019
|
5 |
-
msgid ""
|
6 |
-
msgstr ""
|
7 |
-
"Project-Id-Version: WordPress SDK\n"
|
8 |
-
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
9 |
-
"POT-Creation-Date: \n"
|
10 |
-
"PO-Revision-Date: 2019-11-10 01:59+0000\n"
|
11 |
-
"Last-Translator: Carlos Longarela <carlos@longarela.eu>\n"
|
12 |
-
"Language: es_ES\n"
|
13 |
-
"Language-Team: Spanish (Spain) (http://www.transifex.com/freemius/wordpress-sdk/language/es_ES/)\n"
|
14 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
15 |
-
"Content-Transfer-Encoding: 8bit\n"
|
16 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
17 |
-
"MIME-Version: 1.0\n"
|
18 |
-
"X-Poedit-Basepath: ..\n"
|
19 |
-
"X-Poedit-KeywordsList: get_text_inline;fs_text_inline;fs_echo_inline;fs_esc_js_inline;fs_esc_attr_inline;fs_esc_attr_echo_inline;fs_esc_html_inline;fs_esc_html_echo_inline;get_text_x_inline:1,2c;fs_text_x_inline:1,2c;fs_echo_x_inline:1,2c;fs_esc_attr_x_inline:1,2c;fs_esc_js_x_inline:1,2c;fs_esc_js_echo_x_inline:1,2c;fs_esc_html_x_inline:1,2c;fs_esc_html_echo_x_inline:1,2c\n"
|
20 |
-
"X-Poedit-SearchPath-0: .\n"
|
21 |
-
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
23 |
-
|
24 |
-
#: includes/class-freemius.php1880, templates/account.php:840
|
25 |
-
msgid "An update to a Beta version will replace your installed version of %s with the latest Beta release - use with caution, and not on production sites. You have been warned."
|
26 |
-
msgstr "Una actualización a una versión Beta reemplazará tu versión instalada de %s con la última versión Beta - úsalo con precaución, y no en sitios de producción. Te hemos avisado."
|
27 |
-
|
28 |
-
#: includes/class-freemius.php:1887
|
29 |
-
msgid "Would you like to proceed with the update?"
|
30 |
-
msgstr "¿Deseas continuar con la actualización?"
|
31 |
-
|
32 |
-
#: includes/class-freemius.php:2095
|
33 |
-
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
34 |
-
msgstr "Freemius SDK no pudo encontrar el archivo principal del plugin. Por favor contacta a sdk@freemius.com con el error actual."
|
35 |
-
|
36 |
-
#: includes/class-freemius.php:2097
|
37 |
-
msgid "Error"
|
38 |
-
msgstr "Error"
|
39 |
-
|
40 |
-
#: includes/class-freemius.php:2491
|
41 |
-
msgid "I found a better %s"
|
42 |
-
msgstr "He encontrado un %s mejor"
|
43 |
-
|
44 |
-
#: includes/class-freemius.php:2493
|
45 |
-
msgid "What's the %s's name?"
|
46 |
-
msgstr "¿Cuál es el nombre de %s?"
|
47 |
-
|
48 |
-
#: includes/class-freemius.php:2499
|
49 |
-
msgid "It's a temporary %s. I'm just debugging an issue."
|
50 |
-
msgstr "Es una %stemporal . Sólo estoy depurando un problema"
|
51 |
-
|
52 |
-
#: includes/class-freemius.php:2501
|
53 |
-
msgid "Deactivation"
|
54 |
-
msgstr "Desactivación"
|
55 |
-
|
56 |
-
#: includes/class-freemius.php:2502
|
57 |
-
msgid "Theme Switch"
|
58 |
-
msgstr "Cambiar tema"
|
59 |
-
|
60 |
-
#: includes/class-freemius.php2511, templates/forms/resend-key.php:24
|
61 |
-
msgid "Other"
|
62 |
-
msgstr "Otra"
|
63 |
-
|
64 |
-
#: includes/class-freemius.php:2519
|
65 |
-
msgid "I no longer need the %s"
|
66 |
-
msgstr "Ya no necesito el %s"
|
67 |
-
|
68 |
-
#: includes/class-freemius.php:2526
|
69 |
-
msgid "I only needed the %s for a short period"
|
70 |
-
msgstr "Sólo necesitaba la %s por un corto período"
|
71 |
-
|
72 |
-
#: includes/class-freemius.php:2532
|
73 |
-
msgid "The %s broke my site"
|
74 |
-
msgstr "%s ha roto mi sitio"
|
75 |
-
|
76 |
-
#: includes/class-freemius.php:2539
|
77 |
-
msgid "The %s suddenly stopped working"
|
78 |
-
msgstr "%s de repente ha dejado de funcionar"
|
79 |
-
|
80 |
-
#: includes/class-freemius.php:2549
|
81 |
-
msgid "I can't pay for it anymore"
|
82 |
-
msgstr "No puedo pagarlo durante más tiempo"
|
83 |
-
|
84 |
-
#: includes/class-freemius.php:2551
|
85 |
-
msgid "What price would you feel comfortable paying?"
|
86 |
-
msgstr "¿Con qué precio te sentirías cómodo pagando?"
|
87 |
-
|
88 |
-
#: includes/class-freemius.php:2557
|
89 |
-
msgid "I don't like to share my information with you"
|
90 |
-
msgstr "No me gusta compartir mi información contigo"
|
91 |
-
|
92 |
-
#: includes/class-freemius.php:2578
|
93 |
-
msgid "The %s didn't work"
|
94 |
-
msgstr "El %s no funcionaba"
|
95 |
-
|
96 |
-
#: includes/class-freemius.php:2588
|
97 |
-
msgid "I couldn't understand how to make it work"
|
98 |
-
msgstr "No entiendo cómo hacerlo funcionar"
|
99 |
-
|
100 |
-
#: includes/class-freemius.php:2596
|
101 |
-
msgid "The %s is great, but I need specific feature that you don't support"
|
102 |
-
msgstr "%s es genial, pero necesito una característica que no soportáis"
|
103 |
-
|
104 |
-
#: includes/class-freemius.php:2598
|
105 |
-
msgid "What feature?"
|
106 |
-
msgstr "¿Qué característica?"
|
107 |
-
|
108 |
-
#: includes/class-freemius.php:2602
|
109 |
-
msgid "The %s is not working"
|
110 |
-
msgstr " El %s no funciona"
|
111 |
-
|
112 |
-
#: includes/class-freemius.php:2604
|
113 |
-
msgid "Kindly share what didn't work so we can fix it for future users..."
|
114 |
-
msgstr "Por favor, comparte lo que no funcionó para que podamos arreglarlo para los futuros usuarios..."
|
115 |
-
|
116 |
-
#: includes/class-freemius.php:2608
|
117 |
-
msgid "It's not what I was looking for"
|
118 |
-
msgstr "No es lo que estaba buscando"
|
119 |
-
|
120 |
-
#: includes/class-freemius.php:2610
|
121 |
-
msgid "What you've been looking for?"
|
122 |
-
msgstr "¿Que has estado buscando?"
|
123 |
-
|
124 |
-
#: includes/class-freemius.php:2614
|
125 |
-
msgid "The %s didn't work as expected"
|
126 |
-
msgstr " El %s no funciona como esperaba"
|
127 |
-
|
128 |
-
#: includes/class-freemius.php:2616
|
129 |
-
msgid "What did you expect?"
|
130 |
-
msgstr "¿Qué esperas?"
|
131 |
-
|
132 |
-
#: includes/class-freemius.php3471, templates/debug.php:20
|
133 |
-
msgid "Freemius Debug"
|
134 |
-
msgstr "Debug Freemius"
|
135 |
-
|
136 |
-
#: includes/class-freemius.php:4223
|
137 |
-
msgid "I don't know what is cURL or how to install it, help me!"
|
138 |
-
msgstr "No sé qué es cURL o cómo instalarlo, ¡ayúdame!"
|
139 |
-
|
140 |
-
#: includes/class-freemius.php:4225
|
141 |
-
msgid "We'll make sure to contact your hosting company and resolve the issue. You will get a follow-up email to %s once we have an update."
|
142 |
-
msgstr "Nos aseguraremos de ponernos en contacto con tu empresa de alojamiento web y resolver el problema. Recibirás un correo electrónico de seguimiento a %s tan pronto tengamos una actualización."
|
143 |
-
|
144 |
-
#: includes/class-freemius.php:4232
|
145 |
-
msgid "Great, please install cURL and enable it in your php.ini file. In addition, search for the 'disable_functions' directive in your php.ini file and remove any disabled methods starting with 'curl_'. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the %s and reactivate it back again."
|
146 |
-
msgstr "Genial, por favor instala cURL y habilítalo en el archivo php.ini. Además, busca la directiva 'disable_functions' en el archivo php.ini y quita cualquier método que comienza con 'curl_'. Para asegurarte de que se activó con éxito, utiliza 'phpinfo()'. Una vez activado, desactiva el %s y reactívalo de nuevo."
|
147 |
-
|
148 |
-
#: includes/class-freemius.php:4337
|
149 |
-
msgid "Yes - do your thing"
|
150 |
-
msgstr "Vamos, adelante"
|
151 |
-
|
152 |
-
#: includes/class-freemius.php:4342
|
153 |
-
msgid "No - just deactivate"
|
154 |
-
msgstr "No - sólo desactivar"
|
155 |
-
|
156 |
-
#: includes/class-freemius.php4387, includes/class-freemius.php4881,
|
157 |
-
#: includes/class-freemius.php6032, includes/class-freemius.php13153,
|
158 |
-
#: includes/class-freemius.php16558, includes/class-freemius.php16646,
|
159 |
-
#: includes/class-freemius.php16812, includes/class-freemius.php19040,
|
160 |
-
#: includes/class-freemius.php19381, includes/class-freemius.php19391,
|
161 |
-
#: includes/class-freemius.php20051, includes/class-freemius.php20924,
|
162 |
-
#: includes/class-freemius.php21039, includes/class-freemius.php21183,
|
163 |
-
#: templates/add-ons.php:57
|
164 |
-
msgctxt "exclamation"
|
165 |
-
msgid "Oops"
|
166 |
-
msgstr "Oops"
|
167 |
-
|
168 |
-
#: includes/class-freemius.php:4456
|
169 |
-
msgid "Thank for giving us the chance to fix it! A message was just sent to our technical staff. We will get back to you as soon as we have an update to %s. Appreciate your patience."
|
170 |
-
msgstr "¡Gracias por darnos la oportunidad de arreglarlo! Acabamos de enviar un mensaje a nuestro personal técnico. Nos pondremos en contacto contigo tan pronto como tengamos una actualización de %s. Apreciamos tu paciencia."
|
171 |
-
|
172 |
-
#: includes/class-freemius.php:4878
|
173 |
-
msgctxt "addonX cannot run without pluginY"
|
174 |
-
msgid "%s cannot run without %s."
|
175 |
-
msgstr "%s no se puede ejecutar sin %s."
|
176 |
-
|
177 |
-
#: includes/class-freemius.php:4879
|
178 |
-
msgctxt "addonX cannot run..."
|
179 |
-
msgid "%s cannot run without the plugin."
|
180 |
-
msgstr "%s no se puede ejecutar sin el plugin."
|
181 |
-
|
182 |
-
#: includes/class-freemius.php5052, includes/class-freemius.php5077,
|
183 |
-
#: includes/class-freemius.php:20122
|
184 |
-
msgid "Unexpected API error. Please contact the %s's author with the following error."
|
185 |
-
msgstr "Error inesperado del API. Pónte en contacto con el autor de %s indicándole el siguiente error."
|
186 |
-
|
187 |
-
#: includes/class-freemius.php:5720
|
188 |
-
msgid "Premium %s version was successfully activated."
|
189 |
-
msgstr "La versión Premium %s ha sido activada con éxito."
|
190 |
-
|
191 |
-
#: includes/class-freemius.php5732, includes/class-freemius.php:7599
|
192 |
-
msgctxt ""
|
193 |
-
msgid "W00t"
|
194 |
-
msgstr "W00t"
|
195 |
-
|
196 |
-
#: includes/class-freemius.php:5747
|
197 |
-
msgid "You have a %s license."
|
198 |
-
msgstr "Tienes una licencia %s."
|
199 |
-
|
200 |
-
#: includes/class-freemius.php5751, includes/class-freemius.php15975,
|
201 |
-
#: includes/class-freemius.php15986, includes/class-freemius.php19292,
|
202 |
-
#: includes/class-freemius.php19642, includes/class-freemius.php19711,
|
203 |
-
#: includes/class-freemius.php:19876
|
204 |
-
msgctxt "interjection expressing joy or exuberance"
|
205 |
-
msgid "Yee-haw"
|
206 |
-
msgstr "Vaya"
|
207 |
-
|
208 |
-
#: includes/class-freemius.php:6015
|
209 |
-
msgid "%s free trial was successfully cancelled. Since the add-on is premium only it was automatically deactivated. If you like to use it in the future, you'll have to purchase a license."
|
210 |
-
msgstr "la prueba gratuita de %s fue cancelada con éxito. Puesto que el complemento es sólo premium se desactivó automáticamente. Si quieres utilizarlo en el futuro, deberás comprar una licencia."
|
211 |
-
|
212 |
-
#: includes/class-freemius.php:6019
|
213 |
-
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
214 |
-
msgstr "%s es un complemento único de premium. Tienes que comprar una licencia primero antes de activar el plugin."
|
215 |
-
|
216 |
-
#: includes/class-freemius.php6028, templates/add-ons.php186,
|
217 |
-
#: templates/account/partials/addon.php:381
|
218 |
-
msgid "More information about %s"
|
219 |
-
msgstr "Más información sobre %s"
|
220 |
-
|
221 |
-
#: includes/class-freemius.php:6029
|
222 |
-
msgid "Purchase License"
|
223 |
-
msgstr "Comprar licencia"
|
224 |
-
|
225 |
-
#: includes/class-freemius.php6964, templates/connect.php:163
|
226 |
-
msgid "You should receive an activation email for %s to your mailbox at %s. Please make sure you click the activation button in that email to %s."
|
227 |
-
msgstr "Recibirás un correo de activación para %s en tu buzón en %s. Por favor, asegúrate de hacer clic en el botón de activación en ese correo electrónico para %s."
|
228 |
-
|
229 |
-
#: includes/class-freemius.php:6968
|
230 |
-
msgid "start the trial"
|
231 |
-
msgstr "comenzar el período de prueba"
|
232 |
-
|
233 |
-
#: includes/class-freemius.php6969, templates/connect.php:167
|
234 |
-
msgid "complete the install"
|
235 |
-
msgstr "completar la instalación"
|
236 |
-
|
237 |
-
#: includes/class-freemius.php:7081
|
238 |
-
msgid "You are just one step away - %s"
|
239 |
-
msgstr "Estás a sólo un paso - %s"
|
240 |
-
|
241 |
-
#: includes/class-freemius.php:7084
|
242 |
-
msgctxt "%s - plugin name. As complete \"PluginX\" activation now"
|
243 |
-
msgid "Complete \"%s\" Activation Now"
|
244 |
-
msgstr "Completar la activación de \"%s\" ahora"
|
245 |
-
|
246 |
-
#: includes/class-freemius.php:7162
|
247 |
-
msgid "We made a few tweaks to the %s, %s"
|
248 |
-
msgstr "Hemos realizado algunas optimizaciones al %s, %s"
|
249 |
-
|
250 |
-
#: includes/class-freemius.php:7166
|
251 |
-
msgid "Opt in to make \"%s\" better!"
|
252 |
-
msgstr "¡Inscríbite para hacer \"%s\" Mejor!"
|
253 |
-
|
254 |
-
#: includes/class-freemius.php:7598
|
255 |
-
msgid "The upgrade of %s was successfully completed."
|
256 |
-
msgstr "La actualización de %s se completó con éxito."
|
257 |
-
|
258 |
-
#: includes/class-freemius.php9802, includes/class-fs-plugin-updater.php1038,
|
259 |
-
#: includes/class-fs-plugin-updater.php1233,
|
260 |
-
#: includes/class-fs-plugin-updater.php1240,
|
261 |
-
#: templates/auto-installation.php:32
|
262 |
-
msgid "Add-On"
|
263 |
-
msgstr "Complemento"
|
264 |
-
|
265 |
-
#: includes/class-freemius.php9804, templates/account.php335,
|
266 |
-
#: templates/account.php343, templates/debug.php360, templates/debug.php:551
|
267 |
-
msgid "Plugin"
|
268 |
-
msgstr "Plugin"
|
269 |
-
|
270 |
-
#: includes/class-freemius.php9805, templates/account.php336,
|
271 |
-
#: templates/account.php344, templates/debug.php360, templates/debug.php551,
|
272 |
-
#: templates/forms/deactivation/form.php:71
|
273 |
-
msgid "Theme"
|
274 |
-
msgstr "Tema"
|
275 |
-
|
276 |
-
#: includes/class-freemius.php:12596
|
277 |
-
msgid "An unknown error has occurred while trying to set the user's beta mode."
|
278 |
-
msgstr "Se ha producido un error desconocido al intentar establecer el modo beta del usuario."
|
279 |
-
|
280 |
-
#: includes/class-freemius.php:13020
|
281 |
-
msgid "Invalid site details collection."
|
282 |
-
msgstr "Colección de detalles del sitio no válida."
|
283 |
-
|
284 |
-
#: includes/class-freemius.php:13140
|
285 |
-
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
286 |
-
msgstr "No podemos encontrar tu dirección de correo electrónico en el sistema, ¿estás seguro de que es la dirección de correo electrónico correcta?"
|
287 |
-
|
288 |
-
#: includes/class-freemius.php:13142
|
289 |
-
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
290 |
-
msgstr "No vemos ninguna licencia activa asociada a esa dirección de correo electrónico, ¿estás seguro de que es la dirección de correo electrónico correcta?"
|
291 |
-
|
292 |
-
#: includes/class-freemius.php:13416
|
293 |
-
msgid "Account is pending activation."
|
294 |
-
msgstr "La cuenta está pendiente de activación"
|
295 |
-
|
296 |
-
#: includes/class-freemius.php13528,
|
297 |
-
#: templates/forms/premium-versions-upgrade-handler.php:47
|
298 |
-
msgid "Buy a license now"
|
299 |
-
msgstr "Compra una licencia ahora"
|
300 |
-
|
301 |
-
#: includes/class-freemius.php13540,
|
302 |
-
#: templates/forms/premium-versions-upgrade-handler.php:46
|
303 |
-
msgid "Renew your license now"
|
304 |
-
msgstr "Renueva tu licencia ahora"
|
305 |
-
|
306 |
-
#: includes/class-freemius.php:13544
|
307 |
-
msgid "%s to access version %s security & feature updates, and support."
|
308 |
-
msgstr "%s para acceder a la versión %s de actualizaciones de funciones, seguridad y soporte."
|
309 |
-
|
310 |
-
#: includes/class-freemius.php:15957
|
311 |
-
msgid "%s activation was successfully completed."
|
312 |
-
msgstr "%s activación se completó con éxito."
|
313 |
-
|
314 |
-
#: includes/class-freemius.php:15971
|
315 |
-
msgid "Your account was successfully activated with the %s plan."
|
316 |
-
msgstr "Tu cuenta se ha activado correctamente con el plan %s."
|
317 |
-
|
318 |
-
#: includes/class-freemius.php15982, includes/class-freemius.php:19707
|
319 |
-
msgid "Your trial has been successfully started."
|
320 |
-
msgstr "Tu versión de prueba se ha iniciado con éxito."
|
321 |
-
|
322 |
-
#: includes/class-freemius.php16556, includes/class-freemius.php16644,
|
323 |
-
#: includes/class-freemius.php:16810
|
324 |
-
msgid "Couldn't activate %s."
|
325 |
-
msgstr "No se puede activar %s."
|
326 |
-
|
327 |
-
#: includes/class-freemius.php16557, includes/class-freemius.php16645,
|
328 |
-
#: includes/class-freemius.php:16811
|
329 |
-
msgid "Please contact us with the following message:"
|
330 |
-
msgstr "Por favor contáctanos con el siguiente mensaje:"
|
331 |
-
|
332 |
-
#: includes/class-freemius.php16641, templates/forms/data-debug-mode.php:162
|
333 |
-
msgid "An unknown error has occurred."
|
334 |
-
msgstr "Se ha producido un error desconocido."
|
335 |
-
|
336 |
-
#: includes/class-freemius.php17168, includes/class-freemius.php:22082
|
337 |
-
msgid "Upgrade"
|
338 |
-
msgstr "Actualizar"
|
339 |
-
|
340 |
-
#: includes/class-freemius.php:17174
|
341 |
-
msgid "Start Trial"
|
342 |
-
msgstr "Comenzar el período de prueba"
|
343 |
-
|
344 |
-
#: includes/class-freemius.php:17176
|
345 |
-
msgid "Pricing"
|
346 |
-
msgstr "Precio"
|
347 |
-
|
348 |
-
#: includes/class-freemius.php17256, includes/class-freemius.php:17258
|
349 |
-
msgid "Affiliation"
|
350 |
-
msgstr "Afiliación"
|
351 |
-
|
352 |
-
#: includes/class-freemius.php17286, includes/class-freemius.php17288,
|
353 |
-
#: templates/account.php183, templates/debug.php:326
|
354 |
-
msgid "Account"
|
355 |
-
msgstr "Cuenta"
|
356 |
-
|
357 |
-
#: includes/class-freemius.php17302, includes/class-freemius.php17304,
|
358 |
-
#: includes/customizer/class-fs-customizer-support-section.php:60
|
359 |
-
msgid "Contact Us"
|
360 |
-
msgstr "Contáctanos"
|
361 |
-
|
362 |
-
#: includes/class-freemius.php17315, includes/class-freemius.php17317,
|
363 |
-
#: includes/class-freemius.php22096, templates/account.php111,
|
364 |
-
#: templates/account/partials/addon.php:44
|
365 |
-
msgid "Add-Ons"
|
366 |
-
msgstr "Complementos"
|
367 |
-
|
368 |
-
#: includes/class-freemius.php:17351
|
369 |
-
msgctxt "ASCII arrow left icon"
|
370 |
-
msgid "←"
|
371 |
-
msgstr "←"
|
372 |
-
|
373 |
-
#: includes/class-freemius.php:17351
|
374 |
-
msgctxt "ASCII arrow right icon"
|
375 |
-
msgid "➤"
|
376 |
-
msgstr "➤"
|
377 |
-
|
378 |
-
#: includes/class-freemius.php17353, templates/pricing.php:103
|
379 |
-
msgctxt "noun"
|
380 |
-
msgid "Pricing"
|
381 |
-
msgstr "Precio"
|
382 |
-
|
383 |
-
#: includes/class-freemius.php17566,
|
384 |
-
#: includes/customizer/class-fs-customizer-support-section.php:67
|
385 |
-
msgid "Support Forum"
|
386 |
-
msgstr "Foro de soporte"
|
387 |
-
|
388 |
-
#: includes/class-freemius.php:18536
|
389 |
-
msgid "Your email has been successfully verified - you are AWESOME!"
|
390 |
-
msgstr "Tu email ha sido verificado correctamente - ¡Eres IMPRESIONANTE!"
|
391 |
-
|
392 |
-
#: includes/class-freemius.php:18537
|
393 |
-
msgctxt "a positive response"
|
394 |
-
msgid "Right on"
|
395 |
-
msgstr "Bien hecho"
|
396 |
-
|
397 |
-
#: includes/class-freemius.php:19041
|
398 |
-
msgid "seems like the key you entered doesn't match our records."
|
399 |
-
msgstr "parece que la clave que has introducido no coincide con nuestros registros."
|
400 |
-
|
401 |
-
#: includes/class-freemius.php:19065
|
402 |
-
msgid "Debug mode was successfully enabled and will be automatically disabled in 60 min. You can also disable it earlier by clicking the \"Stop Debug\" link."
|
403 |
-
msgstr "El modo de depuración se ha activado con éxito y se desactivará automáticamente en 60 minutos. También puedes desactivarlo antes haciendo clic en el enlace \"Detener depuración\"."
|
404 |
-
|
405 |
-
#: includes/class-freemius.php:19283
|
406 |
-
msgid "Your %s Add-on plan was successfully upgraded."
|
407 |
-
msgstr "Tu complemento %s del plan se actualizó con éxito."
|
408 |
-
|
409 |
-
#: includes/class-freemius.php:19285
|
410 |
-
msgid "%s Add-on was successfully purchased."
|
411 |
-
msgstr "El complemento %s ha sido comprado correctamente."
|
412 |
-
|
413 |
-
#: includes/class-freemius.php:19288
|
414 |
-
msgid "Download the latest version"
|
415 |
-
msgstr "Descargar la última versión"
|
416 |
-
|
417 |
-
#: includes/class-freemius.php:19374
|
418 |
-
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1$s synchronization. Please contact your host to whitelist %2$s"
|
419 |
-
msgstr "Tu servidor está bloqueando el acceso al API de Freemius, que es crucial para sincronizar %1$s. Por favor, contacta a tu proveedor de hosting para permitir el acceso de %2$s"
|
420 |
-
|
421 |
-
#: includes/class-freemius.php19380, includes/class-freemius.php19390,
|
422 |
-
#: includes/class-freemius.php19835, includes/class-freemius.php:19924
|
423 |
-
msgid "Error received from the server:"
|
424 |
-
msgstr "Error recibido del servidor:"
|
425 |
-
|
426 |
-
#: includes/class-freemius.php:19390
|
427 |
-
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
428 |
-
msgstr "Parece que uno de los parámetros de autenticación es incorrecto. Actualiza tu clave pública, clave secreta e ID de usuario e inténtelo de nuevo."
|
429 |
-
|
430 |
-
#: includes/class-freemius.php19604, includes/class-freemius.php19840,
|
431 |
-
#: includes/class-freemius.php19895, includes/class-freemius.php:19998
|
432 |
-
msgctxt ""
|
433 |
-
msgid "Hmm"
|
434 |
-
msgstr "Hmm"
|
435 |
-
|
436 |
-
#: includes/class-freemius.php:19617
|
437 |
-
msgid "It looks like you are still on the %s plan. If you did upgrade or change your plan, it's probably an issue on our side - sorry."
|
438 |
-
msgstr "Parece que todavía estás en el plan %s. Si actualizaste o cambiaste tu plan, probablemente sea un problema de nuestra parte - lo sentimos."
|
439 |
-
|
440 |
-
#: includes/class-freemius.php19618, templates/account.php113,
|
441 |
-
#: templates/add-ons.php250, templates/account/partials/addon.php:46
|
442 |
-
msgctxt "trial period"
|
443 |
-
msgid "Trial"
|
444 |
-
msgstr "Período de Prueba Gratuito"
|
445 |
-
|
446 |
-
#: includes/class-freemius.php:19623
|
447 |
-
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
448 |
-
msgstr "He actualizado mi cuenta, pero cuando intento sincronizar la licencia, el plan sigue siendo %s."
|
449 |
-
|
450 |
-
#: includes/class-freemius.php19627, includes/class-freemius.php:19686
|
451 |
-
msgid "Please contact us here"
|
452 |
-
msgstr "Contacta aquí con nosotros"
|
453 |
-
|
454 |
-
#: includes/class-freemius.php:19638
|
455 |
-
msgid "Your plan was successfully activated."
|
456 |
-
msgstr "Tu plan se activó con éxito."
|
457 |
-
|
458 |
-
#: includes/class-freemius.php:19639
|
459 |
-
msgid "Your plan was successfully upgraded."
|
460 |
-
msgstr "Tu plan se actualizó con éxito."
|
461 |
-
|
462 |
-
#: includes/class-freemius.php:19656
|
463 |
-
msgid "Your plan was successfully changed to %s."
|
464 |
-
msgstr "Tu plan se cambió correctamente a %s."
|
465 |
-
|
466 |
-
#: includes/class-freemius.php:19672
|
467 |
-
msgid "Your license has expired. You can still continue using the free %s forever."
|
468 |
-
msgstr "Tu licencia ha caducado. Puedes seguir usando el plan gratuito %s para siempre."
|
469 |
-
|
470 |
-
#: includes/class-freemius.php:19674
|
471 |
-
msgid "Your license has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
472 |
-
msgstr "Tu licencia ha caducado. %1$sActualiza ahora %2$s para continuar usando el %3$s sin interrupciones."
|
473 |
-
|
474 |
-
#: includes/class-freemius.php:19682
|
475 |
-
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
476 |
-
msgstr "Tu licencia ha sido cancelada. Si crees que es un error, ponte en contacto con el servicio de asistencia."
|
477 |
-
|
478 |
-
#: includes/class-freemius.php:19695
|
479 |
-
msgid "Your license has expired. You can still continue using all the %s features, but you'll need to renew your license to continue getting updates and support."
|
480 |
-
msgstr "Tu licencia ha caducado. Todavía puedes seguir usando todas las funciones de %s, pero tendrás que renovar tu licencia para seguir recibiendo actualizaciones y soporte."
|
481 |
-
|
482 |
-
#: includes/class-freemius.php:19721
|
483 |
-
msgid "Your free trial has expired. You can still continue using all our free features."
|
484 |
-
msgstr "Tu período de prueba ha caducado. Todavía puedes seguir usando todas nuestras funciones gratuitas."
|
485 |
-
|
486 |
-
#: includes/class-freemius.php:19723
|
487 |
-
msgid "Your free trial has expired. %1$sUpgrade now%2$s to continue using the %3$s without interruptions."
|
488 |
-
msgstr "Tu período de prueba ha caducado. %1$sActualiza ahora %2$s para continuar usando el %3$s sin interrupciones."
|
489 |
-
|
490 |
-
#: includes/class-freemius.php:19831
|
491 |
-
msgid "It looks like the license could not be activated."
|
492 |
-
msgstr "Parece que la licencia no se pudo activar."
|
493 |
-
|
494 |
-
#: includes/class-freemius.php:19873
|
495 |
-
msgid "Your license was successfully activated."
|
496 |
-
msgstr "Tu licencia fue activada correctamente."
|
497 |
-
|
498 |
-
#: includes/class-freemius.php:19899
|
499 |
-
msgid "It looks like your site currently doesn't have an active license."
|
500 |
-
msgstr "Parece que tu sitio actualmente no tiene una licencia activa."
|
501 |
-
|
502 |
-
#: includes/class-freemius.php:19923
|
503 |
-
msgid "It looks like the license deactivation failed."
|
504 |
-
msgstr "Parece que la desactivación de licencia ha fallado."
|
505 |
-
|
506 |
-
#: includes/class-freemius.php:19951
|
507 |
-
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
508 |
-
msgstr "Tu licencia fue desactivada correctamente, has vuelto al plan %s."
|
509 |
-
|
510 |
-
#: includes/class-freemius.php:19952
|
511 |
-
msgid "O.K"
|
512 |
-
msgstr "O.K"
|
513 |
-
|
514 |
-
#: includes/class-freemius.php:20005
|
515 |
-
msgid "Seems like we are having some temporary issue with your subscription cancellation. Please try again in few minutes."
|
516 |
-
msgstr "Parece que estamos teniendo algún problema temporal con tu cancelación de la suscripción. Vuelve a intentarlo en unos minutos."
|
517 |
-
|
518 |
-
#: includes/class-freemius.php:20014
|
519 |
-
msgid "Your subscription was successfully cancelled. Your %s plan license will expire in %s."
|
520 |
-
msgstr "Tu suscripción ha sido cancelada correctamente. Tu %s licencia del plan caducará en %s."
|
521 |
-
|
522 |
-
#: includes/class-freemius.php:20056
|
523 |
-
msgid "You are already running the %s in a trial mode."
|
524 |
-
msgstr "Estás ejecutando %s en modo de prueba."
|
525 |
-
|
526 |
-
#: includes/class-freemius.php:20067
|
527 |
-
msgid "You already utilized a trial before."
|
528 |
-
msgstr "Ya utilizaste un período de prueba antes."
|
529 |
-
|
530 |
-
#: includes/class-freemius.php:20081
|
531 |
-
msgid "Plan %s do not exist, therefore, can't start a trial."
|
532 |
-
msgstr "El plan %s no existe, por lo tanto, no puedes comenzar un período de prueba."
|
533 |
-
|
534 |
-
#: includes/class-freemius.php:20092
|
535 |
-
msgid "Plan %s does not support a trial period."
|
536 |
-
msgstr "El plan %s no admite un período de prueba."
|
537 |
-
|
538 |
-
#: includes/class-freemius.php:20103
|
539 |
-
msgid "None of the %s's plans supports a trial period."
|
540 |
-
msgstr "Ninguno de los planes de %s soportan un período de prueba."
|
541 |
-
|
542 |
-
#: includes/class-freemius.php:20153
|
543 |
-
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
544 |
-
msgstr "Parece que ya no estás en modo de prueba, así que no hay nada que cancelar :)"
|
545 |
-
|
546 |
-
#: includes/class-freemius.php:20189
|
547 |
-
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
548 |
-
msgstr "Parece que estamos teniendo algún problema temporal con tu cancelación de prueba. Vuelve a intentarlo en unos minutos."
|
549 |
-
|
550 |
-
#: includes/class-freemius.php:20208
|
551 |
-
msgid "Your %s free trial was successfully cancelled."
|
552 |
-
msgstr "Tu prueba gratuita de %s fue cancelada con éxito."
|
553 |
-
|
554 |
-
#: includes/class-freemius.php:20524
|
555 |
-
msgid "Version %s was released."
|
556 |
-
msgstr "La versión %s se ha lanzado."
|
557 |
-
|
558 |
-
#: includes/class-freemius.php:20524
|
559 |
-
msgid "Please download %s."
|
560 |
-
msgstr "Por favor descarga %s."
|
561 |
-
|
562 |
-
#: includes/class-freemius.php:20531
|
563 |
-
msgid "the latest %s version here"
|
564 |
-
msgstr "la última versión %s aquí"
|
565 |
-
|
566 |
-
#: includes/class-freemius.php:20536
|
567 |
-
msgid "New"
|
568 |
-
msgstr "Nuevo"
|
569 |
-
|
570 |
-
#: includes/class-freemius.php:20541
|
571 |
-
msgid "Seems like you got the latest release."
|
572 |
-
msgstr "Parece que tienes la última versión."
|
573 |
-
|
574 |
-
#: includes/class-freemius.php:20542
|
575 |
-
msgid "You are all good!"
|
576 |
-
msgstr "¡Está todo listo!"
|
577 |
-
|
578 |
-
#: includes/class-freemius.php:20812
|
579 |
-
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
580 |
-
msgstr "El correo de verificación se acaba de enviar a %s. Si no puedes encontrarlo después de 5 min, comprueba tu carpeta de spam."
|
581 |
-
|
582 |
-
#: includes/class-freemius.php:20951
|
583 |
-
msgid "Site successfully opted in."
|
584 |
-
msgstr "Sitio dado de alta correctamente."
|
585 |
-
|
586 |
-
#: includes/class-freemius.php20952, includes/class-freemius.php:21792
|
587 |
-
msgid "Awesome"
|
588 |
-
msgstr "Increíble"
|
589 |
-
|
590 |
-
#: includes/class-freemius.php20968, templates/forms/optout.php:32
|
591 |
-
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
592 |
-
msgstr "Agradecemos tu ayuda para mejorar %s y por permitirnos rastrear algunos datos de uso."
|
593 |
-
|
594 |
-
#: includes/class-freemius.php:20969
|
595 |
-
msgid "Thank you!"
|
596 |
-
msgstr "¡Gracias!"
|
597 |
-
|
598 |
-
#: includes/class-freemius.php:20976
|
599 |
-
msgid "We will no longer be sending any usage data of %s on %s to %s."
|
600 |
-
msgstr "No continuaremos enviando datos de uso de %s en %s a %s."
|
601 |
-
|
602 |
-
#: includes/class-freemius.php:21105
|
603 |
-
msgid "Please check your mailbox, you should receive an email via %s to confirm the ownership change. From security reasons, you must confirm the change within the next 15 min. If you cannot find the email, please check your spam folder."
|
604 |
-
msgstr "Comprueba tu buzón de correo, debes recibir un correo electrónico a través de %s para confirmar el cambio de propiedad. Por razones de seguridad, debes confirmar el cambio dentro de los próximos 15 min. Si no puedes encontrar el correo electrónico, comprueba tu carpeta de correo no deseado."
|
605 |
-
|
606 |
-
#: includes/class-freemius.php:21111
|
607 |
-
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
608 |
-
msgstr "Gracias por confirmar el cambio de propiedad. Se envió un correo electrónico a %s para su aprobación final."
|
609 |
-
|
610 |
-
#: includes/class-freemius.php:21116
|
611 |
-
msgid "%s is the new owner of the account."
|
612 |
-
msgstr "%s es el nuevo dueño de la cuenta."
|
613 |
-
|
614 |
-
#: includes/class-freemius.php:21118
|
615 |
-
msgctxt "as congratulations"
|
616 |
-
msgid "Congrats"
|
617 |
-
msgstr "Felicidades"
|
618 |
-
|
619 |
-
#: includes/class-freemius.php:21138
|
620 |
-
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
621 |
-
msgstr "Lo sentimos, no podemos completar la actualización de correo electrónico. Ya hay registrado otro usuario con esa dirección de correo electrónico."
|
622 |
-
|
623 |
-
#: includes/class-freemius.php:21139
|
624 |
-
msgid "If you would like to give up the ownership of the %s's account to %s click the Change Ownership button."
|
625 |
-
msgstr "Si deseas renunciar a la titularidad de la cuenta de %s a %s haz clic en el botón de cambio de titularidad."
|
626 |
-
|
627 |
-
#: includes/class-freemius.php:21146
|
628 |
-
msgid "Change Ownership"
|
629 |
-
msgstr "Cambiar propietario"
|
630 |
-
|
631 |
-
#: includes/class-freemius.php:21154
|
632 |
-
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
633 |
-
msgstr "Se actualizó correctamente tu correo electrónico. Recibirás un correo electrónico con las instrucciones de confirmación en unos momentos."
|
634 |
-
|
635 |
-
#: includes/class-freemius.php:21166
|
636 |
-
msgid "Please provide your full name."
|
637 |
-
msgstr "Por favor, dinos tu nombre completo."
|
638 |
-
|
639 |
-
#: includes/class-freemius.php:21171
|
640 |
-
msgid "Your name was successfully updated."
|
641 |
-
msgstr "Tu nombre fue actualizado correctamente."
|
642 |
-
|
643 |
-
#: includes/class-freemius.php:21232
|
644 |
-
msgid "You have successfully updated your %s."
|
645 |
-
msgstr "Has actualizado correctamente tu %s."
|
646 |
-
|
647 |
-
#: includes/class-freemius.php:21372
|
648 |
-
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
649 |
-
msgstr "Sólo déjanos informarte que la información de complementos de %s se está extrayendo de un servidor externo."
|
650 |
-
|
651 |
-
#: includes/class-freemius.php:21373
|
652 |
-
msgctxt "advance notice of something that will need attention."
|
653 |
-
msgid "Heads up"
|
654 |
-
msgstr "Atención"
|
655 |
-
|
656 |
-
#: includes/class-freemius.php:21832
|
657 |
-
msgctxt "exclamation"
|
658 |
-
msgid "Hey"
|
659 |
-
msgstr "Hey"
|
660 |
-
|
661 |
-
#: includes/class-freemius.php:21832
|
662 |
-
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
663 |
-
msgstr "¿Qué te pareció %s hasta ahora? Prueba todas nuestras funciones premium de %s con una prueba gratuita de % d-días."
|
664 |
-
|
665 |
-
#: includes/class-freemius.php:21840
|
666 |
-
msgid "No commitment for %s days - cancel anytime!"
|
667 |
-
msgstr "Sin compromiso por %s días - ¡cancelar en cualquier momento!"
|
668 |
-
|
669 |
-
#: includes/class-freemius.php:21841
|
670 |
-
msgid "No credit card required"
|
671 |
-
msgstr "No se necesita tarjeta de crédito"
|
672 |
-
|
673 |
-
#: includes/class-freemius.php21848, templates/forms/trial-start.php:53
|
674 |
-
msgctxt "call to action"
|
675 |
-
msgid "Start free trial"
|
676 |
-
msgstr "Comenzar el período de prueba gratuito"
|
677 |
-
|
678 |
-
#: includes/class-freemius.php:21925
|
679 |
-
msgid "Hey there, did you know that %s has an affiliate program? If you like the %s you can become our ambassador and earn some cash!"
|
680 |
-
msgstr "Hey, ¿sabías que %s tiene un programa de afiliados? ¡Si te gusta %s puedes convertirte en nuestro embajador y ganar dinero!"
|
681 |
-
|
682 |
-
#: includes/class-freemius.php:21934
|
683 |
-
msgid "Learn more"
|
684 |
-
msgstr "Saber más"
|
685 |
-
|
686 |
-
#: includes/class-freemius.php22120, templates/account.php499,
|
687 |
-
#: templates/account.php624, templates/connect.php171,
|
688 |
-
#: templates/connect.php421, templates/forms/license-activation.php27,
|
689 |
-
#: templates/account/partials/addon.php:321
|
690 |
-
msgid "Activate License"
|
691 |
-
msgstr "Activar licencia"
|
692 |
-
|
693 |
-
#: includes/class-freemius.php22121, templates/account.php571,
|
694 |
-
#: templates/account.php623, templates/account/partials/addon.php322,
|
695 |
-
#: templates/account/partials/site.php:271
|
696 |
-
msgid "Change License"
|
697 |
-
msgstr "Cambiar licencia"
|
698 |
-
|
699 |
-
#: includes/class-freemius.php22217, templates/account/partials/site.php:169
|
700 |
-
msgid "Opt Out"
|
701 |
-
msgstr "Darse de baja"
|
702 |
-
|
703 |
-
#: includes/class-freemius.php22219, includes/class-freemius.php22225,
|
704 |
-
#: templates/account/partials/site.php49,
|
705 |
-
#: templates/account/partials/site.php:169
|
706 |
-
msgid "Opt In"
|
707 |
-
msgstr "Inscribirse"
|
708 |
-
|
709 |
-
#: includes/class-freemius.php:22453
|
710 |
-
msgid " The paid version of %1$s is already installed. Please activate it to start benefiting the %2$s features. %3$s"
|
711 |
-
msgstr "La versión de pago de %1$s ya está instalada. Por favor, actívala para empezar a beneficiarte de las características de %2$s. %3$s"
|
712 |
-
|
713 |
-
#: includes/class-freemius.php:22461
|
714 |
-
msgid "Activate %s features"
|
715 |
-
msgstr "Activar características %s"
|
716 |
-
|
717 |
-
#: includes/class-freemius.php:22474
|
718 |
-
msgid "Please follow these steps to complete the upgrade"
|
719 |
-
msgstr "Por favor, sigue estos pasos para completar la actualización"
|
720 |
-
|
721 |
-
#: includes/class-freemius.php:22478
|
722 |
-
msgid "Download the latest %s version"
|
723 |
-
msgstr "Descargar la última versión %s"
|
724 |
-
|
725 |
-
#: includes/class-freemius.php:22482
|
726 |
-
msgid "Upload and activate the downloaded version"
|
727 |
-
msgstr "Cargar y activar la versión descargada"
|
728 |
-
|
729 |
-
#: includes/class-freemius.php:22484
|
730 |
-
msgid "How to upload and activate?"
|
731 |
-
msgstr "¿Cómo subirlo y activarlo?"
|
732 |
-
|
733 |
-
#: includes/class-freemius.php:22618
|
734 |
-
msgid "%sClick here%s to choose the sites where you'd like to activate the license on."
|
735 |
-
msgstr "%sClick aquí %s para elegir los sitios sobre los que te gustaría activar la licencia."
|
736 |
-
|
737 |
-
#: includes/class-freemius.php:22779
|
738 |
-
msgid "Auto installation only works for opted-in users."
|
739 |
-
msgstr "La instalación automática sólo funciona para usuarios que aceptaron."
|
740 |
-
|
741 |
-
#: includes/class-freemius.php22789, includes/class-freemius.php22822,
|
742 |
-
#: includes/class-fs-plugin-updater.php1212,
|
743 |
-
#: includes/class-fs-plugin-updater.php:1226
|
744 |
-
msgid "Invalid module ID."
|
745 |
-
msgstr "Id de módulo no válido."
|
746 |
-
|
747 |
-
#: includes/class-freemius.php22798, includes/class-fs-plugin-updater.php:1248
|
748 |
-
msgid "Premium version already active."
|
749 |
-
msgstr "Versión premium ya activa."
|
750 |
-
|
751 |
-
#: includes/class-freemius.php:22805
|
752 |
-
msgid "You do not have a valid license to access the premium version."
|
753 |
-
msgstr "No tienes una licencia válida para acceder a la versión premium."
|
754 |
-
|
755 |
-
#: includes/class-freemius.php:22812
|
756 |
-
msgid "Plugin is a \"Serviceware\" which means it does not have a premium code version."
|
757 |
-
msgstr "El plugin es un \"Serviceware\" lo que significa que no tiene una versión de código premium."
|
758 |
-
|
759 |
-
#: includes/class-freemius.php22830, includes/class-fs-plugin-updater.php:1247
|
760 |
-
msgid "Premium add-on version already installed."
|
761 |
-
msgstr "Versión del complemento premium ya instalada."
|
762 |
-
|
763 |
-
#: includes/class-freemius.php:23180
|
764 |
-
msgid "View paid features"
|
765 |
-
msgstr "Ver las funciones de pago"
|
766 |
-
|
767 |
-
#: includes/class-freemius.php:23502
|
768 |
-
msgid "Thank you so much for using %s and its add-ons!"
|
769 |
-
msgstr "¡Muchas gracias por utilizar %s y sus complementos!"
|
770 |
-
|
771 |
-
#: includes/class-freemius.php:23503
|
772 |
-
msgid "Thank you so much for using %s!"
|
773 |
-
msgstr "¡Muchas gracias por utilizar %s!"
|
774 |
-
|
775 |
-
#: includes/class-freemius.php:23509
|
776 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving the %s."
|
777 |
-
msgstr "Ya has optado por nuestro seguimiento de uso, lo que nos ayuda a seguir mejorando %s."
|
778 |
-
|
779 |
-
#: includes/class-freemius.php:23513
|
780 |
-
msgid "Thank you so much for using our products!"
|
781 |
-
msgstr "¡Muchas gracias por utilizar nuestros productos!"
|
782 |
-
|
783 |
-
#: includes/class-freemius.php:23514
|
784 |
-
msgid "You've already opted-in to our usage-tracking, which helps us keep improving them."
|
785 |
-
msgstr "Ya has optado por nuestro seguimiento de uso, lo que nos ayuda a seguir mejorando."
|
786 |
-
|
787 |
-
#: includes/class-freemius.php:23533
|
788 |
-
msgid "%s and its add-ons"
|
789 |
-
msgstr "%s y sus complementos"
|
790 |
-
|
791 |
-
#: includes/class-freemius.php:23542
|
792 |
-
msgid "Products"
|
793 |
-
msgstr "Productos"
|
794 |
-
|
795 |
-
#: includes/class-freemius.php23549, templates/connect.php:272
|
796 |
-
msgid "Yes"
|
797 |
-
msgstr "Si"
|
798 |
-
|
799 |
-
#: includes/class-freemius.php23550, templates/connect.php:273
|
800 |
-
msgid "send me security & feature updates, educational content and offers."
|
801 |
-
msgstr "envíame actualizaciones de seguridad y nuevas funcionalidades, contenido educativo y ofertas."
|
802 |
-
|
803 |
-
#: includes/class-freemius.php23551, templates/connect.php:278
|
804 |
-
msgid "No"
|
805 |
-
msgstr "No"
|
806 |
-
|
807 |
-
#: includes/class-freemius.php23553, templates/connect.php:280
|
808 |
-
msgid "do %sNOT%s send me security & feature updates, educational content and offers."
|
809 |
-
msgstr "%sNO%s me envíes actualizaciones de seguridad y nuevas funcionalidades, contenido educativo y ofertas."
|
810 |
-
|
811 |
-
#: includes/class-freemius.php:23563
|
812 |
-
msgid "Due to the new %sEU General Data Protection Regulation (GDPR)%s compliance requirements it is required that you provide your explicit consent, again, confirming that you are onboard :-)"
|
813 |
-
msgstr "Debido al nuevo %sEU Reglamento General de Protección de Datos (RGPD)%s los requisitos de obligado cumplimiento requieren que proporciones tu consentimiento explícito, una vez más, confirmando que estás de acuerdo :-)"
|
814 |
-
|
815 |
-
#: includes/class-freemius.php23565, templates/connect.php:287
|
816 |
-
msgi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|