Version Description
Download this release
Release Info
Developer | cliffpaulick |
Plugin | Auto Terms of Service and Privacy Policy |
Version | 1.8.1 |
Comparing to | |
See all releases |
Code changes from version 1.8 to 1.8.1
- LICENSE +674 -0
- auto-terms-of-service-privacy-policy.php +4 -4
- freemius/README.md +253 -0
- freemius/assets/css/admin/checkout.css +1 -0
- freemius/assets/css/admin/common.css +1 -0
- freemius/assets/css/admin/debug.css +1 -1
- freemius/assets/css/admin/dialog-boxes.css +1 -1
- freemius/assets/img/auto-terms-of-service-and-privacy-policy.svg +0 -26
- freemius/assets/index.php +3 -0
- freemius/assets/scss/_vars.scss +2 -1
- freemius/assets/scss/admin/_license-key-resend.scss +54 -30
- freemius/assets/scss/admin/checkout.scss +5 -0
- freemius/assets/scss/admin/common.scss +13 -0
- freemius/assets/scss/admin/debug.scss +44 -0
- freemius/composer.json +10 -0
- freemius/config.php +19 -1
- freemius/gulpfile.js +58 -0
- freemius/includes/class-freemius-abstract.php +33 -7
- freemius/includes/class-freemius.php +466 -184
- freemius/includes/class-fs-api.php +1 -1
- freemius/includes/class-fs-logger.php +493 -12
- freemius/includes/class-fs-plugin-updater.php +93 -15
- freemius/includes/class-fs-security.php +7 -1
- freemius/includes/debug/index.php +3 -0
- freemius/includes/entities/class-fs-plugin-license.php +9 -1
- freemius/includes/entities/index.php +3 -0
- freemius/includes/fs-core-functions.php +94 -5
- freemius/includes/fs-essential-functions.php +21 -9
- freemius/includes/fs-plugin-info-dialog.php +368 -356
- freemius/includes/i18n.php +439 -455
- freemius/includes/index.php +3 -0
- freemius/includes/l10n.php +250 -0
- freemius/includes/managers/class-fs-admin-menu-manager.php +85 -21
- freemius/includes/managers/index.php +3 -0
- freemius/includes/sdk/Exceptions/index.php +3 -0
- freemius/includes/sdk/Freemius.php +1 -1
- freemius/includes/sdk/index.php +3 -0
- freemius/includes/supplements/fs-essential-functions-1.1.7.1.php +1 -1
- freemius/includes/supplements/index.php +3 -0
- freemius/index.php +3 -0
- freemius/languages/freemius-en.mo +0 -0
- freemius/languages/freemius-en.po +581 -376
- freemius/languages/freemius-it_IT.mo +0 -0
- freemius/languages/freemius-it_IT.po +578 -375
- freemius/languages/freemius-ja_JP.mo +0 -0
- freemius/languages/freemius-ja_JP.po +1662 -0
- freemius/languages/freemius.pot +568 -369
- freemius/languages/index.php +3 -0
- freemius/package.json +32 -0
- freemius/start.php +2 -2
- freemius/templates/account.php +53 -46
- freemius/templates/add-ons.php +11 -0
- freemius/templates/checkout-legacy.php +242 -0
- freemius/templates/checkout.php +43 -24
- freemius/templates/connect.php +7 -5
- freemius/templates/debug.php +289 -113
- freemius/templates/debug/index.php +3 -0
- freemius/templates/debug/logger.php +3 -3
- freemius/templates/email.php +3 -3
- freemius/templates/forms/deactivation/index.php +3 -0
- freemius/templates/forms/index.php +3 -0
- freemius/templates/forms/license-activation.php +6 -6
- freemius/templates/forms/optout.php +18 -13
- freemius/templates/forms/resend-key.php +108 -58
- freemius/templates/forms/trial-start.php +11 -7
- freemius/templates/index.php +3 -0
- freemius/templates/plugin-icon.php +1 -1
- freemius/templates/plugin-info/index.php +3 -0
- readme.txt +165 -294
LICENSE
ADDED
@@ -0,0 +1,674 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
GNU GENERAL PUBLIC LICENSE
|
2 |
+
Version 3, 29 June 2007
|
3 |
+
|
4 |
+
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
5 |
+
Everyone is permitted to copy and distribute verbatim copies
|
6 |
+
of this license document, but changing it is not allowed.
|
7 |
+
|
8 |
+
Preamble
|
9 |
+
|
10 |
+
The GNU General Public License is a free, copyleft license for
|
11 |
+
software and other kinds of works.
|
12 |
+
|
13 |
+
The licenses for most software and other practical works are designed
|
14 |
+
to take away your freedom to share and change the works. By contrast,
|
15 |
+
the GNU General Public License is intended to guarantee your freedom to
|
16 |
+
share and change all versions of a program--to make sure it remains free
|
17 |
+
software for all its users. We, the Free Software Foundation, use the
|
18 |
+
GNU General Public License for most of our software; it applies also to
|
19 |
+
any other work released this way by its authors. You can apply it to
|
20 |
+
your programs, too.
|
21 |
+
|
22 |
+
When we speak of free software, we are referring to freedom, not
|
23 |
+
price. Our General Public Licenses are designed to make sure that you
|
24 |
+
have the freedom to distribute copies of free software (and charge for
|
25 |
+
them if you wish), that you receive source code or can get it if you
|
26 |
+
want it, that you can change the software or use pieces of it in new
|
27 |
+
free programs, and that you know you can do these things.
|
28 |
+
|
29 |
+
To protect your rights, we need to prevent others from denying you
|
30 |
+
these rights or asking you to surrender the rights. Therefore, you have
|
31 |
+
certain responsibilities if you distribute copies of the software, or if
|
32 |
+
you modify it: responsibilities to respect the freedom of others.
|
33 |
+
|
34 |
+
For example, if you distribute copies of such a program, whether
|
35 |
+
gratis or for a fee, you must pass on to the recipients the same
|
36 |
+
freedoms that you received. You must make sure that they, too, receive
|
37 |
+
or can get the source code. And you must show them these terms so they
|
38 |
+
know their rights.
|
39 |
+
|
40 |
+
Developers that use the GNU GPL protect your rights with two steps:
|
41 |
+
(1) assert copyright on the software, and (2) offer you this License
|
42 |
+
giving you legal permission to copy, distribute and/or modify it.
|
43 |
+
|
44 |
+
For the developers' and authors' protection, the GPL clearly explains
|
45 |
+
that there is no warranty for this free software. For both users' and
|
46 |
+
authors' sake, the GPL requires that modified versions be marked as
|
47 |
+
changed, so that their problems will not be attributed erroneously to
|
48 |
+
authors of previous versions.
|
49 |
+
|
50 |
+
Some devices are designed to deny users access to install or run
|
51 |
+
modified versions of the software inside them, although the manufacturer
|
52 |
+
can do so. This is fundamentally incompatible with the aim of
|
53 |
+
protecting users' freedom to change the software. The systematic
|
54 |
+
pattern of such abuse occurs in the area of products for individuals to
|
55 |
+
use, which is precisely where it is most unacceptable. Therefore, we
|
56 |
+
have designed this version of the GPL to prohibit the practice for those
|
57 |
+
products. If such problems arise substantially in other domains, we
|
58 |
+
stand ready to extend this provision to those domains in future versions
|
59 |
+
of the GPL, as needed to protect the freedom of users.
|
60 |
+
|
61 |
+
Finally, every program is threatened constantly by software patents.
|
62 |
+
States should not allow patents to restrict development and use of
|
63 |
+
software on general-purpose computers, but in those that do, we wish to
|
64 |
+
avoid the special danger that patents applied to a free program could
|
65 |
+
make it effectively proprietary. To prevent this, the GPL assures that
|
66 |
+
patents cannot be used to render the program non-free.
|
67 |
+
|
68 |
+
The precise terms and conditions for copying, distribution and
|
69 |
+
modification follow.
|
70 |
+
|
71 |
+
TERMS AND CONDITIONS
|
72 |
+
|
73 |
+
0. Definitions.
|
74 |
+
|
75 |
+
"This License" refers to version 3 of the GNU General Public License.
|
76 |
+
|
77 |
+
"Copyright" also means copyright-like laws that apply to other kinds of
|
78 |
+
works, such as semiconductor masks.
|
79 |
+
|
80 |
+
"The Program" refers to any copyrightable work licensed under this
|
81 |
+
License. Each licensee is addressed as "you". "Licensees" and
|
82 |
+
"recipients" may be individuals or organizations.
|
83 |
+
|
84 |
+
To "modify" a work means to copy from or adapt all or part of the work
|
85 |
+
in a fashion requiring copyright permission, other than the making of an
|
86 |
+
exact copy. The resulting work is called a "modified version" of the
|
87 |
+
earlier work or a work "based on" the earlier work.
|
88 |
+
|
89 |
+
A "covered work" means either the unmodified Program or a work based
|
90 |
+
on the Program.
|
91 |
+
|
92 |
+
To "propagate" a work means to do anything with it that, without
|
93 |
+
permission, would make you directly or secondarily liable for
|
94 |
+
infringement under applicable copyright law, except executing it on a
|
95 |
+
computer or modifying a private copy. Propagation includes copying,
|
96 |
+
distribution (with or without modification), making available to the
|
97 |
+
public, and in some countries other activities as well.
|
98 |
+
|
99 |
+
To "convey" a work means any kind of propagation that enables other
|
100 |
+
parties to make or receive copies. Mere interaction with a user through
|
101 |
+
a computer network, with no transfer of a copy, is not conveying.
|
102 |
+
|
103 |
+
An interactive user interface displays "Appropriate Legal Notices"
|
104 |
+
to the extent that it includes a convenient and prominently visible
|
105 |
+
feature that (1) displays an appropriate copyright notice, and (2)
|
106 |
+
tells the user that there is no warranty for the work (except to the
|
107 |
+
extent that warranties are provided), that licensees may convey the
|
108 |
+
work under this License, and how to view a copy of this License. If
|
109 |
+
the interface presents a list of user commands or options, such as a
|
110 |
+
menu, a prominent item in the list meets this criterion.
|
111 |
+
|
112 |
+
1. Source Code.
|
113 |
+
|
114 |
+
The "source code" for a work means the preferred form of the work
|
115 |
+
for making modifications to it. "Object code" means any non-source
|
116 |
+
form of a work.
|
117 |
+
|
118 |
+
A "Standard Interface" means an interface that either is an official
|
119 |
+
standard defined by a recognized standards body, or, in the case of
|
120 |
+
interfaces specified for a particular programming language, one that
|
121 |
+
is widely used among developers working in that language.
|
122 |
+
|
123 |
+
The "System Libraries" of an executable work include anything, other
|
124 |
+
than the work as a whole, that (a) is included in the normal form of
|
125 |
+
packaging a Major Component, but which is not part of that Major
|
126 |
+
Component, and (b) serves only to enable use of the work with that
|
127 |
+
Major Component, or to implement a Standard Interface for which an
|
128 |
+
implementation is available to the public in source code form. A
|
129 |
+
"Major Component", in this context, means a major essential component
|
130 |
+
(kernel, window system, and so on) of the specific operating system
|
131 |
+
(if any) on which the executable work runs, or a compiler used to
|
132 |
+
produce the work, or an object code interpreter used to run it.
|
133 |
+
|
134 |
+
The "Corresponding Source" for a work in object code form means all
|
135 |
+
the source code needed to generate, install, and (for an executable
|
136 |
+
work) run the object code and to modify the work, including scripts to
|
137 |
+
control those activities. However, it does not include the work's
|
138 |
+
System Libraries, or general-purpose tools or generally available free
|
139 |
+
programs which are used unmodified in performing those activities but
|
140 |
+
which are not part of the work. For example, Corresponding Source
|
141 |
+
includes interface definition files associated with source files for
|
142 |
+
the work, and the source code for shared libraries and dynamically
|
143 |
+
linked subprograms that the work is specifically designed to require,
|
144 |
+
such as by intimate data communication or control flow between those
|
145 |
+
subprograms and other parts of the work.
|
146 |
+
|
147 |
+
The Corresponding Source need not include anything that users
|
148 |
+
can regenerate automatically from other parts of the Corresponding
|
149 |
+
Source.
|
150 |
+
|
151 |
+
The Corresponding Source for a work in source code form is that
|
152 |
+
same work.
|
153 |
+
|
154 |
+
2. Basic Permissions.
|
155 |
+
|
156 |
+
All rights granted under this License are granted for the term of
|
157 |
+
copyright on the Program, and are irrevocable provided the stated
|
158 |
+
conditions are met. This License explicitly affirms your unlimited
|
159 |
+
permission to run the unmodified Program. The output from running a
|
160 |
+
covered work is covered by this License only if the output, given its
|
161 |
+
content, constitutes a covered work. This License acknowledges your
|
162 |
+
rights of fair use or other equivalent, as provided by copyright law.
|
163 |
+
|
164 |
+
You may make, run and propagate covered works that you do not
|
165 |
+
convey, without conditions so long as your license otherwise remains
|
166 |
+
in force. You may convey covered works to others for the sole purpose
|
167 |
+
of having them make modifications exclusively for you, or provide you
|
168 |
+
with facilities for running those works, provided that you comply with
|
169 |
+
the terms of this License in conveying all material for which you do
|
170 |
+
not control copyright. Those thus making or running the covered works
|
171 |
+
for you must do so exclusively on your behalf, under your direction
|
172 |
+
and control, on terms that prohibit them from making any copies of
|
173 |
+
your copyrighted material outside their relationship with you.
|
174 |
+
|
175 |
+
Conveying under any other circumstances is permitted solely under
|
176 |
+
the conditions stated below. Sublicensing is not allowed; section 10
|
177 |
+
makes it unnecessary.
|
178 |
+
|
179 |
+
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
180 |
+
|
181 |
+
No covered work shall be deemed part of an effective technological
|
182 |
+
measure under any applicable law fulfilling obligations under article
|
183 |
+
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
184 |
+
similar laws prohibiting or restricting circumvention of such
|
185 |
+
measures.
|
186 |
+
|
187 |
+
When you convey a covered work, you waive any legal power to forbid
|
188 |
+
circumvention of technological measures to the extent such circumvention
|
189 |
+
is effected by exercising rights under this License with respect to
|
190 |
+
the covered work, and you disclaim any intention to limit operation or
|
191 |
+
modification of the work as a means of enforcing, against the work's
|
192 |
+
users, your or third parties' legal rights to forbid circumvention of
|
193 |
+
technological measures.
|
194 |
+
|
195 |
+
4. Conveying Verbatim Copies.
|
196 |
+
|
197 |
+
You may convey verbatim copies of the Program's source code as you
|
198 |
+
receive it, in any medium, provided that you conspicuously and
|
199 |
+
appropriately publish on each copy an appropriate copyright notice;
|
200 |
+
keep intact all notices stating that this License and any
|
201 |
+
non-permissive terms added in accord with section 7 apply to the code;
|
202 |
+
keep intact all notices of the absence of any warranty; and give all
|
203 |
+
recipients a copy of this License along with the Program.
|
204 |
+
|
205 |
+
You may charge any price or no price for each copy that you convey,
|
206 |
+
and you may offer support or warranty protection for a fee.
|
207 |
+
|
208 |
+
5. Conveying Modified Source Versions.
|
209 |
+
|
210 |
+
You may convey a work based on the Program, or the modifications to
|
211 |
+
produce it from the Program, in the form of source code under the
|
212 |
+
terms of section 4, provided that you also meet all of these conditions:
|
213 |
+
|
214 |
+
a) The work must carry prominent notices stating that you modified
|
215 |
+
it, and giving a relevant date.
|
216 |
+
|
217 |
+
b) The work must carry prominent notices stating that it is
|
218 |
+
released under this License and any conditions added under section
|
219 |
+
7. This requirement modifies the requirement in section 4 to
|
220 |
+
"keep intact all notices".
|
221 |
+
|
222 |
+
c) You must license the entire work, as a whole, under this
|
223 |
+
License to anyone who comes into possession of a copy. This
|
224 |
+
License will therefore apply, along with any applicable section 7
|
225 |
+
additional terms, to the whole of the work, and all its parts,
|
226 |
+
regardless of how they are packaged. This License gives no
|
227 |
+
permission to license the work in any other way, but it does not
|
228 |
+
invalidate such permission if you have separately received it.
|
229 |
+
|
230 |
+
d) If the work has interactive user interfaces, each must display
|
231 |
+
Appropriate Legal Notices; however, if the Program has interactive
|
232 |
+
interfaces that do not display Appropriate Legal Notices, your
|
233 |
+
work need not make them do so.
|
234 |
+
|
235 |
+
A compilation of a covered work with other separate and independent
|
236 |
+
works, which are not by their nature extensions of the covered work,
|
237 |
+
and which are not combined with it such as to form a larger program,
|
238 |
+
in or on a volume of a storage or distribution medium, is called an
|
239 |
+
"aggregate" if the compilation and its resulting copyright are not
|
240 |
+
used to limit the access or legal rights of the compilation's users
|
241 |
+
beyond what the individual works permit. Inclusion of a covered work
|
242 |
+
in an aggregate does not cause this License to apply to the other
|
243 |
+
parts of the aggregate.
|
244 |
+
|
245 |
+
6. Conveying Non-Source Forms.
|
246 |
+
|
247 |
+
You may convey a covered work in object code form under the terms
|
248 |
+
of sections 4 and 5, provided that you also convey the
|
249 |
+
machine-readable Corresponding Source under the terms of this License,
|
250 |
+
in one of these ways:
|
251 |
+
|
252 |
+
a) Convey the object code in, or embodied in, a physical product
|
253 |
+
(including a physical distribution medium), accompanied by the
|
254 |
+
Corresponding Source fixed on a durable physical medium
|
255 |
+
customarily used for software interchange.
|
256 |
+
|
257 |
+
b) Convey the object code in, or embodied in, a physical product
|
258 |
+
(including a physical distribution medium), accompanied by a
|
259 |
+
written offer, valid for at least three years and valid for as
|
260 |
+
long as you offer spare parts or customer support for that product
|
261 |
+
model, to give anyone who possesses the object code either (1) a
|
262 |
+
copy of the Corresponding Source for all the software in the
|
263 |
+
product that is covered by this License, on a durable physical
|
264 |
+
medium customarily used for software interchange, for a price no
|
265 |
+
more than your reasonable cost of physically performing this
|
266 |
+
conveying of source, or (2) access to copy the
|
267 |
+
Corresponding Source from a network server at no charge.
|
268 |
+
|
269 |
+
c) Convey individual copies of the object code with a copy of the
|
270 |
+
written offer to provide the Corresponding Source. This
|
271 |
+
alternative is allowed only occasionally and noncommercially, and
|
272 |
+
only if you received the object code with such an offer, in accord
|
273 |
+
with subsection 6b.
|
274 |
+
|
275 |
+
d) Convey the object code by offering access from a designated
|
276 |
+
place (gratis or for a charge), and offer equivalent access to the
|
277 |
+
Corresponding Source in the same way through the same place at no
|
278 |
+
further charge. You need not require recipients to copy the
|
279 |
+
Corresponding Source along with the object code. If the place to
|
280 |
+
copy the object code is a network server, the Corresponding Source
|
281 |
+
may be on a different server (operated by you or a third party)
|
282 |
+
that supports equivalent copying facilities, provided you maintain
|
283 |
+
clear directions next to the object code saying where to find the
|
284 |
+
Corresponding Source. Regardless of what server hosts the
|
285 |
+
Corresponding Source, you remain obligated to ensure that it is
|
286 |
+
available for as long as needed to satisfy these requirements.
|
287 |
+
|
288 |
+
e) Convey the object code using peer-to-peer transmission, provided
|
289 |
+
you inform other peers where the object code and Corresponding
|
290 |
+
Source of the work are being offered to the general public at no
|
291 |
+
charge under subsection 6d.
|
292 |
+
|
293 |
+
A separable portion of the object code, whose source code is excluded
|
294 |
+
from the Corresponding Source as a System Library, need not be
|
295 |
+
included in conveying the object code work.
|
296 |
+
|
297 |
+
A "User Product" is either (1) a "consumer product", which means any
|
298 |
+
tangible personal property which is normally used for personal, family,
|
299 |
+
or household purposes, or (2) anything designed or sold for incorporation
|
300 |
+
into a dwelling. In determining whether a product is a consumer product,
|
301 |
+
doubtful cases shall be resolved in favor of coverage. For a particular
|
302 |
+
product received by a particular user, "normally used" refers to a
|
303 |
+
typical or common use of that class of product, regardless of the status
|
304 |
+
of the particular user or of the way in which the particular user
|
305 |
+
actually uses, or expects or is expected to use, the product. A product
|
306 |
+
is a consumer product regardless of whether the product has substantial
|
307 |
+
commercial, industrial or non-consumer uses, unless such uses represent
|
308 |
+
the only significant mode of use of the product.
|
309 |
+
|
310 |
+
"Installation Information" for a User Product means any methods,
|
311 |
+
procedures, authorization keys, or other information required to install
|
312 |
+
and execute modified versions of a covered work in that User Product from
|
313 |
+
a modified version of its Corresponding Source. The information must
|
314 |
+
suffice to ensure that the continued functioning of the modified object
|
315 |
+
code is in no case prevented or interfered with solely because
|
316 |
+
modification has been made.
|
317 |
+
|
318 |
+
If you convey an object code work under this section in, or with, or
|
319 |
+
specifically for use in, a User Product, and the conveying occurs as
|
320 |
+
part of a transaction in which the right of possession and use of the
|
321 |
+
User Product is transferred to the recipient in perpetuity or for a
|
322 |
+
fixed term (regardless of how the transaction is characterized), the
|
323 |
+
Corresponding Source conveyed under this section must be accompanied
|
324 |
+
by the Installation Information. But this requirement does not apply
|
325 |
+
if neither you nor any third party retains the ability to install
|
326 |
+
modified object code on the User Product (for example, the work has
|
327 |
+
been installed in ROM).
|
328 |
+
|
329 |
+
The requirement to provide Installation Information does not include a
|
330 |
+
requirement to continue to provide support service, warranty, or updates
|
331 |
+
for a work that has been modified or installed by the recipient, or for
|
332 |
+
the User Product in which it has been modified or installed. Access to a
|
333 |
+
network may be denied when the modification itself materially and
|
334 |
+
adversely affects the operation of the network or violates the rules and
|
335 |
+
protocols for communication across the network.
|
336 |
+
|
337 |
+
Corresponding Source conveyed, and Installation Information provided,
|
338 |
+
in accord with this section must be in a format that is publicly
|
339 |
+
documented (and with an implementation available to the public in
|
340 |
+
source code form), and must require no special password or key for
|
341 |
+
unpacking, reading or copying.
|
342 |
+
|
343 |
+
7. Additional Terms.
|
344 |
+
|
345 |
+
"Additional permissions" are terms that supplement the terms of this
|
346 |
+
License by making exceptions from one or more of its conditions.
|
347 |
+
Additional permissions that are applicable to the entire Program shall
|
348 |
+
be treated as though they were included in this License, to the extent
|
349 |
+
that they are valid under applicable law. If additional permissions
|
350 |
+
apply only to part of the Program, that part may be used separately
|
351 |
+
under those permissions, but the entire Program remains governed by
|
352 |
+
this License without regard to the additional permissions.
|
353 |
+
|
354 |
+
When you convey a copy of a covered work, you may at your option
|
355 |
+
remove any additional permissions from that copy, or from any part of
|
356 |
+
it. (Additional permissions may be written to require their own
|
357 |
+
removal in certain cases when you modify the work.) You may place
|
358 |
+
additional permissions on material, added by you to a covered work,
|
359 |
+
for which you have or can give appropriate copyright permission.
|
360 |
+
|
361 |
+
Notwithstanding any other provision of this License, for material you
|
362 |
+
add to a covered work, you may (if authorized by the copyright holders of
|
363 |
+
that material) supplement the terms of this License with terms:
|
364 |
+
|
365 |
+
a) Disclaiming warranty or limiting liability differently from the
|
366 |
+
terms of sections 15 and 16 of this License; or
|
367 |
+
|
368 |
+
b) Requiring preservation of specified reasonable legal notices or
|
369 |
+
author attributions in that material or in the Appropriate Legal
|
370 |
+
Notices displayed by works containing it; or
|
371 |
+
|
372 |
+
c) Prohibiting misrepresentation of the origin of that material, or
|
373 |
+
requiring that modified versions of such material be marked in
|
374 |
+
reasonable ways as different from the original version; or
|
375 |
+
|
376 |
+
d) Limiting the use for publicity purposes of names of licensors or
|
377 |
+
authors of the material; or
|
378 |
+
|
379 |
+
e) Declining to grant rights under trademark law for use of some
|
380 |
+
trade names, trademarks, or service marks; or
|
381 |
+
|
382 |
+
f) Requiring indemnification of licensors and authors of that
|
383 |
+
material by anyone who conveys the material (or modified versions of
|
384 |
+
it) with contractual assumptions of liability to the recipient, for
|
385 |
+
any liability that these contractual assumptions directly impose on
|
386 |
+
those licensors and authors.
|
387 |
+
|
388 |
+
All other non-permissive additional terms are considered "further
|
389 |
+
restrictions" within the meaning of section 10. If the Program as you
|
390 |
+
received it, or any part of it, contains a notice stating that it is
|
391 |
+
governed by this License along with a term that is a further
|
392 |
+
restriction, you may remove that term. If a license document contains
|
393 |
+
a further restriction but permits relicensing or conveying under this
|
394 |
+
License, you may add to a covered work material governed by the terms
|
395 |
+
of that license document, provided that the further restriction does
|
396 |
+
not survive such relicensing or conveying.
|
397 |
+
|
398 |
+
If you add terms to a covered work in accord with this section, you
|
399 |
+
must place, in the relevant source files, a statement of the
|
400 |
+
additional terms that apply to those files, or a notice indicating
|
401 |
+
where to find the applicable terms.
|
402 |
+
|
403 |
+
Additional terms, permissive or non-permissive, may be stated in the
|
404 |
+
form of a separately written license, or stated as exceptions;
|
405 |
+
the above requirements apply either way.
|
406 |
+
|
407 |
+
8. Termination.
|
408 |
+
|
409 |
+
You may not propagate or modify a covered work except as expressly
|
410 |
+
provided under this License. Any attempt otherwise to propagate or
|
411 |
+
modify it is void, and will automatically terminate your rights under
|
412 |
+
this License (including any patent licenses granted under the third
|
413 |
+
paragraph of section 11).
|
414 |
+
|
415 |
+
However, if you cease all violation of this License, then your
|
416 |
+
license from a particular copyright holder is reinstated (a)
|
417 |
+
provisionally, unless and until the copyright holder explicitly and
|
418 |
+
finally terminates your license, and (b) permanently, if the copyright
|
419 |
+
holder fails to notify you of the violation by some reasonable means
|
420 |
+
prior to 60 days after the cessation.
|
421 |
+
|
422 |
+
Moreover, your license from a particular copyright holder is
|
423 |
+
reinstated permanently if the copyright holder notifies you of the
|
424 |
+
violation by some reasonable means, this is the first time you have
|
425 |
+
received notice of violation of this License (for any work) from that
|
426 |
+
copyright holder, and you cure the violation prior to 30 days after
|
427 |
+
your receipt of the notice.
|
428 |
+
|
429 |
+
Termination of your rights under this section does not terminate the
|
430 |
+
licenses of parties who have received copies or rights from you under
|
431 |
+
this License. If your rights have been terminated and not permanently
|
432 |
+
reinstated, you do not qualify to receive new licenses for the same
|
433 |
+
material under section 10.
|
434 |
+
|
435 |
+
9. Acceptance Not Required for Having Copies.
|
436 |
+
|
437 |
+
You are not required to accept this License in order to receive or
|
438 |
+
run a copy of the Program. Ancillary propagation of a covered work
|
439 |
+
occurring solely as a consequence of using peer-to-peer transmission
|
440 |
+
to receive a copy likewise does not require acceptance. However,
|
441 |
+
nothing other than this License grants you permission to propagate or
|
442 |
+
modify any covered work. These actions infringe copyright if you do
|
443 |
+
not accept this License. Therefore, by modifying or propagating a
|
444 |
+
covered work, you indicate your acceptance of this License to do so.
|
445 |
+
|
446 |
+
10. Automatic Licensing of Downstream Recipients.
|
447 |
+
|
448 |
+
Each time you convey a covered work, the recipient automatically
|
449 |
+
receives a license from the original licensors, to run, modify and
|
450 |
+
propagate that work, subject to this License. You are not responsible
|
451 |
+
for enforcing compliance by third parties with this License.
|
452 |
+
|
453 |
+
An "entity transaction" is a transaction transferring control of an
|
454 |
+
organization, or substantially all assets of one, or subdividing an
|
455 |
+
organization, or merging organizations. If propagation of a covered
|
456 |
+
work results from an entity transaction, each party to that
|
457 |
+
transaction who receives a copy of the work also receives whatever
|
458 |
+
licenses to the work the party's predecessor in interest had or could
|
459 |
+
give under the previous paragraph, plus a right to possession of the
|
460 |
+
Corresponding Source of the work from the predecessor in interest, if
|
461 |
+
the predecessor has it or can get it with reasonable efforts.
|
462 |
+
|
463 |
+
You may not impose any further restrictions on the exercise of the
|
464 |
+
rights granted or affirmed under this License. For example, you may
|
465 |
+
not impose a license fee, royalty, or other charge for exercise of
|
466 |
+
rights granted under this License, and you may not initiate litigation
|
467 |
+
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
468 |
+
any patent claim is infringed by making, using, selling, offering for
|
469 |
+
sale, or importing the Program or any portion of it.
|
470 |
+
|
471 |
+
11. Patents.
|
472 |
+
|
473 |
+
A "contributor" is a copyright holder who authorizes use under this
|
474 |
+
License of the Program or a work on which the Program is based. The
|
475 |
+
work thus licensed is called the contributor's "contributor version".
|
476 |
+
|
477 |
+
A contributor's "essential patent claims" are all patent claims
|
478 |
+
owned or controlled by the contributor, whether already acquired or
|
479 |
+
hereafter acquired, that would be infringed by some manner, permitted
|
480 |
+
by this License, of making, using, or selling its contributor version,
|
481 |
+
but do not include claims that would be infringed only as a
|
482 |
+
consequence of further modification of the contributor version. For
|
483 |
+
purposes of this definition, "control" includes the right to grant
|
484 |
+
patent sublicenses in a manner consistent with the requirements of
|
485 |
+
this License.
|
486 |
+
|
487 |
+
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
488 |
+
patent license under the contributor's essential patent claims, to
|
489 |
+
make, use, sell, offer for sale, import and otherwise run, modify and
|
490 |
+
propagate the contents of its contributor version.
|
491 |
+
|
492 |
+
In the following three paragraphs, a "patent license" is any express
|
493 |
+
agreement or commitment, however denominated, not to enforce a patent
|
494 |
+
(such as an express permission to practice a patent or covenant not to
|
495 |
+
sue for patent infringement). To "grant" such a patent license to a
|
496 |
+
party means to make such an agreement or commitment not to enforce a
|
497 |
+
patent against the party.
|
498 |
+
|
499 |
+
If you convey a covered work, knowingly relying on a patent license,
|
500 |
+
and the Corresponding Source of the work is not available for anyone
|
501 |
+
to copy, free of charge and under the terms of this License, through a
|
502 |
+
publicly available network server or other readily accessible means,
|
503 |
+
then you must either (1) cause the Corresponding Source to be so
|
504 |
+
available, or (2) arrange to deprive yourself of the benefit of the
|
505 |
+
patent license for this particular work, or (3) arrange, in a manner
|
506 |
+
consistent with the requirements of this License, to extend the patent
|
507 |
+
license to downstream recipients. "Knowingly relying" means you have
|
508 |
+
actual knowledge that, but for the patent license, your conveying the
|
509 |
+
covered work in a country, or your recipient's use of the covered work
|
510 |
+
in a country, would infringe one or more identifiable patents in that
|
511 |
+
country that you have reason to believe are valid.
|
512 |
+
|
513 |
+
If, pursuant to or in connection with a single transaction or
|
514 |
+
arrangement, you convey, or propagate by procuring conveyance of, a
|
515 |
+
covered work, and grant a patent license to some of the parties
|
516 |
+
receiving the covered work authorizing them to use, propagate, modify
|
517 |
+
or convey a specific copy of the covered work, then the patent license
|
518 |
+
you grant is automatically extended to all recipients of the covered
|
519 |
+
work and works based on it.
|
520 |
+
|
521 |
+
A patent license is "discriminatory" if it does not include within
|
522 |
+
the scope of its coverage, prohibits the exercise of, or is
|
523 |
+
conditioned on the non-exercise of one or more of the rights that are
|
524 |
+
specifically granted under this License. You may not convey a covered
|
525 |
+
work if you are a party to an arrangement with a third party that is
|
526 |
+
in the business of distributing software, under which you make payment
|
527 |
+
to the third party based on the extent of your activity of conveying
|
528 |
+
the work, and under which the third party grants, to any of the
|
529 |
+
parties who would receive the covered work from you, a discriminatory
|
530 |
+
patent license (a) in connection with copies of the covered work
|
531 |
+
conveyed by you (or copies made from those copies), or (b) primarily
|
532 |
+
for and in connection with specific products or compilations that
|
533 |
+
contain the covered work, unless you entered into that arrangement,
|
534 |
+
or that patent license was granted, prior to 28 March 2007.
|
535 |
+
|
536 |
+
Nothing in this License shall be construed as excluding or limiting
|
537 |
+
any implied license or other defenses to infringement that may
|
538 |
+
otherwise be available to you under applicable patent law.
|
539 |
+
|
540 |
+
12. No Surrender of Others' Freedom.
|
541 |
+
|
542 |
+
If conditions are imposed on you (whether by court order, agreement or
|
543 |
+
otherwise) that contradict the conditions of this License, they do not
|
544 |
+
excuse you from the conditions of this License. If you cannot convey a
|
545 |
+
covered work so as to satisfy simultaneously your obligations under this
|
546 |
+
License and any other pertinent obligations, then as a consequence you may
|
547 |
+
not convey it at all. For example, if you agree to terms that obligate you
|
548 |
+
to collect a royalty for further conveying from those to whom you convey
|
549 |
+
the Program, the only way you could satisfy both those terms and this
|
550 |
+
License would be to refrain entirely from conveying the Program.
|
551 |
+
|
552 |
+
13. Use with the GNU Affero General Public License.
|
553 |
+
|
554 |
+
Notwithstanding any other provision of this License, you have
|
555 |
+
permission to link or combine any covered work with a work licensed
|
556 |
+
under version 3 of the GNU Affero General Public License into a single
|
557 |
+
combined work, and to convey the resulting work. The terms of this
|
558 |
+
License will continue to apply to the part which is the covered work,
|
559 |
+
but the special requirements of the GNU Affero General Public License,
|
560 |
+
section 13, concerning interaction through a network will apply to the
|
561 |
+
combination as such.
|
562 |
+
|
563 |
+
14. Revised Versions of this License.
|
564 |
+
|
565 |
+
The Free Software Foundation may publish revised and/or new versions of
|
566 |
+
the GNU General Public License from time to time. Such new versions will
|
567 |
+
be similar in spirit to the present version, but may differ in detail to
|
568 |
+
address new problems or concerns.
|
569 |
+
|
570 |
+
Each version is given a distinguishing version number. If the
|
571 |
+
Program specifies that a certain numbered version of the GNU General
|
572 |
+
Public License "or any later version" applies to it, you have the
|
573 |
+
option of following the terms and conditions either of that numbered
|
574 |
+
version or of any later version published by the Free Software
|
575 |
+
Foundation. If the Program does not specify a version number of the
|
576 |
+
GNU General Public License, you may choose any version ever published
|
577 |
+
by the Free Software Foundation.
|
578 |
+
|
579 |
+
If the Program specifies that a proxy can decide which future
|
580 |
+
versions of the GNU General Public License can be used, that proxy's
|
581 |
+
public statement of acceptance of a version permanently authorizes you
|
582 |
+
to choose that version for the Program.
|
583 |
+
|
584 |
+
Later license versions may give you additional or different
|
585 |
+
permissions. However, no additional obligations are imposed on any
|
586 |
+
author or copyright holder as a result of your choosing to follow a
|
587 |
+
later version.
|
588 |
+
|
589 |
+
15. Disclaimer of Warranty.
|
590 |
+
|
591 |
+
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
592 |
+
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
593 |
+
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
594 |
+
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
595 |
+
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
596 |
+
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
597 |
+
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
598 |
+
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
599 |
+
|
600 |
+
16. Limitation of Liability.
|
601 |
+
|
602 |
+
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
603 |
+
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
604 |
+
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
605 |
+
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
606 |
+
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
607 |
+
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
608 |
+
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
609 |
+
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
610 |
+
SUCH DAMAGES.
|
611 |
+
|
612 |
+
17. Interpretation of Sections 15 and 16.
|
613 |
+
|
614 |
+
If the disclaimer of warranty and limitation of liability provided
|
615 |
+
above cannot be given local legal effect according to their terms,
|
616 |
+
reviewing courts shall apply local law that most closely approximates
|
617 |
+
an absolute waiver of all civil liability in connection with the
|
618 |
+
Program, unless a warranty or assumption of liability accompanies a
|
619 |
+
copy of the Program in return for a fee.
|
620 |
+
|
621 |
+
END OF TERMS AND CONDITIONS
|
622 |
+
|
623 |
+
How to Apply These Terms to Your New Programs
|
624 |
+
|
625 |
+
If you develop a new program, and you want it to be of the greatest
|
626 |
+
possible use to the public, the best way to achieve this is to make it
|
627 |
+
free software which everyone can redistribute and change under these terms.
|
628 |
+
|
629 |
+
To do so, attach the following notices to the program. It is safest
|
630 |
+
to attach them to the start of each source file to most effectively
|
631 |
+
state the exclusion of warranty; and each file should have at least
|
632 |
+
the "copyright" line and a pointer to where the full notice is found.
|
633 |
+
|
634 |
+
<one line to give the program's name and a brief idea of what it does.>
|
635 |
+
Copyright (C) <year> <name of author>
|
636 |
+
|
637 |
+
This program is free software: you can redistribute it and/or modify
|
638 |
+
it under the terms of the GNU General Public License as published by
|
639 |
+
the Free Software Foundation, either version 3 of the License, or
|
640 |
+
(at your option) any later version.
|
641 |
+
|
642 |
+
This program is distributed in the hope that it will be useful,
|
643 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
644 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
645 |
+
GNU General Public License for more details.
|
646 |
+
|
647 |
+
You should have received a copy of the GNU General Public License
|
648 |
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
649 |
+
|
650 |
+
Also add information on how to contact you by electronic and paper mail.
|
651 |
+
|
652 |
+
If the program does terminal interaction, make it output a short
|
653 |
+
notice like this when it starts in an interactive mode:
|
654 |
+
|
655 |
+
<program> Copyright (C) <year> <name of author>
|
656 |
+
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
657 |
+
This is free software, and you are welcome to redistribute it
|
658 |
+
under certain conditions; type `show c' for details.
|
659 |
+
|
660 |
+
The hypothetical commands `show w' and `show c' should show the appropriate
|
661 |
+
parts of the General Public License. Of course, your program's commands
|
662 |
+
might be different; for a GUI interface, you would use an "about box".
|
663 |
+
|
664 |
+
You should also get your employer (if you work as a programmer) or school,
|
665 |
+
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
666 |
+
For more information on this, and how to apply and follow the GNU GPL, see
|
667 |
+
<http://www.gnu.org/licenses/>.
|
668 |
+
|
669 |
+
The GNU General Public License does not permit incorporating your program
|
670 |
+
into proprietary programs. If your program is a subroutine library, you
|
671 |
+
may consider it more useful to permit linking proprietary applications with
|
672 |
+
the library. If this is what you want to do, use the GNU Lesser General
|
673 |
+
Public License instead of this License. But first, please read
|
674 |
+
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
auto-terms-of-service-privacy-policy.php
CHANGED
@@ -1,13 +1,13 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Auto Terms of Service and Privacy Policy
|
4 |
-
Plugin URI:
|
5 |
Description: Puts your own information into a version of Automattic's <a href="http://en.wordpress.com/tos/">Terms of Service</a> and <a href="http://automattic.com/privacy/">Privacy Policy</a>, both available under the <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Sharealike</a> license, that have been modified to exclude specifics to Automattic (like mentions of "JetPack", "WordPress.com", and "VIP") and have more generic language that can apply to most any site or service provider, including single sites, subscription sites, blog networks, and others. <strong>Edit plugin's settings, then use one or more of the 3 available shortcodes: [my_terms_of_service_and_privacy_policy], [my_terms_of_service], and/or [my_privacy_policy]</strong>
|
6 |
Text Domain: auto-terms-of-service-and-privacy-policy
|
7 |
-
Version: 1.8
|
8 |
Author: TourKick (Clifford P)
|
9 |
-
Author URI: http://
|
10 |
-
License:
|
11 |
*/
|
12 |
/*
|
13 |
WARNING: I'm human. I'm not perfect. Neither are you. Neither is this...
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Auto Terms of Service and Privacy Policy
|
4 |
+
Plugin URI: http://www.wpautoterms.com/
|
5 |
Description: Puts your own information into a version of Automattic's <a href="http://en.wordpress.com/tos/">Terms of Service</a> and <a href="http://automattic.com/privacy/">Privacy Policy</a>, both available under the <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Sharealike</a> license, that have been modified to exclude specifics to Automattic (like mentions of "JetPack", "WordPress.com", and "VIP") and have more generic language that can apply to most any site or service provider, including single sites, subscription sites, blog networks, and others. <strong>Edit plugin's settings, then use one or more of the 3 available shortcodes: [my_terms_of_service_and_privacy_policy], [my_terms_of_service], and/or [my_privacy_policy]</strong>
|
6 |
Text Domain: auto-terms-of-service-and-privacy-policy
|
7 |
+
Version: 1.8.1
|
8 |
Author: TourKick (Clifford P)
|
9 |
+
Author URI: http://www.wpautoterms.com/
|
10 |
+
License: GPL version 3 or any later version
|
11 |
*/
|
12 |
/*
|
13 |
WARNING: I'm human. I'm not perfect. Neither are you. Neither is this...
|
freemius/README.md
ADDED
@@ -0,0 +1,253 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
Freemius WordPress SDK
|
2 |
+
======================
|
3 |
+
|
4 |
+
[Monetization](https://freemius.com/wordpress/), [analytics](https://freemius.com/wordpress/insights/), and marketing automation platform for plugin & theme developers. Freemius empower developers to create prosperous subscription based businesses.
|
5 |
+
|
6 |
+
You can see some of the WordPress.org plugins & themes that are utilizing the power of Freemius here:
|
7 |
+
|
8 |
+
https://includewp.com/freemius/#focus
|
9 |
+
|
10 |
+
If you are a WordPress plugin or theme developer and you are interested to monetize with Freemius you can [sign-up here for free](https://dashboard.freemius.com/register/):
|
11 |
+
|
12 |
+
https://dashboard.freemius.com/register/
|
13 |
+
|
14 |
+
**Below you'll find the integration instructions for our WordPress SDK.**
|
15 |
+
|
16 |
+
## Code Documentation
|
17 |
+
|
18 |
+
You can find the SDK's PHP-Doc documentation here:
|
19 |
+
https://codedoc.pub/freemius/wordpress-sdk/master/
|
20 |
+
|
21 |
+
## Initializing the SDK
|
22 |
+
|
23 |
+
Copy the code below and paste it into the top of your main plugin's PHP file, right after the plugin's header comment:
|
24 |
+
|
25 |
+
```php
|
26 |
+
<?php
|
27 |
+
// Create a helper function for easy SDK access.
|
28 |
+
function my_prefix_fs() {
|
29 |
+
global $my_prefix_fs;
|
30 |
+
if ( ! isset( $my_prefix_fs ) ) {
|
31 |
+
// Include Freemius SDK.
|
32 |
+
require_once dirname(__FILE__) . '/freemius/start.php';
|
33 |
+
|
34 |
+
$my_prefix_fs = fs_dynamic_init( array(
|
35 |
+
'id' => '1234',
|
36 |
+
'slug' => 'my-plugin-slug',
|
37 |
+
'menu_slug' => 'my_menu_slug', // You can also use __FILE__
|
38 |
+
'public_key' => 'pk_MY_PUBLIC_KEY',
|
39 |
+
'is_live' => true,
|
40 |
+
'is_premium' => true,
|
41 |
+
'has_addons' => false,
|
42 |
+
'has_paid_plans' => false,
|
43 |
+
// Set the SDK to work in a sandbox mode (for development & testing).
|
44 |
+
// IMPORTANT: MAKE SURE TO REMOVE SECRET KEY BEFORE DEPLOYMENT.
|
45 |
+
'secret_key' => 'sk_MY_SECRET_KEY',
|
46 |
+
) );
|
47 |
+
}
|
48 |
+
|
49 |
+
return $my_prefix_fs;
|
50 |
+
}
|
51 |
+
|
52 |
+
// Init Freemius.
|
53 |
+
my_prefix_fs();
|
54 |
+
?>
|
55 |
+
```
|
56 |
+
|
57 |
+
- **1234** - Replace with your plugin's ID.
|
58 |
+
- **pk_MY_PUBLIC_KEY** - Replace with your plugin's public key.
|
59 |
+
- **sk_MY_SECRET_KEY** - Replace with your plugin's secret key.
|
60 |
+
- **my-plugin-slug** - Replace with your plugin's WordPress.org slug.
|
61 |
+
- **my_menu_slug** - Replace with your admin dashboard settings menu slug.
|
62 |
+
|
63 |
+
|
64 |
+
## Usage example
|
65 |
+
|
66 |
+
You can call the SDK by using the shortcode function:
|
67 |
+
|
68 |
+
```php
|
69 |
+
<?php my_prefix_fs()->get_upgrade_url(); ?>
|
70 |
+
```
|
71 |
+
|
72 |
+
Or when calling Freemius multiple times in a scope, it's recommended to use it with the global variable:
|
73 |
+
|
74 |
+
```php
|
75 |
+
<?php
|
76 |
+
global $my_prefix_fs;
|
77 |
+
$my_prefix_fs->get_account_url();
|
78 |
+
?>
|
79 |
+
```
|
80 |
+
|
81 |
+
## Adding license based logic examples
|
82 |
+
|
83 |
+
Add marketing content to encourage your users to upgrade for your paid version:
|
84 |
+
|
85 |
+
```php
|
86 |
+
<?php
|
87 |
+
if ( my_prefix_fs()->is_not_paying() ) {
|
88 |
+
echo '<section><h1>' . esc_html__('Awesome Premium Features', 'my-plugin-slug') . '</h1>';
|
89 |
+
echo '<a href="' . my_prefix_fs()->get_upgrade_url() . '">' .
|
90 |
+
esc_html__('Upgrade Now!', 'my-plugin-slug') .
|
91 |
+
'</a>';
|
92 |
+
echo '</section>';
|
93 |
+
}
|
94 |
+
?>
|
95 |
+
```
|
96 |
+
|
97 |
+
Add logic which will only be available in your premium plugin version:
|
98 |
+
|
99 |
+
```php
|
100 |
+
<?php
|
101 |
+
// This "if" block will be auto removed from the Free version.
|
102 |
+
if ( my_prefix_fs()->is__premium_only() ) {
|
103 |
+
|
104 |
+
// ... premium only logic ...
|
105 |
+
|
106 |
+
}
|
107 |
+
?>
|
108 |
+
```
|
109 |
+
|
110 |
+
To add a function which will only be available in your premium plugin version, simply add __premium_only as the suffix of the function name. Just make sure that all lines that call that method directly or by hooks, are also wrapped in premium only logic:
|
111 |
+
|
112 |
+
```php
|
113 |
+
<?php
|
114 |
+
class My_Plugin {
|
115 |
+
function init() {
|
116 |
+
...
|
117 |
+
|
118 |
+
// This "if" block will be auto removed from the free version.
|
119 |
+
if ( my_prefix_fs()->is__premium_only() ) {
|
120 |
+
// Init premium version.
|
121 |
+
$this->admin_init__premium_only();
|
122 |
+
|
123 |
+
add_action( 'admin_init', array( &$this, 'admin_init_hook__premium_only' );
|
124 |
+
}
|
125 |
+
|
126 |
+
...
|
127 |
+
}
|
128 |
+
|
129 |
+
// This method will be only included in the premium version.
|
130 |
+
function admin_init__premium_only() {
|
131 |
+
...
|
132 |
+
}
|
133 |
+
|
134 |
+
// This method will be only included in the premium version.
|
135 |
+
function admin_init_hook__premium_only() {
|
136 |
+
...
|
137 |
+
}
|
138 |
+
}
|
139 |
+
?>
|
140 |
+
```
|
141 |
+
|
142 |
+
Add logic which will only be executed for customers in your 'professional' plan:
|
143 |
+
|
144 |
+
```php
|
145 |
+
<?php
|
146 |
+
if ( my_prefix_fs()->is_plan('professional', true) ) {
|
147 |
+
// .. logic related to Professional plan only ...
|
148 |
+
}
|
149 |
+
?>
|
150 |
+
```
|
151 |
+
|
152 |
+
Add logic which will only be executed for customers in your 'professional' plan or higher plans:
|
153 |
+
|
154 |
+
```php
|
155 |
+
<?php
|
156 |
+
if ( my_prefix_fs()->is_plan('professional') ) {
|
157 |
+
// ... logic related to Professional plan and higher plans ...
|
158 |
+
}
|
159 |
+
?>
|
160 |
+
```
|
161 |
+
|
162 |
+
Add logic which will only be available in your premium plugin version AND will only be executed for customers in your 'professional' plan (and higher plans):
|
163 |
+
|
164 |
+
```php
|
165 |
+
<?php
|
166 |
+
// This "if" block will be auto removed from the Free version.
|
167 |
+
if ( my_prefix_fs()->is_plan__premium_only('professional') ) {
|
168 |
+
// ... logic related to Professional plan and higher plans ...
|
169 |
+
}
|
170 |
+
?>
|
171 |
+
```
|
172 |
+
|
173 |
+
Add logic only for users in trial:
|
174 |
+
|
175 |
+
```php
|
176 |
+
<?php
|
177 |
+
if ( my_prefix_fs()->is_trial() ) {
|
178 |
+
// ... logic for users in trial ...
|
179 |
+
}
|
180 |
+
?>
|
181 |
+
```
|
182 |
+
|
183 |
+
Add logic for specified paid plan:
|
184 |
+
|
185 |
+
```php
|
186 |
+
<?php
|
187 |
+
// This "if" block will be auto removed from the Free version.
|
188 |
+
if ( my_prefix_fs()->is__premium_only() ) {
|
189 |
+
if ( my_prefix_fs()->is_plan( 'professional', true ) ) {
|
190 |
+
|
191 |
+
// ... logic related to Professional plan only ...
|
192 |
+
|
193 |
+
} else if ( my_prefix_fs()->is_plan( 'business' ) ) {
|
194 |
+
|
195 |
+
// ... logic related to Business plan and higher plans ...
|
196 |
+
|
197 |
+
}
|
198 |
+
}
|
199 |
+
?>
|
200 |
+
```
|
201 |
+
|
202 |
+
## Excluding files and folders from the free plugin version
|
203 |
+
There are two ways to exclude files from your free version.
|
204 |
+
|
205 |
+
1. Add `__premium_only` just before the file extension. For example, functions__premium_only.php will be only included in the premium plugin version. This works for all type of files, not only PHP.
|
206 |
+
2. Add `@fs_premium_only` a sepcial meta tag to the plugin's main PHP file header. Example:
|
207 |
+
```php
|
208 |
+
<?php
|
209 |
+
/**
|
210 |
+
* Plugin Name: My Very Awesome Plugin
|
211 |
+
* Plugin URI: http://my-awesome-plugin.com
|
212 |
+
* Description: Create and manage Awesomeness right in WordPress.
|
213 |
+
* Version: 1.0.0
|
214 |
+
* Author: Awesomattic
|
215 |
+
* Author URI: http://my-awesome-plugin.com/me/
|
216 |
+
* License: GPLv2
|
217 |
+
* Text Domain: myplugin
|
218 |
+
* Domain Path: /langs
|
219 |
+
*
|
220 |
+
* @fs_premium_only /lib/functions.php, /premium-files/
|
221 |
+
*/
|
222 |
+
|
223 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
224 |
+
exit;
|
225 |
+
}
|
226 |
+
|
227 |
+
// ... my code ...
|
228 |
+
?>
|
229 |
+
```
|
230 |
+
The file `/lib/functions.php` and the directory `/premium-files/` will be removed from the free plugin version.
|
231 |
+
|
232 |
+
# WordPress.org Compliance
|
233 |
+
Based on [WordPress.org Guidelines](https://wordpress.org/plugins/about/guidelines/) you are not allowed to submit a plugin that has premium code in it:
|
234 |
+
> All code hosted by WordPress.org servers must be free and fully-functional. If you want to sell advanced features for a plugin (such as a "pro" version), then you must sell and serve that code from your own site, we will not host it on our servers.
|
235 |
+
|
236 |
+
Therefore, if you want to deploy your free plugin's version to WordPress.org, make sure you wrap all your premium code with `if ( my_prefix_fs()->{{ method }}__premium_only() )` or the other methods provided to exclude premium features & files from the free version.
|
237 |
+
|
238 |
+
## Deployment
|
239 |
+
Zip your plugin's root folder and upload it in the Deployment section in the *Freemius Developer's Dashboard*.
|
240 |
+
The plugin will be scanned and processed by a custom developed *PHP Processor* which will auto-generate two versions of your plugin:
|
241 |
+
|
242 |
+
1. **Premium version**: Identical to your uploaded version, including all code (except your `secret_key`). Will be enabled for download ONLY for your paying or in trial customers.
|
243 |
+
2. **Free version**: The code stripped from all your paid features (based on the logic added wrapped in `{ method }__premium_only()`).
|
244 |
+
|
245 |
+
The free version is the one that you should give your users to download. Therefore, download the free generated version and upload to your site. Or, if your plugin was WordPress.org complaint and you made sure to exclude all your premium code with the different provided techniques, you can deploy the downloaded free version to the .org repo.
|
246 |
+
|
247 |
+
## Reporting Bugs
|
248 |
+
Email dev [at] freemius [dot] com
|
249 |
+
|
250 |
+
## FAQ
|
251 |
+
|
252 |
+
## Copyright
|
253 |
+
Freemius, Inc.
|
freemius/assets/css/admin/checkout.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
@media screen and (max-width: 782px){#wpbody-content{padding-bottom:0 !important}}
|
freemius/assets/css/admin/common.css
CHANGED
@@ -1 +1,2 @@
|
|
|
|
1 |
.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}.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;box-shadow:0px 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)}@media screen and (max-width: 960px){.fs-secure-notice{left:36px}}@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}
|
1 |
+
#iframe{line-height:0;font-size:0}.fs-full-size-wrapper{margin:0 0 -65px -20px}@media (max-width: 782px){.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}.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;box-shadow:0px 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)}@media screen and (max-width: 960px){.fs-secure-notice{left:36px}}@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}
|
freemius/assets/css/admin/debug.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.switch{position:relative;display:inline-block;font-size:1.6em;font-weight:bold;color:#ccc;text-shadow:0px 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);border-radius:4px;background:#ececec;box-shadow:0px 0px 4px rgba(0,0,0,0.1),inset 0px 1px 3px 0px rgba(0,0,0,0.1);cursor:pointer}.switch span{display:inline-block;width:35px;text-transform:uppercase}.switch span.on{color:#6bc406}.switch .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:-moz-linear-gradient(top, #ececec 0%, #fff 100%);background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #ececec), color-stop(100%, #fff));background:-webkit-linear-gradient(top, #ececec 0%, #fff 100%);background:-o-linear-gradient(top, #ececec 0%, #fff 100%);background:-ms-linear-gradient(top, #ececec 0%, #fff 100%);background:linear-gradient(top, #ececec 0%, #fff 100%);box-shadow:inset 0px 1px 0px 0px rgba(255,255,255,0.5);z-index:999;-moz-transition:all 0.15s ease-in-out;-o-transition:all 0.15s ease-in-out;-ms-transition:all 0.15s ease-in-out;-webkit-transition:all 0.15s ease-in-out;transition:all 0.15s ease-in-out}.switch.on .toggle{left:2%}.switch.off .toggle{left:54%}.switch.round{padding:0px 20px;border-radius:40px}.switch.round .toggle{border-radius:40px;width:14px;height:14px}.switch.round.on .toggle{left:3%;background:#6bc406}.switch.round.off .toggle{left:58%}.switch-label{font-size:20px;line-height:31px;margin:0 5px}
|
1 |
+
.switch{position:relative;display:inline-block;font-size:1.6em;font-weight:bold;color:#ccc;text-shadow:0px 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);border-radius:4px;background:#ececec;box-shadow:0px 0px 4px rgba(0,0,0,0.1),inset 0px 1px 3px 0px rgba(0,0,0,0.1);cursor:pointer}.switch span{display:inline-block;width:35px;text-transform:uppercase}.switch span.on{color:#6bc406}.switch .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:-moz-linear-gradient(top, #ececec 0%, #fff 100%);background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #ececec), color-stop(100%, #fff));background:-webkit-linear-gradient(top, #ececec 0%, #fff 100%);background:-o-linear-gradient(top, #ececec 0%, #fff 100%);background:-ms-linear-gradient(top, #ececec 0%, #fff 100%);background:linear-gradient(top, #ececec 0%, #fff 100%);box-shadow:inset 0px 1px 0px 0px rgba(255,255,255,0.5);z-index:999;-moz-transition:all 0.15s ease-in-out;-o-transition:all 0.15s ease-in-out;-ms-transition:all 0.15s ease-in-out;-webkit-transition:all 0.15s ease-in-out;transition:all 0.15s ease-in-out}.switch.on .toggle{left:2%}.switch.off .toggle{left:54%}.switch.round{padding:0px 20px;border-radius:40px}.switch.round .toggle{border-radius:40px;width:14px;height:14px}.switch.round.on .toggle{left:3%;background:#6bc406}.switch.round.off .toggle{left:58%}.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 .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-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-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-license-activation .fs-modal-body input.license_key{width:100%}.fs-modal.fs-modal-license-key-resend .
|
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}
|
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 .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-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-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-license-activation .fs-modal-body input.license_key{width:100%}.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}
|
freemius/assets/img/auto-terms-of-service-and-privacy-policy.svg
DELETED
@@ -1,26 +0,0 @@
|
|
1 |
-
<?xml version="1.0" encoding="utf-8"?>
|
2 |
-
<!-- Generator: Adobe Illustrator 16.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
4 |
-
<svg version="1.1" id="Noun_Project_TOS" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
|
5 |
-
y="0px" width="500px" height="500px" viewBox="0 0 500 500" style="enable-background:new 0 0 500 500;" xml:space="preserve">
|
6 |
-
<style type="text/css">
|
7 |
-
<![CDATA[
|
8 |
-
.st0{display:none;fill:#0989DA;stroke:#231F20;stroke-width:2;stroke-miterlimit:10;}
|
9 |
-
.st1{fill:#FF90B7;stroke:#231F20;stroke-width:2;stroke-miterlimit:10;}
|
10 |
-
.st2{fill:#231F20;stroke:#231F20;stroke-width:2;stroke-miterlimit:10;}
|
11 |
-
]]>
|
12 |
-
</style>
|
13 |
-
<g>
|
14 |
-
<path class="st2" d="M377.7,70.5H122.3v359h255.3V70.5z M361.7,86.4v327.1H138.3V86.4H361.7"/>
|
15 |
-
<path class="st0" d="M377.7,70.5H122.3v359h255.3V70.5z M361.7,86.4v327.1H138.3V86.4H361.7"/>
|
16 |
-
<rect x="174.2" y="118.4" class="st1" width="151.6" height="19.9"/>
|
17 |
-
<rect x="174.2" y="178.2" class="st1" width="151.6" height="12"/>
|
18 |
-
<rect x="174.2" y="214.1" class="st1" width="151.6" height="12"/>
|
19 |
-
<rect x="174.2" y="250" class="st1" width="151.6" height="12"/>
|
20 |
-
<rect x="174.2" y="285.9" class="st1" width="91.8" height="12"/>
|
21 |
-
<path class="st1" d="M219.1,369l-6.8,6.8l-9.1-9.1l-9.1,9.1l-6.8-6.8l9.1-9.1l-9.1-9.1l6.8-6.8l9.1,9.1l9.1-9.1l6.8,6.8l-9.1,9.1
|
22 |
-
L219.1,369z M162.2,333.8v55.9H242v-55.9H162.2z"/>
|
23 |
-
<path class="st1" d="M304.8,368.7l-6.6,6.6l-16.5-16.5l6.6-6.6l9.9,9.9l15.4-15.4l6.6,6.6L304.8,368.7z M258,333.8v55.9h79.8v-55.9
|
24 |
-
H258z"/>
|
25 |
-
</g>
|
26 |
-
</svg>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
freemius/assets/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/assets/scss/_vars.scss
CHANGED
@@ -2,4 +2,5 @@ $is_production: true;
|
|
2 |
|
3 |
$img_common: if($is_production == true, '//img.freemius.com', 'http://img.freemius:8080');
|
4 |
|
5 |
-
$layout_width: 960px;
|
|
2 |
|
3 |
$img_common: if($is_production == true, '//img.freemius.com', 'http://img.freemius:8080');
|
4 |
|
5 |
+
$layout_width: 960px;
|
6 |
+
$admin_mobile_max_width: 782px;
|
freemius/assets/scss/admin/_license-key-resend.scss
CHANGED
@@ -1,44 +1,68 @@
|
|
1 |
-
.fs-modal.fs-modal-license-key-resend
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
}
|
22 |
|
23 |
.rtl
|
24 |
{
|
25 |
-
.fs-modal.fs-modal-license-key-resend
|
26 |
-
|
27 |
-
|
28 |
-
|
|
|
|
|
|
|
29 |
padding-right: 0;
|
30 |
}
|
31 |
|
32 |
-
.button-container
|
33 |
-
|
|
|
34 |
margin-right: 7px;
|
35 |
-
margin-left:
|
36 |
}
|
37 |
}
|
38 |
}
|
39 |
}
|
40 |
|
41 |
-
a.show-license-resend-modal
|
42 |
-
|
43 |
-
|
|
|
44 |
}
|
1 |
+
.fs-modal.fs-modal-license-key-resend
|
2 |
+
{
|
3 |
+
.email-address-container
|
4 |
+
{
|
5 |
+
overflow: hidden;
|
6 |
+
padding-right: 2px;
|
7 |
+
}
|
8 |
+
|
9 |
+
&.fs-freemium
|
10 |
+
{
|
11 |
+
input.email-address
|
12 |
+
{
|
13 |
+
width: 300px;
|
14 |
+
}
|
15 |
+
|
16 |
+
label
|
17 |
+
{
|
18 |
+
display: block;
|
19 |
+
margin-bottom: 10px;
|
20 |
+
}
|
21 |
+
}
|
22 |
+
|
23 |
+
&.fs-premium
|
24 |
+
{
|
25 |
+
input.email-address
|
26 |
+
{
|
27 |
+
width: 100%;
|
28 |
+
}
|
29 |
+
|
30 |
+
.button-container
|
31 |
+
{
|
32 |
+
float: right;
|
33 |
+
margin-left: 7px;
|
34 |
+
|
35 |
+
@media (max-width: 650px) {
|
36 |
+
margin-top: 2px;
|
37 |
+
}
|
38 |
+
}
|
39 |
+
}
|
40 |
}
|
41 |
|
42 |
.rtl
|
43 |
{
|
44 |
+
.fs-modal.fs-modal-license-key-resend
|
45 |
+
{
|
46 |
+
.fs-modal-body
|
47 |
+
{
|
48 |
+
.input-container > .email-address-container
|
49 |
+
{
|
50 |
+
padding-left: 2px;
|
51 |
padding-right: 0;
|
52 |
}
|
53 |
|
54 |
+
.button-container
|
55 |
+
{
|
56 |
+
float: left;
|
57 |
margin-right: 7px;
|
58 |
+
margin-left: 0;
|
59 |
}
|
60 |
}
|
61 |
}
|
62 |
}
|
63 |
|
64 |
+
a.show-license-resend-modal
|
65 |
+
{
|
66 |
+
margin-top: 4px;
|
67 |
+
display: inline-block;
|
68 |
}
|
freemius/assets/scss/admin/checkout.scss
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
@media screen and (max-width: 782px) {
|
2 |
+
#wpbody-content {
|
3 |
+
padding-bottom: 0 !important;
|
4 |
+
}
|
5 |
+
}
|
freemius/assets/scss/admin/common.scss
CHANGED
@@ -1,5 +1,18 @@
|
|
1 |
@import "../start";
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
.fs-notice
|
4 |
{
|
5 |
position: relative;
|
1 |
@import "../start";
|
2 |
|
3 |
+
#iframe {
|
4 |
+
line-height: 0;
|
5 |
+
font-size: 0;
|
6 |
+
}
|
7 |
+
|
8 |
+
.fs-full-size-wrapper {
|
9 |
+
margin: 0 0 -65px -20px;
|
10 |
+
|
11 |
+
@media (max-width: $admin_mobile_max_width) {
|
12 |
+
margin: 0 0 -65px -10px;
|
13 |
+
}
|
14 |
+
}
|
15 |
+
|
16 |
.fs-notice
|
17 |
{
|
18 |
position: relative;
|
freemius/assets/scss/admin/debug.scss
CHANGED
@@ -88,4 +88,48 @@
|
|
88 |
font-size: 20px;
|
89 |
line-height: 31px;
|
90 |
margin: 0 5px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
}
|
88 |
font-size: 20px;
|
89 |
line-height: 31px;
|
90 |
margin: 0 5px;
|
91 |
+
}
|
92 |
+
|
93 |
+
#fs_log_book {
|
94 |
+
table {
|
95 |
+
font-family: Consolas,Monaco,monospace;
|
96 |
+
font-size: 12px;
|
97 |
+
|
98 |
+
th {
|
99 |
+
color: #ccc;
|
100 |
+
}
|
101 |
+
|
102 |
+
tr {
|
103 |
+
background: #232525;
|
104 |
+
|
105 |
+
&.alternate {
|
106 |
+
background: #2b2b2b;
|
107 |
+
}
|
108 |
+
|
109 |
+
td {
|
110 |
+
&.fs-col--logger {
|
111 |
+
color: #5a7435;
|
112 |
+
}
|
113 |
+
&.fs-col--type {
|
114 |
+
color: #ffc861;
|
115 |
+
}
|
116 |
+
&.fs-col--function {
|
117 |
+
color: #a7b7b1;
|
118 |
+
font-weight: bold;
|
119 |
+
}
|
120 |
+
&.fs-col--message {
|
121 |
+
&, a
|
122 |
+
{
|
123 |
+
color: #9a73ac !important;
|
124 |
+
}
|
125 |
+
}
|
126 |
+
&.fs-col--file {
|
127 |
+
color: #d07922;
|
128 |
+
}
|
129 |
+
&.fs-col--timestamp {
|
130 |
+
color: #6596be;
|
131 |
+
}
|
132 |
+
}
|
133 |
+
}
|
134 |
+
}
|
135 |
}
|
freemius/composer.json
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "freemius/wordpress-sdk",
|
3 |
+
"description": "Freemius WordPress SDK",
|
4 |
+
"keywords": ["freemius", "wordpress", "plugin", "sdk"],
|
5 |
+
"homepage": "https://freemius.com",
|
6 |
+
"license": "GPL-2.0+",
|
7 |
+
"require": {
|
8 |
+
"php": ">=5.2"
|
9 |
+
}
|
10 |
+
}
|
freemius/config.php
CHANGED
@@ -140,7 +140,7 @@
|
|
140 |
define( 'WP_FS__TESTING_DOMAIN', 'fswp' );
|
141 |
}
|
142 |
|
143 |
-
|
144 |
#region HTTP
|
145 |
#--------------------------------------------------------------------------------
|
146 |
|
@@ -221,6 +221,24 @@
|
|
221 |
|
222 |
#endregion
|
223 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
define( 'WP_FS___OPTION_PREFIX', 'fs' . ( WP_FS__IS_PRODUCTION_MODE ? '' : '_dbg' ) . '_' );
|
225 |
|
226 |
if ( ! defined( 'WP_FS__ACCOUNTS_OPTION_NAME' ) ) {
|
140 |
define( 'WP_FS__TESTING_DOMAIN', 'fswp' );
|
141 |
}
|
142 |
|
143 |
+
#--------------------------------------------------------------------------------
|
144 |
#region HTTP
|
145 |
#--------------------------------------------------------------------------------
|
146 |
|
221 |
|
222 |
#endregion
|
223 |
|
224 |
+
#--------------------------------------------------------------------------------
|
225 |
+
#region Checkout
|
226 |
+
#--------------------------------------------------------------------------------
|
227 |
+
|
228 |
+
if ( ! defined( 'FS_CHECKOUT__ADDRESS_PRODUCTION' ) ) {
|
229 |
+
define( 'FS_CHECKOUT__ADDRESS_PRODUCTION', 'https://checkout.freemius.com' );
|
230 |
+
}
|
231 |
+
|
232 |
+
if ( ! defined( 'FS_CHECKOUT__ADDRESS_LOCALHOST' ) ) {
|
233 |
+
define( 'FS_CHECKOUT__ADDRESS_LOCALHOST', 'http://checkout.freemius:8080' );
|
234 |
+
}
|
235 |
+
|
236 |
+
if ( ! defined( 'FS_CHECKOUT__ADDRESS' ) ) {
|
237 |
+
define( 'FS_CHECKOUT__ADDRESS', ( WP_FS__IS_PRODUCTION_MODE ? FS_CHECKOUT__ADDRESS_PRODUCTION : FS_CHECKOUT__ADDRESS_LOCALHOST ) );
|
238 |
+
}
|
239 |
+
|
240 |
+
#endregion
|
241 |
+
|
242 |
define( 'WP_FS___OPTION_PREFIX', 'fs' . ( WP_FS__IS_PRODUCTION_MODE ? '' : '_dbg' ) . '_' );
|
243 |
|
244 |
if ( ! defined( 'WP_FS__ACCOUNTS_OPTION_NAME' ) ) {
|
freemius/gulpfile.js
ADDED
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
var gulp = require('gulp');
|
2 |
+
var wpPot = require('gulp-wp-pot');
|
3 |
+
var gettext = require('gulp-gettext');
|
4 |
+
var sort = require('gulp-sort');
|
5 |
+
var pofill = require('gulp-pofill');
|
6 |
+
var rename = require('gulp-rename');
|
7 |
+
|
8 |
+
gulp.task('default', function () {
|
9 |
+
// Create POT out of i18n.php.
|
10 |
+
gulp.src('includes/i18n.php')
|
11 |
+
.pipe(sort())
|
12 |
+
.pipe(wpPot( {
|
13 |
+
destFile:'freemius.pot',
|
14 |
+
package: 'freemius',
|
15 |
+
bugReport: 'https://github.com/Freemius/wordpress-sdk/issues',
|
16 |
+
lastTranslator: 'Vova Feldman <vova@freemius.com>',
|
17 |
+
team: 'Freemius Team <admin@freemius.com>',
|
18 |
+
gettextFunctions: [
|
19 |
+
{name: '_fs_text'},
|
20 |
+
{name: '_fs_echo'},
|
21 |
+
{name: '_fs_esc_attr'},
|
22 |
+
{name: '_fs_esc_attr_echo'},
|
23 |
+
{name: '_fs_esc_html'},
|
24 |
+
{name: '_fs_esc_html_echo'},
|
25 |
+
{name: '_fs_x', context: 2},
|
26 |
+
{name: '_fs_ex', context: 2},
|
27 |
+
{name: '_fs_esc_attr_x', context: 2},
|
28 |
+
{name: '_fs_esc_html_x', context: 2},
|
29 |
+
{name: '_fs_n', plural: 2},
|
30 |
+
{name: '_fs_n_noop', plural: 2},
|
31 |
+
{name: '_fs_nx', plural: 2, context: 4},
|
32 |
+
{name: '_fs_nx_noop', plural: 2, context: 3}
|
33 |
+
]
|
34 |
+
} ))
|
35 |
+
.pipe(gulp.dest('languages/freemius.pot'));
|
36 |
+
|
37 |
+
// Create English PO out of the POT.
|
38 |
+
gulp.src('languages/freemius.pot')
|
39 |
+
.pipe(pofill({
|
40 |
+
items: function(item) {
|
41 |
+
// If msgstr is empty, use identity translation
|
42 |
+
if (!item.msgstr.length) {
|
43 |
+
item.msgstr = [''];
|
44 |
+
}
|
45 |
+
if (!item.msgstr[0]) {
|
46 |
+
item.msgstr[0] = item.msgid;
|
47 |
+
}
|
48 |
+
return item;
|
49 |
+
}
|
50 |
+
}))
|
51 |
+
.pipe(rename('freemius-en.po'))
|
52 |
+
.pipe(gulp.dest('languages/'));
|
53 |
+
|
54 |
+
// Compile POs to MOs.
|
55 |
+
gulp.src('languages/*.po')
|
56 |
+
.pipe(gettext())
|
57 |
+
.pipe(gulp.dest('languages/'))
|
58 |
+
});
|
freemius/includes/class-freemius-abstract.php
CHANGED
@@ -5,6 +5,7 @@
|
|
5 |
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
6 |
* @since 1.0.7
|
7 |
*/
|
|
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
10 |
}
|
@@ -227,7 +228,7 @@
|
|
227 |
*
|
228 |
* @since 1.0.9
|
229 |
*
|
230 |
-
* @param string $plan Plan name
|
231 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
232 |
*
|
233 |
* @return bool
|
@@ -243,7 +244,7 @@
|
|
243 |
*
|
244 |
* @since 1.0.9
|
245 |
*
|
246 |
-
* @param string $plan Plan name
|
247 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
248 |
*
|
249 |
* @return bool
|
@@ -335,7 +336,7 @@
|
|
335 |
/**
|
336 |
* @since 1.0.2
|
337 |
*
|
338 |
-
* @param string $plan Plan name
|
339 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
340 |
*
|
341 |
* @return bool
|
@@ -347,7 +348,7 @@
|
|
347 |
*
|
348 |
* @since 1.0.9
|
349 |
*
|
350 |
-
* @param string $plan Plan name
|
351 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
352 |
*
|
353 |
* @return bool
|
@@ -359,7 +360,7 @@
|
|
359 |
*
|
360 |
* @since 1.0.9
|
361 |
*
|
362 |
-
* @param string $plan Plan name
|
363 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
364 |
*
|
365 |
* @return bool
|
@@ -403,6 +404,31 @@
|
|
403 |
*/
|
404 |
abstract function is_only_premium();
|
405 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
/**
|
407 |
* Checks if it's a freemium plugin.
|
408 |
*
|
@@ -451,7 +477,7 @@
|
|
451 |
* @author Vova Feldman (@svovaf)
|
452 |
* @since 1.0.2
|
453 |
*
|
454 |
-
* @param string $period Billing cycle
|
455 |
*
|
456 |
* @return string
|
457 |
*/
|
@@ -524,4 +550,4 @@
|
|
524 |
abstract function is_business();
|
525 |
|
526 |
#endregion
|
527 |
-
}
|
5 |
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
6 |
* @since 1.0.7
|
7 |
*/
|
8 |
+
|
9 |
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
exit;
|
11 |
}
|
228 |
*
|
229 |
* @since 1.0.9
|
230 |
*
|
231 |
+
* @param string $plan Plan name.
|
232 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
233 |
*
|
234 |
* @return bool
|
244 |
*
|
245 |
* @since 1.0.9
|
246 |
*
|
247 |
+
* @param string $plan Plan name.
|
248 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
249 |
*
|
250 |
* @return bool
|
336 |
/**
|
337 |
* @since 1.0.2
|
338 |
*
|
339 |
+
* @param string $plan Plan name.
|
340 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
341 |
*
|
342 |
* @return bool
|
348 |
*
|
349 |
* @since 1.0.9
|
350 |
*
|
351 |
+
* @param string $plan Plan name.
|
352 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
353 |
*
|
354 |
* @return bool
|
360 |
*
|
361 |
* @since 1.0.9
|
362 |
*
|
363 |
+
* @param string $plan Plan name.
|
364 |
* @param bool $exact If true, looks for exact plan. If false, also check "higher" plans.
|
365 |
*
|
366 |
* @return bool
|
404 |
*/
|
405 |
abstract function is_only_premium();
|
406 |
|
407 |
+
/**
|
408 |
+
* Check if module has a premium code version.
|
409 |
+
*
|
410 |
+
* Serviceware module might be freemium without any
|
411 |
+
* premium code version, where the paid features
|
412 |
+
* are all part of the service.
|
413 |
+
*
|
414 |
+
* @author Vova Feldman (@svovaf)
|
415 |
+
* @since 1.2.1.6
|
416 |
+
*
|
417 |
+
* @return bool
|
418 |
+
*/
|
419 |
+
abstract function has_premium_version();
|
420 |
+
|
421 |
+
/**
|
422 |
+
* Check if module has any release on Freemius,
|
423 |
+
* or all plugin's code is on WordPress.org (Serviceware).
|
424 |
+
*
|
425 |
+
* @return bool
|
426 |
+
*/
|
427 |
+
function has_release_on_freemius() {
|
428 |
+
return ! $this->is_org_repo_compliant() ||
|
429 |
+
$this->has_premium_version();
|
430 |
+
}
|
431 |
+
|
432 |
/**
|
433 |
* Checks if it's a freemium plugin.
|
434 |
*
|
477 |
* @author Vova Feldman (@svovaf)
|
478 |
* @since 1.0.2
|
479 |
*
|
480 |
+
* @param string $period Billing cycle.
|
481 |
*
|
482 |
* @return string
|
483 |
*/
|
550 |
abstract function is_business();
|
551 |
|
552 |
#endregion
|
553 |
+
}
|
freemius/includes/class-freemius.php
CHANGED
@@ -108,6 +108,18 @@
|
|
108 |
*/
|
109 |
private $_is_premium_only;
|
110 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
/**
|
112 |
* @since 1.0.8
|
113 |
* @var bool Hints the SDK if the plugin has any paid plans.
|
@@ -498,7 +510,7 @@
|
|
498 |
}
|
499 |
}
|
500 |
|
501 |
-
if ( !
|
502 |
if ( ! $this->is_addon() ) {
|
503 |
add_action( 'init', array( &$this, '_add_default_submenu_items' ), WP_FS__LOWEST_PRIORITY );
|
504 |
add_action( 'admin_menu', array( &$this, '_prepare_admin_menu' ), WP_FS__LOWEST_PRIORITY );
|
@@ -579,24 +591,28 @@
|
|
579 |
* @since 1.0.9
|
580 |
*/
|
581 |
private function _register_account_hooks() {
|
582 |
-
if ( is_admin() ) {
|
583 |
-
|
584 |
-
|
585 |
-
if ( ! $this->is_paying_or_trial() || $this->is_premium() ) {
|
586 |
-
$this->add_ajax_action(
|
587 |
-
'submit_uninstall_reason',
|
588 |
-
array( &$this, '_submit_uninstall_reason_action' )
|
589 |
-
);
|
590 |
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
595 |
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
|
|
|
|
|
|
600 |
}
|
601 |
}
|
602 |
}
|
@@ -1201,6 +1217,8 @@
|
|
1201 |
|
1202 |
add_action( "wp_ajax_fs_toggle_debug_mode", array( 'Freemius', '_toggle_debug_mode' ) );
|
1203 |
|
|
|
|
|
1204 |
add_action( 'plugins_loaded', array( 'Freemius', '_load_textdomain' ), 1 );
|
1205 |
|
1206 |
self::$_statics_loaded = true;
|
@@ -1251,6 +1269,8 @@
|
|
1251 |
|
1252 |
$title = sprintf( '%s [v.%s]', __fs( 'freemius-debug' ), WP_FS__SDK_VERSION );
|
1253 |
|
|
|
|
|
1254 |
if ( WP_FS__DEV_MODE ) {
|
1255 |
// Add top-level debug menu item.
|
1256 |
$hook = add_menu_page(
|
@@ -1261,18 +1281,22 @@
|
|
1261 |
array( 'Freemius', '_debug_page_render' )
|
1262 |
);
|
1263 |
} else {
|
1264 |
-
|
1265 |
-
|
1266 |
-
|
1267 |
-
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
|
|
|
|
1273 |
}
|
1274 |
|
1275 |
-
|
|
|
|
|
1276 |
}
|
1277 |
|
1278 |
/**
|
@@ -1280,13 +1304,30 @@
|
|
1280 |
* @since 1.1.7.3
|
1281 |
*/
|
1282 |
static function _toggle_debug_mode() {
|
1283 |
-
if ( in_array( $_POST['is_on'], array( 0, 1 ) ) ) {
|
1284 |
update_option( 'fs_debug_mode', $_POST['is_on'] );
|
|
|
|
|
|
|
1285 |
}
|
1286 |
|
1287 |
exit;
|
1288 |
}
|
1289 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1290 |
/**
|
1291 |
* @author Vova Feldman (@svovaf)
|
1292 |
* @since 1.0.8
|
@@ -1313,6 +1354,18 @@
|
|
1313 |
$fs->_storage->install_timestamp = ( time() - WP_FS__TIME_24_HOURS_IN_SEC );
|
1314 |
// Unset the trial shown timestamp.
|
1315 |
unset( $fs->_storage->trial_promotion_shown );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1316 |
}
|
1317 |
}
|
1318 |
|
@@ -1340,7 +1393,7 @@
|
|
1340 |
'licenses' => $licenses,
|
1341 |
);
|
1342 |
|
1343 |
-
fs_enqueue_local_style( '
|
1344 |
fs_require_once_template( 'debug.php', $vars );
|
1345 |
}
|
1346 |
|
@@ -1456,7 +1509,7 @@
|
|
1456 |
'version' => $version,
|
1457 |
'sdk' => $this->version,
|
1458 |
'is_admin' => json_encode( is_admin() ),
|
1459 |
-
'is_ajax' => json_encode(
|
1460 |
'is_cron' => json_encode( $this->is_cron() ),
|
1461 |
'is_http' => json_encode( WP_FS__IS_HTTP_REQUEST ),
|
1462 |
)
|
@@ -1638,7 +1691,7 @@
|
|
1638 |
}
|
1639 |
|
1640 |
if ( ! function_exists( 'wp_nonce_url' ) ) {
|
1641 |
-
require_once
|
1642 |
}
|
1643 |
|
1644 |
$current_user = self::_get_current_wp_user();
|
@@ -1864,35 +1917,18 @@
|
|
1864 |
|
1865 |
$custom_email_sections = array();
|
1866 |
|
1867 |
-
if ( 'squid' === $error_type ) {
|
1868 |
-
// Override the 'Site' email section.
|
1869 |
-
$custom_email_sections['site'] = array(
|
1870 |
-
'rows' => array(
|
1871 |
-
'hosting_company' => array( 'Hosting Company', fs_request_get( 'hosting_company' ) )
|
1872 |
-
)
|
1873 |
-
);
|
1874 |
-
}
|
1875 |
-
|
1876 |
// Add 'API Error' custom email section.
|
1877 |
$custom_email_sections['api_error'] = array(
|
1878 |
-
'title' =>
|
1879 |
'rows' => array(
|
1880 |
-
'ping' => array(
|
1881 |
-
|
1882 |
-
|
1883 |
-
|
1884 |
-
// Add PHP info for deeper investigation.
|
1885 |
-
ob_start();
|
1886 |
-
phpinfo();
|
1887 |
-
$php_info = ob_get_clean();
|
1888 |
-
$custom_email_sections['php_info'] = array(
|
1889 |
-
'title' => 'PHP Info',
|
1890 |
-
'rows' => array(
|
1891 |
-
'info' => array( $php_info )
|
1892 |
)
|
1893 |
);
|
1894 |
|
1895 |
-
// Send email with technical details to resolve
|
1896 |
$this->send_email(
|
1897 |
'api@freemius.com', // recipient
|
1898 |
$title . ' [' . $this->get_plugin_name() . ']', // subject
|
@@ -2004,7 +2040,7 @@
|
|
2004 |
$message = fs_get_template( 'email.php', $vars );
|
2005 |
|
2006 |
// Set the type of email to HTML.
|
2007 |
-
$headers[] = 'Content-type: text/html';
|
2008 |
|
2009 |
$header_string = implode( "\r\n", $headers );
|
2010 |
|
@@ -2046,38 +2082,57 @@
|
|
2046 |
|
2047 |
$server_ip = WP_FS__REMOTE_ADDR;
|
2048 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2049 |
// Generate the default email sections.
|
2050 |
$sections = array(
|
2051 |
-
'sdk'
|
2052 |
'title' => 'SDK',
|
2053 |
'rows' => array(
|
2054 |
'fs_version' => array( 'FS Version', $this->version ),
|
2055 |
'curl_version' => array( 'cURL Version', $curl_version_information['version'] )
|
2056 |
)
|
2057 |
),
|
2058 |
-
'plugin'
|
2059 |
'title' => 'Plugin',
|
2060 |
'rows' => array(
|
2061 |
'name' => array( 'Name', $this->get_plugin_name() ),
|
2062 |
'version' => array( 'Version', $this->get_plugin_version() )
|
2063 |
)
|
2064 |
),
|
2065 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2066 |
'title' => 'Site',
|
2067 |
'rows' => array(
|
2068 |
-
'unique_id' => array( '
|
2069 |
'address' => array( 'Address', site_url() ),
|
2070 |
'host' => array(
|
2071 |
'HTTP_HOST',
|
2072 |
( ! empty( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '' )
|
2073 |
),
|
|
|
|
|
|
|
|
|
|
|
2074 |
'server_addr' => array(
|
2075 |
'SERVER_ADDR',
|
2076 |
'<a href="http://www.projecthoneypot.org/ip_' . $server_ip . '">' . $server_ip . '</a>'
|
2077 |
)
|
2078 |
)
|
2079 |
),
|
2080 |
-
'user'
|
2081 |
'title' => 'User',
|
2082 |
'rows' => array(
|
2083 |
'email' => array( 'Email', $current_user->user_email ),
|
@@ -2085,12 +2140,18 @@
|
|
2085 |
'last' => array( 'Last', $current_user->user_lastname )
|
2086 |
)
|
2087 |
),
|
2088 |
-
'plugins'
|
2089 |
'title' => 'Plugins',
|
2090 |
'rows' => array(
|
2091 |
'active_plugins' => array( 'Active Plugins', $active_plugin_string )
|
2092 |
)
|
2093 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
2094 |
);
|
2095 |
|
2096 |
// Allow the sections to be modified by other code.
|
@@ -2290,10 +2351,6 @@
|
|
2290 |
}
|
2291 |
}
|
2292 |
|
2293 |
-
if ( $this->is_premium() ) {
|
2294 |
-
new FS_Plugin_Updater( $this );
|
2295 |
-
}
|
2296 |
-
|
2297 |
// if ( $this->is_registered() ||
|
2298 |
// $this->is_anonymous() ||
|
2299 |
// $this->is_pending_activation()
|
@@ -2302,6 +2359,21 @@
|
|
2302 |
// }
|
2303 |
}
|
2304 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2305 |
$this->do_action( 'initiated' );
|
2306 |
|
2307 |
if ( $this->_storage->prev_is_premium !== $this->_plugin->is_premium ) {
|
@@ -2350,12 +2422,12 @@
|
|
2350 |
$result = $this->stop_tracking();
|
2351 |
|
2352 |
if ( true === $result ) {
|
2353 |
-
|
2354 |
}
|
2355 |
|
2356 |
$this->_logger->api_error( $result );
|
2357 |
|
2358 |
-
|
2359 |
__fs( 'unexpected-api-error', $this->_slug ) .
|
2360 |
( $this->is_api_error( $result ) && isset( $result->error ) ?
|
2361 |
$result->error->message :
|
@@ -2371,12 +2443,12 @@
|
|
2371 |
$result = $this->allow_tracking();
|
2372 |
|
2373 |
if ( true === $result ) {
|
2374 |
-
|
2375 |
}
|
2376 |
|
2377 |
$this->_logger->api_error( $result );
|
2378 |
|
2379 |
-
|
2380 |
__fs( 'unexpected-api-error', $this->_slug ) .
|
2381 |
( $this->is_api_error( $result ) && isset( $result->error ) ?
|
2382 |
$result->error->message :
|
@@ -2569,22 +2641,28 @@
|
|
2569 |
// Set the secret key after storing the plugin, we don't want to store the key in the storage.
|
2570 |
$this->_plugin->secret_key = $secret_key;
|
2571 |
|
2572 |
-
if (
|
2573 |
-
|
2574 |
-
|
2575 |
-
|
|
|
|
|
|
|
|
|
2576 |
$plugin_info['menu_slug'] :
|
2577 |
-
$this->_slug
|
2578 |
-
|
2579 |
}
|
2580 |
|
2581 |
$this->_menu = FS_Admin_Menu_Manager::instance( $this->_slug );
|
2582 |
$this->_menu->init( $plugin_info['menu'], $this->is_addon() );
|
2583 |
|
2584 |
-
$this->_has_addons
|
2585 |
-
$this->_has_paid_plans
|
2586 |
-
$this->
|
2587 |
-
$this->
|
|
|
|
|
2588 |
if ( $this->_is_premium_only ) {
|
2589 |
// If premium only plugin, disable anonymous mode.
|
2590 |
$this->_enable_anonymous = false;
|
@@ -2684,7 +2762,7 @@
|
|
2684 |
return true;
|
2685 |
}
|
2686 |
|
2687 |
-
if (
|
2688 |
! $this->_admin_notices->has_sticky( 'failed_connect_api_first' ) &&
|
2689 |
! $this->_admin_notices->has_sticky( 'failed_connect_api' )
|
2690 |
) {
|
@@ -3157,7 +3235,7 @@
|
|
3157 |
|
3158 |
if ( $this->is_paying() ) {
|
3159 |
// Check for premium plugin updates.
|
3160 |
-
$this->
|
3161 |
}
|
3162 |
} else {
|
3163 |
// Sync install (only if something changed locally).
|
@@ -3748,14 +3826,18 @@
|
|
3748 |
FS_Api::clear_cache();
|
3749 |
|
3750 |
if ( $this->is_registered() ) {
|
3751 |
-
$this->
|
|
|
|
|
|
|
|
|
|
|
|
|
3752 |
|
3753 |
// Schedule re-activation event and sync.
|
3754 |
// $this->sync_install( array(), true );
|
3755 |
$this->schedule_install_sync();
|
3756 |
|
3757 |
-
$is_premium_version_activation = ( current_filter() !== ( 'activate_' . $this->_free_plugin_basename ) );
|
3758 |
-
|
3759 |
// 1. If running in the activation of the FREE module, get the basename of the PREMIUM.
|
3760 |
// 2. If running in the activation of the PREMIUM module, get the basename of the FREE.
|
3761 |
$other_version_basename = $is_premium_version_activation ?
|
@@ -3772,7 +3854,7 @@
|
|
3772 |
deactivate_plugins( $other_version_basename );
|
3773 |
}
|
3774 |
|
3775 |
-
// If activating the premium module version, add an admin
|
3776 |
if ( $is_premium_version_activation ) {
|
3777 |
$this->_admin_notices->add(
|
3778 |
sprintf( __fs( 'successful-version-upgrade-message', $this->_slug ), sprintf( '<b>%s</b>', $this->_plugin->title ) ),
|
@@ -4535,13 +4617,15 @@
|
|
4535 |
$params['reason_info'] = $uninstall_reason->info;
|
4536 |
}
|
4537 |
|
4538 |
-
if ( ! $this->is_registered()
|
4539 |
// Send anonymous uninstall event only if user submitted a feedback.
|
4540 |
-
if ( isset( $uninstall_reason
|
4541 |
-
$
|
4542 |
-
|
4543 |
-
|
4544 |
-
|
|
|
|
|
4545 |
}
|
4546 |
} else {
|
4547 |
// Send uninstall event.
|
@@ -4617,7 +4701,7 @@
|
|
4617 |
if ( ! function_exists( 'get_plugins' ) ) {
|
4618 |
self::$_static_logger->log( 'Including wp-admin/includes/plugin.php...' );
|
4619 |
|
4620 |
-
require_once
|
4621 |
}
|
4622 |
}
|
4623 |
|
@@ -4629,7 +4713,7 @@
|
|
4629 |
*/
|
4630 |
private static function require_pluggable_essentials() {
|
4631 |
if ( ! function_exists( 'wp_get_current_user' ) ) {
|
4632 |
-
require_once
|
4633 |
}
|
4634 |
}
|
4635 |
|
@@ -5027,7 +5111,7 @@
|
|
5027 |
return false;
|
5028 |
}
|
5029 |
|
5030 |
-
$addons = $this->
|
5031 |
|
5032 |
return ( ! is_array( $addons ) || empty( $addons ) ) ?
|
5033 |
false :
|
@@ -5835,7 +5919,7 @@
|
|
5835 |
|
5836 |
if ( ! current_user_can( 'activate_plugins' ) ) {
|
5837 |
// Only for admins.
|
5838 |
-
|
5839 |
}
|
5840 |
|
5841 |
$billing = fs_request_get( 'billing' );
|
@@ -5846,13 +5930,13 @@
|
|
5846 |
) ) );
|
5847 |
|
5848 |
if ( ! $this->is_api_result_entity( $result ) ) {
|
5849 |
-
|
5850 |
}
|
5851 |
|
5852 |
// Purge cached billing.
|
5853 |
$this->get_api_user_scope()->purge_cache( 'billing.json' );
|
5854 |
|
5855 |
-
|
5856 |
}
|
5857 |
|
5858 |
/**
|
@@ -5866,7 +5950,7 @@
|
|
5866 |
|
5867 |
if ( ! current_user_can( 'activate_plugins' ) ) {
|
5868 |
// Only for admins.
|
5869 |
-
|
5870 |
}
|
5871 |
|
5872 |
$trial_data = fs_request_get( 'trial' );
|
@@ -5881,14 +5965,14 @@
|
|
5881 |
);
|
5882 |
|
5883 |
if ( is_object( $next_page ) && $this->is_api_error( $next_page ) ) {
|
5884 |
-
|
5885 |
isset( $next_page->error ) ?
|
5886 |
$next_page->error->message :
|
5887 |
var_export( $next_page, true )
|
5888 |
);
|
5889 |
}
|
5890 |
|
5891 |
-
|
5892 |
'next_page' => $next_page,
|
5893 |
) );
|
5894 |
}
|
@@ -5912,8 +5996,8 @@
|
|
5912 |
$api = $this->get_api_plugin_scope();
|
5913 |
$result = $api->call( '/licenses/resend.json', 'post',
|
5914 |
array(
|
5915 |
-
'email'
|
5916 |
-
'
|
5917 |
)
|
5918 |
);
|
5919 |
|
@@ -6134,6 +6218,22 @@
|
|
6134 |
return $this->_is_premium_only;
|
6135 |
}
|
6136 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6137 |
/**
|
6138 |
* Check if feature supported with current site's plan.
|
6139 |
*
|
@@ -6168,7 +6268,7 @@
|
|
6168 |
*
|
6169 |
* @link http://wordpress.stackexchange.com/questions/70676/how-to-check-if-i-am-in-admin-ajax
|
6170 |
*/
|
6171 |
-
function is_ajax() {
|
6172 |
return ( defined( 'DOING_AJAX' ) && DOING_AJAX );
|
6173 |
}
|
6174 |
|
@@ -6184,7 +6284,7 @@
|
|
6184 |
*/
|
6185 |
function is_ajax_action( $actions ) {
|
6186 |
// Verify it's an ajax call.
|
6187 |
-
if ( !
|
6188 |
return false;
|
6189 |
}
|
6190 |
|
@@ -6211,6 +6311,48 @@
|
|
6211 |
return false;
|
6212 |
}
|
6213 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6214 |
/**
|
6215 |
* @author Vova Feldman (@svovaf)
|
6216 |
* @since 1.1.7
|
@@ -6230,7 +6372,7 @@
|
|
6230 |
* @return bool
|
6231 |
*/
|
6232 |
function is_user_in_admin() {
|
6233 |
-
return is_admin() && !
|
6234 |
}
|
6235 |
|
6236 |
/**
|
@@ -6263,7 +6405,7 @@
|
|
6263 |
}
|
6264 |
}
|
6265 |
|
6266 |
-
if ( ! $this->_menu->is_top_level() ) {
|
6267 |
$parent_slug = $this->_menu->get_parent_slug();
|
6268 |
$menu_file = ( false !== strpos( $parent_slug, '.php' ) ) ?
|
6269 |
$parent_slug :
|
@@ -6287,8 +6429,18 @@
|
|
6287 |
return add_query_arg( $params, admin_url( $this->_menu->get_raw_slug(), 'admin' ) );
|
6288 |
}
|
6289 |
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6290 |
return add_query_arg( array_merge( $params, array(
|
6291 |
-
'page' => $
|
6292 |
) ), admin_url( 'admin.php', 'admin' ) );
|
6293 |
}
|
6294 |
}
|
@@ -6963,25 +7115,27 @@
|
|
6963 |
}
|
6964 |
}
|
6965 |
|
6966 |
-
if ( $this->is_paying_or_trial()
|
6967 |
-
if ( $this->
|
6968 |
-
$this->
|
6969 |
-
|
6970 |
-
|
6971 |
-
|
6972 |
-
|
6973 |
-
|
6974 |
-
|
6975 |
-
|
6976 |
-
|
6977 |
-
|
6978 |
-
|
6979 |
-
|
6980 |
-
|
6981 |
-
|
6982 |
-
|
6983 |
-
|
6984 |
-
|
|
|
|
|
6985 |
}
|
6986 |
|
6987 |
$this->_admin_notices->remove_sticky( array(
|
@@ -6999,7 +7153,13 @@
|
|
6999 |
$next_page = '';
|
7000 |
|
7001 |
if ( is_numeric( $plugin_id ) ) {
|
7002 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
7003 |
// Add-on was installed - sync license right after install.
|
7004 |
$next_page = $this->_get_sync_license_url( $plugin_id );
|
7005 |
}
|
@@ -7122,10 +7282,21 @@
|
|
7122 |
$license_key = false,
|
7123 |
$is_pending_trial = false
|
7124 |
) {
|
7125 |
-
|
7126 |
-
|
7127 |
-
|
7128 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7129 |
|
7130 |
if ( ! empty( $license_key ) ) {
|
7131 |
$this->_storage->pending_license_key = $license_key;
|
@@ -7397,7 +7568,17 @@
|
|
7397 |
|
7398 |
$hook = false;
|
7399 |
|
7400 |
-
if ( $this->_menu->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7401 |
$hook = $this->_menu->override_menu_item( array( &$this, '_connect_page_render' ) );
|
7402 |
|
7403 |
if ( false === $hook ) {
|
@@ -7880,7 +8061,20 @@
|
|
7880 |
* @return string
|
7881 |
*/
|
7882 |
public function get_action_tag( $tag ) {
|
7883 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7884 |
}
|
7885 |
|
7886 |
/**
|
@@ -7895,6 +8089,19 @@
|
|
7895 |
return 'wp_ajax_' . $this->get_action_tag( $tag );
|
7896 |
}
|
7897 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7898 |
/**
|
7899 |
* Do action, specific for the current context plugin.
|
7900 |
*
|
@@ -7946,22 +8153,61 @@
|
|
7946 |
* @param string $tag
|
7947 |
* @param callable $function_to_add
|
7948 |
* @param int $priority
|
7949 |
-
* @param int $accepted_args
|
7950 |
*
|
7951 |
* @uses add_action()
|
7952 |
*
|
7953 |
* @return bool True if action added, false if no need to add the action since the AJAX call isn't matching.
|
7954 |
*/
|
7955 |
-
function add_ajax_action(
|
|
|
|
|
|
|
|
|
7956 |
$this->_logger->entrance( $tag );
|
7957 |
|
7958 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7959 |
return false;
|
7960 |
}
|
7961 |
|
7962 |
-
add_action(
|
|
|
|
|
|
|
|
|
|
|
7963 |
|
7964 |
-
|
7965 |
|
7966 |
return true;
|
7967 |
}
|
@@ -7974,7 +8220,7 @@
|
|
7974 |
*
|
7975 |
* @param mixed $response
|
7976 |
*/
|
7977 |
-
function shoot_ajax_response( $response ) {
|
7978 |
wp_send_json( $response );
|
7979 |
}
|
7980 |
|
@@ -7986,7 +8232,7 @@
|
|
7986 |
*
|
7987 |
* @param mixed $data Data to encode as JSON, then print and exit.
|
7988 |
*/
|
7989 |
-
function shoot_ajax_success( $data = null ) {
|
7990 |
wp_send_json_success( $data );
|
7991 |
}
|
7992 |
|
@@ -7998,7 +8244,7 @@
|
|
7998 |
*
|
7999 |
* @param mixed $error Optional error message.
|
8000 |
*/
|
8001 |
-
function shoot_ajax_failure( $error = '' ) {
|
8002 |
$result = array( 'success' => false );
|
8003 |
if ( ! empty( $error ) ) {
|
8004 |
$result['error'] = $error;
|
@@ -8679,7 +8925,7 @@
|
|
8679 |
$plugin_id = $this->_plugin->id;
|
8680 |
}
|
8681 |
|
8682 |
-
$this->
|
8683 |
$updates = $this->get_all_updates();
|
8684 |
|
8685 |
return isset( $updates[ $plugin_id ] ) && is_object( $updates[ $plugin_id ] ) ? $updates[ $plugin_id ] : false;
|
@@ -8829,7 +9075,7 @@
|
|
8829 |
sprintf(
|
8830 |
__fs( 'addon-successfully-upgraded-message', $this->_slug ),
|
8831 |
$addon->title
|
8832 |
-
) . ' ' . $this->
|
8833 |
__fs( 'download-latest-version', $this->_slug ),
|
8834 |
$addon_id
|
8835 |
)
|
@@ -8837,7 +9083,7 @@
|
|
8837 |
sprintf(
|
8838 |
__fs( 'addon-successfully-purchased-message', $this->_slug ),
|
8839 |
$addon->title
|
8840 |
-
) . ' ' . $this->
|
8841 |
__fs( 'download-latest-version', $this->_slug ),
|
8842 |
$addon_id
|
8843 |
),
|
@@ -9026,22 +9272,24 @@
|
|
9026 |
$this->_storage->trial_plan :
|
9027 |
$this->_site->plan;
|
9028 |
|
9029 |
-
$
|
9030 |
-
|
9031 |
-
|
9032 |
-
|
9033 |
-
|
9034 |
-
'
|
9035 |
-
|
9036 |
-
|
9037 |
-
|
9038 |
-
|
9039 |
-
|
|
|
|
|
|
|
9040 |
),
|
9041 |
-
__fs( '
|
9042 |
-
)
|
9043 |
-
|
9044 |
-
);
|
9045 |
}
|
9046 |
break;
|
9047 |
case 'upgraded':
|
@@ -9571,11 +9819,20 @@
|
|
9571 |
$is_premium = self::get_instance_by_id( $addon_id )->_can_download_premium();
|
9572 |
}
|
9573 |
|
9574 |
-
|
9575 |
-
|
9576 |
-
|
9577 |
-
|
9578 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9579 |
}
|
9580 |
|
9581 |
/**
|
@@ -9631,10 +9888,10 @@
|
|
9631 |
* @uses FS_Api
|
9632 |
* @uses wp_redirect()
|
9633 |
*/
|
9634 |
-
private function
|
9635 |
$this->_logger->entrance();
|
9636 |
|
9637 |
-
wp_redirect( $this->
|
9638 |
}
|
9639 |
|
9640 |
/**
|
@@ -9647,7 +9904,7 @@
|
|
9647 |
*
|
9648 |
* @return string
|
9649 |
*/
|
9650 |
-
private function
|
9651 |
$this->_logger->entrance();
|
9652 |
|
9653 |
return $this->get_api_site_scope()->get_signed_url(
|
@@ -9684,7 +9941,7 @@
|
|
9684 |
*
|
9685 |
* @return string
|
9686 |
*/
|
9687 |
-
private function
|
9688 |
return sprintf(
|
9689 |
'<a target="_blank" href="%s">%s</a>',
|
9690 |
$this->_get_latest_download_local_url( $plugin_id ),
|
@@ -9726,7 +9983,7 @@
|
|
9726 |
* @param bool|number $plugin_id
|
9727 |
* @param bool $flush Since 1.1.7.3
|
9728 |
*/
|
9729 |
-
private function
|
9730 |
$this->_logger->entrance();
|
9731 |
|
9732 |
// Check if there's a newer version for download.
|
@@ -9770,7 +10027,7 @@
|
|
9770 |
*
|
9771 |
* @uses FS_Api
|
9772 |
*/
|
9773 |
-
private function
|
9774 |
$this->_logger->entrance();
|
9775 |
|
9776 |
$api = $this->get_api_site_or_plugin_scope();
|
@@ -9814,7 +10071,7 @@
|
|
9814 |
*
|
9815 |
* @return object
|
9816 |
*/
|
9817 |
-
private function
|
9818 |
$this->_logger->entrance();
|
9819 |
|
9820 |
|
@@ -10156,7 +10413,7 @@
|
|
10156 |
|
10157 |
case 'check_updates':
|
10158 |
check_admin_referer( $action );
|
10159 |
-
$this->
|
10160 |
|
10161 |
return;
|
10162 |
|
@@ -10194,7 +10451,7 @@
|
|
10194 |
check_admin_referer( 'update_email' );
|
10195 |
|
10196 |
$new_email = fs_request_get( 'fs_email_' . $this->_slug, '' );
|
10197 |
-
$result = $this->
|
10198 |
|
10199 |
if ( isset( $result->error ) ) {
|
10200 |
switch ( $result->error->code ) {
|
@@ -10268,7 +10525,7 @@
|
|
10268 |
return;
|
10269 |
|
10270 |
case 'download_latest':
|
10271 |
-
$this->
|
10272 |
|
10273 |
return;
|
10274 |
|
@@ -10356,12 +10613,21 @@
|
|
10356 |
function _account_page_render() {
|
10357 |
$this->_logger->entrance();
|
10358 |
|
10359 |
-
$
|
10360 |
if ( 'billing' === fs_request_get( 'tab' ) ) {
|
10361 |
-
|
10362 |
-
} else {
|
10363 |
-
fs_require_once_template( 'account.php', $vars );
|
10364 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10365 |
}
|
10366 |
|
10367 |
/**
|
@@ -10374,7 +10640,15 @@
|
|
10374 |
$this->_logger->entrance();
|
10375 |
|
10376 |
$vars = array( 'slug' => $this->_slug );
|
10377 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10378 |
}
|
10379 |
|
10380 |
/**
|
@@ -10418,7 +10692,15 @@
|
|
10418 |
$this->_logger->entrance();
|
10419 |
|
10420 |
$vars = array( 'slug' => $this->_slug );
|
10421 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10422 |
}
|
10423 |
|
10424 |
/* Pricing & Upgrade
|
@@ -10887,7 +11169,7 @@
|
|
10887 |
return;
|
10888 |
}
|
10889 |
|
10890 |
-
if ( !
|
10891 |
// Inject license activation dialog UI and client side code.
|
10892 |
add_action( 'admin_footer', array( &$this, '_add_license_activation_dialog_box' ) );
|
10893 |
}
|
@@ -11130,7 +11412,7 @@
|
|
11130 |
* @return string
|
11131 |
*/
|
11132 |
private function get_complete_upgrade_instructions( $plan_title = '' ) {
|
11133 |
-
if ( $this->is_premium() ) {
|
11134 |
return '';
|
11135 |
}
|
11136 |
|
@@ -11146,7 +11428,7 @@
|
|
11146 |
return sprintf(
|
11147 |
' %s: <ol><li>%s.</li>%s<li>%s (<a href="%s" target="_blank">%s</a>).</li></ol>',
|
11148 |
__fs( 'follow-steps-to-complete-upgrade', $this->_slug ),
|
11149 |
-
$this->
|
11150 |
__fs( 'download-latest-x-version', $this->_slug ),
|
11151 |
$plan_title
|
11152 |
) ),
|
@@ -11341,4 +11623,4 @@
|
|
11341 |
}
|
11342 |
|
11343 |
#endregion
|
11344 |
-
}
|
108 |
*/
|
109 |
private $_is_premium_only;
|
110 |
|
111 |
+
/**
|
112 |
+
* @since 1.2.1.6
|
113 |
+
* @var bool Hints the SDK if plugin have premium code version at all.
|
114 |
+
*/
|
115 |
+
private $_has_premium_version;
|
116 |
+
|
117 |
+
/**
|
118 |
+
* @since 1.2.1.6
|
119 |
+
* @var bool Hints the SDK if plugin should ignore pending mode by simulating a skip.
|
120 |
+
*/
|
121 |
+
private $_ignore_pending_mode;
|
122 |
+
|
123 |
/**
|
124 |
* @since 1.0.8
|
125 |
* @var bool Hints the SDK if the plugin has any paid plans.
|
510 |
}
|
511 |
}
|
512 |
|
513 |
+
if ( ! self::is_ajax() ) {
|
514 |
if ( ! $this->is_addon() ) {
|
515 |
add_action( 'init', array( &$this, '_add_default_submenu_items' ), WP_FS__LOWEST_PRIORITY );
|
516 |
add_action( 'admin_menu', array( &$this, '_prepare_admin_menu' ), WP_FS__LOWEST_PRIORITY );
|
591 |
* @since 1.0.9
|
592 |
*/
|
593 |
private function _register_account_hooks() {
|
594 |
+
if ( ! is_admin() ) {
|
595 |
+
return;
|
596 |
+
}
|
|
|
|
|
|
|
|
|
|
|
597 |
|
598 |
+
/**
|
599 |
+
* Always show the deactivation feedback form since we added
|
600 |
+
* automatic free version deactivation upon premium code activation.
|
601 |
+
*
|
602 |
+
* @since 1.2.1.6
|
603 |
+
*/
|
604 |
+
$this->add_ajax_action(
|
605 |
+
'submit_uninstall_reason',
|
606 |
+
array( &$this, '_submit_uninstall_reason_action' )
|
607 |
+
);
|
608 |
|
609 |
+
if ( $this->is_plugins_page() ) {
|
610 |
+
add_action( 'admin_footer', array( &$this, '_add_deactivation_feedback_dialog_box' ) );
|
611 |
+
}
|
612 |
+
|
613 |
+
if ( ! $this->is_addon() ) {
|
614 |
+
if ( $this->is_registered() ) {
|
615 |
+
$this->add_filter( 'after_code_type_change', array( &$this, '_after_code_type_change' ) );
|
616 |
}
|
617 |
}
|
618 |
}
|
1217 |
|
1218 |
add_action( "wp_ajax_fs_toggle_debug_mode", array( 'Freemius', '_toggle_debug_mode' ) );
|
1219 |
|
1220 |
+
self::add_ajax_action_static( 'get_debug_log', array( 'Freemius', '_get_debug_log' ) );
|
1221 |
+
|
1222 |
add_action( 'plugins_loaded', array( 'Freemius', '_load_textdomain' ), 1 );
|
1223 |
|
1224 |
self::$_statics_loaded = true;
|
1269 |
|
1270 |
$title = sprintf( '%s [v.%s]', __fs( 'freemius-debug' ), WP_FS__SDK_VERSION );
|
1271 |
|
1272 |
+
$hook = null;
|
1273 |
+
|
1274 |
if ( WP_FS__DEV_MODE ) {
|
1275 |
// Add top-level debug menu item.
|
1276 |
$hook = add_menu_page(
|
1281 |
array( 'Freemius', '_debug_page_render' )
|
1282 |
);
|
1283 |
} else {
|
1284 |
+
if ( 'freemius' === fs_request_get( 'page' ) ) {
|
1285 |
+
// Add hidden debug page.
|
1286 |
+
$hook = add_submenu_page(
|
1287 |
+
null,
|
1288 |
+
$title,
|
1289 |
+
$title,
|
1290 |
+
'manage_options',
|
1291 |
+
'freemius',
|
1292 |
+
array( 'Freemius', '_debug_page_render' )
|
1293 |
+
);
|
1294 |
+
}
|
1295 |
}
|
1296 |
|
1297 |
+
if ( ! empty( $hook ) ) {
|
1298 |
+
add_action( "load-$hook", array( 'Freemius', '_debug_page_actions' ) );
|
1299 |
+
}
|
1300 |
}
|
1301 |
|
1302 |
/**
|
1304 |
* @since 1.1.7.3
|
1305 |
*/
|
1306 |
static function _toggle_debug_mode() {
|
1307 |
+
if ( fs_request_is_post() && in_array( $_POST['is_on'], array( 0, 1 ) ) ) {
|
1308 |
update_option( 'fs_debug_mode', $_POST['is_on'] );
|
1309 |
+
|
1310 |
+
// Turn on/off storage logging.
|
1311 |
+
FS_Logger::_set_storage_logging( ( 1 == $_POST['is_on'] ) );
|
1312 |
}
|
1313 |
|
1314 |
exit;
|
1315 |
}
|
1316 |
|
1317 |
+
/**
|
1318 |
+
* @author Vova Feldman (@svovaf)
|
1319 |
+
* @since 1.2.1.6
|
1320 |
+
*/
|
1321 |
+
static function _get_debug_log() {
|
1322 |
+
$logs = FS_Logger::load_db_logs(
|
1323 |
+
! empty( $_POST['filters'] ) ? $_POST['filters'] : false,
|
1324 |
+
! empty( $_POST['limit'] ) && is_numeric( $_POST['limit'] ) ? $_POST['limit'] : 200,
|
1325 |
+
! empty( $_POST['offset'] ) && is_numeric( $_POST['offset'] ) ? $_POST['offset'] : 0
|
1326 |
+
);
|
1327 |
+
|
1328 |
+
self::shoot_ajax_success( $logs );
|
1329 |
+
}
|
1330 |
+
|
1331 |
/**
|
1332 |
* @author Vova Feldman (@svovaf)
|
1333 |
* @since 1.0.8
|
1354 |
$fs->_storage->install_timestamp = ( time() - WP_FS__TIME_24_HOURS_IN_SEC );
|
1355 |
// Unset the trial shown timestamp.
|
1356 |
unset( $fs->_storage->trial_promotion_shown );
|
1357 |
+
} else if ( fs_request_is_action( 'download_logs' ) ) {
|
1358 |
+
check_admin_referer( 'download_logs' );
|
1359 |
+
|
1360 |
+
$download_url = FS_Logger::download_db_logs(
|
1361 |
+
! empty( $_POST['filters'] ) ? $_POST['filters'] : false
|
1362 |
+
);
|
1363 |
+
|
1364 |
+
if ( false === $download_url ) {
|
1365 |
+
wp_die( 'Oops... there was an error while generating the logs download file. Please try again and if it doesn\'t work contact support@freemius.com.' );
|
1366 |
+
}
|
1367 |
+
|
1368 |
+
fs_redirect( $download_url );
|
1369 |
}
|
1370 |
}
|
1371 |
|
1393 |
'licenses' => $licenses,
|
1394 |
);
|
1395 |
|
1396 |
+
fs_enqueue_local_style( 'fs_debug', '/admin/debug.css' );
|
1397 |
fs_require_once_template( 'debug.php', $vars );
|
1398 |
}
|
1399 |
|
1509 |
'version' => $version,
|
1510 |
'sdk' => $this->version,
|
1511 |
'is_admin' => json_encode( is_admin() ),
|
1512 |
+
'is_ajax' => json_encode( self::is_ajax() ),
|
1513 |
'is_cron' => json_encode( $this->is_cron() ),
|
1514 |
'is_http' => json_encode( WP_FS__IS_HTTP_REQUEST ),
|
1515 |
)
|
1691 |
}
|
1692 |
|
1693 |
if ( ! function_exists( 'wp_nonce_url' ) ) {
|
1694 |
+
require_once ABSPATH . 'wp-includes/functions.php';
|
1695 |
}
|
1696 |
|
1697 |
$current_user = self::_get_current_wp_user();
|
1917 |
|
1918 |
$custom_email_sections = array();
|
1919 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1920 |
// Add 'API Error' custom email section.
|
1921 |
$custom_email_sections['api_error'] = array(
|
1922 |
+
'title' => "API Error",
|
1923 |
'rows' => array(
|
1924 |
+
'ping' => array(
|
1925 |
+
'API Error',
|
1926 |
+
is_string( $pong ) ? htmlentities( $pong ) : json_encode( $pong )
|
1927 |
+
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1928 |
)
|
1929 |
);
|
1930 |
|
1931 |
+
// Send email with technical details to resolve API connectivity issues.
|
1932 |
$this->send_email(
|
1933 |
'api@freemius.com', // recipient
|
1934 |
$title . ' [' . $this->get_plugin_name() . ']', // subject
|
2040 |
$message = fs_get_template( 'email.php', $vars );
|
2041 |
|
2042 |
// Set the type of email to HTML.
|
2043 |
+
$headers[] = 'Content-type: text/html; charset=UTF-8';
|
2044 |
|
2045 |
$header_string = implode( "\r\n", $headers );
|
2046 |
|
2082 |
|
2083 |
$server_ip = WP_FS__REMOTE_ADDR;
|
2084 |
|
2085 |
+
// Add PHP info for deeper investigation.
|
2086 |
+
ob_start();
|
2087 |
+
phpinfo();
|
2088 |
+
$php_info = ob_get_clean();
|
2089 |
+
|
2090 |
+
$api_domain = substr( FS_API__ADDRESS, strpos( FS_API__ADDRESS, ':' ) + 3 );
|
2091 |
+
|
2092 |
// Generate the default email sections.
|
2093 |
$sections = array(
|
2094 |
+
'sdk' => array(
|
2095 |
'title' => 'SDK',
|
2096 |
'rows' => array(
|
2097 |
'fs_version' => array( 'FS Version', $this->version ),
|
2098 |
'curl_version' => array( 'cURL Version', $curl_version_information['version'] )
|
2099 |
)
|
2100 |
),
|
2101 |
+
'plugin' => array(
|
2102 |
'title' => 'Plugin',
|
2103 |
'rows' => array(
|
2104 |
'name' => array( 'Name', $this->get_plugin_name() ),
|
2105 |
'version' => array( 'Version', $this->get_plugin_version() )
|
2106 |
)
|
2107 |
),
|
2108 |
+
'api' => array(
|
2109 |
+
'title' => 'API Subdomain',
|
2110 |
+
'rows' => array(
|
2111 |
+
'dns' => array( 'DNS_CNAME', var_export( @dns_get_record( $api_domain, DNS_CNAME ), true ) ),
|
2112 |
+
'ip' => array( 'IP', @gethostbyname( $api_domain ) ),
|
2113 |
+
),
|
2114 |
+
),
|
2115 |
+
'site' => array(
|
2116 |
'title' => 'Site',
|
2117 |
'rows' => array(
|
2118 |
+
'unique_id' => array( 'Unique ID', $this->get_anonymous_id() ),
|
2119 |
'address' => array( 'Address', site_url() ),
|
2120 |
'host' => array(
|
2121 |
'HTTP_HOST',
|
2122 |
( ! empty( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '' )
|
2123 |
),
|
2124 |
+
'hosting' => array(
|
2125 |
+
'Hosting Company' => fs_request_has( 'hosting_company' ) ?
|
2126 |
+
fs_request_get( 'hosting_company' ) :
|
2127 |
+
'Unknown',
|
2128 |
+
),
|
2129 |
'server_addr' => array(
|
2130 |
'SERVER_ADDR',
|
2131 |
'<a href="http://www.projecthoneypot.org/ip_' . $server_ip . '">' . $server_ip . '</a>'
|
2132 |
)
|
2133 |
)
|
2134 |
),
|
2135 |
+
'user' => array(
|
2136 |
'title' => 'User',
|
2137 |
'rows' => array(
|
2138 |
'email' => array( 'Email', $current_user->user_email ),
|
2140 |
'last' => array( 'Last', $current_user->user_lastname )
|
2141 |
)
|
2142 |
),
|
2143 |
+
'plugins' => array(
|
2144 |
'title' => 'Plugins',
|
2145 |
'rows' => array(
|
2146 |
'active_plugins' => array( 'Active Plugins', $active_plugin_string )
|
2147 |
)
|
2148 |
),
|
2149 |
+
'php_info' => array(
|
2150 |
+
'title' => 'PHP Info',
|
2151 |
+
'rows' => array(
|
2152 |
+
'info' => array( $php_info )
|
2153 |
+
),
|
2154 |
+
)
|
2155 |
);
|
2156 |
|
2157 |
// Allow the sections to be modified by other code.
|
2351 |
}
|
2352 |
}
|
2353 |
|
|
|
|
|
|
|
|
|
2354 |
// if ( $this->is_registered() ||
|
2355 |
// $this->is_anonymous() ||
|
2356 |
// $this->is_pending_activation()
|
2359 |
// }
|
2360 |
}
|
2361 |
|
2362 |
+
/**
|
2363 |
+
* Should be called outside `$this->is_user_in_admin()` scope
|
2364 |
+
* because the updater has some logic that needs to be executed
|
2365 |
+
* during AJAX calls.
|
2366 |
+
*
|
2367 |
+
* Currently we need to hook to the `http_request_host_is_external` filter.
|
2368 |
+
* In the future, there might be additional logic added.
|
2369 |
+
*
|
2370 |
+
* @author Vova Feldman
|
2371 |
+
* @since 1.2.1.6
|
2372 |
+
*/
|
2373 |
+
if ( $this->is_premium() && $this->has_release_on_freemius() ) {
|
2374 |
+
new FS_Plugin_Updater( $this );
|
2375 |
+
}
|
2376 |
+
|
2377 |
$this->do_action( 'initiated' );
|
2378 |
|
2379 |
if ( $this->_storage->prev_is_premium !== $this->_plugin->is_premium ) {
|
2422 |
$result = $this->stop_tracking();
|
2423 |
|
2424 |
if ( true === $result ) {
|
2425 |
+
self::shoot_ajax_success();
|
2426 |
}
|
2427 |
|
2428 |
$this->_logger->api_error( $result );
|
2429 |
|
2430 |
+
self::shoot_ajax_failure(
|
2431 |
__fs( 'unexpected-api-error', $this->_slug ) .
|
2432 |
( $this->is_api_error( $result ) && isset( $result->error ) ?
|
2433 |
$result->error->message :
|
2443 |
$result = $this->allow_tracking();
|
2444 |
|
2445 |
if ( true === $result ) {
|
2446 |
+
self::shoot_ajax_success();
|
2447 |
}
|
2448 |
|
2449 |
$this->_logger->api_error( $result );
|
2450 |
|
2451 |
+
self::shoot_ajax_failure(
|
2452 |
__fs( 'unexpected-api-error', $this->_slug ) .
|
2453 |
( $this->is_api_error( $result ) && isset( $result->error ) ?
|
2454 |
$result->error->message :
|
2641 |
// Set the secret key after storing the plugin, we don't want to store the key in the storage.
|
2642 |
$this->_plugin->secret_key = $secret_key;
|
2643 |
|
2644 |
+
if (! isset( $plugin_info['menu'] )) {
|
2645 |
+
$plugin_info['menu'] = array();
|
2646 |
+
|
2647 |
+
if ( ! empty( $this->_storage->sdk_last_version ) &&
|
2648 |
+
version_compare( $this->_storage->sdk_last_version, '1.1.2', '<=' )
|
2649 |
+
) {
|
2650 |
+
// Backward compatibility to 1.1.2
|
2651 |
+
$plugin_info['menu']['slug'] = isset( $plugin_info['menu_slug'] ) ?
|
2652 |
$plugin_info['menu_slug'] :
|
2653 |
+
$this->_slug;
|
2654 |
+
}
|
2655 |
}
|
2656 |
|
2657 |
$this->_menu = FS_Admin_Menu_Manager::instance( $this->_slug );
|
2658 |
$this->_menu->init( $plugin_info['menu'], $this->is_addon() );
|
2659 |
|
2660 |
+
$this->_has_addons = $this->get_bool_option( $plugin_info, 'has_addons', false );
|
2661 |
+
$this->_has_paid_plans = $this->get_bool_option( $plugin_info, 'has_paid_plans', true );
|
2662 |
+
$this->_has_premium_version = $this->get_bool_option( $plugin_info, 'has_premium_version', $this->_has_paid_plans );
|
2663 |
+
$this->_ignore_pending_mode = $this->get_bool_option( $plugin_info, 'ignore_pending_mode', false );
|
2664 |
+
$this->_is_org_compliant = $this->get_bool_option( $plugin_info, 'is_org_compliant', true );
|
2665 |
+
$this->_is_premium_only = $this->get_bool_option( $plugin_info, 'is_premium_only', false );
|
2666 |
if ( $this->_is_premium_only ) {
|
2667 |
// If premium only plugin, disable anonymous mode.
|
2668 |
$this->_enable_anonymous = false;
|
2762 |
return true;
|
2763 |
}
|
2764 |
|
2765 |
+
if ( self::is_ajax() &&
|
2766 |
! $this->_admin_notices->has_sticky( 'failed_connect_api_first' ) &&
|
2767 |
! $this->_admin_notices->has_sticky( 'failed_connect_api' )
|
2768 |
) {
|
3235 |
|
3236 |
if ( $this->is_paying() ) {
|
3237 |
// Check for premium plugin updates.
|
3238 |
+
$this->check_updates( true );
|
3239 |
}
|
3240 |
} else {
|
3241 |
// Sync install (only if something changed locally).
|
3826 |
FS_Api::clear_cache();
|
3827 |
|
3828 |
if ( $this->is_registered() ) {
|
3829 |
+
$is_premium_version_activation = ( current_filter() !== ( 'activate_' . $this->_free_plugin_basename ) );
|
3830 |
+
|
3831 |
+
if ( $is_premium_version_activation ) {
|
3832 |
+
$this->reconnect_locally();
|
3833 |
+
}
|
3834 |
+
|
3835 |
+
$this->_logger->info( 'Activating ' . ( $is_premium_version_activation ? 'premium' : 'free' ) . ' plugin version.' );
|
3836 |
|
3837 |
// Schedule re-activation event and sync.
|
3838 |
// $this->sync_install( array(), true );
|
3839 |
$this->schedule_install_sync();
|
3840 |
|
|
|
|
|
3841 |
// 1. If running in the activation of the FREE module, get the basename of the PREMIUM.
|
3842 |
// 2. If running in the activation of the PREMIUM module, get the basename of the FREE.
|
3843 |
$other_version_basename = $is_premium_version_activation ?
|
3854 |
deactivate_plugins( $other_version_basename );
|
3855 |
}
|
3856 |
|
3857 |
+
// If activating the premium module version, add an admin notice to congratulate for an upgrade completion.
|
3858 |
if ( $is_premium_version_activation ) {
|
3859 |
$this->_admin_notices->add(
|
3860 |
sprintf( __fs( 'successful-version-upgrade-message', $this->_slug ), sprintf( '<b>%s</b>', $this->_plugin->title ) ),
|
4617 |
$params['reason_info'] = $uninstall_reason->info;
|
4618 |
}
|
4619 |
|
4620 |
+
if ( ! $this->is_registered() ) {
|
4621 |
// Send anonymous uninstall event only if user submitted a feedback.
|
4622 |
+
if ( isset( $uninstall_reason ) ) {
|
4623 |
+
if ( isset( $uninstall_reason->is_anonymous ) && ! $uninstall_reason->is_anonymous ) {
|
4624 |
+
$this->opt_in( false, false, false, false, true );
|
4625 |
+
} else {
|
4626 |
+
$params['uid'] = $this->get_anonymous_id();
|
4627 |
+
$this->get_api_plugin_scope()->call( 'uninstall.json', 'put', $params );
|
4628 |
+
}
|
4629 |
}
|
4630 |
} else {
|
4631 |
// Send uninstall event.
|
4701 |
if ( ! function_exists( 'get_plugins' ) ) {
|
4702 |
self::$_static_logger->log( 'Including wp-admin/includes/plugin.php...' );
|
4703 |
|
4704 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
4705 |
}
|
4706 |
}
|
4707 |
|
4713 |
*/
|
4714 |
private static function require_pluggable_essentials() {
|
4715 |
if ( ! function_exists( 'wp_get_current_user' ) ) {
|
4716 |
+
require_once ABSPATH . 'wp-includes/pluggable.php';
|
4717 |
}
|
4718 |
}
|
4719 |
|
5111 |
return false;
|
5112 |
}
|
5113 |
|
5114 |
+
$addons = $this->sync_addons( $flush );
|
5115 |
|
5116 |
return ( ! is_array( $addons ) || empty( $addons ) ) ?
|
5117 |
false :
|
5919 |
|
5920 |
if ( ! current_user_can( 'activate_plugins' ) ) {
|
5921 |
// Only for admins.
|
5922 |
+
self::shoot_ajax_failure();
|
5923 |
}
|
5924 |
|
5925 |
$billing = fs_request_get( 'billing' );
|
5930 |
) ) );
|
5931 |
|
5932 |
if ( ! $this->is_api_result_entity( $result ) ) {
|
5933 |
+
self::shoot_ajax_failure();
|
5934 |
}
|
5935 |
|
5936 |
// Purge cached billing.
|
5937 |
$this->get_api_user_scope()->purge_cache( 'billing.json' );
|
5938 |
|
5939 |
+
self::shoot_ajax_success();
|
5940 |
}
|
5941 |
|
5942 |
/**
|
5950 |
|
5951 |
if ( ! current_user_can( 'activate_plugins' ) ) {
|
5952 |
// Only for admins.
|
5953 |
+
self::shoot_ajax_failure();
|
5954 |
}
|
5955 |
|
5956 |
$trial_data = fs_request_get( 'trial' );
|
5965 |
);
|
5966 |
|
5967 |
if ( is_object( $next_page ) && $this->is_api_error( $next_page ) ) {
|
5968 |
+
self::shoot_ajax_failure(
|
5969 |
isset( $next_page->error ) ?
|
5970 |
$next_page->error->message :
|
5971 |
var_export( $next_page, true )
|
5972 |
);
|
5973 |
}
|
5974 |
|
5975 |
+
self::shoot_ajax_success( array(
|
5976 |
'next_page' => $next_page,
|
5977 |
) );
|
5978 |
}
|
5996 |
$api = $this->get_api_plugin_scope();
|
5997 |
$result = $api->call( '/licenses/resend.json', 'post',
|
5998 |
array(
|
5999 |
+
'email' => $email_address,
|
6000 |
+
'url' => home_url(),
|
6001 |
)
|
6002 |
);
|
6003 |
|
6218 |
return $this->_is_premium_only;
|
6219 |
}
|
6220 |
|
6221 |
+
/**
|
6222 |
+
* Check if module has a premium code version.
|
6223 |
+
*
|
6224 |
+
* Serviceware module might be freemium without any
|
6225 |
+
* premium code version, where the paid features
|
6226 |
+
* are all part of the service.
|
6227 |
+
*
|
6228 |
+
* @author Vova Feldman (@svovaf)
|
6229 |
+
* @since 1.2.1.6
|
6230 |
+
*
|
6231 |
+
* @return bool
|
6232 |
+
*/
|
6233 |
+
function has_premium_version() {
|
6234 |
+
return $this->_has_premium_version;
|
6235 |
+
}
|
6236 |
+
|
6237 |
/**
|
6238 |
* Check if feature supported with current site's plan.
|
6239 |
*
|
6268 |
*
|
6269 |
* @link http://wordpress.stackexchange.com/questions/70676/how-to-check-if-i-am-in-admin-ajax
|
6270 |
*/
|
6271 |
+
static function is_ajax() {
|
6272 |
return ( defined( 'DOING_AJAX' ) && DOING_AJAX );
|
6273 |
}
|
6274 |
|
6284 |
*/
|
6285 |
function is_ajax_action( $actions ) {
|
6286 |
// Verify it's an ajax call.
|
6287 |
+
if ( ! self::is_ajax() ) {
|
6288 |
return false;
|
6289 |
}
|
6290 |
|
6311 |
return false;
|
6312 |
}
|
6313 |
|
6314 |
+
/**
|
6315 |
+
* Check if it's an AJAX call targeted for current request.
|
6316 |
+
*
|
6317 |
+
* @author Vova Feldman (@svovaf)
|
6318 |
+
* @since 1.2.0
|
6319 |
+
*
|
6320 |
+
* @param array|string $actions Collection of AJAX actions.
|
6321 |
+
* @param string $slug
|
6322 |
+
*
|
6323 |
+
* @return bool
|
6324 |
+
*/
|
6325 |
+
static function is_ajax_action_static( $actions, $slug = '' ) {
|
6326 |
+
// Verify it's an ajax call.
|
6327 |
+
if ( ! self::is_ajax() ) {
|
6328 |
+
return false;
|
6329 |
+
}
|
6330 |
+
|
6331 |
+
if ( ! empty( $slug ) ) {
|
6332 |
+
// Verify the call is relevant for the plugin.
|
6333 |
+
if ( $slug !== fs_request_get( 'slug' ) ) {
|
6334 |
+
return false;
|
6335 |
+
}
|
6336 |
+
}
|
6337 |
+
|
6338 |
+
// Verify it's one of the specified actions.
|
6339 |
+
if ( is_string( $actions ) ) {
|
6340 |
+
$actions = explode( ',', $actions );
|
6341 |
+
}
|
6342 |
+
|
6343 |
+
if ( is_array( $actions ) && 0 < count( $actions ) ) {
|
6344 |
+
$ajax_action = fs_request_get( 'action' );
|
6345 |
+
|
6346 |
+
foreach ( $actions as $action ) {
|
6347 |
+
if ( $ajax_action === self::get_action_tag_static( $action, $slug ) ) {
|
6348 |
+
return true;
|
6349 |
+
}
|
6350 |
+
}
|
6351 |
+
}
|
6352 |
+
|
6353 |
+
return false;
|
6354 |
+
}
|
6355 |
+
|
6356 |
/**
|
6357 |
* @author Vova Feldman (@svovaf)
|
6358 |
* @since 1.1.7
|
6372 |
* @return bool
|
6373 |
*/
|
6374 |
function is_user_in_admin() {
|
6375 |
+
return is_admin() && ! self::is_ajax() && ! $this->is_cron();
|
6376 |
}
|
6377 |
|
6378 |
/**
|
6405 |
}
|
6406 |
}
|
6407 |
|
6408 |
+
if ( $this->_menu->has_menu_slug() && ! $this->_menu->is_top_level() ) {
|
6409 |
$parent_slug = $this->_menu->get_parent_slug();
|
6410 |
$menu_file = ( false !== strpos( $parent_slug, '.php' ) ) ?
|
6411 |
$parent_slug :
|
6429 |
return add_query_arg( $params, admin_url( $this->_menu->get_raw_slug(), 'admin' ) );
|
6430 |
}
|
6431 |
} else {
|
6432 |
+
/**
|
6433 |
+
* @author Vova Feldman
|
6434 |
+
* @since 1.2.1.6
|
6435 |
+
*
|
6436 |
+
* If module doesn't have a settings page, create one for the opt-in screen.
|
6437 |
+
*/
|
6438 |
+
$menu_slug = $this->_menu->has_menu_slug() ?
|
6439 |
+
$this->_menu->get_slug( $page ) :
|
6440 |
+
$this->_slug;
|
6441 |
+
|
6442 |
return add_query_arg( array_merge( $params, array(
|
6443 |
+
'page' => $menu_slug,
|
6444 |
) ), admin_url( 'admin.php', 'admin' ) );
|
6445 |
}
|
6446 |
}
|
7115 |
}
|
7116 |
}
|
7117 |
|
7118 |
+
if ( $this->is_paying_or_trial() ) {
|
7119 |
+
if ( ! $this->is_premium() || ! $this->has_premium_version() ) {
|
7120 |
+
if ( $this->is_paying() ) {
|
7121 |
+
$this->_admin_notices->add_sticky(
|
7122 |
+
sprintf(
|
7123 |
+
__fs( 'activation-with-plan-x-message', $this->_slug ),
|
7124 |
+
$this->_site->plan->title
|
7125 |
+
) . $this->get_complete_upgrade_instructions(),
|
7126 |
+
'plan_upgraded',
|
7127 |
+
__fs( 'yee-haw', $this->_slug ) . '!'
|
7128 |
+
);
|
7129 |
+
} else {
|
7130 |
+
$this->_admin_notices->add_sticky(
|
7131 |
+
sprintf(
|
7132 |
+
__fs( 'trial-started-message', $this->_slug ),
|
7133 |
+
'<i>' . $this->get_plugin_name() . '</i>'
|
7134 |
+
) . $this->get_complete_upgrade_instructions( $this->_storage->trial_plan->title ),
|
7135 |
+
'trial_started',
|
7136 |
+
__fs( 'yee-haw', $this->_slug ) . '!'
|
7137 |
+
);
|
7138 |
+
}
|
7139 |
}
|
7140 |
|
7141 |
$this->_admin_notices->remove_sticky( array(
|
7153 |
$next_page = '';
|
7154 |
|
7155 |
if ( is_numeric( $plugin_id ) ) {
|
7156 |
+
/**
|
7157 |
+
* @author Leo Fajardo
|
7158 |
+
* @since 1.2.1.6
|
7159 |
+
*
|
7160 |
+
* Also sync the license after an anonymous user subscribes.
|
7161 |
+
*/
|
7162 |
+
if ( $this->is_anonymous() || $plugin_id != $this->_plugin->id ) {
|
7163 |
// Add-on was installed - sync license right after install.
|
7164 |
$next_page = $this->_get_sync_license_url( $plugin_id );
|
7165 |
}
|
7282 |
$license_key = false,
|
7283 |
$is_pending_trial = false
|
7284 |
) {
|
7285 |
+
if ( $this->_ignore_pending_mode ) {
|
7286 |
+
/**
|
7287 |
+
* If explicitly asked to ignore pending mode, set to anonymous mode
|
7288 |
+
* if require confirmation before finalizing the opt-in.
|
7289 |
+
*
|
7290 |
+
* @author Vova Feldman
|
7291 |
+
* @since 1.2.1.6
|
7292 |
+
*/
|
7293 |
+
$this->skip_connection();
|
7294 |
+
} else {
|
7295 |
+
// Install must be activated via email since
|
7296 |
+
// user with the same email already exist.
|
7297 |
+
$this->_storage->is_pending_activation = true;
|
7298 |
+
$this->_add_pending_activation_notice( $email, $is_pending_trial );
|
7299 |
+
}
|
7300 |
|
7301 |
if ( ! empty( $license_key ) ) {
|
7302 |
$this->_storage->pending_license_key = $license_key;
|
7568 |
|
7569 |
$hook = false;
|
7570 |
|
7571 |
+
if ( ! $this->_menu->has_menu_slug() ) {
|
7572 |
+
// Add the opt-in page without a menu item.
|
7573 |
+
$hook = add_submenu_page(
|
7574 |
+
null,
|
7575 |
+
$this->get_plugin_name(),
|
7576 |
+
$this->get_plugin_name(),
|
7577 |
+
'manage_options',
|
7578 |
+
$this->_slug,
|
7579 |
+
array( &$this, '_connect_page_render' )
|
7580 |
+
);
|
7581 |
+
} else if ( $this->_menu->is_top_level() ) {
|
7582 |
$hook = $this->_menu->override_menu_item( array( &$this, '_connect_page_render' ) );
|
7583 |
|
7584 |
if ( false === $hook ) {
|
8061 |
* @return string
|
8062 |
*/
|
8063 |
public function get_action_tag( $tag ) {
|
8064 |
+
return self::get_action_tag_static( $tag, $this->_slug );
|
8065 |
+
}
|
8066 |
+
|
8067 |
+
/**
|
8068 |
+
* @author Vova Feldman (@svovaf)
|
8069 |
+
* @since 1.2.1.6
|
8070 |
+
*
|
8071 |
+
* @param string $tag
|
8072 |
+
* @param string $slug
|
8073 |
+
*
|
8074 |
+
* @return string
|
8075 |
+
*/
|
8076 |
+
static function get_action_tag_static( $tag, $slug = '' ) {
|
8077 |
+
return "fs_{$tag}" . ( empty( $slug ) ? '' : "_{$slug}" );
|
8078 |
}
|
8079 |
|
8080 |
/**
|
8089 |
return 'wp_ajax_' . $this->get_action_tag( $tag );
|
8090 |
}
|
8091 |
|
8092 |
+
/**
|
8093 |
+
* @author Vova Feldman (@svovaf)
|
8094 |
+
* @since 1.2.1.6
|
8095 |
+
*
|
8096 |
+
* @param string $tag
|
8097 |
+
* @param string $slug
|
8098 |
+
*
|
8099 |
+
* @return string
|
8100 |
+
*/
|
8101 |
+
private static function get_ajax_action_tag_static( $tag, $slug = '' ) {
|
8102 |
+
return 'wp_ajax_' . self::get_action_tag_static( $tag, $slug );
|
8103 |
+
}
|
8104 |
+
|
8105 |
/**
|
8106 |
* Do action, specific for the current context plugin.
|
8107 |
*
|
8153 |
* @param string $tag
|
8154 |
* @param callable $function_to_add
|
8155 |
* @param int $priority
|
|
|
8156 |
*
|
8157 |
* @uses add_action()
|
8158 |
*
|
8159 |
* @return bool True if action added, false if no need to add the action since the AJAX call isn't matching.
|
8160 |
*/
|
8161 |
+
function add_ajax_action(
|
8162 |
+
$tag,
|
8163 |
+
$function_to_add,
|
8164 |
+
$priority = WP_FS__DEFAULT_PRIORITY
|
8165 |
+
) {
|
8166 |
$this->_logger->entrance( $tag );
|
8167 |
|
8168 |
+
return self::add_ajax_action_static(
|
8169 |
+
$tag,
|
8170 |
+
$function_to_add,
|
8171 |
+
$priority,
|
8172 |
+
$this->_slug
|
8173 |
+
);
|
8174 |
+
}
|
8175 |
+
|
8176 |
+
/**
|
8177 |
+
* Add AJAX action.
|
8178 |
+
*
|
8179 |
+
* @author Vova Feldman (@svovaf)
|
8180 |
+
* @since 1.2.1.6
|
8181 |
+
*
|
8182 |
+
* @param string $tag
|
8183 |
+
* @param callable $function_to_add
|
8184 |
+
* @param int $priority
|
8185 |
+
* @param string $slug
|
8186 |
+
*
|
8187 |
+
* @return bool True if action added, false if no need to add the action since the AJAX call isn't matching.
|
8188 |
+
* @uses add_action()
|
8189 |
+
*
|
8190 |
+
*/
|
8191 |
+
static function add_ajax_action_static(
|
8192 |
+
$tag,
|
8193 |
+
$function_to_add,
|
8194 |
+
$priority = WP_FS__DEFAULT_PRIORITY,
|
8195 |
+
$slug = ''
|
8196 |
+
) {
|
8197 |
+
self::$_static_logger->entrance( $tag );
|
8198 |
+
|
8199 |
+
if ( ! self::is_ajax_action_static( $tag, $slug ) ) {
|
8200 |
return false;
|
8201 |
}
|
8202 |
|
8203 |
+
add_action(
|
8204 |
+
self::get_ajax_action_tag_static( $tag, $slug ),
|
8205 |
+
$function_to_add,
|
8206 |
+
$priority,
|
8207 |
+
0
|
8208 |
+
);
|
8209 |
|
8210 |
+
self::$_static_logger->info( "$tag AJAX callback action added." );
|
8211 |
|
8212 |
return true;
|
8213 |
}
|
8220 |
*
|
8221 |
* @param mixed $response
|
8222 |
*/
|
8223 |
+
static function shoot_ajax_response( $response ) {
|
8224 |
wp_send_json( $response );
|
8225 |
}
|
8226 |
|
8232 |
*
|
8233 |
* @param mixed $data Data to encode as JSON, then print and exit.
|
8234 |
*/
|
8235 |
+
static function shoot_ajax_success( $data = null ) {
|
8236 |
wp_send_json_success( $data );
|
8237 |
}
|
8238 |
|
8244 |
*
|
8245 |
* @param mixed $error Optional error message.
|
8246 |
*/
|
8247 |
+
static function shoot_ajax_failure( $error = '' ) {
|
8248 |
$result = array( 'success' => false );
|
8249 |
if ( ! empty( $error ) ) {
|
8250 |
$result['error'] = $error;
|
8925 |
$plugin_id = $this->_plugin->id;
|
8926 |
}
|
8927 |
|
8928 |
+
$this->check_updates( true, $plugin_id, $flush );
|
8929 |
$updates = $this->get_all_updates();
|
8930 |
|
8931 |
return isset( $updates[ $plugin_id ] ) && is_object( $updates[ $plugin_id ] ) ? $updates[ $plugin_id ] : false;
|
9075 |
sprintf(
|
9076 |
__fs( 'addon-successfully-upgraded-message', $this->_slug ),
|
9077 |
$addon->title
|
9078 |
+
) . ' ' . $this->get_latest_download_link(
|
9079 |
__fs( 'download-latest-version', $this->_slug ),
|
9080 |
$addon_id
|
9081 |
)
|
9083 |
sprintf(
|
9084 |
__fs( 'addon-successfully-purchased-message', $this->_slug ),
|
9085 |
$addon->title
|
9086 |
+
) . ' ' . $this->get_latest_download_link(
|
9087 |
__fs( 'download-latest-version', $this->_slug ),
|
9088 |
$addon_id
|
9089 |
),
|
9272 |
$this->_storage->trial_plan :
|
9273 |
$this->_site->plan;
|
9274 |
|
9275 |
+
if ( $plan->is_free() ) {
|
9276 |
+
$this->_admin_notices->add(
|
9277 |
+
sprintf(
|
9278 |
+
__fs( 'plan-did-not-change-message', $this->_slug ),
|
9279 |
+
'<i><b>' . $plan->title . ( $this->is_trial() ? ' ' . __fs( 'trial', $this->_slug ) : '' ) . '</b></i>'
|
9280 |
+
) . ' ' . sprintf(
|
9281 |
+
'<a href="%s">%s</a>',
|
9282 |
+
$this->contact_url(
|
9283 |
+
'bug',
|
9284 |
+
sprintf( __fs( 'plan-did-not-change-email-message', $this->_slug ),
|
9285 |
+
strtoupper( $plan->name )
|
9286 |
+
)
|
9287 |
+
),
|
9288 |
+
__fs( 'contact-us-here', $this->_slug )
|
9289 |
),
|
9290 |
+
__fs( 'hmm', $this->_slug ) . '...'
|
9291 |
+
);
|
9292 |
+
}
|
|
|
9293 |
}
|
9294 |
break;
|
9295 |
case 'upgraded':
|
9819 |
$is_premium = self::get_instance_by_id( $addon_id )->_can_download_premium();
|
9820 |
}
|
9821 |
|
9822 |
+
// If add-on, then append add-on ID.
|
9823 |
+
$endpoint = ( $is_addon ? "/addons/$addon_id" : '' ) .
|
9824 |
+
'/updates/latest.' . $type;
|
9825 |
+
|
9826 |
+
// If add-on and not yet activated, try to fetch based on server licensing.
|
9827 |
+
if ( is_bool( $is_premium ) ) {
|
9828 |
+
$endpoint = add_query_arg( 'is_premium', json_encode( $is_premium ), $endpoint );
|
9829 |
+
}
|
9830 |
+
|
9831 |
+
if ( $this->has_secret_key() ) {
|
9832 |
+
$endpoint = add_query_arg( 'type', 'all', $endpoint );
|
9833 |
+
}
|
9834 |
+
|
9835 |
+
return $endpoint;
|
9836 |
}
|
9837 |
|
9838 |
/**
|
9888 |
* @uses FS_Api
|
9889 |
* @uses wp_redirect()
|
9890 |
*/
|
9891 |
+
private function download_latest_directly( $plugin_id = false ) {
|
9892 |
$this->_logger->entrance();
|
9893 |
|
9894 |
+
wp_redirect( $this->get_latest_download_api_url( $plugin_id ) );
|
9895 |
}
|
9896 |
|
9897 |
/**
|
9904 |
*
|
9905 |
* @return string
|
9906 |
*/
|
9907 |
+
private function get_latest_download_api_url( $plugin_id = false ) {
|
9908 |
$this->_logger->entrance();
|
9909 |
|
9910 |
return $this->get_api_site_scope()->get_signed_url(
|
9941 |
*
|
9942 |
* @return string
|
9943 |
*/
|
9944 |
+
private function get_latest_download_link( $label, $plugin_id = false ) {
|
9945 |
return sprintf(
|
9946 |
'<a target="_blank" href="%s">%s</a>',
|
9947 |
$this->_get_latest_download_local_url( $plugin_id ),
|
9983 |
* @param bool|number $plugin_id
|
9984 |
* @param bool $flush Since 1.1.7.3
|
9985 |
*/
|
9986 |
+
private function check_updates( $background = false, $plugin_id = false, $flush = true ) {
|
9987 |
$this->_logger->entrance();
|
9988 |
|
9989 |
// Check if there's a newer version for download.
|
10027 |
*
|
10028 |
* @uses FS_Api
|
10029 |
*/
|
10030 |
+
private function sync_addons( $flush = false ) {
|
10031 |
$this->_logger->entrance();
|
10032 |
|
10033 |
$api = $this->get_api_site_or_plugin_scope();
|
10071 |
*
|
10072 |
* @return object
|
10073 |
*/
|
10074 |
+
private function update_email( $new_email ) {
|
10075 |
$this->_logger->entrance();
|
10076 |
|
10077 |
|
10413 |
|
10414 |
case 'check_updates':
|
10415 |
check_admin_referer( $action );
|
10416 |
+
$this->check_updates();
|
10417 |
|
10418 |
return;
|
10419 |
|
10451 |
check_admin_referer( 'update_email' );
|
10452 |
|
10453 |
$new_email = fs_request_get( 'fs_email_' . $this->_slug, '' );
|
10454 |
+
$result = $this->update_email( $new_email );
|
10455 |
|
10456 |
if ( isset( $result->error ) ) {
|
10457 |
switch ( $result->error->code ) {
|
10525 |
return;
|
10526 |
|
10527 |
case 'download_latest':
|
10528 |
+
$this->download_latest_directly( $plugin_id );
|
10529 |
|
10530 |
return;
|
10531 |
|
10613 |
function _account_page_render() {
|
10614 |
$this->_logger->entrance();
|
10615 |
|
10616 |
+
$template = 'account.php';
|
10617 |
if ( 'billing' === fs_request_get( 'tab' ) ) {
|
10618 |
+
$template = 'billing.php';
|
|
|
|
|
10619 |
}
|
10620 |
+
|
10621 |
+
$vars = array( 'slug' => $this->_slug );
|
10622 |
+
|
10623 |
+
/**
|
10624 |
+
* Added filter to the template to allow developers wrapping the template
|
10625 |
+
* in custom HTML (e.g. within a wizard/tabs).
|
10626 |
+
*
|
10627 |
+
* @author Vova Feldman (@svovaf)
|
10628 |
+
* @since 1.2.1.6
|
10629 |
+
*/
|
10630 |
+
echo $this->apply_filters( "templates/{$template}", fs_get_template( $template, $vars ) );
|
10631 |
}
|
10632 |
|
10633 |
/**
|
10640 |
$this->_logger->entrance();
|
10641 |
|
10642 |
$vars = array( 'slug' => $this->_slug );
|
10643 |
+
|
10644 |
+
/**
|
10645 |
+
* Added filter to the template to allow developers wrapping the template
|
10646 |
+
* in custom HTML (e.g. within a wizard/tabs).
|
10647 |
+
*
|
10648 |
+
* @author Vova Feldman (@svovaf)
|
10649 |
+
* @since 1.2.1.6
|
10650 |
+
*/
|
10651 |
+
echo $this->apply_filters( 'templates/connect.php', fs_get_template( 'connect.php', $vars ) );
|
10652 |
}
|
10653 |
|
10654 |
/**
|
10692 |
$this->_logger->entrance();
|
10693 |
|
10694 |
$vars = array( 'slug' => $this->_slug );
|
10695 |
+
|
10696 |
+
/**
|
10697 |
+
* Added filter to the template to allow developers wrapping the template
|
10698 |
+
* in custom HTML (e.g. within a wizard/tabs).
|
10699 |
+
*
|
10700 |
+
* @author Vova Feldman (@svovaf)
|
10701 |
+
* @since 1.2.1.6
|
10702 |
+
*/
|
10703 |
+
echo $this->apply_filters( 'templates/add-ons.php', fs_get_template( 'add-ons.php', $vars ) );
|
10704 |
}
|
10705 |
|
10706 |
/* Pricing & Upgrade
|
11169 |
return;
|
11170 |
}
|
11171 |
|
11172 |
+
if ( ! self::is_ajax() ) {
|
11173 |
// Inject license activation dialog UI and client side code.
|
11174 |
add_action( 'admin_footer', array( &$this, '_add_license_activation_dialog_box' ) );
|
11175 |
}
|
11412 |
* @return string
|
11413 |
*/
|
11414 |
private function get_complete_upgrade_instructions( $plan_title = '' ) {
|
11415 |
+
if ( ! $this->has_premium_version() || $this->is_premium() ) {
|
11416 |
return '';
|
11417 |
}
|
11418 |
|
11428 |
return sprintf(
|
11429 |
' %s: <ol><li>%s.</li>%s<li>%s (<a href="%s" target="_blank">%s</a>).</li></ol>',
|
11430 |
__fs( 'follow-steps-to-complete-upgrade', $this->_slug ),
|
11431 |
+
$this->get_latest_download_link( sprintf(
|
11432 |
__fs( 'download-latest-x-version', $this->_slug ),
|
11433 |
$plan_title
|
11434 |
) ),
|
11623 |
}
|
11624 |
|
11625 |
#endregion
|
11626 |
+
}
|
freemius/includes/class-fs-api.php
CHANGED
@@ -84,7 +84,7 @@
|
|
84 |
}
|
85 |
|
86 |
if ( ! class_exists( 'Freemius_Api' ) ) {
|
87 |
-
require_once
|
88 |
}
|
89 |
|
90 |
self::$_options = FS_Option_Manager::get_manager( WP_FS__OPTIONS_OPTION_NAME, true );
|
84 |
}
|
85 |
|
86 |
if ( ! class_exists( 'Freemius_Api' ) ) {
|
87 |
+
require_once WP_FS__DIR_SDK . '/Freemius.php';
|
88 |
}
|
89 |
|
90 |
self::$_options = FS_Option_Manager::get_manager( WP_FS__OPTIONS_OPTION_NAME, true );
|
freemius/includes/class-fs-logger.php
CHANGED
@@ -15,6 +15,22 @@
|
|
15 |
private $_on = false;
|
16 |
private $_echo = false;
|
17 |
private $_file_start = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
|
19 |
private static $LOGGERS = array();
|
20 |
private static $LOG = array();
|
@@ -27,7 +43,11 @@
|
|
27 |
$bt = debug_backtrace();
|
28 |
$caller = $bt[2];
|
29 |
|
30 |
-
|
|
|
|
|
|
|
|
|
31 |
|
32 |
if ( $on ) {
|
33 |
$this->on();
|
@@ -47,6 +67,10 @@
|
|
47 |
public static function get_logger( $id, $on = false, $echo = false ) {
|
48 |
$id = strtolower( $id );
|
49 |
|
|
|
|
|
|
|
|
|
50 |
if ( ! isset( self::$LOGGERS[ $id ] ) ) {
|
51 |
self::$LOGGERS[ $id ] = new FS_Logger( $id, $on, $echo );
|
52 |
}
|
@@ -54,7 +78,25 @@
|
|
54 |
return self::$LOGGERS[ $id ];
|
55 |
}
|
56 |
|
57 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
if ( self::$_HOOKED_FOOTER ) {
|
59 |
return;
|
60 |
}
|
@@ -73,7 +115,11 @@
|
|
73 |
function on() {
|
74 |
$this->_on = true;
|
75 |
|
76 |
-
|
|
|
|
|
|
|
|
|
77 |
}
|
78 |
|
79 |
function echo_on() {
|
@@ -107,14 +153,37 @@
|
|
107 |
|
108 |
$caller = $bt[ $depth ];
|
109 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
110 |
$log = array_merge( $caller, array(
|
111 |
'cnt' => self::$CNT ++,
|
112 |
'logger' => $this,
|
113 |
-
'timestamp' => microtime(true),
|
114 |
-
'
|
115 |
'msg' => $message,
|
116 |
) );
|
117 |
|
|
|
|
|
|
|
|
|
118 |
self::$LOG[] = $log;
|
119 |
|
120 |
if ( $this->is_echo_on() ) {
|
@@ -176,30 +245,442 @@
|
|
176 |
$this->_log( $msg, 'log', $wrapper );
|
177 |
}
|
178 |
|
|
|
|
|
|
|
|
|
179 |
private static function format( $log, $show_type = true ) {
|
180 |
-
return '[' . str_pad( $log['cnt'], strlen( self::$CNT ), '0', STR_PAD_LEFT ) . '] [' . $log['logger']->_id . '] ' . ( $show_type ? '[' . $log['
|
181 |
}
|
182 |
|
183 |
private static function format_html( $log ) {
|
184 |
-
return '<div style="font-size: 13px; font-family: monospace; color: #7da767; padding: 8px 3px; background: #000; border-bottom: 1px solid #555;">[' . $log['cnt'] . '] [' . $log['logger']->_id . '] [' . $log['
|
185 |
}
|
186 |
|
|
|
|
|
187 |
static function dump() {
|
188 |
?>
|
189 |
<!-- BEGIN: Freemius PHP Console Log -->
|
190 |
<script type="text/javascript">
|
191 |
<?php
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
}
|
196 |
?>
|
197 |
</script>
|
198 |
<!-- END: Freemius PHP Console Log -->
|
199 |
-
|
200 |
}
|
201 |
|
202 |
static function get_log() {
|
203 |
return self::$LOG;
|
204 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
205 |
}
|
15 |
private $_on = false;
|
16 |
private $_echo = false;
|
17 |
private $_file_start = 0;
|
18 |
+
/**
|
19 |
+
* @var int PHP Process ID.
|
20 |
+
*/
|
21 |
+
private static $_processID;
|
22 |
+
/**
|
23 |
+
* @var string PHP Script user name.
|
24 |
+
*/
|
25 |
+
private static $_ownerName;
|
26 |
+
/**
|
27 |
+
* @var bool Is storage logging turned on.
|
28 |
+
*/
|
29 |
+
private static $_isStorageLoggingOn;
|
30 |
+
/**
|
31 |
+
* @var int ABSPATH length.
|
32 |
+
*/
|
33 |
+
private static $_abspathLength;
|
34 |
|
35 |
private static $LOGGERS = array();
|
36 |
private static $LOG = array();
|
43 |
$bt = debug_backtrace();
|
44 |
$caller = $bt[2];
|
45 |
|
46 |
+
if ( false !== strpos( $caller['file'], 'plugins' ) ) {
|
47 |
+
$this->_file_start = strpos( $caller['file'], 'plugins' ) + strlen( 'plugins/' );
|
48 |
+
} else {
|
49 |
+
$this->_file_start = strpos( $caller['file'], 'themes' ) + strlen( 'themes/' );
|
50 |
+
}
|
51 |
|
52 |
if ( $on ) {
|
53 |
$this->on();
|
67 |
public static function get_logger( $id, $on = false, $echo = false ) {
|
68 |
$id = strtolower( $id );
|
69 |
|
70 |
+
if ( ! isset( self::$_processID ) ) {
|
71 |
+
self::init();
|
72 |
+
}
|
73 |
+
|
74 |
if ( ! isset( self::$LOGGERS[ $id ] ) ) {
|
75 |
self::$LOGGERS[ $id ] = new FS_Logger( $id, $on, $echo );
|
76 |
}
|
78 |
return self::$LOGGERS[ $id ];
|
79 |
}
|
80 |
|
81 |
+
/**
|
82 |
+
* Initialize logging global info.
|
83 |
+
*
|
84 |
+
* @author Vova Feldman (@svovaf)
|
85 |
+
* @since 1.2.1.6
|
86 |
+
*/
|
87 |
+
private static function init() {
|
88 |
+
self::$_ownerName = get_current_user();
|
89 |
+
self::$_isStorageLoggingOn = ( 1 == get_option( 'fs_storage_logger', 0 ) );
|
90 |
+
self::$_abspathLength = strlen( ABSPATH );
|
91 |
+
self::$_processID = mt_rand(0, 32000);
|
92 |
+
|
93 |
+
// Process ID may be `false` on errors.
|
94 |
+
if ( ! is_numeric( self::$_processID ) ) {
|
95 |
+
self::$_processID = 0;
|
96 |
+
}
|
97 |
+
}
|
98 |
+
|
99 |
+
private static function hook_footer() {
|
100 |
if ( self::$_HOOKED_FOOTER ) {
|
101 |
return;
|
102 |
}
|
115 |
function on() {
|
116 |
$this->_on = true;
|
117 |
|
118 |
+
if ( ! function_exists( 'dbDelta' ) ) {
|
119 |
+
require_once ABSPATH . 'wp-admin/includes/upgrade.php';
|
120 |
+
}
|
121 |
+
|
122 |
+
self::hook_footer();
|
123 |
}
|
124 |
|
125 |
function echo_on() {
|
153 |
|
154 |
$caller = $bt[ $depth ];
|
155 |
|
156 |
+
/**
|
157 |
+
* Retrieve the correct call file & line number from backtrace
|
158 |
+
* when logging from a wrapper method.
|
159 |
+
*
|
160 |
+
* @author Vova Feldman
|
161 |
+
* @since 1.2.1.6
|
162 |
+
*/
|
163 |
+
if ( empty( $caller['line'] ) ) {
|
164 |
+
$depth --;
|
165 |
+
|
166 |
+
while ( $depth >= 0 ) {
|
167 |
+
if ( ! empty( $bt[ $depth ]['line'] ) ) {
|
168 |
+
$caller['line'] = $bt[ $depth ]['line'];
|
169 |
+
$caller['file'] = $bt[ $depth ]['file'];
|
170 |
+
break;
|
171 |
+
}
|
172 |
+
}
|
173 |
+
}
|
174 |
+
|
175 |
$log = array_merge( $caller, array(
|
176 |
'cnt' => self::$CNT ++,
|
177 |
'logger' => $this,
|
178 |
+
'timestamp' => microtime( true ),
|
179 |
+
'log_type' => $type,
|
180 |
'msg' => $message,
|
181 |
) );
|
182 |
|
183 |
+
if ( self::$_isStorageLoggingOn ) {
|
184 |
+
$this->db_log( $type, $message, self::$CNT, $caller );
|
185 |
+
}
|
186 |
+
|
187 |
self::$LOG[] = $log;
|
188 |
|
189 |
if ( $this->is_echo_on() ) {
|
245 |
$this->_log( $msg, 'log', $wrapper );
|
246 |
}
|
247 |
|
248 |
+
#--------------------------------------------------------------------------------
|
249 |
+
#region Log Formatting
|
250 |
+
#--------------------------------------------------------------------------------
|
251 |
+
|
252 |
private static function format( $log, $show_type = true ) {
|
253 |
+
return '[' . str_pad( $log['cnt'], strlen( self::$CNT ), '0', STR_PAD_LEFT ) . '] [' . $log['logger']->_id . '] ' . ( $show_type ? '[' . $log['log_type'] . ']' : '' ) . ( ! empty( $log['class'] ) ? $log['class'] . $log['type'] : '' ) . $log['function'] . ' >> ' . $log['msg'] . ( isset( $log['file'] ) ? ' (' . substr( $log['file'], $log['logger']->_file_start ) . ' ' . $log['line'] . ') ' : '' ) . ' [' . $log['timestamp'] . ']';
|
254 |
}
|
255 |
|
256 |
private static function format_html( $log ) {
|
257 |
+
return '<div style="font-size: 13px; font-family: monospace; color: #7da767; padding: 8px 3px; background: #000; border-bottom: 1px solid #555;">[' . $log['cnt'] . '] [' . $log['logger']->_id . '] [' . $log['log_type'] . '] <b><code style="color: #c4b1e0;">' . ( ! empty( $log['class'] ) ? $log['class'] . $log['type'] : '' ) . $log['function'] . '</code> >> <b style="color: #f59330;">' . esc_html( $log['msg'] ) . '</b></b>' . ( isset( $log['file'] ) ? ' (' . substr( $log['file'], $log['logger']->_file_start ) . ' ' . $log['line'] . ')' : '' ) . ' [' . $log['timestamp'] . ']</div>';
|
258 |
}
|
259 |
|
260 |
+
#endregion
|
261 |
+
|
262 |
static function dump() {
|
263 |
?>
|
264 |
<!-- BEGIN: Freemius PHP Console Log -->
|
265 |
<script type="text/javascript">
|
266 |
<?php
|
267 |
+
foreach ( self::$LOG as $log ) {
|
268 |
+
echo 'console.' . $log['log_type'] . '(' . json_encode( self::format( $log, false ) ) . ')' . "\n";
|
269 |
+
}
|
|
|
270 |
?>
|
271 |
</script>
|
272 |
<!-- END: Freemius PHP Console Log -->
|
273 |
+
<?php
|
274 |
}
|
275 |
|
276 |
static function get_log() {
|
277 |
return self::$LOG;
|
278 |
}
|
279 |
+
|
280 |
+
#--------------------------------------------------------------------------------
|
281 |
+
#region Database Logging
|
282 |
+
#--------------------------------------------------------------------------------
|
283 |
+
|
284 |
+
/**
|
285 |
+
* @author Vova Feldman (@svovaf)
|
286 |
+
* @since 1.2.1.6
|
287 |
+
*
|
288 |
+
* @return bool
|
289 |
+
*/
|
290 |
+
public static function is_storage_logging_on() {
|
291 |
+
if ( ! isset( self::$_isStorageLoggingOn ) ) {
|
292 |
+
self::$_isStorageLoggingOn = ( 1 == get_option( 'fs_storage_logger', 0 ) );
|
293 |
+
}
|
294 |
+
|
295 |
+
return self::$_isStorageLoggingOn;
|
296 |
+
}
|
297 |
+
|
298 |
+
/**
|
299 |
+
* Turns on/off database persistent debugging to capture
|
300 |
+
* multi-session logs to debug complex flows like
|
301 |
+
* plugin auto-deactivate on premium version activation.
|
302 |
+
*
|
303 |
+
* @todo Check if Theme Check has issues with DB tables for themes.
|
304 |
+
*
|
305 |
+
* @author Vova Feldman (@svovaf)
|
306 |
+
* @since 1.2.1.6
|
307 |
+
*
|
308 |
+
* @param bool $is_on
|
309 |
+
*
|
310 |
+
* @return bool
|
311 |
+
*/
|
312 |
+
public static function _set_storage_logging( $is_on = true ) {
|
313 |
+
global $wpdb;
|
314 |
+
|
315 |
+
$table = "{$wpdb->prefix}fs_logger";
|
316 |
+
|
317 |
+
if ( $is_on ) {
|
318 |
+
/**
|
319 |
+
* Create logging table.
|
320 |
+
*
|
321 |
+
* NOTE:
|
322 |
+
* dbDelta must use KEY and not INDEX for indexes.
|
323 |
+
*
|
324 |
+
* @link https://core.trac.wordpress.org/ticket/2695
|
325 |
+
*/
|
326 |
+
$result = $wpdb->query( "CREATE TABLE {$table} (
|
327 |
+
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
328 |
+
`process_id` INT UNSIGNED NOT NULL,
|
329 |
+
`user_name` VARCHAR(64) NOT NULL,
|
330 |
+
`logger` VARCHAR(128) NOT NULL,
|
331 |
+
`log_order` INT UNSIGNED NOT NULL,
|
332 |
+
`type` ENUM('log','info','warn','error') NOT NULL DEFAULT 'log',
|
333 |
+
`message` TEXT NOT NULL,
|
334 |
+
`file` VARCHAR(256) NOT NULL,
|
335 |
+
`line` INT UNSIGNED NOT NULL,
|
336 |
+
`function` VARCHAR(256) NOT NULL,
|
337 |
+
`request_type` ENUM('call','ajax','cron') NOT NULL DEFAULT 'call',
|
338 |
+
`request_url` VARCHAR(1024) NOT NULL,
|
339 |
+
`created` DECIMAL(16, 6) NOT NULL,
|
340 |
+
PRIMARY KEY (`id`),
|
341 |
+
KEY `process_id` (`process_id` ASC),
|
342 |
+
KEY `process_logger` (`process_id` ASC, `logger` ASC),
|
343 |
+
KEY `function` (`function` ASC),
|
344 |
+
KEY `type` (`type` ASC))" );
|
345 |
+
} else {
|
346 |
+
/**
|
347 |
+
* Drop logging table.
|
348 |
+
*/
|
349 |
+
$result = $wpdb->query( "DROP TABLE IF EXISTS $table;" );
|
350 |
+
}
|
351 |
+
|
352 |
+
if ( false !== $result ) {
|
353 |
+
update_option( 'fs_storage_logger', ( $is_on ? 1 : 0 ) );
|
354 |
+
}
|
355 |
+
|
356 |
+
return ( false !== $result );
|
357 |
+
}
|
358 |
+
|
359 |
+
/**
|
360 |
+
* @author Vova Feldman (@svovaf)
|
361 |
+
* @since 1.2.1.6
|
362 |
+
*
|
363 |
+
* @param string $type
|
364 |
+
* @param string $message
|
365 |
+
* @param int $log_order
|
366 |
+
* @param array $caller
|
367 |
+
*
|
368 |
+
* @return false|int
|
369 |
+
*/
|
370 |
+
private function db_log(
|
371 |
+
&$type,
|
372 |
+
&$message,
|
373 |
+
&$log_order,
|
374 |
+
&$caller
|
375 |
+
) {
|
376 |
+
global $wpdb;
|
377 |
+
|
378 |
+
$request_type = 'call';
|
379 |
+
if ( defined( 'DOING_CRON' ) && DOING_CRON ) {
|
380 |
+
$request_type = 'cron';
|
381 |
+
} else if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
382 |
+
$request_type = 'ajax';
|
383 |
+
}
|
384 |
+
|
385 |
+
$request_url = WP_FS__IS_HTTP_REQUEST ?
|
386 |
+
$_SERVER['REQUEST_URI'] :
|
387 |
+
'';
|
388 |
+
|
389 |
+
return $wpdb->insert(
|
390 |
+
"{$wpdb->prefix}fs_logger",
|
391 |
+
array(
|
392 |
+
'process_id' => self::$_processID,
|
393 |
+
'user_name' => self::$_ownerName,
|
394 |
+
'logger' => $this->_id,
|
395 |
+
'log_order' => $log_order,
|
396 |
+
'type' => $type,
|
397 |
+
'request_type' => $request_type,
|
398 |
+
'request_url' => $request_url,
|
399 |
+
'message' => $message,
|
400 |
+
'file' => isset( $caller['file'] ) ?
|
401 |
+
substr( $caller['file'], self::$_abspathLength ) :
|
402 |
+
'',
|
403 |
+
'line' => $caller['line'],
|
404 |
+
'function' => ( ! empty( $caller['class'] ) ? $caller['class'] . $caller['type'] : '' ) . $caller['function'],
|
405 |
+
'created' => microtime( true ),
|
406 |
+
)
|
407 |
+
);
|
408 |
+
}
|
409 |
+
|
410 |
+
/**
|
411 |
+
* Persistent DB logger columns.
|
412 |
+
*
|
413 |
+
* @var array
|
414 |
+
*/
|
415 |
+
private static $_log_columns = array(
|
416 |
+
'id',
|
417 |
+
'process_id',
|
418 |
+
'user_name',
|
419 |
+
'logger',
|
420 |
+
'log_order',
|
421 |
+
'type',
|
422 |
+
'message',
|
423 |
+
'file',
|
424 |
+
'line',
|
425 |
+
'function',
|
426 |
+
'request_type',
|
427 |
+
'request_url',
|
428 |
+
'created',
|
429 |
+
);
|
430 |
+
|
431 |
+
/**
|
432 |
+
* Create DB logs query.
|
433 |
+
*
|
434 |
+
* @author Vova Feldman (@svovaf)
|
435 |
+
* @since 1.2.1.6
|
436 |
+
*
|
437 |
+
* @param bool $filters
|
438 |
+
* @param int $limit
|
439 |
+
* @param int $offset
|
440 |
+
* @param bool $order
|
441 |
+
* @param bool $escape_eol
|
442 |
+
*
|
443 |
+
* @return string
|
444 |
+
*/
|
445 |
+
private static function build_db_logs_query(
|
446 |
+
$filters = false,
|
447 |
+
$limit = 200,
|
448 |
+
$offset = 0,
|
449 |
+
$order = false,
|
450 |
+
$escape_eol = false
|
451 |
+
) {
|
452 |
+
global $wpdb;
|
453 |
+
|
454 |
+
$select = '*';
|
455 |
+
|
456 |
+
if ( $escape_eol ) {
|
457 |
+
$select = '';
|
458 |
+
for ( $i = 0, $len = count( self::$_log_columns ); $i < $len; $i ++ ) {
|
459 |
+
if ( $i > 0 ) {
|
460 |
+
$select .= ', ';
|
461 |
+
}
|
462 |
+
|
463 |
+
if ( 'message' !== self::$_log_columns[ $i ] ) {
|
464 |
+
$select .= self::$_log_columns[ $i ];
|
465 |
+
} else {
|
466 |
+
$select .= 'REPLACE(message , \'\n\', \' \') AS message';
|
467 |
+
}
|
468 |
+
}
|
469 |
+
}
|
470 |
+
|
471 |
+
$query = "SELECT {$select} FROM {$wpdb->prefix}fs_logger";
|
472 |
+
if ( is_array( $filters ) ) {
|
473 |
+
$criteria = array();
|
474 |
+
|
475 |
+
if ( ! empty( $filters['type'] ) && 'all' !== $filters['type'] ) {
|
476 |
+
$filters['type'] = strtolower( $filters['type'] );
|
477 |
+
|
478 |
+
switch ( $filters['type'] ) {
|
479 |
+
case 'warn_error':
|
480 |
+
$criteria[] = array( 'col' => 'type', 'val' => array( 'warn', 'error' ) );
|
481 |
+
break;
|
482 |
+
case 'error':
|
483 |
+
case 'warn':
|
484 |
+
$criteria[] = array( 'col' => 'type', 'val' => $filters['type'] );
|
485 |
+
break;
|
486 |
+
case 'info':
|
487 |
+
default:
|
488 |
+
$criteria[] = array( 'col' => 'type', 'val' => array( 'info', 'log' ) );
|
489 |
+
break;
|
490 |
+
}
|
491 |
+
}
|
492 |
+
|
493 |
+
if ( ! empty( $filters['request_type'] ) ) {
|
494 |
+
$filters['request_type'] = strtolower( $filters['request_type'] );
|
495 |
+
|
496 |
+
if ( in_array( $filters['request_type'], array( 'call', 'ajax', 'cron' ) ) ) {
|
497 |
+
$criteria[] = array( 'col' => 'request_type', 'val' => $filters['request_type'] );
|
498 |
+
}
|
499 |
+
}
|
500 |
+
|
501 |
+
if ( ! empty( $filters['file'] ) ) {
|
502 |
+
$criteria[] = array(
|
503 |
+
'col' => 'file',
|
504 |
+
'op' => 'LIKE',
|
505 |
+
'val' => '%' . esc_sql( $filters['file'] ),
|
506 |
+
);
|
507 |
+
}
|
508 |
+
|
509 |
+
if ( ! empty( $filters['function'] ) ) {
|
510 |
+
$criteria[] = array(
|
511 |
+
'col' => 'function',
|
512 |
+
'op' => 'LIKE',
|
513 |
+
'val' => '%' . esc_sql( $filters['function'] ),
|
514 |
+
);
|
515 |
+
}
|
516 |
+
|
517 |
+
if ( ! empty( $filters['process_id'] ) && is_numeric( $filters['process_id'] ) ) {
|
518 |
+
$criteria[] = array( 'col' => 'process_id', 'val' => $filters['process_id'] );
|
519 |
+
}
|
520 |
+
|
521 |
+
if ( ! empty( $filters['logger'] ) ) {
|
522 |
+
$criteria[] = array(
|
523 |
+
'col' => 'logger',
|
524 |
+
'op' => 'LIKE',
|
525 |
+
'val' => '%' . esc_sql( $filters['logger'] ) . '%',
|
526 |
+
);
|
527 |
+
}
|
528 |
+
|
529 |
+
if ( ! empty( $filters['message'] ) ) {
|
530 |
+
$criteria[] = array(
|
531 |
+
'col' => 'message',
|
532 |
+
'op' => 'LIKE',
|
533 |
+
'val' => '%' . esc_sql( $filters['message'] ) . '%',
|
534 |
+
);
|
535 |
+
}
|
536 |
+
|
537 |
+
if ( 0 < count( $criteria ) ) {
|
538 |
+
$query .= "\nWHERE\n";
|
539 |
+
|
540 |
+
$first = true;
|
541 |
+
foreach ( $criteria as $c ) {
|
542 |
+
if ( ! $first ) {
|
543 |
+
$query .= "AND\n";
|
544 |
+
}
|
545 |
+
|
546 |
+
if ( is_array( $c['val'] ) ) {
|
547 |
+
$operator = 'IN';
|
548 |
+
|
549 |
+
for ( $i = 0, $len = count( $c['val'] ); $i < $len; $i ++ ) {
|
550 |
+
$c['val'][ $i ] = "'" . esc_sql( $c['val'][ $i ] ) . "'";
|
551 |
+
}
|
552 |
+
|
553 |
+
$val = '(' . implode( ',', $c['val'] ) . ')';
|
554 |
+
} else {
|
555 |
+
$operator = ! empty( $c['op'] ) ? $c['op'] : '=';
|
556 |
+
$val = "'" . esc_sql( $c['val'] ) . "'";
|
557 |
+
}
|
558 |
+
|
559 |
+
$query .= "`{$c['col']}` {$operator} {$val}\n";
|
560 |
+
|
561 |
+
$first = false;
|
562 |
+
}
|
563 |
+
}
|
564 |
+
}
|
565 |
+
|
566 |
+
if ( ! is_array( $order ) ) {
|
567 |
+
$order = array(
|
568 |
+
'col' => 'id',
|
569 |
+
'order' => 'desc'
|
570 |
+
);
|
571 |
+
}
|
572 |
+
|
573 |
+
$query .= " ORDER BY {$order['col']} {$order['order']} LIMIT {$offset},{$limit}";
|
574 |
+
|
575 |
+
return $query;
|
576 |
+
}
|
577 |
+
|
578 |
+
/**
|
579 |
+
* Load logs from DB.
|
580 |
+
*
|
581 |
+
* @author Vova Feldman (@svovaf)
|
582 |
+
* @since 1.2.1.6
|
583 |
+
*
|
584 |
+
* @param bool $filters
|
585 |
+
* @param int $limit
|
586 |
+
* @param int $offset
|
587 |
+
* @param bool $order
|
588 |
+
*
|
589 |
+
* @return object[]|null
|
590 |
+
*/
|
591 |
+
public static function load_db_logs(
|
592 |
+
$filters = false,
|
593 |
+
$limit = 200,
|
594 |
+
$offset = 0,
|
595 |
+
$order = false
|
596 |
+
) {
|
597 |
+
global $wpdb;
|
598 |
+
|
599 |
+
$query = self::build_db_logs_query(
|
600 |
+
$filters,
|
601 |
+
$limit,
|
602 |
+
$offset,
|
603 |
+
$order
|
604 |
+
);
|
605 |
+
|
606 |
+
return $wpdb->get_results( $query );
|
607 |
+
}
|
608 |
+
|
609 |
+
/**
|
610 |
+
* Load logs from DB.
|
611 |
+
*
|
612 |
+
* @author Vova Feldman (@svovaf)
|
613 |
+
* @since 1.2.1.6
|
614 |
+
*
|
615 |
+
* @param bool $filters
|
616 |
+
* @param string $filename
|
617 |
+
* @param int $limit
|
618 |
+
* @param int $offset
|
619 |
+
* @param bool $order
|
620 |
+
*
|
621 |
+
* @return false|string File download URL or false on failure.
|
622 |
+
*/
|
623 |
+
public static function download_db_logs(
|
624 |
+
$filters = false,
|
625 |
+
$filename = '',
|
626 |
+
$limit = 10000,
|
627 |
+
$offset = 0,
|
628 |
+
$order = false
|
629 |
+
) {
|
630 |
+
global $wpdb;
|
631 |
+
|
632 |
+
$query = self::build_db_logs_query(
|
633 |
+
$filters,
|
634 |
+
$limit,
|
635 |
+
$offset,
|
636 |
+
$order,
|
637 |
+
true
|
638 |
+
);
|
639 |
+
|
640 |
+
$upload_dir = wp_upload_dir();
|
641 |
+
if ( empty( $filename ) ) {
|
642 |
+
$filename = 'fs-logs-' . date( 'Y-m-d_H-i-s', WP_FS__SCRIPT_START_TIME ) . '.csv';
|
643 |
+
}
|
644 |
+
$filepath = rtrim( $upload_dir['path'], '/' ) . "/{$filename}";
|
645 |
+
|
646 |
+
$query .= " INTO OUTFILE '{$filepath}' FIELDS TERMINATED BY '\t' ESCAPED BY '\\\\' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\\n'";
|
647 |
+
|
648 |
+
$columns = '';
|
649 |
+
for ( $i = 0, $len = count( self::$_log_columns ); $i < $len; $i ++ ) {
|
650 |
+
if ( $i > 0 ) {
|
651 |
+
$columns .= ', ';
|
652 |
+
}
|
653 |
+
|
654 |
+
$columns .= "'" . self::$_log_columns[ $i ] . "'";
|
655 |
+
}
|
656 |
+
|
657 |
+
$query = "SELECT {$columns} UNION ALL " . $query;
|
658 |
+
|
659 |
+
$result = $wpdb->query( $query );
|
660 |
+
|
661 |
+
if ( false === $result ) {
|
662 |
+
return false;
|
663 |
+
}
|
664 |
+
|
665 |
+
return rtrim( $upload_dir['url'], '/' ) . '/' . $filename;
|
666 |
+
}
|
667 |
+
|
668 |
+
/**
|
669 |
+
* @author Vova Feldman (@svovaf)
|
670 |
+
* @since 1.2.1.6
|
671 |
+
*
|
672 |
+
* @param string $filename
|
673 |
+
*
|
674 |
+
* @return string
|
675 |
+
*/
|
676 |
+
public static function get_logs_download_url( $filename = '' ) {
|
677 |
+
$upload_dir = wp_upload_dir();
|
678 |
+
if ( empty( $filename ) ) {
|
679 |
+
$filename = 'fs-logs-' . date( 'Y-m-d_H-i-s', WP_FS__SCRIPT_START_TIME ) . '.csv';
|
680 |
+
}
|
681 |
+
|
682 |
+
return rtrim( $upload_dir['url'], '/' ) . $filename;
|
683 |
+
}
|
684 |
+
|
685 |
+
#endregion
|
686 |
}
|
freemius/includes/class-fs-plugin-updater.php
CHANGED
@@ -83,6 +83,10 @@
|
|
83 |
'http_request_host_is_external_filter'
|
84 |
), 10, 3 );
|
85 |
}
|
|
|
|
|
|
|
|
|
86 |
}
|
87 |
|
88 |
/**
|
@@ -102,7 +106,7 @@
|
|
102 |
* @since 1.1.6
|
103 |
*
|
104 |
* @param string $file
|
105 |
-
* @param array
|
106 |
*/
|
107 |
function edit_and_echo_plugin_update_row( $file, $plugin_data ) {
|
108 |
$plugin_update_row = ob_get_clean();
|
@@ -162,9 +166,9 @@
|
|
162 |
*
|
163 |
* @uses FS_Api
|
164 |
*
|
165 |
-
* @param
|
166 |
*
|
167 |
-
* @return
|
168 |
*/
|
169 |
function pre_set_site_transient_update_plugins_filter( $transient_data ) {
|
170 |
$this->_logger->entrance();
|
@@ -316,22 +320,96 @@ if ( !isset($info->error) ) {
|
|
316 |
// Get plugin's newest update.
|
317 |
$new_version = $this->_fs->_fetch_latest_version( $is_addon ? $addon->id : false );
|
318 |
|
319 |
-
if ( $
|
320 |
-
$data->
|
321 |
-
|
322 |
-
$
|
323 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
324 |
}
|
325 |
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
330 |
}
|
331 |
|
332 |
-
$
|
333 |
-
|
334 |
|
335 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
336 |
}
|
337 |
}
|
83 |
'http_request_host_is_external_filter'
|
84 |
), 10, 3 );
|
85 |
}
|
86 |
+
|
87 |
+
if ( $this->_fs->is_premium() && $this->is_correct_folder_name() ) {
|
88 |
+
add_filter( 'upgrader_post_install', array( &$this, '_maybe_update_folder_name' ), 10, 3 );
|
89 |
+
}
|
90 |
}
|
91 |
|
92 |
/**
|
106 |
* @since 1.1.6
|
107 |
*
|
108 |
* @param string $file
|
109 |
+
* @param array $plugin_data
|
110 |
*/
|
111 |
function edit_and_echo_plugin_update_row( $file, $plugin_data ) {
|
112 |
$plugin_update_row = ob_get_clean();
|
166 |
*
|
167 |
* @uses FS_Api
|
168 |
*
|
169 |
+
* @param object $transient_data Update array build by WordPress.
|
170 |
*
|
171 |
+
* @return object Modified update array with custom plugin data.
|
172 |
*/
|
173 |
function pre_set_site_transient_update_plugins_filter( $transient_data ) {
|
174 |
$this->_logger->entrance();
|
320 |
// Get plugin's newest update.
|
321 |
$new_version = $this->_fs->_fetch_latest_version( $is_addon ? $addon->id : false );
|
322 |
|
323 |
+
if ( ! is_object( $new_version ) || empty( $new_version->version ) ) {
|
324 |
+
$data->version = $this->_fs->get_plugin_version();
|
325 |
+
} else {
|
326 |
+
if ( $is_addon ) {
|
327 |
+
$data->name = $addon->title . ' ' . __fs( 'addon', $this->_fs->get_slug() );
|
328 |
+
$data->slug = $addon->slug;
|
329 |
+
$data->url = WP_FS__ADDRESS;
|
330 |
+
$data->package = $new_version->url;
|
331 |
+
}
|
332 |
+
|
333 |
+
if ( ! $plugin_in_repo ) {
|
334 |
+
$data->last_updated = ! is_null( $new_version->updated ) ? $new_version->updated : $new_version->created;
|
335 |
+
$data->requires = $new_version->requires_platform_version;
|
336 |
+
$data->tested = $new_version->tested_up_to_version;
|
337 |
+
}
|
338 |
+
|
339 |
+
$data->version = $new_version->version;
|
340 |
+
$data->download_link = $new_version->url;
|
341 |
}
|
342 |
|
343 |
+
return $data;
|
344 |
+
}
|
345 |
+
|
346 |
+
/**
|
347 |
+
* Checks if a given basename has a matching folder name
|
348 |
+
* with the current context plugin.
|
349 |
+
*
|
350 |
+
* @author Vova Feldman (@svovaf)
|
351 |
+
* @since 1.2.1.6
|
352 |
+
*
|
353 |
+
* @param string $basename Current plugin's basename.
|
354 |
+
*
|
355 |
+
* @return bool
|
356 |
+
*/
|
357 |
+
private function is_correct_folder_name( $basename = '' ) {
|
358 |
+
if ( empty( $basename ) ) {
|
359 |
+
$basename = $this->_fs->get_plugin_basename();
|
360 |
}
|
361 |
|
362 |
+
return ( $this->_fs->get_slug() . ( $this->_fs->is_premium() ? '-premium' : '' ) != trim( dirname( $basename ), '/\\' ) );
|
363 |
+
}
|
364 |
|
365 |
+
/**
|
366 |
+
* This is a special after upgrade handler for migrating modules
|
367 |
+
* that didn't use the '-premium' suffix folder structure before
|
368 |
+
* the migration.
|
369 |
+
*
|
370 |
+
* @author Vova Feldman (@svovaf)
|
371 |
+
* @since 1.2.1.6
|
372 |
+
*
|
373 |
+
* @param bool $response Install response.
|
374 |
+
* @param array $hook_extra Extra arguments passed to hooked filters.
|
375 |
+
* @param array $result Installation result data.
|
376 |
+
*
|
377 |
+
* @return bool
|
378 |
+
*/
|
379 |
+
function _maybe_update_folder_name( $response, $hook_extra, $result ) {
|
380 |
+
$basename = $this->_fs->get_plugin_basename();
|
381 |
+
|
382 |
+
if ( true !== $response ||
|
383 |
+
empty( $hook_extra ) ||
|
384 |
+
empty( $hook_extra['plugin'] ) ||
|
385 |
+
$basename !== $hook_extra['plugin']
|
386 |
+
) {
|
387 |
+
return $response;
|
388 |
+
}
|
389 |
+
|
390 |
+
$active_plugins_basenames = get_option( 'active_plugins' );
|
391 |
+
|
392 |
+
for ( $i = 0, $len = count( $active_plugins_basenames ); $i < $len; $i ++ ) {
|
393 |
+
if ( $basename === $active_plugins_basenames[ $i ] ) {
|
394 |
+
// Get filename including extension.
|
395 |
+
$filename = basename( $basename );
|
396 |
+
|
397 |
+
$new_basename = plugin_basename(
|
398 |
+
trailingslashit( $this->_fs->get_slug() . ( $this->_fs->is_premium() ? '-premium' : '' ) ) .
|
399 |
+
$filename
|
400 |
+
);
|
401 |
+
|
402 |
+
// Verify that the expected correct path exists.
|
403 |
+
if ( file_exists( fs_normalize_path( WP_PLUGIN_DIR . '/' . $new_basename ) ) ) {
|
404 |
+
// Override active plugin name.
|
405 |
+
$active_plugins_basenames[ $i ] = $new_basename;
|
406 |
+
update_option( 'active_plugins', $active_plugins_basenames );
|
407 |
+
}
|
408 |
+
|
409 |
+
break;
|
410 |
+
}
|
411 |
+
}
|
412 |
+
|
413 |
+
return $response;
|
414 |
}
|
415 |
}
|
freemius/includes/class-fs-security.php
CHANGED
@@ -12,6 +12,9 @@
|
|
12 |
|
13 |
define( 'WP_FS__SECURITY_PARAMS_PREFIX', 's_' );
|
14 |
|
|
|
|
|
|
|
15 |
class FS_Security {
|
16 |
/**
|
17 |
* @var FS_Security
|
@@ -24,6 +27,9 @@
|
|
24 |
*/
|
25 |
private static $_logger;
|
26 |
|
|
|
|
|
|
|
27 |
public static function instance() {
|
28 |
if ( ! isset( self::$_instance ) ) {
|
29 |
self::$_instance = new FS_Security();
|
@@ -76,4 +82,4 @@
|
|
76 |
's_ctx_secure' => $this->get_secure_token( $entity, $timestamp, $action ),
|
77 |
);
|
78 |
}
|
79 |
-
}
|
12 |
|
13 |
define( 'WP_FS__SECURITY_PARAMS_PREFIX', 's_' );
|
14 |
|
15 |
+
/**
|
16 |
+
* Class FS_Security
|
17 |
+
*/
|
18 |
class FS_Security {
|
19 |
/**
|
20 |
* @var FS_Security
|
27 |
*/
|
28 |
private static $_logger;
|
29 |
|
30 |
+
/**
|
31 |
+
* @return \FS_Security
|
32 |
+
*/
|
33 |
public static function instance() {
|
34 |
if ( ! isset( self::$_instance ) ) {
|
35 |
self::$_instance = new FS_Security();
|
82 |
's_ctx_secure' => $this->get_secure_token( $entity, $timestamp, $action ),
|
83 |
);
|
84 |
}
|
85 |
+
}
|
freemius/includes/debug/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/entities/class-fs-plugin-license.php
CHANGED
@@ -10,6 +10,9 @@
|
|
10 |
exit;
|
11 |
}
|
12 |
|
|
|
|
|
|
|
13 |
class FS_Plugin_License extends FS_Entity {
|
14 |
|
15 |
#region Properties
|
@@ -74,6 +77,11 @@
|
|
74 |
parent::__construct( $license );
|
75 |
}
|
76 |
|
|
|
|
|
|
|
|
|
|
|
77 |
static function get_type() {
|
78 |
return 'license';
|
79 |
}
|
@@ -213,4 +221,4 @@
|
|
213 |
function is_first_payment_pending() {
|
214 |
return ( WP_FS__TIME_24_HOURS_IN_SEC >= strtotime( $this->expiration ) - strtotime( $this->created ) );
|
215 |
}
|
216 |
-
}
|
10 |
exit;
|
11 |
}
|
12 |
|
13 |
+
/**
|
14 |
+
* Class FS_Plugin_License
|
15 |
+
*/
|
16 |
class FS_Plugin_License extends FS_Entity {
|
17 |
|
18 |
#region Properties
|
77 |
parent::__construct( $license );
|
78 |
}
|
79 |
|
80 |
+
/**
|
81 |
+
* Get entity type.
|
82 |
+
*
|
83 |
+
* @return string
|
84 |
+
*/
|
85 |
static function get_type() {
|
86 |
return 'license';
|
87 |
}
|
221 |
function is_first_payment_pending() {
|
222 |
return ( WP_FS__TIME_24_HOURS_IN_SEC >= strtotime( $this->expiration ) - strtotime( $this->created ) );
|
223 |
}
|
224 |
+
}
|
freemius/includes/entities/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/fs-core-functions.php
CHANGED
@@ -34,29 +34,29 @@
|
|
34 |
|
35 |
function fs_include_template( $path, &$params = null ) {
|
36 |
$VARS = &$params;
|
37 |
-
include
|
38 |
}
|
39 |
|
40 |
function fs_include_once_template( $path, &$params = null ) {
|
41 |
$VARS = &$params;
|
42 |
-
include_once
|
43 |
}
|
44 |
|
45 |
function fs_require_template( $path, &$params = null ) {
|
46 |
$VARS = &$params;
|
47 |
-
require
|
48 |
}
|
49 |
|
50 |
function fs_require_once_template( $path, &$params = null ) {
|
51 |
$VARS = &$params;
|
52 |
-
require_once
|
53 |
}
|
54 |
|
55 |
function fs_get_template( $path, &$params = null ) {
|
56 |
ob_start();
|
57 |
|
58 |
$VARS = &$params;
|
59 |
-
require
|
60 |
|
61 |
return ob_get_clean();
|
62 |
}
|
@@ -503,3 +503,92 @@
|
|
503 |
// If both have priority return the winner.
|
504 |
return ( $a['priority'] < $b['priority'] ) ? - 1 : 1;
|
505 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
|
35 |
function fs_include_template( $path, &$params = null ) {
|
36 |
$VARS = &$params;
|
37 |
+
include fs_get_template_path( $path );
|
38 |
}
|
39 |
|
40 |
function fs_include_once_template( $path, &$params = null ) {
|
41 |
$VARS = &$params;
|
42 |
+
include_once fs_get_template_path( $path );
|
43 |
}
|
44 |
|
45 |
function fs_require_template( $path, &$params = null ) {
|
46 |
$VARS = &$params;
|
47 |
+
require fs_get_template_path( $path );
|
48 |
}
|
49 |
|
50 |
function fs_require_once_template( $path, &$params = null ) {
|
51 |
$VARS = &$params;
|
52 |
+
require_once fs_get_template_path( $path );
|
53 |
}
|
54 |
|
55 |
function fs_get_template( $path, &$params = null ) {
|
56 |
ob_start();
|
57 |
|
58 |
$VARS = &$params;
|
59 |
+
require fs_get_template_path( $path );
|
60 |
|
61 |
return ob_get_clean();
|
62 |
}
|
503 |
// If both have priority return the winner.
|
504 |
return ( $a['priority'] < $b['priority'] ) ? - 1 : 1;
|
505 |
}
|
506 |
+
|
507 |
+
#--------------------------------------------------------------------------------
|
508 |
+
#region Localization
|
509 |
+
#--------------------------------------------------------------------------------
|
510 |
+
|
511 |
+
/**
|
512 |
+
* @author Vova Feldman
|
513 |
+
* @since 1.2.1.6
|
514 |
+
*
|
515 |
+
* @param string $key
|
516 |
+
* @param string $slug
|
517 |
+
*
|
518 |
+
* @return string
|
519 |
+
*/
|
520 |
+
function fs_esc_attr($key, $slug) {
|
521 |
+
return esc_attr( __fs( $key, $slug ) );
|
522 |
+
}
|
523 |
+
|
524 |
+
/**
|
525 |
+
* @author Vova Feldman
|
526 |
+
* @since 1.2.1.6
|
527 |
+
*
|
528 |
+
* @param string $key
|
529 |
+
* @param string $slug
|
530 |
+
*/
|
531 |
+
function fs_esc_attr_echo($key, $slug) {
|
532 |
+
echo esc_attr( __fs( $key, $slug ) );
|
533 |
+
}
|
534 |
+
|
535 |
+
/**
|
536 |
+
* @author Vova Feldman
|
537 |
+
* @since 1.2.1.6
|
538 |
+
*
|
539 |
+
* @param string $key
|
540 |
+
* @param string $slug
|
541 |
+
*
|
542 |
+
* @return string
|
543 |
+
*/
|
544 |
+
function fs_esc_js($key, $slug) {
|
545 |
+
return esc_js( __fs( $key, $slug ) );
|
546 |
+
}
|
547 |
+
|
548 |
+
/**
|
549 |
+
* @author Vova Feldman
|
550 |
+
* @since 1.2.1.6
|
551 |
+
*
|
552 |
+
* @param string $key
|
553 |
+
* @param string $slug
|
554 |
+
*/
|
555 |
+
function fs_esc_js_echo($key, $slug) {
|
556 |
+
echo esc_js( __fs( $key, $slug ) );
|
557 |
+
}
|
558 |
+
|
559 |
+
/**
|
560 |
+
* @author Vova Feldman
|
561 |
+
* @since 1.2.1.6
|
562 |
+
*
|
563 |
+
* @param string $key
|
564 |
+
* @param string $slug
|
565 |
+
*/
|
566 |
+
function fs_json_encode_echo($key, $slug) {
|
567 |
+
echo json_encode( __fs( $key, $slug ) );
|
568 |
+
}
|
569 |
+
|
570 |
+
/**
|
571 |
+
* @author Vova Feldman
|
572 |
+
* @since 1.2.1.6
|
573 |
+
*
|
574 |
+
* @param string $key
|
575 |
+
* @param string $slug
|
576 |
+
*
|
577 |
+
* @return string
|
578 |
+
*/
|
579 |
+
function fs_esc_html($key, $slug) {
|
580 |
+
return esc_html( __fs( $key, $slug ) );
|
581 |
+
}
|
582 |
+
|
583 |
+
/**
|
584 |
+
* @author Vova Feldman
|
585 |
+
* @since 1.2.1.6
|
586 |
+
*
|
587 |
+
* @param string $key
|
588 |
+
* @param string $slug
|
589 |
+
*/
|
590 |
+
function fs_esc_html_echo($key, $slug) {
|
591 |
+
echo esc_html( __fs( $key, $slug ) );
|
592 |
+
}
|
593 |
+
|
594 |
+
#endregion
|
freemius/includes/fs-essential-functions.php
CHANGED
@@ -163,11 +163,9 @@
|
|
163 |
* @global $fs_text , $fs_text_overrides
|
164 |
*/
|
165 |
function __fs( $key, $slug = 'freemius' ) {
|
166 |
-
global $fs_text,
|
167 |
-
|
168 |
-
|
169 |
-
require_once( ( defined( 'WP_FS__DIR_INCLUDES' ) ? WP_FS__DIR_INCLUDES : dirname( __FILE__ ) ) . '/i18n.php' );
|
170 |
-
}
|
171 |
|
172 |
if ( isset( $fs_text_overrides[ $slug ] ) ) {
|
173 |
if ( isset( $fs_text_overrides[ $slug ][ $key ] ) ) {
|
@@ -180,9 +178,23 @@
|
|
180 |
}
|
181 |
}
|
182 |
|
183 |
-
|
184 |
-
$
|
185 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
186 |
}
|
187 |
|
188 |
/**
|
@@ -267,7 +279,7 @@
|
|
267 |
* will catch it.
|
268 |
*/
|
269 |
if ( ! function_exists( 'get_plugins' ) ) {
|
270 |
-
require_once
|
271 |
}
|
272 |
|
273 |
$all_plugins = get_plugins();
|
163 |
* @global $fs_text , $fs_text_overrides
|
164 |
*/
|
165 |
function __fs( $key, $slug = 'freemius' ) {
|
166 |
+
global $fs_text,
|
167 |
+
$fs_module_info_text,
|
168 |
+
$fs_text_overrides;
|
|
|
|
|
169 |
|
170 |
if ( isset( $fs_text_overrides[ $slug ] ) ) {
|
171 |
if ( isset( $fs_text_overrides[ $slug ][ $key ] ) ) {
|
178 |
}
|
179 |
}
|
180 |
|
181 |
+
if ( ! isset( $fs_text ) ) {
|
182 |
+
$dir = defined( 'WP_FS__DIR_INCLUDES' ) ?
|
183 |
+
WP_FS__DIR_INCLUDES :
|
184 |
+
dirname( __FILE__ );
|
185 |
+
|
186 |
+
require_once $dir . '/i18n.php';
|
187 |
+
}
|
188 |
+
|
189 |
+
if ( isset( $fs_text[ $key ] ) ) {
|
190 |
+
return $fs_text[ $key ];
|
191 |
+
}
|
192 |
+
|
193 |
+
if ( isset( $fs_module_info_text[ $key ] ) ) {
|
194 |
+
return $fs_module_info_text[ $key ];
|
195 |
+
}
|
196 |
+
|
197 |
+
return $key;
|
198 |
}
|
199 |
|
200 |
/**
|
279 |
* will catch it.
|
280 |
*/
|
281 |
if ( ! function_exists( 'get_plugins' ) ) {
|
282 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
283 |
}
|
284 |
|
285 |
$all_plugins = get_plugins();
|
freemius/includes/fs-plugin-info-dialog.php
CHANGED
@@ -151,15 +151,15 @@
|
|
151 |
if ( $is_wordpress_org ) {
|
152 |
$repo_data = FS_Plugin_Updater::_fetch_plugin_info_from_repository(
|
153 |
'plugin_information', (object) array(
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
|
164 |
if ( ! empty( $repo_data ) ) {
|
165 |
$data = $repo_data;
|
@@ -349,20 +349,20 @@
|
|
349 |
return ' <a class="button button-primary right" href="' . esc_url( $api->download_link ) . '" target="_blank">' . __fs( 'download-latest', $api->slug ) . '</a>';
|
350 |
} else {
|
351 |
if ( $status['url'] ) {
|
352 |
-
return '<a class="button button-primary right" href="' . $status['url'] . '" target="_parent">' .
|
353 |
}
|
354 |
}
|
355 |
break;
|
356 |
case 'update_available':
|
357 |
if ( $status['url'] ) {
|
358 |
-
return '<a class="button button-primary right" href="' . $status['url'] . '" target="_parent">' .
|
359 |
}
|
360 |
break;
|
361 |
case 'newer_installed':
|
362 |
-
return '<a class="button button-primary right disabled">' . sprintf(
|
363 |
break;
|
364 |
case 'latest_installed':
|
365 |
-
return '<a class="button button-primary right disabled">' .
|
366 |
break;
|
367 |
}
|
368 |
|
@@ -475,13 +475,13 @@
|
|
475 |
);
|
476 |
|
477 |
$plugins_section_titles = array(
|
478 |
-
'description' =>
|
479 |
-
'installation' =>
|
480 |
-
'faq' =>
|
481 |
-
'screenshots' =>
|
482 |
-
'changelog' =>
|
483 |
-
'reviews' =>
|
484 |
-
'other_notes' =>
|
485 |
);
|
486 |
|
487 |
// Sanitize HTML
|
@@ -506,7 +506,7 @@
|
|
506 |
$section = array_shift( $section_titles );
|
507 |
}
|
508 |
|
509 |
-
iframe_header(
|
510 |
|
511 |
$_with_banner = '';
|
512 |
|
@@ -530,7 +530,7 @@
|
|
530 |
}
|
531 |
}
|
532 |
</style>
|
533 |
-
|
534 |
}
|
535 |
|
536 |
echo '<div id="plugin-information-scrollable">';
|
@@ -560,371 +560,383 @@
|
|
560 |
?>
|
561 |
<div id="<?php echo $_tab; ?>-content" class='<?php echo $_with_banner; ?>'>
|
562 |
<div class="fyi">
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
}
|
598 |
-
?>
|
599 |
-
<a class="nav-tab" data-billing-cycle="<?php echo $cycle ?>"
|
600 |
-
data-pricing="<?php echo esc_attr( json_encode( $prices ) ) ?>">
|
601 |
-
<?php if ( $is_featured ) : ?>
|
602 |
-
<label>★ <?php _efs( 'best', $api->slug ) ?> ★</label>
|
603 |
-
<?php endif ?>
|
604 |
-
<?php _efs( $cycle, $api->slug ) ?>
|
605 |
-
</a>
|
606 |
-
<?php endif ?>
|
607 |
-
<?php $i ++; endforeach ?>
|
608 |
-
<?php wp_enqueue_script( 'jquery' ) ?>
|
609 |
-
<script type="text/javascript">
|
610 |
-
(function ($, undef) {
|
611 |
-
var
|
612 |
-
_formatBillingFrequency = function (cycle) {
|
613 |
-
switch (cycle) {
|
614 |
-
case 'monthly':
|
615 |
-
return '<?php printf(__fs('billed-x', $api->slug), __fs('monthly', $api->slug)) ?>';
|
616 |
-
case 'annual':
|
617 |
-
return '<?php printf(__fs('billed-x', $api->slug), __fs('annually', $api->slug)) ?>';
|
618 |
-
case 'lifetime':
|
619 |
-
return '<?php printf(__fs('billed-x', $api->slug), __fs('once', $api->slug)) ?>';
|
620 |
-
}
|
621 |
-
},
|
622 |
-
_formatLicensesTitle = function (pricing) {
|
623 |
-
switch (pricing.licenses) {
|
624 |
-
case 1:
|
625 |
-
return '<?php _efs( 'license-single-site', $api->slug ) ?>';
|
626 |
-
case null:
|
627 |
-
return '<?php _efs( 'license-unlimited', $api->slug ) ?>';
|
628 |
-
default:
|
629 |
-
return '<?php _efs( 'license-x-sites', $api->slug ) ?>'.replace('%s', pricing.licenses);
|
630 |
-
}
|
631 |
-
},
|
632 |
-
_formatPrice = function (pricing, cycle, multipleLicenses) {
|
633 |
-
if (undef === multipleLicenses)
|
634 |
-
multipleLicenses = true;
|
635 |
-
|
636 |
-
var priceCycle;
|
637 |
-
switch (cycle) {
|
638 |
-
case 'monthly':
|
639 |
-
priceCycle = ' / <?php _efs('mo', $api->slug) ?>';
|
640 |
-
break;
|
641 |
-
case 'lifetime':
|
642 |
-
priceCycle = '';
|
643 |
-
break;
|
644 |
-
case 'annual':
|
645 |
-
default:
|
646 |
-
priceCycle = ' / <?php _efs('year', $api->slug) ?>';
|
647 |
-
break;
|
648 |
-
}
|
649 |
-
|
650 |
-
if (!multipleLicenses && 1 == pricing.licenses) {
|
651 |
-
return '$' + pricing.price + priceCycle;
|
652 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
653 |
|
654 |
-
|
655 |
-
|
656 |
-
_checkoutUrl = function (plan, pricing, cycle) {
|
657 |
-
return '<?php echo esc_url_raw(remove_query_arg('billing_cycle', add_query_arg(array('plugin_id' => $plan->plugin_id), $api->checkout_link))) ?>' +
|
658 |
-
'&plan_id=' + plan +
|
659 |
-
'&pricing_id=' + pricing +
|
660 |
-
'&billing_cycle=' + cycle<?php if ($plan->has_trial()) { echo " + '&trial=true'"; }?>;
|
661 |
-
},
|
662 |
-
_updateCtaUrl = function (plan, pricing, cycle) {
|
663 |
-
$('.plugin-information-pricing .button, #plugin-information-footer .button').attr('href', _checkoutUrl(plan, pricing, cycle));
|
664 |
-
};
|
665 |
-
|
666 |
-
$(document).ready(function () {
|
667 |
-
var $plan = $('.plugin-information-pricing .fs-plan[data-plan-id=<?php echo $plan->id ?>]');
|
668 |
-
$plan.find('input[type=radio]').live('click', function () {
|
669 |
-
_updateCtaUrl(
|
670 |
-
$plan.attr('data-plan-id'),
|
671 |
-
$(this).val(),
|
672 |
-
$plan.find('.nav-tab-active').attr('data-billing-cycle')
|
673 |
-
);
|
674 |
-
|
675 |
-
$plan.find('.fs-trial-terms .fs-price').html(
|
676 |
-
$(this).parents('label').find('.fs-price').html()
|
677 |
-
);
|
678 |
-
});
|
679 |
-
|
680 |
-
$plan.find('.nav-tab').click(function () {
|
681 |
-
if ($(this).hasClass('nav-tab-active'))
|
682 |
-
return;
|
683 |
-
|
684 |
-
var $this = $(this),
|
685 |
-
billingCycle = $this.attr('data-billing-cycle'),
|
686 |
-
pricing = JSON.parse($this.attr('data-pricing')),
|
687 |
-
$pricesList = $this.parents('.fs-plan').find('.fs-pricing-body .fs-licenses'),
|
688 |
-
html = '';
|
689 |
-
|
690 |
-
// Un-select previously selected tab.
|
691 |
-
$plan.find('.nav-tab').removeClass('nav-tab-active');
|
692 |
-
|
693 |
-
// Select current tab.
|
694 |
-
$this.addClass('nav-tab-active');
|
695 |
-
|
696 |
-
// Render licenses prices.
|
697 |
-
if (1 == pricing.length) {
|
698 |
-
html = '<li><label><?php _efs( 'price', $api->slug ) ?>: ' + _formatPrice(pricing[0], billingCycle, false) + '</label></li>';
|
699 |
-
} else {
|
700 |
-
for (var i = 0; i < pricing.length; i++) {
|
701 |
-
html += '<li><label><input name="pricing-<?php echo $plan->id ?>" type="radio" value="' + pricing[i].id + '">' + _formatPrice(pricing[i], billingCycle) + '</label></li>';
|
702 |
}
|
703 |
-
}
|
704 |
-
$pricesList.html(html);
|
705 |
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
711 |
_updateCtaUrl(
|
712 |
$plan.attr('data-plan-id'),
|
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 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
<div
|
750 |
-
|
751 |
-
<?php $
|
752 |
-
|
753 |
-
<
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
<i class="dashicons dashicons-yes"></i><?php printf( __fs( 'after-x-pay-as-little-y', $api->slug ), $trial_period, '<var class="fs-price">' . $this->get_price_tag( $plan, $plan->pricing[0] ) . '</var>' ) ?>
|
758 |
-
</li>
|
759 |
</ul>
|
760 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
761 |
</div>
|
762 |
-
|
763 |
-
|
764 |
-
<?php
|
765 |
<?php endif ?>
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
<?php
|
773 |
-
}
|
774 |
-
if ( ! empty( $api->author ) ) {
|
775 |
-
?>
|
776 |
-
<li>
|
777 |
-
<strong><?php _e( 'Author:' ); ?></strong> <?php echo links_add_target( $api->author, '_blank' ); ?>
|
778 |
-
</li>
|
779 |
-
<?php
|
780 |
}
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
786 |
</span></li>
|
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 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
841 |
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
|
|
|
|
|
|
|
|
848 |
<span class="counter-label"><a
|
849 |
href="https://wordpress.org/support/view/plugin-reviews/<?php echo $api->slug; ?>?filter=<?php echo $key; ?>"
|
850 |
target="_blank"
|
851 |
-
title="<?php echo esc_attr( sprintf(
|
852 |
-
|
853 |
<span class="counter-bar" style="width: <?php echo 92 * $_rating; ?>px;"></span>
|
854 |
</span>
|
855 |
-
|
856 |
-
|
857 |
-
|
|
|
858 |
}
|
859 |
-
|
860 |
-
if ( ! empty( $api->contributors ) ) {
|
861 |
-
?>
|
862 |
-
<h3><?php _e( 'Contributors' ); ?></h3>
|
863 |
-
<ul class="contributors">
|
864 |
-
<?php
|
865 |
-
foreach ( (array) $api->contributors as $contrib_username => $contrib_profile ) {
|
866 |
-
if ( empty( $contrib_username ) && empty( $contrib_profile ) ) {
|
867 |
-
continue;
|
868 |
-
}
|
869 |
-
if ( empty( $contrib_username ) ) {
|
870 |
-
$contrib_username = preg_replace( '/^.+\/(.+)\/?$/', '\1', $contrib_profile );
|
871 |
-
}
|
872 |
-
$contrib_username = sanitize_user( $contrib_username );
|
873 |
-
if ( empty( $contrib_profile ) ) {
|
874 |
-
echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</li>";
|
875 |
-
} else {
|
876 |
-
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>";
|
877 |
-
}
|
878 |
-
}
|
879 |
?>
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
884 |
<?php } ?>
|
885 |
-
<?php } ?>
|
886 |
</div>
|
887 |
<div id="section-holder" class="wrap">
|
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 |
-
echo "
|
915 |
-
echo
|
916 |
-
echo "
|
917 |
-
|
918 |
-
echo "</div>\n";
|
919 |
-
echo "</div>\n";
|
920 |
-
echo "</div>\n"; // #plugin-information-scrollable
|
921 |
-
echo "<div id='$tab-footer'>\n";
|
922 |
|
923 |
-
|
924 |
|
925 |
-
|
926 |
|
927 |
-
|
928 |
-
|
929 |
-
}
|
930 |
-
}
|
151 |
if ( $is_wordpress_org ) {
|
152 |
$repo_data = FS_Plugin_Updater::_fetch_plugin_info_from_repository(
|
153 |
'plugin_information', (object) array(
|
154 |
+
'slug' => $selected_addon->slug,
|
155 |
+
'is_ssl' => is_ssl(),
|
156 |
+
'fields' => array(
|
157 |
+
'banners' => true,
|
158 |
+
'reviews' => true,
|
159 |
+
'downloaded' => false,
|
160 |
+
'active_installs' => true
|
161 |
+
)
|
162 |
+
) );
|
163 |
|
164 |
if ( ! empty( $repo_data ) ) {
|
165 |
$data = $repo_data;
|
349 |
return ' <a class="button button-primary right" href="' . esc_url( $api->download_link ) . '" target="_blank">' . __fs( 'download-latest', $api->slug ) . '</a>';
|
350 |
} else {
|
351 |
if ( $status['url'] ) {
|
352 |
+
return '<a class="button button-primary right" href="' . $status['url'] . '" target="_parent">' . __fs( 'install-now', $api->slug ) . '</a>';
|
353 |
}
|
354 |
}
|
355 |
break;
|
356 |
case 'update_available':
|
357 |
if ( $status['url'] ) {
|
358 |
+
return '<a class="button button-primary right" href="' . $status['url'] . '" target="_parent">' . __fs( 'install-update-now', $api->slug ) . '</a>';
|
359 |
}
|
360 |
break;
|
361 |
case 'newer_installed':
|
362 |
+
return '<a class="button button-primary right disabled">' . sprintf( __fs( 'newer-installed', $api->slug ), $status['version'] ) . '</a>';
|
363 |
break;
|
364 |
case 'latest_installed':
|
365 |
+
return '<a class="button button-primary right disabled">' . __fs( 'latest-installed', $api->slug ) . '</a>';
|
366 |
break;
|
367 |
}
|
368 |
|
475 |
);
|
476 |
|
477 |
$plugins_section_titles = array(
|
478 |
+
'description' => __fs( 'description', $api->slug ),
|
479 |
+
'installation' => __fs( 'installation', $api->slug ),
|
480 |
+
'faq' => __fs( 'faq', $api->slug ),
|
481 |
+
'screenshots' => __fs( 'screenshots', $api->slug ),
|
482 |
+
'changelog' => __fs( 'changelog', $api->slug ),
|
483 |
+
'reviews' => __fs( 'reviews', $api->slug ),
|
484 |
+
'other_notes' => __fs( 'other_notes', $api->slug ),
|
485 |
);
|
486 |
|
487 |
// Sanitize HTML
|
506 |
$section = array_shift( $section_titles );
|
507 |
}
|
508 |
|
509 |
+
iframe_header( __fs( 'plugin-install', $api->slug ) );
|
510 |
|
511 |
$_with_banner = '';
|
512 |
|
530 |
}
|
531 |
}
|
532 |
</style>
|
533 |
+
<?php
|
534 |
}
|
535 |
|
536 |
echo '<div id="plugin-information-scrollable">';
|
560 |
?>
|
561 |
<div id="<?php echo $_tab; ?>-content" class='<?php echo $_with_banner; ?>'>
|
562 |
<div class="fyi">
|
563 |
+
<?php if ( $api->is_paid ) : ?>
|
564 |
+
<?php if ( isset( $api->plans ) ) : ?>
|
565 |
+
<div class="plugin-information-pricing">
|
566 |
+
<?php foreach ( $api->plans as $plan ) : ?>
|
567 |
+
<?php
|
568 |
+
/**
|
569 |
+
* @var FS_Plugin_Plan $plan
|
570 |
+
*/
|
571 |
+
?>
|
572 |
+
<?php $first_pricing = $plan->pricing[0] ?>
|
573 |
+
<?php $is_multi_cycle = $first_pricing->is_multi_cycle() ?>
|
574 |
+
<div class="fs-plan<?php if ( ! $is_multi_cycle ) {
|
575 |
+
echo ' fs-single-cycle';
|
576 |
+
} ?>" data-plan-id="<?php echo $plan->id ?>">
|
577 |
+
<h3 data-plan="<?php echo $plan->id ?>"><?php printf( __fs( 'x-plan', $api->slug ), $plan->title ) ?></h3>
|
578 |
+
<?php $has_annual = $first_pricing->has_annual() ?>
|
579 |
+
<?php $has_monthly = $first_pricing->has_monthly() ?>
|
580 |
+
<div class="nav-tab-wrapper">
|
581 |
+
<?php $billing_cycles = array( 'monthly', 'annual', 'lifetime' ) ?>
|
582 |
+
<?php $i = 0;
|
583 |
+
foreach ( $billing_cycles as $cycle ) : ?>
|
584 |
+
<?php $prop = "{$cycle}_price";
|
585 |
+
if ( isset( $first_pricing->{$prop} ) ) : ?>
|
586 |
+
<?php $is_featured = ( 'annual' === $cycle && $is_multi_cycle ) ?>
|
587 |
+
<?php
|
588 |
+
$prices = array();
|
589 |
+
foreach ( $plan->pricing as $pricing ) {
|
590 |
+
if ( isset( $pricing->{$prop} ) ) {
|
591 |
+
$prices[] = array(
|
592 |
+
'id' => $pricing->id,
|
593 |
+
'licenses' => $pricing->licenses,
|
594 |
+
'price' => $pricing->{$prop}
|
595 |
+
);
|
596 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
597 |
}
|
598 |
+
?>
|
599 |
+
<a class="nav-tab" data-billing-cycle="<?php echo $cycle ?>"
|
600 |
+
data-pricing="<?php echo esc_attr( json_encode( $prices ) ) ?>">
|
601 |
+
<?php if ( $is_featured ) : ?>
|
602 |
+
<label>★ <?php _efs( 'best', $api->slug ) ?> ★</label>
|
603 |
+
<?php endif ?>
|
604 |
+
<?php _efs( $cycle, $api->slug ) ?>
|
605 |
+
</a>
|
606 |
+
<?php endif ?>
|
607 |
+
<?php $i ++; endforeach ?>
|
608 |
+
<?php wp_enqueue_script( 'jquery' ) ?>
|
609 |
+
<script type="text/javascript">
|
610 |
+
(function ($, undef) {
|
611 |
+
var
|
612 |
+
_formatBillingFrequency = function (cycle) {
|
613 |
+
switch (cycle) {
|
614 |
+
case 'monthly':
|
615 |
+
return '<?php printf(__fs('billed-x', $api->slug), __fs('monthly', $api->slug)) ?>';
|
616 |
+
case 'annual':
|
617 |
+
return '<?php printf(__fs('billed-x', $api->slug), __fs('annually', $api->slug)) ?>';
|
618 |
+
case 'lifetime':
|
619 |
+
return '<?php printf(__fs('billed-x', $api->slug), __fs('once', $api->slug)) ?>';
|
620 |
+
}
|
621 |
+
},
|
622 |
+
_formatLicensesTitle = function (pricing) {
|
623 |
+
switch (pricing.licenses) {
|
624 |
+
case 1:
|
625 |
+
return '<?php _efs( 'license-single-site', $api->slug ) ?>';
|
626 |
+
case null:
|
627 |
+
return '<?php _efs( 'license-unlimited', $api->slug ) ?>';
|
628 |
+
default:
|
629 |
+
return '<?php _efs( 'license-x-sites', $api->slug ) ?>'.replace('%s', pricing.licenses);
|
630 |
+
}
|
631 |
+
},
|
632 |
+
_formatPrice = function (pricing, cycle, multipleLicenses) {
|
633 |
+
if (undef === multipleLicenses)
|
634 |
+
multipleLicenses = true;
|
635 |
+
|
636 |
+
var priceCycle;
|
637 |
+
switch (cycle) {
|
638 |
+
case 'monthly':
|
639 |
+
priceCycle = ' / <?php _efs('mo', $api->slug) ?>';
|
640 |
+
break;
|
641 |
+
case 'lifetime':
|
642 |
+
priceCycle = '';
|
643 |
+
break;
|
644 |
+
case 'annual':
|
645 |
+
default:
|
646 |
+
priceCycle = ' / <?php _efs('year', $api->slug) ?>';
|
647 |
+
break;
|
648 |
+
}
|
649 |
|
650 |
+
if (!multipleLicenses && 1 == pricing.licenses) {
|
651 |
+
return '$' + pricing.price + priceCycle;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
652 |
}
|
|
|
|
|
653 |
|
654 |
+
return _formatLicensesTitle(pricing) + ' - <var class="fs-price">$' + pricing.price + priceCycle + '</var>';
|
655 |
+
},
|
656 |
+
_checkoutUrl = function (plan, pricing, cycle) {
|
657 |
+
return '<?php echo esc_url_raw(remove_query_arg('billing_cycle', add_query_arg(array('plugin_id' => $plan->plugin_id), $api->checkout_link))) ?>' +
|
658 |
+
'&plan_id=' + plan +
|
659 |
+
'&pricing_id=' + pricing +
|
660 |
+
'&billing_cycle=' + cycle<?php if ($plan->has_trial()) { echo " + '&trial=true'"; }?>;
|
661 |
+
},
|
662 |
+
_updateCtaUrl = function (plan, pricing, cycle) {
|
663 |
+
$('.plugin-information-pricing .button, #plugin-information-footer .button').attr('href', _checkoutUrl(plan, pricing, cycle));
|
664 |
+
};
|
665 |
+
|
666 |
+
$(document).ready(function () {
|
667 |
+
var $plan = $('.plugin-information-pricing .fs-plan[data-plan-id=<?php echo $plan->id ?>]');
|
668 |
+
$plan.find('input[type=radio]').live('click', function () {
|
669 |
_updateCtaUrl(
|
670 |
$plan.attr('data-plan-id'),
|
671 |
+
$(this).val(),
|
672 |
+
$plan.find('.nav-tab-active').attr('data-billing-cycle')
|
673 |
);
|
|
|
674 |
|
675 |
+
$plan.find('.fs-trial-terms .fs-price').html(
|
676 |
+
$(this).parents('label').find('.fs-price').html()
|
677 |
+
);
|
678 |
+
});
|
679 |
+
|
680 |
+
$plan.find('.nav-tab').click(function () {
|
681 |
+
if ($(this).hasClass('nav-tab-active'))
|
682 |
+
return;
|
683 |
+
|
684 |
+
var $this = $(this),
|
685 |
+
billingCycle = $this.attr('data-billing-cycle'),
|
686 |
+
pricing = JSON.parse($this.attr('data-pricing')),
|
687 |
+
$pricesList = $this.parents('.fs-plan').find('.fs-pricing-body .fs-licenses'),
|
688 |
+
html = '';
|
689 |
+
|
690 |
+
// Un-select previously selected tab.
|
691 |
+
$plan.find('.nav-tab').removeClass('nav-tab-active');
|
692 |
+
|
693 |
+
// Select current tab.
|
694 |
+
$this.addClass('nav-tab-active');
|
695 |
+
|
696 |
+
// Render licenses prices.
|
697 |
+
if (1 == pricing.length) {
|
698 |
+
html = '<li><label><?php _efs( 'price', $api->slug ) ?>: ' + _formatPrice(pricing[0], billingCycle, false) + '</label></li>';
|
699 |
+
} else {
|
700 |
+
for (var i = 0; i < pricing.length; i++) {
|
701 |
+
html += '<li><label><input name="pricing-<?php echo $plan->id ?>" type="radio" value="' + pricing[i].id + '">' + _formatPrice(pricing[i], billingCycle) + '</label></li>';
|
702 |
+
}
|
703 |
+
}
|
704 |
+
$pricesList.html(html);
|
705 |
|
706 |
+
if (1 < pricing.length) {
|
707 |
+
// Select first license option.
|
708 |
+
$pricesList.find('li:first input').click();
|
709 |
+
}
|
710 |
+
else {
|
711 |
+
_updateCtaUrl(
|
712 |
+
$plan.attr('data-plan-id'),
|
713 |
+
pricing[0].id,
|
714 |
+
billingCycle
|
715 |
+
);
|
716 |
+
}
|
717 |
|
718 |
+
// Update billing frequency.
|
719 |
+
$plan.find('.fs-billing-frequency').html(_formatBillingFrequency(billingCycle));
|
720 |
+
|
721 |
+
if ('annual' === billingCycle) {
|
722 |
+
$plan.find('.fs-annual-discount').show();
|
723 |
+
} else {
|
724 |
+
$plan.find('.fs-annual-discount').hide();
|
725 |
+
}
|
726 |
+
});
|
727 |
+
|
728 |
+
<?php if ( $has_annual ) : ?>
|
729 |
+
// Select annual by default.
|
730 |
+
$plan.find('.nav-tab[data-billing-cycle=annual]').click();
|
731 |
+
<?php else : ?>
|
732 |
+
// Select first tab.
|
733 |
+
$plan.find('.nav-tab:first').click();
|
734 |
+
<?php endif ?>
|
735 |
+
});
|
736 |
+
}(jQuery));
|
737 |
+
</script>
|
738 |
+
</div>
|
739 |
+
<div class="fs-pricing-body">
|
740 |
+
<span class="fs-billing-frequency"></span>
|
741 |
+
<?php $annual_discount = ( $has_annual && $has_monthly ) ? $plan->pricing[0]->annual_discount_percentage() : 0 ?>
|
742 |
+
<?php if ( $annual_discount > 0 ) : ?>
|
743 |
+
<span
|
744 |
+
class="fs-annual-discount"><?php printf( __fs( 'save-x', $api->slug ), $annual_discount . '%' ) ?></span>
|
745 |
+
<?php endif ?>
|
746 |
+
<ul class="fs-licenses">
|
|
|
|
|
747 |
</ul>
|
748 |
+
<?php echo $this->get_plugin_cta( $api, $plan ) ?>
|
749 |
+
<div style="clear:both"></div>
|
750 |
+
<?php if ( $plan->has_trial() ) : ?>
|
751 |
+
<?php $trial_period = $this->get_trial_period( $plan ) ?>
|
752 |
+
<ul class="fs-trial-terms">
|
753 |
+
<li>
|
754 |
+
<i class="dashicons dashicons-yes"></i><?php printf( __fs( 'no-commitment-x', $api->slug ), $trial_period ) ?>
|
755 |
+
</li>
|
756 |
+
<li>
|
757 |
+
<i class="dashicons dashicons-yes"></i><?php printf( __fs( 'after-x-pay-as-little-y', $api->slug ), $trial_period, '<var class="fs-price">' . $this->get_price_tag( $plan, $plan->pricing[0] ) . '</var>' ) ?>
|
758 |
+
</li>
|
759 |
+
</ul>
|
760 |
+
<?php endif ?>
|
761 |
+
</div>
|
762 |
</div>
|
763 |
+
</div>
|
764 |
+
<?php endforeach ?>
|
765 |
+
<?php endif ?>
|
766 |
<?php endif ?>
|
767 |
+
<div>
|
768 |
+
<h3><?php _efs( 'details', $api->slug ) ?></h3>
|
769 |
+
<ul>
|
770 |
+
<?php if ( ! empty( $api->version ) ) { ?>
|
771 |
+
<li><strong><?php _efs( 'version', $api->slug ); ?>:</strong> <?php echo $api->version; ?></li>
|
772 |
+
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
773 |
}
|
774 |
+
if ( ! empty( $api->author ) ) {
|
775 |
+
?>
|
776 |
+
<li>
|
777 |
+
<strong><?php _efs( 'author:', $api->slug ); ?></strong> <?php echo links_add_target( $api->author, '_blank' ); ?>
|
778 |
+
</li>
|
779 |
+
<?php
|
780 |
+
}
|
781 |
+
if ( ! empty( $api->last_updated ) ) {
|
782 |
+
?>
|
783 |
+
<li><strong><?php _efs( 'last-updated:', $api->slug ); ?></strong> <span
|
784 |
+
title="<?php echo $api->last_updated; ?>">
|
785 |
+
<?php printf( __fs( 'x-ago', $api->slug ), human_time_diff( strtotime( $api->last_updated ) ) ); ?>
|
786 |
</span></li>
|
787 |
+
<?php
|
788 |
+
}
|
789 |
+
if ( ! empty( $api->requires ) ) {
|
790 |
+
?>
|
791 |
+
<li>
|
792 |
+
<strong><?php _efs( 'requires-wordpress-version:', $api->slug ); ?></strong> <?php printf( __fs( 'x-or-higher', $api->slug ), $api->requires ); ?>
|
793 |
+
</li>
|
794 |
+
<?php
|
795 |
+
}
|
796 |
+
if ( ! empty( $api->tested ) ) {
|
797 |
+
?>
|
798 |
+
<li><strong><?php _efs( 'compatible-up-to:', $api->slug ); ?></strong> <?php echo $api->tested; ?>
|
799 |
+
</li>
|
800 |
+
<?php
|
801 |
+
}
|
802 |
+
if ( ! empty( $api->downloaded ) ) {
|
803 |
+
?>
|
804 |
+
<li>
|
805 |
+
<strong><?php _efs( 'downloaded:', $api->slug ); ?></strong> <?php printf(
|
806 |
+
__fs( ( 1 == $api->downloaded ) ? 'x-time' : 'x-times', $api->slug ),
|
807 |
+
number_format_i18n( $api->downloaded )
|
808 |
+
); ?>
|
809 |
+
</li>
|
810 |
+
<?php
|
811 |
+
}
|
812 |
+
if ( ! empty( $api->slug ) && empty( $api->external ) ) {
|
813 |
+
?>
|
814 |
+
<li><a target="_blank"
|
815 |
+
href="https://wordpress.org/plugins/<?php echo $api->slug; ?>/"><?php _efs( 'wp-org-plugin-page', $api->slug ); ?> »</a>
|
816 |
+
</li>
|
817 |
+
<?php
|
818 |
+
}
|
819 |
+
if ( ! empty( $api->homepage ) ) {
|
820 |
+
?>
|
821 |
+
<li><a target="_blank"
|
822 |
+
href="<?php echo esc_url( $api->homepage ); ?>"><?php _efs( 'plugin-homepage', $api->slug ); ?> »</a>
|
823 |
+
</li>
|
824 |
+
<?php
|
825 |
+
}
|
826 |
+
if ( ! empty( $api->donate_link ) && empty( $api->contributors ) ) {
|
827 |
+
?>
|
828 |
+
<li><a target="_blank"
|
829 |
+
href="<?php echo esc_url( $api->donate_link ); ?>"><?php _efs( 'donate-to-plugin', $api->slug ); ?> »</a>
|
830 |
+
</li>
|
831 |
+
<?php } ?>
|
832 |
+
</ul>
|
833 |
+
</div>
|
834 |
+
<?php if ( ! empty( $api->rating ) ) { ?>
|
835 |
+
<h3><?php _efs( 'average-rating', $api->slug ); ?></h3>
|
836 |
+
<?php wp_star_rating( array(
|
837 |
+
'rating' => $api->rating,
|
838 |
+
'type' => 'percent',
|
839 |
+
'number' => $api->num_ratings
|
840 |
+
) ); ?>
|
841 |
+
<small>(<?php printf(
|
842 |
+
__fs( 'based-on-x', $api->slug ),
|
843 |
+
sprintf(
|
844 |
+
__fs( ( 1 == $api->num_ratings ) ? 'x-rating' : 'x-ratings', $api->slug ),
|
845 |
+
number_format_i18n( $api->num_ratings )
|
846 |
+
) ); ?>)</small>
|
847 |
+
<?php
|
848 |
+
}
|
849 |
|
850 |
+
if ( ! empty( $api->ratings ) && array_sum( (array) $api->ratings ) > 0 ) {
|
851 |
+
foreach ( $api->ratings as $key => $ratecount ) {
|
852 |
+
// Avoid div-by-zero.
|
853 |
+
$_rating = $api->num_ratings ? ( $ratecount / $api->num_ratings ) : 0;
|
854 |
+
$stars_label = sprintf(
|
855 |
+
__fs( ( 1 == $key ) ? 'x-star' : 'x-stars', $api->slug ),
|
856 |
+
number_format_i18n( $key )
|
857 |
+
);
|
858 |
+
?>
|
859 |
+
<div class="counter-container">
|
860 |
<span class="counter-label"><a
|
861 |
href="https://wordpress.org/support/view/plugin-reviews/<?php echo $api->slug; ?>?filter=<?php echo $key; ?>"
|
862 |
target="_blank"
|
863 |
+
title="<?php echo esc_attr( sprintf( __fs('click-to-reviews', $api->slug), $stars_label) ) ?>"><?php echo $stars_label ?></a></span>
|
864 |
+
<span class="counter-back">
|
865 |
<span class="counter-bar" style="width: <?php echo 92 * $_rating; ?>px;"></span>
|
866 |
</span>
|
867 |
+
<span class="counter-count"><?php echo number_format_i18n( $ratecount ); ?></span>
|
868 |
+
</div>
|
869 |
+
<?php
|
870 |
+
}
|
871 |
}
|
872 |
+
if ( ! empty( $api->contributors ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
873 |
?>
|
874 |
+
<h3><?php _efs( 'contributors', $api->slug ); ?></h3>
|
875 |
+
<ul class="contributors">
|
876 |
+
<?php
|
877 |
+
foreach ( (array) $api->contributors as $contrib_username => $contrib_profile ) {
|
878 |
+
if ( empty( $contrib_username ) && empty( $contrib_profile ) ) {
|
879 |
+
continue;
|
880 |
+
}
|
881 |
+
if ( empty( $contrib_username ) ) {
|
882 |
+
$contrib_username = preg_replace( '/^.+\/(.+)\/?$/', '\1', $contrib_profile );
|
883 |
+
}
|
884 |
+
$contrib_username = sanitize_user( $contrib_username );
|
885 |
+
if ( empty( $contrib_profile ) ) {
|
886 |
+
echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' />{$contrib_username}</li>";
|
887 |
+
} else {
|
888 |
+
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>";
|
889 |
+
}
|
890 |
+
}
|
891 |
+
?>
|
892 |
+
</ul>
|
893 |
+
<?php if ( ! empty( $api->donate_link ) ) { ?>
|
894 |
+
<a target="_blank"
|
895 |
+
href="<?php echo esc_url( $api->donate_link ); ?>"><?php _efs( 'donate-to-plugin', $api->slug ) ?> »</a>
|
896 |
+
<?php } ?>
|
897 |
<?php } ?>
|
|
|
898 |
</div>
|
899 |
<div id="section-holder" class="wrap">
|
900 |
+
<?php
|
901 |
+
if ( ! empty( $api->tested ) && version_compare( substr( $GLOBALS['wp_version'], 0, strlen( $api->tested ) ), $api->tested, '>' ) ) {
|
902 |
+
echo '<div class="notice notice-warning"><p>' . '<strong>' . __fs( 'warning:', $api->slug ) . '</strong> ' . __fs( 'not-tested-warning', $api->slug ) . '</p></div>';
|
903 |
+
} else if ( ! empty( $api->requires ) && version_compare( substr( $GLOBALS['wp_version'], 0, strlen( $api->requires ) ), $api->requires, '<' ) ) {
|
904 |
+
echo '<div class="notice notice-warning"><p>' . '<strong>' . __fs( 'warning:', $api->slug ) . '</strong> ' . __fs( 'not-compatible-warning', $api->slug ) . '</p></div>';
|
905 |
+
}
|
906 |
|
907 |
+
foreach ( (array) $api->sections as $section_name => $content ) {
|
908 |
+
$content = links_add_base_url( $content, 'https://wordpress.org/plugins/' . $api->slug . '/' );
|
909 |
+
$content = links_add_target( $content, '_blank' );
|
910 |
|
911 |
+
$san_section = esc_attr( $section_name );
|
912 |
|
913 |
+
$display = ( $section_name === $section ) ? 'block' : 'none';
|
914 |
|
915 |
+
if ( 'description' === $section_name &&
|
916 |
+
( ( ! $api->external && $api->wp_org_missing ) ||
|
917 |
+
( $api->external && $api->fs_missing ) )
|
918 |
+
) {
|
919 |
+
$missing_notice = array(
|
920 |
+
'type' => 'error',
|
921 |
+
'id' => md5( microtime() ),
|
922 |
+
'message' => __fs( ( $api->is_paid ? 'paid-addon-not-deployed' : 'free-addon-not-deployed' ), $api->slug ),
|
923 |
+
);
|
924 |
+
fs_require_template( 'admin-notice.php', $missing_notice );
|
925 |
+
}
|
926 |
+
echo "\t<div id='section-{$san_section}' class='section' style='display: {$display};'>\n";
|
927 |
+
echo $content;
|
928 |
+
echo "\t</div>\n";
|
929 |
}
|
930 |
+
echo "</div>\n";
|
931 |
+
echo "</div>\n";
|
932 |
+
echo "</div>\n"; // #plugin-information-scrollable
|
933 |
+
echo "<div id='$tab-footer'>\n";
|
|
|
|
|
|
|
|
|
934 |
|
935 |
+
echo $this->get_plugin_cta( $api );
|
936 |
|
937 |
+
echo "</div>\n";
|
938 |
|
939 |
+
iframe_footer();
|
940 |
+
exit;
|
941 |
+
}
|
942 |
+
}
|
freemius/includes/i18n.php
CHANGED
@@ -10,6 +10,8 @@
|
|
10 |
exit;
|
11 |
}
|
12 |
|
|
|
|
|
13 |
/**
|
14 |
* All strings can now be overridden.
|
15 |
*
|
@@ -32,503 +34,485 @@
|
|
32 |
global $fs_text;
|
33 |
|
34 |
$fs_text = array(
|
35 |
-
'account' =>
|
36 |
-
'addon' =>
|
37 |
-
'contact-us' =>
|
38 |
-
'contact-support' =>
|
39 |
-
'change-ownership' =>
|
40 |
-
'support' =>
|
41 |
-
'support-forum' =>
|
42 |
-
'add-ons' =>
|
43 |
-
'upgrade' =>
|
44 |
-
'awesome' =>
|
45 |
-
'pricing' =>
|
46 |
-
'price' =>
|
47 |
-
'unlimited-updates' =>
|
48 |
-
'downgrade' =>
|
49 |
-
'cancel-trial' =>
|
50 |
-
'free-trial' =>
|
51 |
-
'start-free-x' =>
|
52 |
-
'no-commitment-x' =>
|
53 |
-
'after-x-pay-as-little-y' =>
|
54 |
-
'details' =>
|
55 |
-
'account-details' =>
|
56 |
-
'delete' =>
|
57 |
-
'show' =>
|
58 |
-
'hide' =>
|
59 |
-
'edit' =>
|
60 |
-
'update' =>
|
61 |
-
'date' =>
|
62 |
-
'amount' =>
|
63 |
-
'invoice' =>
|
64 |
-
'billing' =>
|
65 |
-
'payments' =>
|
66 |
-
'delete-account' =>
|
67 |
-
'dismiss' =>
|
68 |
-
'plan' =>
|
69 |
-
'change-plan' =>
|
70 |
-
'download-x-version' =>
|
71 |
-
'download-x-version-now' =>
|
72 |
-
|
73 |
-
'
|
74 |
-
'
|
75 |
-
|
76 |
-
'
|
77 |
-
'
|
78 |
-
'
|
79 |
-
'
|
80 |
-
'
|
81 |
-
'
|
82 |
-
'
|
83 |
-
'
|
84 |
-
'license-
|
85 |
-
'license-
|
86 |
-
'
|
87 |
-
'
|
88 |
-
|
89 |
-
'
|
90 |
-
'
|
91 |
-
'
|
92 |
-
'
|
93 |
-
'
|
94 |
-
|
95 |
-
'few-plugin-tweaks' => __( 'We made a few tweaks to the plugin, %s', 'freemius' ),
|
96 |
-
'optin-x-now' => __( 'Opt-in to make "%s" Better!', 'freemius' ),
|
97 |
-
'error' => __( 'Error', 'freemius' ),
|
98 |
-
'failed-finding-main-path' => __( 'Freemius SDK couldn\'t find the plugin\'s main file. Please contact sdk@freemius.com with the current error.',
|
99 |
-
'freemius' ),
|
100 |
#region Account
|
101 |
|
102 |
-
'expiration' =>
|
103 |
-
'license' =>
|
104 |
-
'not-verified' =>
|
105 |
-
'verify-email' =>
|
106 |
-
'expires-in' =>
|
107 |
-
'renews-in' =>
|
108 |
-
'no-expiration' =>
|
109 |
-
'expired' =>
|
110 |
-
'cancelled' =>
|
111 |
-
'in-x' =>
|
112 |
-
'x-ago' =>
|
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 |
-
'activate'
|
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 |
-
'after-downgrade-blocking' =>
|
175 |
-
|
176 |
-
'proceed-confirmation' => __( 'Are you sure you want to proceed?', 'freemius' ),
|
177 |
#endregion Account
|
178 |
|
179 |
-
'add-ons-for-x' =>
|
180 |
-
'add-ons-missing' =>
|
181 |
-
'freemius' ),
|
182 |
#region Plugin Deactivation
|
183 |
-
'anonymous-feedback' =>
|
184 |
-
'quick-feedback' =>
|
185 |
-
'deactivation-share-reason' =>
|
186 |
-
|
187 |
-
'deactivation-modal-button-
|
188 |
-
'
|
189 |
-
'
|
190 |
-
'reason-
|
191 |
-
'reason-
|
192 |
-
'reason-
|
193 |
-
'reason-
|
194 |
-
'reason-
|
195 |
-
'reason-
|
196 |
-
'reason-
|
197 |
-
'
|
198 |
-
'reason-
|
199 |
-
|
200 |
-
'
|
201 |
-
'
|
202 |
-
'
|
203 |
-
'reason-
|
204 |
-
'reason-
|
205 |
-
|
206 |
-
'
|
207 |
-
'
|
208 |
-
'
|
209 |
-
'placeholder-
|
210 |
-
'
|
211 |
-
|
212 |
-
'
|
213 |
-
'placeholder-what-did-you-expect' => __( "What did you expect?", 'freemius' ),
|
214 |
-
'reason-didnt-work' => __( "The plugin didn't work", 'freemius' ),
|
215 |
-
'reason-dont-like-to-share-my-information' => __( "I don't like to share my information with you", 'freemius' ),
|
216 |
-
'dont-have-to-share-any-data' => __( "You might have missed it, but you don't have to share any data and can just %s the opt-in.",
|
217 |
-
'freemius' ),
|
218 |
#endregion Plugin Deactivation
|
219 |
|
220 |
#region Connect
|
221 |
-
'hey-x' =>
|
222 |
-
'thanks-x' =>
|
223 |
-
'connect-message' =>
|
224 |
-
|
225 |
-
'
|
226 |
-
|
227 |
-
'
|
228 |
-
'
|
229 |
-
'
|
230 |
-
'
|
231 |
-
|
232 |
-
'
|
233 |
-
|
234 |
-
'
|
235 |
-
'permissions-
|
236 |
-
'permissions-
|
237 |
-
'permissions-
|
238 |
-
'permissions-
|
239 |
-
|
240 |
-
'permissions-
|
241 |
-
'permissions-
|
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 |
-
'opt-in' => __( 'Opt In', 'freemius' ),
|
268 |
-
'opt-out' => __( 'Opt Out', 'freemius' ),
|
269 |
-
'opt-out-cancel' => __( 'On second thought - I want to continue helping',
|
270 |
-
'freemius' ),
|
271 |
-
'opting-out' => __( 'Opting out...', 'freemius' ),
|
272 |
-
'opting-in' => __( 'Opting in...', 'freemius' ),
|
273 |
-
'opt-out-message-appreciation' => __( 'We appreciate your help in making the %s better by letting us track some usage data.',
|
274 |
-
'freemius' ),
|
275 |
-
'opt-out-message-usage-tracking' => __( "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.",
|
276 |
-
'freemius' ),
|
277 |
-
'opt-out-message-clicking-opt-out' => __( 'By clicking "Opt Out", we will no longer be sending any data from %s to %s.',
|
278 |
-
'freemius' ),
|
279 |
#endregion Connect
|
280 |
|
281 |
#region Screenshots
|
282 |
-
'screenshots' =>
|
283 |
-
'view-full-size-x' =>
|
284 |
#endregion Screenshots
|
285 |
|
286 |
#region Debug
|
287 |
-
'freemius-debug' =>
|
288 |
-
'on' =>
|
289 |
-
'off' =>
|
290 |
-
'debugging' =>
|
291 |
-
'freemius-state' =>
|
292 |
-
'connected' =>
|
293 |
-
'blocked' =>
|
294 |
-
'api' =>
|
295 |
-
'sdk' =>
|
296 |
-
'sdk-versions' =>
|
297 |
-
|
298 |
-
'
|
299 |
-
'
|
300 |
-
'
|
301 |
-
'
|
302 |
-
|
303 |
-
'
|
304 |
-
'
|
305 |
-
'
|
306 |
-
'
|
307 |
-
'
|
308 |
-
'
|
309 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
310 |
#endregion Debug
|
311 |
|
312 |
#region Expressions
|
313 |
-
'congrats' =>
|
314 |
-
'oops' =>
|
315 |
-
'yee-haw' =>
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
'
|
320 |
-
|
321 |
-
|
322 |
-
'
|
323 |
-
'
|
324 |
-
|
325 |
-
'advance notice of something that will need attention.', 'freemius' ),
|
326 |
#endregion Expressions
|
327 |
|
328 |
#region Admin Notices
|
329 |
-
'you-have-latest' =>
|
330 |
-
'you-are-good' =>
|
331 |
-
'user-exist-message' =>
|
332 |
-
|
333 |
-
'
|
334 |
-
|
335 |
-
'
|
336 |
-
|
337 |
-
'
|
338 |
-
'
|
339 |
-
'
|
340 |
-
'
|
341 |
-
|
342 |
-
'
|
343 |
-
|
344 |
-
'
|
345 |
-
'
|
346 |
-
|
347 |
-
'
|
348 |
-
'
|
349 |
-
|
350 |
-
'
|
351 |
-
|
352 |
-
|
353 |
-
'
|
354 |
-
'
|
355 |
-
'
|
356 |
-
'
|
357 |
-
'
|
358 |
-
'
|
359 |
-
|
360 |
-
'
|
361 |
-
|
362 |
-
'
|
363 |
-
|
364 |
-
'
|
365 |
-
'
|
366 |
-
'
|
367 |
-
|
368 |
-
'
|
369 |
-
|
370 |
-
'
|
371 |
-
'
|
372 |
-
'
|
373 |
-
'
|
374 |
-
'
|
375 |
-
|
376 |
-
'
|
377 |
-
|
378 |
-
'
|
379 |
-
|
380 |
-
'
|
381 |
-
'trial-
|
382 |
-
|
383 |
-
'
|
384 |
-
|
385 |
-
'
|
386 |
-
|
387 |
-
'
|
388 |
-
|
389 |
-
'
|
390 |
-
|
391 |
-
'
|
392 |
-
'freemius' ),
|
393 |
-
'please-download-x' => __( 'Please download %s.', 'freemius' ),
|
394 |
-
'latest-x-version' => _x( 'the latest %s version here',
|
395 |
-
'%s - plan name, as the latest professional version here', 'freemius' ),
|
396 |
-
'trial-x-promotion-message' => __( 'How do you like %s so far? Test all our %s premium features with a %d-day free trial.',
|
397 |
-
'freemius' ),
|
398 |
-
'start-free-trial' => _x( 'Start free trial', 'call to action', 'freemius' ),
|
399 |
-
'starting-trial' => __( 'Starting trial', 'freemius' ),
|
400 |
-
'please-wait' => __( 'Please wait', 'freemius' ),
|
401 |
-
'trial-cancel-failure-message' => __( 'Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes.',
|
402 |
-
'freemius' ),
|
403 |
-
'trial-utilized' => __( 'You already utilized a trial before.', 'freemius' ),
|
404 |
-
'in-trial-mode' => __( 'You are already running the plugin in a trial mode.',
|
405 |
-
'freemius' ),
|
406 |
-
'trial-plan-x-not-exist' => __( 'Plan %s do not exist, therefore, can\'t start a trial.',
|
407 |
-
'freemius' ),
|
408 |
-
'plan-x-no-trial' => __( 'Plan %s does not support a trial period.', 'freemius' ),
|
409 |
-
'no-trials' => __( 'None of the plugin\'s plans supports a trial period.',
|
410 |
-
'freemius' ),
|
411 |
-
'unexpected-api-error' => __( 'Unexpected API error. Please contact the plugin\'s author with the following error.',
|
412 |
-
'freemius' ),
|
413 |
-
'no-commitment-for-x-days' => __( 'No commitment for %s days - cancel anytime!', 'freemius' ),
|
414 |
-
'license-expired-non-blocking-message' => __( '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.',
|
415 |
-
'freemius' ),
|
416 |
-
'could-not-activate-x' => __( 'Couldn\'t activate %s.', 'freemius' ),
|
417 |
-
'contact-us-with-error-message' => __( 'Please contact us with the following message:', 'freemius' ),
|
418 |
-
'plan-did-not-change-message' => __( '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.',
|
419 |
-
'freemius' ),
|
420 |
-
'contact-us-here' => __( 'Please contact us here', 'freemius' ),
|
421 |
-
'plan-did-not-change-email-message' => __( 'I have upgraded my account but when I try to Sync the License, the plan remains %s.',
|
422 |
-
'freemius' ),
|
423 |
#endregion Admin Notices
|
424 |
#region Connectivity Issues
|
425 |
-
'connectivity-test-fails-message' =>
|
426 |
-
|
427 |
-
'
|
428 |
-
|
429 |
-
'
|
430 |
-
'
|
431 |
-
'
|
432 |
-
|
433 |
-
'
|
434 |
-
|
435 |
-
'squid-
|
436 |
-
|
437 |
-
'
|
438 |
-
'
|
439 |
-
|
440 |
-
'
|
441 |
-
'
|
442 |
-
|
443 |
-
'
|
444 |
-
|
445 |
-
'
|
446 |
-
|
447 |
-
'
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
'contact-support-before-deactivation' => __( 'Sorry for the inconvenience and we are here to help if you give us a chance.',
|
452 |
-
'freemius' ),
|
453 |
-
'fix-issue-title' => __( 'Yes - I\'m giving you a chance to fix it', 'freemius' ),
|
454 |
-
'fix-issue-desc' => __( 'We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update.',
|
455 |
-
'freemius' ),
|
456 |
-
'install-previous-title' => __( 'Let\'s try your previous version', 'freemius' ),
|
457 |
-
'install-previous-desc' => __( 'Uninstall this version and install the previous one.',
|
458 |
-
'freemius' ),
|
459 |
-
'deactivate-plugin-title' => __( 'That\'s exhausting, please deactivate', 'freemius' ),
|
460 |
-
'deactivate-plugin-desc' => __( 'We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future.',
|
461 |
-
'freemius' ),
|
462 |
-
'fix-request-sent-message' => __( '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.',
|
463 |
-
'freemius' ),
|
464 |
-
'server-blocking-access' => _x( 'Your server is blocking the access to Freemius\' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s',
|
465 |
-
'%1s - plugin title, %2s - API domain', 'freemius' ),
|
466 |
-
'wrong-authentication-param-message' => __( 'It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again.',
|
467 |
-
'freemius' ),
|
468 |
#endregion Connectivity Issues
|
469 |
#region Change Owner
|
470 |
-
'change-owner-request-sent-x' =>
|
471 |
-
|
472 |
-
'change-owner-
|
473 |
-
'freemius' ),
|
474 |
-
'change-owner-request_candidate-confirmed' => __( '%s is the new owner of the account.', 'freemius' ),
|
475 |
#endregion Change Owner
|
476 |
-
'addon-x-cannot-run-without-y' =>
|
477 |
-
'addonX cannot run without pluginY'
|
478 |
-
'addon-x-cannot-run-without-parent' =>
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
'
|
483 |
-
|
484 |
-
'free-addon-not-deployed' => __( 'Add-on must be deployed to WordPress.org or Freemius.',
|
485 |
-
'freemius' ),
|
486 |
-
'paid-addon-not-deployed' => __( 'Paid add-on must be deployed to Freemius.', 'freemius' ),
|
487 |
#--------------------------------------------------------------------------------
|
488 |
#region Add-On Licensing
|
489 |
#--------------------------------------------------------------------------------
|
490 |
-
'addon-no-license-message' =>
|
491 |
-
|
492 |
-
'addon-trial-cancelled-message' => __( '%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.',
|
493 |
-
'freemius' ),
|
494 |
#endregion
|
495 |
#--------------------------------------------------------------------------------
|
496 |
#region Billing Cycles
|
497 |
#--------------------------------------------------------------------------------
|
498 |
-
'monthly' =>
|
499 |
-
'mo' =>
|
500 |
-
'annual' =>
|
501 |
-
'annually' =>
|
502 |
-
'once' =>
|
503 |
-
'year' =>
|
504 |
-
'lifetime' =>
|
505 |
-
'best' =>
|
506 |
-
'billed-x' =>
|
507 |
-
'save-x' =>
|
508 |
#endregion Billing Cycles
|
509 |
-
'view-details' =>
|
510 |
#--------------------------------------------------------------------------------
|
511 |
#region Trial
|
512 |
#--------------------------------------------------------------------------------
|
513 |
-
'approve-start-trial' =>
|
514 |
/* translators: %1$s: Number of trial days; %2$s: Plan name; */
|
515 |
-
'start-trial-prompt-header' =>
|
516 |
/* translators: %s: Link to freemius.com */
|
517 |
-
'start-trial-prompt-message' =>
|
518 |
|
519 |
#endregion
|
520 |
#--------------------------------------------------------------------------------
|
521 |
#region Billing Details
|
522 |
#--------------------------------------------------------------------------------
|
523 |
-
'business-name' =>
|
524 |
-
'tax-vat-id' =>
|
525 |
-
'address-line-n' =>
|
526 |
-
'country' =>
|
527 |
-
'select-country' =>
|
528 |
-
'city' =>
|
529 |
-
'town' =>
|
530 |
-
'state' =>
|
531 |
-
'province' =>
|
532 |
-
'zip-postal-code' =>
|
533 |
#endregion
|
534 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
exit;
|
11 |
}
|
12 |
|
13 |
+
require_once dirname( __FILE__ ) . '/l10n.php';
|
14 |
+
|
15 |
/**
|
16 |
* All strings can now be overridden.
|
17 |
*
|
34 |
global $fs_text;
|
35 |
|
36 |
$fs_text = array(
|
37 |
+
'account' => _fs_text( 'Account' ),
|
38 |
+
'addon' => _fs_text( 'Add On' ),
|
39 |
+
'contact-us' => _fs_text( 'Contact Us' ),
|
40 |
+
'contact-support' => _fs_text( 'Contact Support' ),
|
41 |
+
'change-ownership' => _fs_text( 'Change Ownership' ),
|
42 |
+
'support' => _fs_text( 'Support' ),
|
43 |
+
'support-forum' => _fs_text( 'Support Forum' ),
|
44 |
+
'add-ons' => _fs_text( 'Add Ons' ),
|
45 |
+
'upgrade' => _fs_x( 'Upgrade', 'verb' ),
|
46 |
+
'awesome' => _fs_text( 'Awesome' ),
|
47 |
+
'pricing' => _fs_x( 'Pricing', 'noun' ),
|
48 |
+
'price' => _fs_x( 'Price', 'noun' ),
|
49 |
+
'unlimited-updates' => _fs_text( 'Unlimited Updates' ),
|
50 |
+
'downgrade' => _fs_x( 'Downgrade', 'verb' ),
|
51 |
+
'cancel-trial' => _fs_text( 'Cancel Trial' ),
|
52 |
+
'free-trial' => _fs_text( 'Free Trial' ),
|
53 |
+
'start-free-x' => _fs_text( 'Start my free %s' ),
|
54 |
+
'no-commitment-x' => _fs_text( 'No commitment for %s - cancel anytime' ),
|
55 |
+
'after-x-pay-as-little-y' => _fs_text( 'After your free %s, pay as little as %s' ),
|
56 |
+
'details' => _fs_text( 'Details' ),
|
57 |
+
'account-details' => _fs_text( 'Account Details' ),
|
58 |
+
'delete' => _fs_x( 'Delete', 'verb' ),
|
59 |
+
'show' => _fs_x( 'Show', 'verb' ),
|
60 |
+
'hide' => _fs_x( 'Hide', 'verb' ),
|
61 |
+
'edit' => _fs_x( 'Edit', 'verb' ),
|
62 |
+
'update' => _fs_x( 'Update', 'verb' ),
|
63 |
+
'date' => _fs_text( 'Date' ),
|
64 |
+
'amount' => _fs_text( 'Amount' ),
|
65 |
+
'invoice' => _fs_text( 'Invoice' ),
|
66 |
+
'billing' => _fs_text( 'Billing' ),
|
67 |
+
'payments' => _fs_text( 'Payments' ),
|
68 |
+
'delete-account' => _fs_text( 'Delete Account' ),
|
69 |
+
'dismiss' => _fs_x( 'Dismiss', 'as close a window' ),
|
70 |
+
'plan' => _fs_x( 'Plan', 'as product pricing plan' ),
|
71 |
+
'change-plan' => _fs_text( 'Change Plan' ),
|
72 |
+
'download-x-version' => _fs_x( 'Download %s Version', 'as download professional version' ),
|
73 |
+
'download-x-version-now' => _fs_x( 'Download %s version now', 'as download professional version now' ),
|
74 |
+
'download-latest' => _fs_x( 'Download Latest', 'as download latest version' ),
|
75 |
+
'you-have-x-license' => _fs_x( 'You have a %s license.', 'E.g. you have a professional license.' ),
|
76 |
+
'new' => _fs_text( 'New' ),
|
77 |
+
'free' => _fs_text( 'Free' ),
|
78 |
+
'trial' => _fs_x( 'Trial', 'as trial plan' ),
|
79 |
+
'start-trial' => _fs_x( 'Start Trial', 'as starting a trial plan' ),
|
80 |
+
'purchase' => _fs_x( 'Purchase', 'verb' ),
|
81 |
+
'purchase-license' => _fs_text( 'Purchase License' ),
|
82 |
+
'buy' => _fs_x( 'Buy', 'verb' ),
|
83 |
+
'buy-license' => _fs_text( 'Buy License' ),
|
84 |
+
'license-single-site' => _fs_text( 'Single Site License' ),
|
85 |
+
'license-unlimited' => _fs_text( 'Unlimited Licenses' ),
|
86 |
+
'license-x-sites' => _fs_text( 'Up to %s Sites' ),
|
87 |
+
'renew-license-now' => _fs_text( '%sRenew your license now%s to access version %s features and support.' ),
|
88 |
+
'ask-for-upgrade-email-address' => _fs_text( "Enter the email address you've used for the upgrade below and we will resend you the license key." ),
|
89 |
+
'x-plan' => _fs_x( '%s Plan', 'e.g. Professional Plan' ),
|
90 |
+
'you-are-step-away' => _fs_text( 'You are just one step away - %s' ),
|
91 |
+
'activate-x-now' => _fs_x( 'Complete "%s" Activation Now',
|
92 |
+
'%s - plugin name. As complete "Jetpack" activation now' ),
|
93 |
+
'few-plugin-tweaks' => _fs_text( 'We made a few tweaks to the plugin, %s' ),
|
94 |
+
'optin-x-now' => _fs_text( 'Opt-in to make "%s" Better!' ),
|
95 |
+
'error' => _fs_text( 'Error' ),
|
96 |
+
'failed-finding-main-path' => _fs_text( 'Freemius SDK couldn\'t find the plugin\'s main file. Please contact sdk@freemius.com with the current error.' ),
|
|
|
|
|
|
|
|
|
|
|
97 |
#region Account
|
98 |
|
99 |
+
'expiration' => _fs_x( 'Expiration', 'as expiration date' ),
|
100 |
+
'license' => _fs_x( 'License', 'as software license' ),
|
101 |
+
'not-verified' => _fs_text( 'not verified' ),
|
102 |
+
'verify-email' => _fs_text( 'Verify Email' ),
|
103 |
+
'expires-in' => _fs_x( 'Expires in %s', 'e.g. expires in 2 months' ),
|
104 |
+
'renews-in' => _fs_x( 'Auto renews in %s', 'e.g. auto renews in 2 months' ),
|
105 |
+
'no-expiration' => _fs_text( 'No expiration' ),
|
106 |
+
'expired' => _fs_text( 'Expired' ),
|
107 |
+
'cancelled' => _fs_text( 'Cancelled' ),
|
108 |
+
'in-x' => _fs_x( 'In %s', 'e.g. In 2 hours' ),
|
109 |
+
'x-ago' => _fs_x( '%s ago', 'e.g. 2 min ago' ),
|
110 |
+
/* translators: %s: Version number (e.g. 4.6 or higher) */
|
111 |
+
'x-or-higher' => _fs_text( '%s or higher' ),
|
112 |
+
'version' => _fs_x( 'Version', 'as plugin version' ),
|
113 |
+
'name' => _fs_text( 'Name' ),
|
114 |
+
'email' => _fs_text( 'Email' ),
|
115 |
+
'email-address' => _fs_text( 'Email address' ),
|
116 |
+
'verified' => _fs_text( 'Verified' ),
|
117 |
+
'module' => _fs_text( 'Module' ),
|
118 |
+
'module-type' => _fs_text( 'Module Type' ),
|
119 |
+
'plugin' => _fs_text( 'Plugin' ),
|
120 |
+
'plugins' => _fs_text( 'Plugins' ),
|
121 |
+
'theme' => _fs_text( 'Theme' ),
|
122 |
+
'themes' => _fs_text( 'Themes' ),
|
123 |
+
'path' => _fs_x( 'Path', 'as file/folder path' ),
|
124 |
+
'title' => _fs_text( 'Title' ),
|
125 |
+
'free-version' => _fs_text( 'Free version' ),
|
126 |
+
'premium-version' => _fs_text( 'Premium version' ),
|
127 |
+
'slug' => _fs_x( 'Slug', 'as WP plugin slug' ),
|
128 |
+
'id' => _fs_text( 'ID' ),
|
129 |
+
'users' => _fs_text( 'Users' ),
|
130 |
+
'plugin-installs' => _fs_text( 'Plugin Installs' ),
|
131 |
+
'module-installs' => _fs_text( '%s Installs' ),
|
132 |
+
'sites' => _fs_x( 'Sites', 'like websites' ),
|
133 |
+
'user-id' => _fs_text( 'User ID' ),
|
134 |
+
'site-id' => _fs_text( 'Site ID' ),
|
135 |
+
'public-key' => _fs_text( 'Public Key' ),
|
136 |
+
'secret-key' => _fs_text( 'Secret Key' ),
|
137 |
+
'no-secret' => _fs_x( 'No Secret', 'as secret encryption key missing' ),
|
138 |
+
'no-id' => _fs_text( 'No ID' ),
|
139 |
+
'sync-license' => _fs_x( 'Sync License', 'as synchronize license' ),
|
140 |
+
'sync' => _fs_x( 'Sync', 'as synchronize' ),
|
141 |
+
'activate-license' => _fs_text( 'Activate License' ),
|
142 |
+
'activate-free-version' => _fs_text( 'Activate Free Version' ),
|
143 |
+
'activate-license-message' => _fs_text( 'Please enter the license key that you received in the email right after the purchase:' ),
|
144 |
+
'activating-license' => _fs_text( 'Activating license...' ),
|
145 |
+
'change-license' => _fs_text( 'Change License' ),
|
146 |
+
'update-license' => _fs_text( 'Update License' ),
|
147 |
+
'deactivate-license' => _fs_text( 'Deactivate License' ),
|
148 |
+
'activate' => _fs_text( 'Activate' ),
|
149 |
+
'deactivate' => _fs_text( 'Deactivate' ),
|
150 |
+
'skip-deactivate' => _fs_text( 'Skip & Deactivate' ),
|
151 |
+
'skip-and-x' => _fs_text( 'Skip & %s' ),
|
152 |
+
'no-deactivate' => _fs_text( 'No - just deactivate' ),
|
153 |
+
'yes-do-your-thing' => _fs_text( 'Yes - do your thing' ),
|
154 |
+
'active' => _fs_x( 'Active', 'active mode' ),
|
155 |
+
'is-active' => _fs_x( 'Is Active', 'is active mode?' ),
|
156 |
+
'install-now' => _fs_text( 'Install Now' ),
|
157 |
+
'install-update-now' => _fs_text( 'Install Update Now' ),
|
158 |
+
'more-information-about-x' => _fs_text( 'More information about %s' ),
|
159 |
+
'localhost' => _fs_text( 'Localhost' ),
|
160 |
+
'activate-x-plan' => _fs_x( 'Activate %s Plan', 'as activate Professional plan' ),
|
161 |
+
'x-left' => _fs_x( '%s left', 'as 5 licenses left' ),
|
162 |
+
'last-license' => _fs_text( 'Last license' ),
|
163 |
+
'what-is-your-x' => _fs_text( 'What is your %s?' ),
|
164 |
+
'activate-this-addon' => _fs_text( 'Activate this add-on' ),
|
165 |
+
'deactivate-license-confirm' => _fs_text( 'Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?' ),
|
166 |
+
'delete-account-x-confirm' => _fs_text( '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?' ),
|
167 |
+
'delete-account-confirm' => _fs_text( 'Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?' ),
|
168 |
+
'downgrade-x-confirm' => _fs_text( 'Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s.' ),
|
169 |
+
'cancel-trial-confirm' => _fs_text( 'Cancelling the trial will immediately block access to all premium features. Are you sure?' ),
|
170 |
+
'after-downgrade-non-blocking' => _fs_text( 'You can still enjoy all %s features but you will not have access to plugin updates and support.' ),
|
171 |
+
'after-downgrade-blocking' => _fs_text( 'Once your license expires you can still use the Free version but you will NOT have access to the %s features.' ),
|
172 |
+
'proceed-confirmation' => _fs_text( 'Are you sure you want to proceed?' ),
|
|
|
173 |
#endregion Account
|
174 |
|
175 |
+
'add-ons-for-x' => _fs_text( 'Add Ons for %s' ),
|
176 |
+
'add-ons-missing' => _fs_text( 'We could\'nt load the add-ons list. It\'s probably an issue on our side, please try to come back in few minutes.' ),
|
|
|
177 |
#region Plugin Deactivation
|
178 |
+
'anonymous-feedback' => _fs_text( 'Anonymous feedback' ),
|
179 |
+
'quick-feedback' => _fs_text( 'Quick feedback' ),
|
180 |
+
'deactivation-share-reason' => _fs_text( 'If you have a moment, please let us know why you are deactivating' ),
|
181 |
+
'deactivation-modal-button-confirm' => _fs_text( 'Yes - Deactivate' ),
|
182 |
+
'deactivation-modal-button-submit' => _fs_text( 'Submit & Deactivate' ),
|
183 |
+
'cancel' => _fs_text( 'Cancel' ),
|
184 |
+
'reason-no-longer-needed' => _fs_text( 'I no longer need the plugin' ),
|
185 |
+
'reason-found-a-better-plugin' => _fs_text( 'I found a better plugin' ),
|
186 |
+
'reason-needed-for-a-short-period' => _fs_text( 'I only needed the plugin for a short period' ),
|
187 |
+
'reason-broke-my-site' => _fs_text( 'The plugin broke my site' ),
|
188 |
+
'reason-suddenly-stopped-working' => _fs_text( 'The plugin suddenly stopped working' ),
|
189 |
+
'reason-cant-pay-anymore' => _fs_text( "I can't pay for it anymore" ),
|
190 |
+
'reason-temporary-deactivation' => _fs_text( "It's a temporary deactivation. I'm just debugging an issue." ),
|
191 |
+
'reason-other' => _fs_x( 'Other',
|
192 |
+
'the text of the "other" reason for deactivating the plugin that is shown in the modal box.' ),
|
193 |
+
'ask-for-reason-message' => _fs_text( 'Kindly tell us the reason so we can improve.' ),
|
194 |
+
'placeholder-plugin-name' => _fs_text( "What's the plugin's name?" ),
|
195 |
+
'placeholder-comfortable-price' => _fs_text( 'What price would you feel comfortable paying?' ),
|
196 |
+
'reason-couldnt-make-it-work' => _fs_text( "I couldn't understand how to make it work" ),
|
197 |
+
'reason-great-but-need-specific-feature' => _fs_text( "The plugin is great, but I need specific feature that you don't support" ),
|
198 |
+
'reason-not-working' => _fs_text( 'The plugin is not working' ),
|
199 |
+
'reason-not-what-i-was-looking-for' => _fs_text( "It's not what I was looking for" ),
|
200 |
+
'reason-didnt-work-as-expected' => _fs_text( "The plugin didn't work as expected" ),
|
201 |
+
'placeholder-feature' => _fs_text( 'What feature?' ),
|
202 |
+
'placeholder-share-what-didnt-work' => _fs_text( "Kindly share what didn't work so we can fix it for future users..." ),
|
203 |
+
'placeholder-what-youve-been-looking-for' => _fs_text( "What you've been looking for?" ),
|
204 |
+
'placeholder-what-did-you-expect' => _fs_text( "What did you expect?" ),
|
205 |
+
'reason-didnt-work' => _fs_text( "The plugin didn't work" ),
|
206 |
+
'reason-dont-like-to-share-my-information' => _fs_text( "I don't like to share my information with you" ),
|
207 |
+
'dont-have-to-share-any-data' => _fs_text( "You might have missed it, but you don't have to share any data and can just %s the opt-in." ),
|
|
|
|
|
|
|
|
|
|
|
208 |
#endregion Plugin Deactivation
|
209 |
|
210 |
#region Connect
|
211 |
+
'hey-x' => _fs_x( 'Hey %s,', 'greeting' ),
|
212 |
+
'thanks-x' => _fs_x( 'Thanks %s!', 'a greeting. E.g. Thanks John!' ),
|
213 |
+
'connect-message' => _fs_text( 'Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s.' ),
|
214 |
+
'connect-message_on-update' => _fs_text( 'Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that\'s okay! %1$s will still work just fine.' ),
|
215 |
+
'pending-activation-message' => _fs_text( '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.' ),
|
216 |
+
'complete-the-install' => _fs_text( 'complete the install' ),
|
217 |
+
'start-the-trial' => _fs_text( 'start the trial' ),
|
218 |
+
'thanks-for-purchasing' => _fs_text( 'Thanks for purchasing %s! To get started, please enter your license key:' ),
|
219 |
+
'license-sync-disclaimer' => _fs_text( 'The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license.' ),
|
220 |
+
'what-permissions' => _fs_text( 'What permissions are being granted?' ),
|
221 |
+
'permissions-profile' => _fs_text( 'Your Profile Overview' ),
|
222 |
+
'permissions-profile_desc' => _fs_text( 'Name and email address' ),
|
223 |
+
'permissions-site' => _fs_text( 'Your Site Overview' ),
|
224 |
+
'permissions-site_desc' => _fs_text( 'Site URL, WP version, PHP info, plugins & themes' ),
|
225 |
+
'permissions-events' => _fs_text( 'Current Plugin Events' ),
|
226 |
+
'permissions-events_desc' => _fs_text( 'Activation, deactivation and uninstall' ),
|
227 |
+
'permissions-plugins_themes' => _fs_text( 'Plugins & Themes' ),
|
228 |
+
'permissions-plugins_themes_desc' => _fs_text( 'Titles, versions and state.' ),
|
229 |
+
'permissions-admin-notices' => _fs_text( 'Admin Notices' ),
|
230 |
+
'permissions-newsletter' => _fs_text( 'Newsletter' ),
|
231 |
+
'permissions-newsletter_desc' => _fs_text( 'Updates, announcements, marketing, no spam' ),
|
232 |
+
'privacy-policy' => _fs_text( 'Privacy Policy' ),
|
233 |
+
'tos' => _fs_text( 'Terms of Service' ),
|
234 |
+
'activating' => _fs_x( 'Activating', 'as activating plugin' ),
|
235 |
+
'sending-email' => _fs_x( 'Sending email', 'as in the process of sending an email' ),
|
236 |
+
'opt-in-connect' => _fs_x( 'Allow & Continue', 'button label' ),
|
237 |
+
'agree-activate-license' => _fs_x( 'Agree & Activate License', 'button label' ),
|
238 |
+
'skip' => _fs_x( 'Skip', 'verb' ),
|
239 |
+
'click-here-to-use-plugin-anonymously' => _fs_text( 'Click here to use the plugin anonymously' ),
|
240 |
+
'resend-activation-email' => _fs_text( 'Re-send activation email' ),
|
241 |
+
'license-key' => _fs_text( 'License key' ),
|
242 |
+
'send-license-key' => _fs_text( 'Send License Key' ),
|
243 |
+
'sending-license-key' => _fs_text( 'Sending license key' ),
|
244 |
+
'have-license-key' => _fs_text( 'Have a license key?' ),
|
245 |
+
'dont-have-license-key' => _fs_text( 'Don\'t have a license key?' ),
|
246 |
+
'cant-find-license-key' => _fs_text( "Can't find your license key?" ),
|
247 |
+
'email-not-found' => _fs_text( "We couldn't find your email address in the system, are you sure it's the right address?" ),
|
248 |
+
'no-active-licenses' => _fs_text( "We can't see any active licenses associated with that email address, are you sure it's the right address?" ),
|
249 |
+
'opt-in' => _fs_text( 'Opt In' ),
|
250 |
+
'opt-out' => _fs_text( 'Opt Out' ),
|
251 |
+
'opt-out-cancel' => _fs_text( 'On second thought - I want to continue helping' ),
|
252 |
+
'opting-out' => _fs_text( 'Opting out...' ),
|
253 |
+
'opting-in' => _fs_text( 'Opting in...' ),
|
254 |
+
'opt-out-message-appreciation' => _fs_text( 'We appreciate your help in making the %s better by letting us track some usage data.' ),
|
255 |
+
'opt-out-message-usage-tracking' => _fs_text( "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." ),
|
256 |
+
'opt-out-message-clicking-opt-out' => _fs_text( 'By clicking "Opt Out", we will no longer be sending any data from %s to %s.' ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
257 |
#endregion Connect
|
258 |
|
259 |
#region Screenshots
|
260 |
+
'screenshots' => _fs_text( 'Screenshots' ),
|
261 |
+
'view-full-size-x' => _fs_text( 'Click to view full-size screenshot %d' ),
|
262 |
#endregion Screenshots
|
263 |
|
264 |
#region Debug
|
265 |
+
'freemius-debug' => _fs_text( 'Freemius Debug' ),
|
266 |
+
'on' => _fs_x( 'On', 'as turned on' ),
|
267 |
+
'off' => _fs_x( 'Off', 'as turned off' ),
|
268 |
+
'debugging' => _fs_x( 'Debugging', 'as code debugging' ),
|
269 |
+
'freemius-state' => _fs_text( 'Freemius State' ),
|
270 |
+
'connected' => _fs_x( 'Connected', 'as connection was successful' ),
|
271 |
+
'blocked' => _fs_x( 'Blocked', 'as connection blocked' ),
|
272 |
+
'api' => _fs_x( 'API', 'as application program interface' ),
|
273 |
+
'sdk' => _fs_x( 'SDK', 'as software development kit versions' ),
|
274 |
+
'sdk-versions' => _fs_x( 'SDK Versions', 'as software development kit versions' ),
|
275 |
+
'plugin-path' => _fs_x( 'Plugin Path', 'as plugin folder path' ),
|
276 |
+
'sdk-path' => _fs_x( 'SDK Path', 'as sdk path' ),
|
277 |
+
'addons-of-x' => _fs_text( 'Add Ons of Plugin %s' ),
|
278 |
+
'delete-all-confirm' => _fs_text( 'Are you sure you want to delete all Freemius data?' ),
|
279 |
+
'actions' => _fs_text( 'Actions' ),
|
280 |
+
'delete-all-accounts' => _fs_text( 'Delete All Accounts' ),
|
281 |
+
'start-fresh' => _fs_text( 'Start Fresh' ),
|
282 |
+
'clear-api-cache' => _fs_text( 'Clear API Cache' ),
|
283 |
+
'sync-data-from-server' => _fs_text( 'Sync Data From Server' ),
|
284 |
+
'scheduled-crons' => _fs_text( 'Scheduled Crons' ),
|
285 |
+
'cron-type' => _fs_text( 'Cron Type' ),
|
286 |
+
'plugins-themes-sync' => _fs_text( 'Plugins & Themes Sync' ),
|
287 |
+
'licenses' => _fs_text( 'Licenses' ),
|
288 |
+
'debug-log' => _fs_text( 'Debug Log' ),
|
289 |
+
'all' => _fs_text( 'All' ),
|
290 |
+
'file' => _fs_text( 'File' ),
|
291 |
+
'function' => _fs_text( 'Function' ),
|
292 |
+
'process-id' => _fs_text( 'Process ID' ),
|
293 |
+
'logger' => _fs_text( 'Logger' ),
|
294 |
+
'message' => _fs_text( 'Message' ),
|
295 |
+
'download' => _fs_text( 'Download' ),
|
296 |
+
'filter' => _fs_text( 'Filter' ),
|
297 |
+
'type' => _fs_text( 'Type' ),
|
298 |
+
'all-types' => _fs_text( 'All Types' ),
|
299 |
+
'all-requests' => _fs_text( 'All Requests' ),
|
300 |
#endregion Debug
|
301 |
|
302 |
#region Expressions
|
303 |
+
'congrats' => _fs_x( 'Congrats', 'as congratulations' ),
|
304 |
+
'oops' => _fs_x( 'Oops', 'exclamation' ),
|
305 |
+
'yee-haw' => _fs_x( 'Yee-haw', 'interjection expressing joy or exuberance' ),
|
306 |
+
'woot' => _fs_x( 'W00t',
|
307 |
+
'(especially in electronic communication) used to express elation, enthusiasm, or triumph.' ),
|
308 |
+
'right-on' => _fs_x( 'Right on', 'a positive response' ),
|
309 |
+
'hmm' => _fs_x( 'Hmm',
|
310 |
+
'something somebody says when they are thinking about what you have just said. ' ),
|
311 |
+
'ok' => _fs_text( 'O.K' ),
|
312 |
+
'hey' => _fs_x( 'Hey', 'exclamation' ),
|
313 |
+
'heads-up' => _fs_x( 'Heads up',
|
314 |
+
'advance notice of something that will need attention.' ),
|
|
|
315 |
#endregion Expressions
|
316 |
|
317 |
#region Admin Notices
|
318 |
+
'you-have-latest' => _fs_text( 'Seems like you got the latest release.' ),
|
319 |
+
'you-are-good' => _fs_text( 'You are all good!' ),
|
320 |
+
'user-exist-message' => _fs_text( 'Sorry, we could not complete the email update. Another user with the same email is already registered.' ),
|
321 |
+
'user-exist-message_ownership' => _fs_text( 'If you would like to give up the ownership of the plugin\'s account to %s click the Change Ownership button.' ),
|
322 |
+
'email-updated-message' => _fs_text( 'Your email was successfully updated. You should receive an email with confirmation instructions in few moments.' ),
|
323 |
+
'name-updated-message' => _fs_text( 'Your name was successfully updated.' ),
|
324 |
+
'x-updated' => _fs_text( 'You have successfully updated your %s.' ),
|
325 |
+
'name-update-failed-message' => _fs_text( 'Please provide your full name.' ),
|
326 |
+
'verification-email-sent-message' => _fs_text( 'Verification mail was just sent to %s. If you can\'t find it after 5 min, please check your spam box.' ),
|
327 |
+
'addons-info-external-message' => _fs_text( 'Just letting you know that the add-ons information of %s is being pulled from an external server.' ),
|
328 |
+
'no-cc-required' => _fs_text( 'No credit card required' ),
|
329 |
+
'premium-activated-message' => _fs_text( 'Premium plugin version was successfully activated.' ),
|
330 |
+
'successful-version-upgrade-message' => _fs_text( 'The upgrade of %s was successfully completed.' ),
|
331 |
+
'activation-with-plan-x-message' => _fs_text( 'Your account was successfully activated with the %s plan.' ),
|
332 |
+
'download-latest-x-version-now' => _fs_text( 'Download the latest %s version now' ),
|
333 |
+
'follow-steps-to-complete-upgrade' => _fs_text( 'Please follow these steps to complete the upgrade' ),
|
334 |
+
'download-latest-x-version' => _fs_text( 'Download the latest %s version' ),
|
335 |
+
'download-latest-version' => _fs_text( 'Download the latest version' ),
|
336 |
+
'deactivate-free-version' => _fs_text( 'Deactivate the free version' ),
|
337 |
+
'upload-and-activate' => _fs_text( 'Upload and activate the downloaded version' ),
|
338 |
+
'howto-upload-activate' => _fs_text( 'How to upload and activate?' ),
|
339 |
+
'addon-successfully-purchased-message' => _fs_x( '%s Add-on was successfully purchased.',
|
340 |
+
'%s - product name, e.g. Facebook add-on was successfully...' ),
|
341 |
+
'addon-successfully-upgraded-message' => _fs_text( 'Your %s Add-on plan was successfully upgraded.' ),
|
342 |
+
'email-verified-message' => _fs_text( 'Your email has been successfully verified - you are AWESOME!' ),
|
343 |
+
'plan-upgraded-message' => _fs_text( 'Your plan was successfully upgraded.' ),
|
344 |
+
'plan-changed-to-x-message' => _fs_text( 'Your plan was successfully changed to %s.' ),
|
345 |
+
'license-expired-blocking-message' => _fs_text( 'Your license has expired. You can still continue using the free plugin forever.' ),
|
346 |
+
'license-cancelled' => _fs_text( 'Your license has been cancelled. If you think it\'s a mistake, please contact support.' ),
|
347 |
+
'trial-started-message' => _fs_text( 'Your trial has been successfully started.' ),
|
348 |
+
'license-activated-message' => _fs_text( 'Your license was successfully activated.' ),
|
349 |
+
'no-active-license-message' => _fs_text( 'It looks like your site currently doesn\'t have an active license.' ),
|
350 |
+
'license-deactivation-message' => _fs_text( 'Your license was successfully deactivated, you are back to the %s plan.' ),
|
351 |
+
'license-deactivation-failed-message' => _fs_text( 'It looks like the license deactivation failed.' ),
|
352 |
+
'license-activation-failed-message' => _fs_text( 'It looks like the license could not be activated.' ),
|
353 |
+
'server-error-message' => _fs_text( 'Error received from the server:' ),
|
354 |
+
'trial-expired-message' => _fs_text( 'Your trial has expired. You can still continue using all our free features.' ),
|
355 |
+
'plan-x-downgraded-message' => _fs_text( 'Your plan was successfully downgraded. Your %s plan license will expire in %s.' ),
|
356 |
+
'plan-downgraded-failure-message' => _fs_text( 'Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes.' ),
|
357 |
+
'trial-cancel-no-trial-message' => _fs_text( 'It looks like you are not in trial mode anymore so there\'s nothing to cancel :)' ),
|
358 |
+
'trial-cancel-message' => _fs_text( 'Your %s free trial was successfully cancelled.' ),
|
359 |
+
'version-x-released' => _fs_x( 'Version %s was released.', '%s - numeric version number' ),
|
360 |
+
'please-download-x' => _fs_text( 'Please download %s.' ),
|
361 |
+
'latest-x-version' => _fs_x( 'the latest %s version here',
|
362 |
+
'%s - plan name, as the latest professional version here' ),
|
363 |
+
'trial-x-promotion-message' => _fs_text( 'How do you like %s so far? Test all our %s premium features with a %d-day free trial.' ),
|
364 |
+
'start-free-trial' => _fs_x( 'Start free trial', 'call to action' ),
|
365 |
+
'starting-trial' => _fs_text( 'Starting trial' ),
|
366 |
+
'please-wait' => _fs_text( 'Please wait' ),
|
367 |
+
'trial-cancel-failure-message' => _fs_text( 'Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes.' ),
|
368 |
+
'trial-utilized' => _fs_text( 'You already utilized a trial before.' ),
|
369 |
+
'in-trial-mode' => _fs_text( 'You are already running the plugin in a trial mode.' ),
|
370 |
+
'trial-plan-x-not-exist' => _fs_text( 'Plan %s do not exist, therefore, can\'t start a trial.' ),
|
371 |
+
'plan-x-no-trial' => _fs_text( 'Plan %s does not support a trial period.' ),
|
372 |
+
'no-trials' => _fs_text( 'None of the plugin\'s plans supports a trial period.' ),
|
373 |
+
'unexpected-api-error' => _fs_text( 'Unexpected API error. Please contact the plugin\'s author with the following error.' ),
|
374 |
+
'no-commitment-for-x-days' => _fs_text( 'No commitment for %s days - cancel anytime!' ),
|
375 |
+
'license-expired-non-blocking-message' => _fs_text( '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.' ),
|
376 |
+
'could-not-activate-x' => _fs_text( 'Couldn\'t activate %s.' ),
|
377 |
+
'contact-us-with-error-message' => _fs_text( 'Please contact us with the following message:' ),
|
378 |
+
'plan-did-not-change-message' => _fs_text( '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.' ),
|
379 |
+
'contact-us-here' => _fs_text( 'Please contact us here' ),
|
380 |
+
'plan-did-not-change-email-message' => _fs_text( 'I have upgraded my account but when I try to Sync the License, the plan remains %s.' ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
381 |
#endregion Admin Notices
|
382 |
#region Connectivity Issues
|
383 |
+
'connectivity-test-fails-message' => _fs_text( 'From unknown reason, the API connectivity test failed.' ),
|
384 |
+
'connectivity-test-maybe-temporary' => _fs_text( 'It\'s probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?' ),
|
385 |
+
'curl-missing-message' => _fs_text( 'We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server.' ),
|
386 |
+
'cloudflare-blocks-connection-message' => _fs_text( 'From unknown reason, CloudFlare, the firewall we use, blocks the connection.' ),
|
387 |
+
'x-requires-access-to-api' => _fs_x( '%s requires an access to our API.',
|
388 |
+
'as pluginX requires an access to our API' ),
|
389 |
+
'squid-blocks-connection-message' => _fs_text( 'It looks like your server is using Squid ACL (access control lists), which blocks the connection.' ),
|
390 |
+
'squid-no-clue-title' => _fs_text( 'I don\'t know what is Squid or ACL, help me!' ),
|
391 |
+
'squid-no-clue-desc' => _fs_text( '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.' ),
|
392 |
+
'sysadmin-title' => _fs_text( 'I\'m a system administrator' ),
|
393 |
+
'squid-sysadmin-desc' => _fs_text( 'Great, please whitelist the following domains: %s. Once you are done, deactivate the plugin and activate it again.' ),
|
394 |
+
'curl-missing-no-clue-title' => _fs_text( 'I don\'t know what is cURL or how to install it, help me!' ),
|
395 |
+
'curl-missing-no-clue-desc' => _fs_text( '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.' ),
|
396 |
+
'curl-missing-sysadmin-desc' => _fs_text( 'Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use \'phpinfo()\'. Once activated, deactivate the plugin and reactivate it back again.' ),
|
397 |
+
'happy-to-resolve-issue-asap' => _fs_text( 'We are sure it\'s an issue on our side and more than happy to resolve it for you ASAP if you give us a chance.' ),
|
398 |
+
'contact-support-before-deactivation' => _fs_text( 'Sorry for the inconvenience and we are here to help if you give us a chance.' ),
|
399 |
+
'fix-issue-title' => _fs_text( 'Yes - I\'m giving you a chance to fix it' ),
|
400 |
+
'fix-issue-desc' => _fs_text( 'We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update.' ),
|
401 |
+
'install-previous-title' => _fs_text( 'Let\'s try your previous version' ),
|
402 |
+
'install-previous-desc' => _fs_text( 'Uninstall this version and install the previous one.' ),
|
403 |
+
'deactivate-plugin-title' => _fs_text( 'That\'s exhausting, please deactivate' ),
|
404 |
+
'deactivate-plugin-desc' => _fs_text( 'We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future.' ),
|
405 |
+
'fix-request-sent-message' => _fs_text( '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.' ),
|
406 |
+
'server-blocking-access' => _fs_x( 'Your server is blocking the access to Freemius\' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s',
|
407 |
+
'%1s - plugin title, %2s - API domain' ),
|
408 |
+
'wrong-authentication-param-message' => _fs_text( 'It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again.' ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
409 |
#endregion Connectivity Issues
|
410 |
#region Change Owner
|
411 |
+
'change-owner-request-sent-x' => _fs_text( '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.' ),
|
412 |
+
'change-owner-request_owner-confirmed' => _fs_text( 'Thanks for confirming the ownership change. An email was just sent to %s for final approval.' ),
|
413 |
+
'change-owner-request_candidate-confirmed' => _fs_text( '%s is the new owner of the account.' ),
|
|
|
|
|
414 |
#endregion Change Owner
|
415 |
+
'addon-x-cannot-run-without-y' => _fs_x( '%s cannot run without %s.',
|
416 |
+
'addonX cannot run without pluginY' ),
|
417 |
+
'addon-x-cannot-run-without-parent' => _fs_x( '%s cannot run without the plugin.', 'addonX cannot run...' ),
|
418 |
+
'plugin-x-activation-message' => _fs_x( '%s activation was successfully completed.',
|
419 |
+
'pluginX activation was successfully...' ),
|
420 |
+
'features-and-pricing' => _fs_x( 'Features & Pricing', 'Plugin installer section title' ),
|
421 |
+
'free-addon-not-deployed' => _fs_text( 'Add-on must be deployed to WordPress.org or Freemius.' ),
|
422 |
+
'paid-addon-not-deployed' => _fs_text( 'Paid add-on must be deployed to Freemius.' ),
|
|
|
|
|
|
|
423 |
#--------------------------------------------------------------------------------
|
424 |
#region Add-On Licensing
|
425 |
#--------------------------------------------------------------------------------
|
426 |
+
'addon-no-license-message' => _fs_text( '%s is a premium only add-on. You have to purchase a license first before activating the plugin.' ),
|
427 |
+
'addon-trial-cancelled-message' => _fs_text( '%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.' ),
|
|
|
|
|
428 |
#endregion
|
429 |
#--------------------------------------------------------------------------------
|
430 |
#region Billing Cycles
|
431 |
#--------------------------------------------------------------------------------
|
432 |
+
'monthly' => _fs_x( 'Monthly', 'as every month' ),
|
433 |
+
'mo' => _fs_x( 'mo', 'as monthly period' ),
|
434 |
+
'annual' => _fs_x( 'Annual', 'as once a year' ),
|
435 |
+
'annually' => _fs_x( 'Annually', 'as once a year' ),
|
436 |
+
'once' => _fs_x( 'Once', 'as once a year' ),
|
437 |
+
'year' => _fs_x( 'year', 'as annual period' ),
|
438 |
+
'lifetime' => _fs_text( 'Lifetime' ),
|
439 |
+
'best' => _fs_x( 'Best', 'e.g. the best product' ),
|
440 |
+
'billed-x' => _fs_x( 'Billed %s', 'e.g. billed monthly' ),
|
441 |
+
'save-x' => _fs_x( 'Save %s', 'as a discount of $5 or 10%' ),
|
442 |
#endregion Billing Cycles
|
443 |
+
'view-details' => _fs_text( 'View details' ),
|
444 |
#--------------------------------------------------------------------------------
|
445 |
#region Trial
|
446 |
#--------------------------------------------------------------------------------
|
447 |
+
'approve-start-trial' => _fs_x( 'Approve & Start Trial', 'button label' ),
|
448 |
/* translators: %1$s: Number of trial days; %2$s: Plan name; */
|
449 |
+
'start-trial-prompt-header' => _fs_text( 'You are 1-click away from starting your %1$s-day free trial of the %2$s plan.' ),
|
450 |
/* translators: %s: Link to freemius.com */
|
451 |
+
'start-trial-prompt-message' => _fs_text( '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 plugin to periodically send data to %s to check for version updates and to validate your trial.' ),
|
452 |
|
453 |
#endregion
|
454 |
#--------------------------------------------------------------------------------
|
455 |
#region Billing Details
|
456 |
#--------------------------------------------------------------------------------
|
457 |
+
'business-name' => _fs_text( 'Business name' ),
|
458 |
+
'tax-vat-id' => _fs_text( 'Tax / VAT ID' ),
|
459 |
+
'address-line-n' => _fs_text( 'Address Line %d' ),
|
460 |
+
'country' => _fs_text( 'Country' ),
|
461 |
+
'select-country' => _fs_text( 'Select Country' ),
|
462 |
+
'city' => _fs_text( 'City' ),
|
463 |
+
'town' => _fs_text( 'Town' ),
|
464 |
+
'state' => _fs_text( 'State' ),
|
465 |
+
'province' => _fs_text( 'Province' ),
|
466 |
+
'zip-postal-code' => _fs_text( 'ZIP / Postal Code' ),
|
467 |
#endregion
|
468 |
);
|
469 |
+
|
470 |
+
/**
|
471 |
+
* Localization of the strings in the plugin/theme info dialog box.
|
472 |
+
*
|
473 |
+
* $fs_module_info_text should ONLY include strings that are not located in $fs_text.
|
474 |
+
*
|
475 |
+
* @author Vova Feldman (@svovaf)
|
476 |
+
* @since 1.2.2
|
477 |
+
*/
|
478 |
+
global $fs_module_info_text;
|
479 |
+
|
480 |
+
$fs_module_info_text = array(
|
481 |
+
'description' => _fs_x( 'Description', 'Plugin installer section title' ),
|
482 |
+
'installation' => _fs_x( 'Installation', 'Plugin installer section title' ),
|
483 |
+
'faq' => _fs_x( 'FAQ', 'Plugin installer section title' ),
|
484 |
+
'changelog' => _fs_x( 'Changelog', 'Plugin installer section title' ),
|
485 |
+
'reviews' => _fs_x( 'Reviews', 'Plugin installer section title' ),
|
486 |
+
'other_notes' => _fs_x( 'Other Notes', 'Plugin installer section title' ),
|
487 |
+
/* translators: %s: 1 or One */
|
488 |
+
'x-star' => _fs_text( '%s star' ),
|
489 |
+
/* translators: %s: Number larger than 1 */
|
490 |
+
'x-stars' => _fs_text( '%s stars' ),
|
491 |
+
/* translators: %s: 1 or One */
|
492 |
+
'x-rating' => _fs_text( '%s rating' ),
|
493 |
+
/* translators: %s: Number larger than 1 */
|
494 |
+
'x-ratings' => _fs_text( '%s ratings' ),
|
495 |
+
/* translators: %s: 1 or One (Number of times downloaded) */
|
496 |
+
'x-time' => _fs_text( '%s time' ),
|
497 |
+
/* translators: %s: Number of times downloaded */
|
498 |
+
'x-times' => _fs_text( '%s times' ),
|
499 |
+
/* translators: %s: # of stars (e.g. 5 stars) */
|
500 |
+
'click-to-reviews' => _fs_text( 'Click to see reviews that provided a rating of %s' ),
|
501 |
+
'last-updated:' => _fs_text( 'Last Updated' ),
|
502 |
+
'requires-wordpress-version:' => _fs_text( 'Requires WordPress Version:' ),
|
503 |
+
'author:' => _fs_x( 'Author:', 'as the plugin author' ),
|
504 |
+
'compatible-up-to:' => _fs_text( 'Compatible up to:' ),
|
505 |
+
'downloaded:' => _fs_text( 'Downloaded:' ),
|
506 |
+
'wp-org-plugin-page' => _fs_text( 'WordPress.org Plugin Page' ),
|
507 |
+
'plugin-homepage' => _fs_text( 'Plugin Homepage' ),
|
508 |
+
'donate-to-plugin' => _fs_text( 'Donate to this plugin' ),
|
509 |
+
'average-rating' => _fs_text( 'Average Rating' ),
|
510 |
+
'based-on-x' => _fs_text( 'based on %s' ),
|
511 |
+
'warning:' => _fs_text( 'Warning:' ),
|
512 |
+
'contributors' => _fs_text( 'Contributors' ),
|
513 |
+
'plugin-install' => _fs_text( 'Plugin Install' ),
|
514 |
+
'not-tested-warning' => _fs_text( 'This plugin has not been tested with your current version of WordPress.' ),
|
515 |
+
'not-compatible-warning' => _fs_text( 'This plugin has not been marked as compatible with your version of WordPress.' ),
|
516 |
+
'newer-installed' => _fs_text( 'Newer Version (%s) Installed' ),
|
517 |
+
'latest-installed' => _fs_text( 'Latest Version Installed' ),
|
518 |
+
);
|
freemius/includes/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/l10n.php
ADDED
@@ -0,0 +1,250 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
6 |
+
* @since 1.2.1.6
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Retrieve the translation of $text.
|
15 |
+
*
|
16 |
+
* @since 1.2.1.6
|
17 |
+
*
|
18 |
+
* @param string $text
|
19 |
+
*
|
20 |
+
* @return string
|
21 |
+
*/
|
22 |
+
function _fs_text( $text ) {
|
23 |
+
return translate( $text, 'freemius' );
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Retrieve the translation of $text and escapes it for safe use in an attribute.
|
28 |
+
*
|
29 |
+
* @since 1.2.1.6
|
30 |
+
*
|
31 |
+
* @param string $text
|
32 |
+
*
|
33 |
+
* @return string
|
34 |
+
*/
|
35 |
+
function _fs_esc_attr( $text ) {
|
36 |
+
return esc_attr( translate( $text, 'freemius' ) );
|
37 |
+
}
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Retrieve the translation of $text and escapes it for safe use in HTML output.
|
41 |
+
*
|
42 |
+
* @since 1.2.1.6
|
43 |
+
*
|
44 |
+
* @param string $text
|
45 |
+
*
|
46 |
+
* @return string
|
47 |
+
*/
|
48 |
+
function _fs_esc_html( $text ) {
|
49 |
+
return esc_html( translate( $text, 'freemius' ) );
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Display translated text.
|
54 |
+
*
|
55 |
+
* @since 1.2.0
|
56 |
+
*
|
57 |
+
* @param string $text
|
58 |
+
*/
|
59 |
+
function _fs_echo( $text ) {
|
60 |
+
echo translate( $text, 'freemius' );
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* Display translated text that has been escaped for safe use in an attribute.
|
65 |
+
*
|
66 |
+
* @since 1.2.1.6
|
67 |
+
*
|
68 |
+
* @param string $text
|
69 |
+
*/
|
70 |
+
function _fs_esc_attr_echo( $text ) {
|
71 |
+
echo esc_attr( translate( $text, 'freemius' ) );
|
72 |
+
}
|
73 |
+
|
74 |
+
/**
|
75 |
+
* Display translated text that has been escaped for safe use in HTML output.
|
76 |
+
*
|
77 |
+
* @since 1.2.1.6
|
78 |
+
*
|
79 |
+
* @param string $text
|
80 |
+
*/
|
81 |
+
function _fs_esc_html_echo( $text ) {
|
82 |
+
echo esc_html( translate( $text, 'freemius' ) );
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* Retrieve translated string with gettext context.
|
87 |
+
*
|
88 |
+
* Quite a few times, there will be collisions with similar translatable text
|
89 |
+
* found in more than two places, but with different translated context.
|
90 |
+
*
|
91 |
+
* By including the context in the pot file, translators can translate the two
|
92 |
+
* strings differently.
|
93 |
+
*
|
94 |
+
* @since 1.2.1.6
|
95 |
+
*
|
96 |
+
* @param string $text
|
97 |
+
* @param string $context
|
98 |
+
*
|
99 |
+
* @return string
|
100 |
+
*/
|
101 |
+
function _fs_x( $text, $context ) {
|
102 |
+
return translate_with_gettext_context( $text, $context, 'freemius' );
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* Display translated string with gettext context.
|
107 |
+
*
|
108 |
+
* @since 1.2.1.6
|
109 |
+
*
|
110 |
+
* @param string $text
|
111 |
+
* @param string $context
|
112 |
+
*/
|
113 |
+
function _fs_ex( $text, $context ) {
|
114 |
+
// Avoid misleading Theme Check warning.
|
115 |
+
$fn = '_x';
|
116 |
+
echo $fn( $text, $context, 'freemius' );
|
117 |
+
}
|
118 |
+
|
119 |
+
/**
|
120 |
+
* Translate string with gettext context, and escapes it for safe use in an attribute.
|
121 |
+
*
|
122 |
+
* @since 1.2.1.6
|
123 |
+
*
|
124 |
+
* @param string $text
|
125 |
+
* @param string $context
|
126 |
+
*
|
127 |
+
* @return string
|
128 |
+
*/
|
129 |
+
function _fs_esc_attr_x( $text, $context ) {
|
130 |
+
return esc_attr( translate_with_gettext_context( $text, $context, 'freemius' ) );
|
131 |
+
}
|
132 |
+
|
133 |
+
/**
|
134 |
+
* Translate string with gettext context, and escapes it for safe use in HTML output.
|
135 |
+
*
|
136 |
+
* @since 2.9.0
|
137 |
+
*
|
138 |
+
* @param string $text
|
139 |
+
* @param string $context
|
140 |
+
*
|
141 |
+
* @return string
|
142 |
+
*/
|
143 |
+
function _fs_esc_html_x( $text, $context ) {
|
144 |
+
return esc_html( translate_with_gettext_context( $text, $context, 'freemius' ) );
|
145 |
+
}
|
146 |
+
|
147 |
+
/**
|
148 |
+
* Translates and retrieves the singular or plural form based on the supplied number.
|
149 |
+
*
|
150 |
+
* @since 1.2.1.6
|
151 |
+
*
|
152 |
+
* @param string $single
|
153 |
+
* @param string $plural
|
154 |
+
* @param int $number
|
155 |
+
*
|
156 |
+
* @return string
|
157 |
+
*/
|
158 |
+
function _fs_n( $single, $plural, $number ) {
|
159 |
+
$translations = get_translations_for_domain( 'freemius' );
|
160 |
+
$translation = $translations->translate_plural( $single, $plural, $number );
|
161 |
+
|
162 |
+
/**
|
163 |
+
* Filters the singular or plural form of a string.
|
164 |
+
*
|
165 |
+
* @since WP 2.2.0
|
166 |
+
*
|
167 |
+
* @param string $translation
|
168 |
+
* @param string $single
|
169 |
+
* @param string $plural
|
170 |
+
* @param string $number
|
171 |
+
* @param string $domain
|
172 |
+
*/
|
173 |
+
return apply_filters( 'ngettext', $translation, $single, $plural, $number, 'freemius' );
|
174 |
+
}
|
175 |
+
|
176 |
+
/**
|
177 |
+
* Translates and retrieves the singular or plural form based on the supplied number, with gettext context.
|
178 |
+
*
|
179 |
+
* @since 1.2.1.6
|
180 |
+
*
|
181 |
+
* @param string $single
|
182 |
+
* @param string $plural
|
183 |
+
* @param int $number
|
184 |
+
* @param string $context
|
185 |
+
*
|
186 |
+
* @return string
|
187 |
+
*/
|
188 |
+
function _fs_nx($single, $plural, $number, $context ) {
|
189 |
+
$translations = get_translations_for_domain( 'freemius' );
|
190 |
+
$translation = $translations->translate_plural( $single, $plural, $number, $context );
|
191 |
+
|
192 |
+
/**
|
193 |
+
* Filters the singular or plural form of a string with gettext context.
|
194 |
+
*
|
195 |
+
* @since WP 3.0
|
196 |
+
*
|
197 |
+
* @param string $translation
|
198 |
+
* @param string $single
|
199 |
+
* @param string $plural
|
200 |
+
* @param string $number
|
201 |
+
* @param string $context
|
202 |
+
* @param string $domain
|
203 |
+
*/
|
204 |
+
return apply_filters( 'ngettext_with_context', $translation, $single, $plural, $number, $context, 'freemius' );
|
205 |
+
}
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Registers plural strings in POT file, but does not translate them.
|
209 |
+
*
|
210 |
+
* Used when you want to keep structures with translatable plural
|
211 |
+
* strings and use them later when the number is known.
|
212 |
+
*
|
213 |
+
* @since 1.2.1.6
|
214 |
+
*
|
215 |
+
* @param string $singular
|
216 |
+
* @param string $plural
|
217 |
+
*
|
218 |
+
* @return array
|
219 |
+
*/
|
220 |
+
function _fs_n_noop( $singular, $plural ) {
|
221 |
+
return array(
|
222 |
+
'singular' => $singular,
|
223 |
+
'plural' => $plural,
|
224 |
+
'context' => null,
|
225 |
+
'domain' => 'freemius'
|
226 |
+
);
|
227 |
+
}
|
228 |
+
|
229 |
+
/**
|
230 |
+
* Registers plural strings with gettext context in POT file, but does not translate them.
|
231 |
+
*
|
232 |
+
* Used when you want to keep structures with translatable plural
|
233 |
+
* strings and use them later when the number is known.
|
234 |
+
*
|
235 |
+
* @since 1.2.1.6
|
236 |
+
*
|
237 |
+
* @param string $singular
|
238 |
+
* @param string $plural
|
239 |
+
* @param string $context
|
240 |
+
*
|
241 |
+
* @return array
|
242 |
+
*/
|
243 |
+
function _fs_nx_noop( $singular, $plural, $context ) {
|
244 |
+
return array(
|
245 |
+
'singular' => $singular,
|
246 |
+
'plural' => $plural,
|
247 |
+
'context' => $context,
|
248 |
+
'domain' => 'freemius'
|
249 |
+
);
|
250 |
+
}
|
freemius/includes/managers/class-fs-admin-menu-manager.php
CHANGED
@@ -120,7 +120,7 @@
|
|
120 |
* @param bool $is_addon
|
121 |
*/
|
122 |
function init( $menu, $is_addon = false ) {
|
123 |
-
$this->_menu_slug = $menu['slug'];
|
124 |
|
125 |
$this->_default_submenu_items = array();
|
126 |
// @deprecated
|
@@ -219,16 +219,6 @@
|
|
219 |
return ! $this->_is_top_level && is_string( $this->_parent_slug );
|
220 |
}
|
221 |
|
222 |
-
/**
|
223 |
-
* @author Vova Feldman (@svovaf)
|
224 |
-
* @since 1.1.3
|
225 |
-
*
|
226 |
-
* @return string
|
227 |
-
*/
|
228 |
-
// function slug(){
|
229 |
-
// return $this->_menu_slug;
|
230 |
-
// }
|
231 |
-
|
232 |
/**
|
233 |
* @author Vova Feldman (@svovaf)
|
234 |
* @since 1.1.3
|
@@ -264,6 +254,18 @@
|
|
264 |
$this->_plugin_slug ) . ( empty( $page ) ? '' : ( '-' . $page ) );
|
265 |
}
|
266 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
267 |
/**
|
268 |
* @author Vova Feldman (@svovaf)
|
269 |
* @since 1.1.3
|
@@ -453,6 +455,49 @@
|
|
453 |
);
|
454 |
}
|
455 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
456 |
/**
|
457 |
* Remove all sub-menu items.
|
458 |
*
|
@@ -554,17 +599,36 @@
|
|
554 |
* @param string $class
|
555 |
*/
|
556 |
function add_counter_to_menu_item( $counter = 1, $class = '' ) {
|
557 |
-
global $menu;
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
564 |
}
|
565 |
-
|
566 |
-
// Override menu label.
|
567 |
-
$menu[ $found_menu['position'] ][0] = $found_menu['menu'][0] . ' <span class="update-plugins ' . $class . ' count-' . $counter . '"><span>' . $counter . '</span></span>';
|
568 |
}
|
569 |
|
570 |
#endregion Top level menu Override
|
120 |
* @param bool $is_addon
|
121 |
*/
|
122 |
function init( $menu, $is_addon = false ) {
|
123 |
+
$this->_menu_slug = ! empty( $menu['slug'] ) ? $menu['slug'] : null;
|
124 |
|
125 |
$this->_default_submenu_items = array();
|
126 |
// @deprecated
|
219 |
return ! $this->_is_top_level && is_string( $this->_parent_slug );
|
220 |
}
|
221 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
/**
|
223 |
* @author Vova Feldman (@svovaf)
|
224 |
* @since 1.1.3
|
254 |
$this->_plugin_slug ) . ( empty( $page ) ? '' : ( '-' . $page ) );
|
255 |
}
|
256 |
|
257 |
+
/**
|
258 |
+
* Check if module has a menu slug set.
|
259 |
+
*
|
260 |
+
* @author Vova Feldman (@svovaf)
|
261 |
+
* @since 1.2.1.6
|
262 |
+
*
|
263 |
+
* @return bool
|
264 |
+
*/
|
265 |
+
function has_menu_slug() {
|
266 |
+
return ! empty( $this->_menu_slug );
|
267 |
+
}
|
268 |
+
|
269 |
/**
|
270 |
* @author Vova Feldman (@svovaf)
|
271 |
* @since 1.1.3
|
455 |
);
|
456 |
}
|
457 |
|
458 |
+
/**
|
459 |
+
* Find plugin's admin dashboard main submenu item.
|
460 |
+
*
|
461 |
+
* @author Vova Feldman (@svovaf)
|
462 |
+
* @since 1.2.1.6
|
463 |
+
*
|
464 |
+
* @return array|false
|
465 |
+
*/
|
466 |
+
private function find_main_submenu() {
|
467 |
+
global $submenu;
|
468 |
+
|
469 |
+
$top_level_menu_slug = $this->get_top_level_menu_slug();
|
470 |
+
|
471 |
+
if ( ! isset( $submenu[ $top_level_menu_slug ] ) ) {
|
472 |
+
return false;
|
473 |
+
}
|
474 |
+
|
475 |
+
$submenu_slug = $this->get_raw_slug();
|
476 |
+
|
477 |
+
$position = - 1;
|
478 |
+
$found_submenu = false;
|
479 |
+
|
480 |
+
$hook_name = get_plugin_page_hookname( $submenu_slug, '' );
|
481 |
+
|
482 |
+
foreach ( $submenu[ $top_level_menu_slug ] as $pos => $sub ) {
|
483 |
+
if ( $submenu_slug === $sub[2] ) {
|
484 |
+
$position = $pos;
|
485 |
+
$found_submenu = $sub;
|
486 |
+
}
|
487 |
+
}
|
488 |
+
|
489 |
+
if ( false === $found_submenu ) {
|
490 |
+
return false;
|
491 |
+
}
|
492 |
+
|
493 |
+
return array(
|
494 |
+
'menu' => $found_submenu,
|
495 |
+
'parent_slug' => $top_level_menu_slug,
|
496 |
+
'position' => $position,
|
497 |
+
'hook_name' => $hook_name
|
498 |
+
);
|
499 |
+
}
|
500 |
+
|
501 |
/**
|
502 |
* Remove all sub-menu items.
|
503 |
*
|
599 |
* @param string $class
|
600 |
*/
|
601 |
function add_counter_to_menu_item( $counter = 1, $class = '' ) {
|
602 |
+
global $menu, $submenu;
|
603 |
+
|
604 |
+
$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>';
|
605 |
+
|
606 |
+
if ( $this->_is_top_level ) {
|
607 |
+
// Find main menu item.
|
608 |
+
$found_menu = $this->find_top_level_menu();
|
609 |
+
|
610 |
+
if ( false !== $found_menu ) {
|
611 |
+
// Override menu label.
|
612 |
+
$menu[ $found_menu['position'] ][0] = sprintf(
|
613 |
+
$mask,
|
614 |
+
$found_menu['menu'][0],
|
615 |
+
$class,
|
616 |
+
$counter
|
617 |
+
);
|
618 |
+
}
|
619 |
+
} else {
|
620 |
+
$found_submenu = $this->find_main_submenu();
|
621 |
+
|
622 |
+
if ( false !== $found_submenu ) {
|
623 |
+
// Override menu label.
|
624 |
+
$submenu[ $found_submenu['parent_slug'] ][ $found_submenu['position'] ][0] = sprintf(
|
625 |
+
$mask,
|
626 |
+
$found_submenu['menu'][0],
|
627 |
+
$class,
|
628 |
+
$counter
|
629 |
+
);
|
630 |
+
}
|
631 |
}
|
|
|
|
|
|
|
632 |
}
|
633 |
|
634 |
#endregion Top level menu Override
|
freemius/includes/managers/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/sdk/Exceptions/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/sdk/Freemius.php
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
* under the License.
|
16 |
*/
|
17 |
|
18 |
-
require_once
|
19 |
|
20 |
if ( ! defined( 'FS_SDK__USER_AGENT' ) ) {
|
21 |
define( 'FS_SDK__USER_AGENT', 'fs-php-' . Freemius_Api_Base::VERSION );
|
15 |
* under the License.
|
16 |
*/
|
17 |
|
18 |
+
require_once dirname( __FILE__ ) . '/FreemiusBase.php';
|
19 |
|
20 |
if ( ! defined( 'FS_SDK__USER_AGENT' ) ) {
|
21 |
define( 'FS_SDK__USER_AGENT', 'fs-php-' . Freemius_Api_Base::VERSION );
|
freemius/includes/sdk/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/includes/supplements/fs-essential-functions-1.1.7.1.php
CHANGED
@@ -27,7 +27,7 @@
|
|
27 |
* will catch it.
|
28 |
*/
|
29 |
if ( ! function_exists( 'get_plugins' ) ) {
|
30 |
-
require_once
|
31 |
}
|
32 |
|
33 |
$all_plugins = get_plugins();
|
27 |
* will catch it.
|
28 |
*/
|
29 |
if ( ! function_exists( 'get_plugins' ) ) {
|
30 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
31 |
}
|
32 |
|
33 |
$all_plugins = get_plugins();
|
freemius/includes/supplements/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/languages/freemius-en.mo
CHANGED
Binary file
|
freemius/languages/freemius-en.po
CHANGED
@@ -1,1522 +1,1727 @@
|
|
|
|
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: \n"
|
4 |
-
"Report-Msgid-Bugs-To: \n"
|
5 |
"POT-Creation-Date: \n"
|
6 |
"PO-Revision-Date: \n"
|
7 |
-
"Last-Translator:
|
8 |
"Language: \n"
|
9 |
-
"Language-Team:
|
10 |
-
"Content-Type: \n"
|
11 |
-
"Content-Transfer-Encoding: \n"
|
12 |
-
"Plural-Forms:
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
#: includes/i18n.php:
|
21 |
-
msgid "Not today"
|
22 |
-
msgstr "Not today"
|
23 |
-
|
24 |
-
#: includes/i18n.php:69
|
25 |
msgid "Account"
|
26 |
msgstr "Account"
|
27 |
|
28 |
-
#: includes/i18n.php:
|
29 |
msgid "Add On"
|
30 |
msgstr "Add On"
|
31 |
|
32 |
-
#: includes/i18n.php:
|
33 |
msgid "Contact Us"
|
34 |
msgstr "Contact Us"
|
35 |
|
36 |
-
#: includes/i18n.php:
|
37 |
msgid "Contact Support"
|
38 |
msgstr "Contact Support"
|
39 |
|
40 |
-
#: includes/i18n.php:
|
41 |
msgid "Change Ownership"
|
42 |
msgstr "Change Ownership"
|
43 |
|
44 |
-
#: includes/i18n.php:
|
45 |
msgid "Support"
|
46 |
msgstr "Support"
|
47 |
|
48 |
-
#: includes/i18n.php:
|
49 |
msgid "Support Forum"
|
50 |
msgstr "Support Forum"
|
51 |
|
52 |
-
#: includes/i18n.php:
|
53 |
msgid "Add Ons"
|
54 |
msgstr "Add Ons"
|
55 |
|
56 |
-
#: includes/i18n.php:
|
57 |
msgctxt "verb"
|
58 |
msgid "Upgrade"
|
59 |
msgstr "Upgrade"
|
60 |
|
61 |
-
#: includes/i18n.php:
|
62 |
msgid "Awesome"
|
63 |
msgstr "Awesome"
|
64 |
|
65 |
-
#: includes/i18n.php:
|
66 |
msgctxt "noun"
|
67 |
msgid "Pricing"
|
68 |
msgstr "Pricing"
|
69 |
|
70 |
-
#: includes/i18n.php:
|
71 |
msgctxt "noun"
|
72 |
msgid "Price"
|
73 |
msgstr "Price"
|
74 |
|
75 |
-
#: includes/i18n.php:
|
76 |
msgid "Unlimited Updates"
|
77 |
msgstr "Unlimited Updates"
|
78 |
|
79 |
-
#: includes/i18n.php:
|
80 |
msgctxt "verb"
|
81 |
msgid "Downgrade"
|
82 |
msgstr "Downgrade"
|
83 |
|
84 |
-
#: includes/i18n.php:
|
85 |
msgid "Cancel Trial"
|
86 |
msgstr "Cancel Trial"
|
87 |
|
88 |
-
#: includes/i18n.php:
|
89 |
msgid "Free Trial"
|
90 |
msgstr "Free Trial"
|
91 |
|
92 |
-
#: includes/i18n.php:
|
93 |
msgid "Start my free %s"
|
94 |
msgstr "Start my free %s"
|
95 |
|
96 |
-
#: includes/i18n.php:
|
97 |
msgid "No commitment for %s - cancel anytime"
|
98 |
msgstr "No commitment for %s - cancel anytime"
|
99 |
|
100 |
-
#: includes/i18n.php:
|
101 |
msgid "After your free %s, pay as little as %s"
|
102 |
msgstr "After your free %s, pay as little as %s"
|
103 |
|
104 |
-
#: includes/i18n.php:
|
105 |
msgid "Details"
|
106 |
msgstr "Details"
|
107 |
|
108 |
-
#: includes/i18n.php:
|
109 |
msgid "Account Details"
|
110 |
msgstr "Account Details"
|
111 |
|
112 |
-
#: includes/i18n.php:
|
113 |
msgctxt "verb"
|
114 |
msgid "Delete"
|
115 |
msgstr "Delete"
|
116 |
|
117 |
-
#: includes/i18n.php:
|
118 |
msgctxt "verb"
|
119 |
msgid "Show"
|
120 |
msgstr "Show"
|
121 |
|
122 |
-
#: includes/i18n.php:
|
123 |
msgctxt "verb"
|
124 |
msgid "Hide"
|
125 |
msgstr "Hide"
|
126 |
|
127 |
-
#: includes/i18n.php:
|
128 |
msgctxt "verb"
|
129 |
msgid "Edit"
|
130 |
msgstr "Edit"
|
131 |
|
132 |
-
#: includes/i18n.php:
|
133 |
msgctxt "verb"
|
134 |
msgid "Update"
|
135 |
msgstr "Update"
|
136 |
|
137 |
-
#: includes/i18n.php:
|
138 |
msgid "Date"
|
139 |
msgstr "Date"
|
140 |
|
141 |
-
#: includes/i18n.php:
|
142 |
msgid "Amount"
|
143 |
msgstr "Amount"
|
144 |
|
145 |
-
#: includes/i18n.php:
|
146 |
msgid "Invoice"
|
147 |
msgstr "Invoice"
|
148 |
|
149 |
-
#: includes/i18n.php:
|
150 |
msgid "Billing"
|
151 |
msgstr "Billing"
|
152 |
|
153 |
-
#: includes/i18n.php:
|
154 |
msgid "Payments"
|
155 |
msgstr "Payments"
|
156 |
|
157 |
-
#: includes/i18n.php:
|
158 |
msgid "Delete Account"
|
159 |
msgstr "Delete Account"
|
160 |
|
161 |
-
#: includes/i18n.php:
|
162 |
msgctxt "as close a window"
|
163 |
msgid "Dismiss"
|
164 |
msgstr "Dismiss"
|
165 |
|
166 |
-
#: includes/i18n.php:
|
167 |
msgctxt "as product pricing plan"
|
168 |
msgid "Plan"
|
169 |
msgstr "Plan"
|
170 |
|
171 |
-
#: includes/i18n.php:
|
172 |
msgid "Change Plan"
|
173 |
msgstr "Change Plan"
|
174 |
|
175 |
-
#: includes/i18n.php:
|
176 |
msgctxt "as download professional version"
|
177 |
msgid "Download %s Version"
|
178 |
msgstr "Download %s Version"
|
179 |
|
180 |
-
#: includes/i18n.php:
|
181 |
msgctxt "as download professional version now"
|
182 |
msgid "Download %s version now"
|
183 |
msgstr "Download %s version now"
|
184 |
|
185 |
-
#: includes/i18n.php:
|
186 |
msgctxt "as download latest version"
|
187 |
msgid "Download Latest"
|
188 |
msgstr "Download Latest"
|
189 |
|
190 |
-
#: includes/i18n.php:
|
191 |
msgctxt "E.g. you have a professional license."
|
192 |
msgid "You have a %s license."
|
193 |
msgstr "You have a %s license."
|
194 |
|
195 |
-
#: includes/i18n.php:
|
196 |
msgid "New"
|
197 |
msgstr "New"
|
198 |
|
199 |
-
#: includes/i18n.php:
|
200 |
msgid "Free"
|
201 |
msgstr "Free"
|
202 |
|
203 |
-
#: includes/i18n.php:
|
204 |
msgctxt "as trial plan"
|
205 |
msgid "Trial"
|
206 |
msgstr "Trial"
|
207 |
|
208 |
-
#: includes/i18n.php:
|
209 |
msgctxt "as starting a trial plan"
|
210 |
msgid "Start Trial"
|
211 |
msgstr "Start Trial"
|
212 |
|
213 |
-
#: includes/i18n.php:
|
214 |
msgctxt "verb"
|
215 |
msgid "Purchase"
|
216 |
msgstr "Purchase"
|
217 |
|
218 |
-
#: includes/i18n.php:
|
219 |
msgid "Purchase License"
|
220 |
msgstr "Purchase License"
|
221 |
|
222 |
-
#: includes/i18n.php:
|
223 |
msgctxt "verb"
|
224 |
msgid "Buy"
|
225 |
msgstr "Buy"
|
226 |
|
227 |
-
#: includes/i18n.php:
|
228 |
msgid "Buy License"
|
229 |
msgstr "Buy License"
|
230 |
|
231 |
-
#: includes/i18n.php:
|
232 |
msgid "Single Site License"
|
233 |
msgstr "Single Site License"
|
234 |
|
235 |
-
#: includes/i18n.php:
|
236 |
msgid "Unlimited Licenses"
|
237 |
msgstr "Unlimited Licenses"
|
238 |
|
239 |
-
#: includes/i18n.php:
|
240 |
msgid "Up to %s Sites"
|
241 |
msgstr "Up to %s Sites"
|
242 |
|
243 |
-
#: includes/i18n.php:
|
244 |
msgid "%sRenew your license now%s to access version %s features and support."
|
245 |
msgstr "%sRenew your license now%s to access version %s features and support."
|
246 |
|
247 |
-
#: includes/i18n.php:
|
248 |
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
249 |
msgstr "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
250 |
|
251 |
-
#: includes/i18n.php:
|
252 |
msgctxt "e.g. Professional Plan"
|
253 |
msgid "%s Plan"
|
254 |
msgstr "%s Plan"
|
255 |
|
256 |
-
#: includes/i18n.php:
|
257 |
msgid "You are just one step away - %s"
|
258 |
msgstr "You are just one step away - %s"
|
259 |
|
260 |
-
#: includes/i18n.php:
|
261 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
262 |
msgid "Complete \"%s\" Activation Now"
|
263 |
msgstr "Complete \"%s\" Activation Now"
|
264 |
|
265 |
-
#: includes/i18n.php:
|
266 |
msgid "We made a few tweaks to the plugin, %s"
|
267 |
msgstr "We made a few tweaks to the plugin, %s"
|
268 |
|
269 |
-
#: includes/i18n.php:
|
270 |
msgid "Opt-in to make \"%s\" Better!"
|
271 |
msgstr "Opt-in to make \"%s\" Better!"
|
272 |
|
273 |
-
#: includes/i18n.php:
|
274 |
msgid "Error"
|
275 |
msgstr "Error"
|
276 |
|
277 |
-
#: includes/i18n.php:
|
278 |
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
279 |
msgstr "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
280 |
|
281 |
-
#: includes/i18n.php:
|
282 |
msgctxt "as expiration date"
|
283 |
msgid "Expiration"
|
284 |
msgstr "Expiration"
|
285 |
|
286 |
-
#: includes/i18n.php:
|
287 |
msgctxt "as software license"
|
288 |
msgid "License"
|
289 |
msgstr "License"
|
290 |
|
291 |
-
#: includes/i18n.php:
|
292 |
msgid "not verified"
|
293 |
msgstr "not verified"
|
294 |
|
295 |
-
#: includes/i18n.php:
|
296 |
msgid "Verify Email"
|
297 |
msgstr "Verify Email"
|
298 |
|
299 |
-
#: includes/i18n.php:
|
300 |
msgctxt "e.g. expires in 2 months"
|
301 |
msgid "Expires in %s"
|
302 |
msgstr "Expires in %s"
|
303 |
|
304 |
-
#: includes/i18n.php:
|
305 |
msgctxt "e.g. auto renews in 2 months"
|
306 |
msgid "Auto renews in %s"
|
307 |
msgstr "Auto renews in %s"
|
308 |
|
309 |
-
#: includes/i18n.php:
|
310 |
msgid "No expiration"
|
311 |
msgstr "No expiration"
|
312 |
|
313 |
-
#: includes/i18n.php:
|
314 |
msgid "Expired"
|
315 |
msgstr "Expired"
|
316 |
|
317 |
-
#: includes/i18n.php:
|
318 |
msgid "Cancelled"
|
319 |
msgstr "Cancelled"
|
320 |
|
321 |
-
#: includes/i18n.php:
|
322 |
msgctxt "e.g. In 2 hours"
|
323 |
msgid "In %s"
|
324 |
msgstr "In %s"
|
325 |
|
326 |
-
#: includes/i18n.php:
|
327 |
msgctxt "e.g. 2 min ago"
|
328 |
msgid "%s ago"
|
329 |
msgstr "%s ago"
|
330 |
|
331 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
332 |
msgctxt "as plugin version"
|
333 |
msgid "Version"
|
334 |
msgstr "Version"
|
335 |
|
336 |
-
#: includes/i18n.php:
|
337 |
msgid "Name"
|
338 |
msgstr "Name"
|
339 |
|
340 |
-
#: includes/i18n.php:
|
341 |
msgid "Email"
|
342 |
msgstr "Email"
|
343 |
|
344 |
-
#: includes/i18n.php:
|
345 |
msgid "Email address"
|
346 |
msgstr "Email address"
|
347 |
|
348 |
-
#: includes/i18n.php:
|
349 |
msgid "Verified"
|
350 |
msgstr "Verified"
|
351 |
|
352 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
353 |
msgid "Plugin"
|
354 |
msgstr "Plugin"
|
355 |
|
356 |
-
#: includes/i18n.php:
|
357 |
msgid "Plugins"
|
358 |
msgstr "Plugins"
|
359 |
|
360 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
361 |
msgid "Themes"
|
362 |
msgstr "Themes"
|
363 |
|
364 |
-
#: includes/i18n.php:
|
365 |
msgctxt "as file/folder path"
|
366 |
msgid "Path"
|
367 |
msgstr "Path"
|
368 |
|
369 |
-
#: includes/i18n.php:
|
370 |
msgid "Title"
|
371 |
msgstr "Title"
|
372 |
|
373 |
-
#: includes/i18n.php:
|
374 |
msgid "Free version"
|
375 |
msgstr "Free version"
|
376 |
|
377 |
-
#: includes/i18n.php:
|
378 |
msgid "Premium version"
|
379 |
msgstr "Premium version"
|
380 |
|
381 |
-
#: includes/i18n.php:
|
382 |
msgctxt "as WP plugin slug"
|
383 |
msgid "Slug"
|
384 |
msgstr "Slug"
|
385 |
|
386 |
-
#: includes/i18n.php:
|
387 |
msgid "ID"
|
388 |
msgstr "ID"
|
389 |
|
390 |
-
#: includes/i18n.php:
|
391 |
msgid "Users"
|
392 |
msgstr "Users"
|
393 |
|
394 |
-
#: includes/i18n.php:
|
395 |
msgid "Plugin Installs"
|
396 |
msgstr "Plugin Installs"
|
397 |
|
398 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
399 |
msgctxt "like websites"
|
400 |
msgid "Sites"
|
401 |
msgstr "Sites"
|
402 |
|
403 |
-
#: includes/i18n.php:
|
404 |
msgid "User ID"
|
405 |
msgstr "User ID"
|
406 |
|
407 |
-
#: includes/i18n.php:
|
408 |
msgid "Site ID"
|
409 |
msgstr "Site ID"
|
410 |
|
411 |
-
#: includes/i18n.php:
|
412 |
msgid "Public Key"
|
413 |
msgstr "Public Key"
|
414 |
|
415 |
-
#: includes/i18n.php:
|
416 |
msgid "Secret Key"
|
417 |
msgstr "Secret Key"
|
418 |
|
419 |
-
#: includes/i18n.php:
|
420 |
msgctxt "as secret encryption key missing"
|
421 |
msgid "No Secret"
|
422 |
msgstr "No Secret"
|
423 |
|
424 |
-
#: includes/i18n.php:
|
425 |
msgid "No ID"
|
426 |
msgstr "No ID"
|
427 |
|
428 |
-
#: includes/i18n.php:
|
429 |
msgctxt "as synchronize license"
|
430 |
msgid "Sync License"
|
431 |
msgstr "Sync License"
|
432 |
|
433 |
-
#: includes/i18n.php:
|
434 |
msgctxt "as synchronize"
|
435 |
msgid "Sync"
|
436 |
msgstr "Sync"
|
437 |
|
438 |
-
#: includes/i18n.php:
|
439 |
msgid "Activate License"
|
440 |
msgstr "Activate License"
|
441 |
|
442 |
-
#: includes/i18n.php:
|
443 |
msgid "Activate Free Version"
|
444 |
msgstr "Activate Free Version"
|
445 |
|
446 |
-
#: includes/i18n.php:
|
447 |
msgid "Please enter the license key that you received in the email right after the purchase:"
|
448 |
msgstr "Please enter the license key that you received in the email right after the purchase:"
|
449 |
|
450 |
-
#: includes/i18n.php:
|
451 |
msgid "Activating license..."
|
452 |
msgstr "Activating license..."
|
453 |
|
454 |
-
#: includes/i18n.php:
|
455 |
msgid "Change License"
|
456 |
msgstr "Change License"
|
457 |
|
458 |
-
#: includes/i18n.php:
|
459 |
msgid "Update License"
|
460 |
msgstr "Update License"
|
461 |
|
462 |
-
#: includes/i18n.php:
|
463 |
msgid "Deactivate License"
|
464 |
msgstr "Deactivate License"
|
465 |
|
466 |
-
#: includes/i18n.php:
|
467 |
msgid "Activate"
|
468 |
msgstr "Activate"
|
469 |
|
470 |
-
#: includes/i18n.php:
|
471 |
msgid "Deactivate"
|
472 |
msgstr "Deactivate"
|
473 |
|
474 |
-
#: includes/i18n.php:
|
475 |
msgid "Skip & Deactivate"
|
476 |
msgstr "Skip & Deactivate"
|
477 |
|
478 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
479 |
msgid "No - just deactivate"
|
480 |
msgstr "No - just deactivate"
|
481 |
|
482 |
-
#: includes/i18n.php:
|
483 |
msgid "Yes - do your thing"
|
484 |
msgstr "Yes - do your thing"
|
485 |
|
486 |
-
#: includes/i18n.php:
|
487 |
msgctxt "active mode"
|
488 |
msgid "Active"
|
489 |
msgstr "Active"
|
490 |
|
491 |
-
#: includes/i18n.php:
|
492 |
msgctxt "is active mode?"
|
493 |
msgid "Is Active"
|
494 |
msgstr "Is Active"
|
495 |
|
496 |
-
#: includes/i18n.php:
|
497 |
msgid "Install Now"
|
498 |
msgstr "Install Now"
|
499 |
|
500 |
-
#: includes/i18n.php:
|
501 |
msgid "Install Update Now"
|
502 |
msgstr "Install Update Now"
|
503 |
|
504 |
-
#: includes/i18n.php:
|
505 |
msgid "More information about %s"
|
506 |
msgstr "More information about %s"
|
507 |
|
508 |
-
#: includes/i18n.php:
|
509 |
msgid "Localhost"
|
510 |
msgstr "Localhost"
|
511 |
|
512 |
-
#: includes/i18n.php:
|
513 |
msgctxt "as activate Professional plan"
|
514 |
msgid "Activate %s Plan"
|
515 |
msgstr "Activate %s Plan"
|
516 |
|
517 |
-
#: includes/i18n.php:
|
518 |
msgctxt "as 5 licenses left"
|
519 |
msgid "%s left"
|
520 |
msgstr "%s left"
|
521 |
|
522 |
-
#: includes/i18n.php:
|
523 |
msgid "Last license"
|
524 |
msgstr "Last license"
|
525 |
|
526 |
-
#: includes/i18n.php:
|
527 |
msgid "What is your %s?"
|
528 |
msgstr "What is your %s?"
|
529 |
|
530 |
-
#: includes/i18n.php:
|
531 |
msgid "Activate this add-on"
|
532 |
msgstr "Activate this add-on"
|
533 |
|
534 |
-
#: includes/i18n.php:
|
535 |
msgid "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
536 |
msgstr "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
537 |
|
538 |
-
#: includes/i18n.php:
|
539 |
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?"
|
540 |
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?"
|
541 |
|
542 |
-
#: includes/i18n.php:
|
543 |
msgid "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
544 |
msgstr "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
545 |
|
546 |
-
#: includes/i18n.php:
|
547 |
msgid "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
548 |
msgstr "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
549 |
|
550 |
-
#: includes/i18n.php:
|
551 |
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
552 |
msgstr "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
553 |
|
554 |
-
#: includes/i18n.php:
|
555 |
msgid "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
556 |
msgstr "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
557 |
|
558 |
-
#: includes/i18n.php:
|
559 |
-
msgid "Once your license
|
560 |
-
msgstr "Once your license
|
561 |
|
562 |
-
#: includes/i18n.php:
|
563 |
msgid "Are you sure you want to proceed?"
|
564 |
msgstr "Are you sure you want to proceed?"
|
565 |
|
566 |
-
#: includes/i18n.php:
|
567 |
msgid "Add Ons for %s"
|
568 |
msgstr "Add Ons for %s"
|
569 |
|
570 |
-
#: includes/i18n.php:
|
571 |
msgid "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
572 |
msgstr "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
573 |
|
574 |
-
#: includes/i18n.php:
|
575 |
msgid "Anonymous feedback"
|
576 |
msgstr "Anonymous feedback"
|
577 |
|
578 |
-
#: includes/i18n.php:
|
579 |
msgid "Quick feedback"
|
580 |
msgstr "Quick feedback"
|
581 |
|
582 |
-
#: includes/i18n.php:
|
583 |
msgid "If you have a moment, please let us know why you are deactivating"
|
584 |
msgstr "If you have a moment, please let us know why you are deactivating"
|
585 |
|
586 |
-
#: includes/i18n.php:
|
587 |
msgid "Yes - Deactivate"
|
588 |
msgstr "Yes - Deactivate"
|
589 |
|
590 |
-
#: includes/i18n.php:
|
591 |
msgid "Submit & Deactivate"
|
592 |
msgstr "Submit & Deactivate"
|
593 |
|
594 |
-
#: includes/i18n.php:
|
595 |
msgid "Cancel"
|
596 |
msgstr "Cancel"
|
597 |
|
598 |
-
#: includes/i18n.php:
|
599 |
msgid "I no longer need the plugin"
|
600 |
msgstr "I no longer need the plugin"
|
601 |
|
602 |
-
#: includes/i18n.php:
|
603 |
msgid "I found a better plugin"
|
604 |
msgstr "I found a better plugin"
|
605 |
|
606 |
-
#: includes/i18n.php:
|
607 |
msgid "I only needed the plugin for a short period"
|
608 |
msgstr "I only needed the plugin for a short period"
|
609 |
|
610 |
-
#: includes/i18n.php:
|
611 |
msgid "The plugin broke my site"
|
612 |
msgstr "The plugin broke my site"
|
613 |
|
614 |
-
#: includes/i18n.php:
|
615 |
msgid "The plugin suddenly stopped working"
|
616 |
msgstr "The plugin suddenly stopped working"
|
617 |
|
618 |
-
#: includes/i18n.php:
|
619 |
msgid "I can't pay for it anymore"
|
620 |
msgstr "I can't pay for it anymore"
|
621 |
|
622 |
-
#: includes/i18n.php:
|
623 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
624 |
msgstr "It's a temporary deactivation. I'm just debugging an issue."
|
625 |
|
626 |
-
#: includes/i18n.php:
|
627 |
msgctxt "the text of the \"other\" reason for deactivating the plugin that is shown in the modal box."
|
628 |
msgid "Other"
|
629 |
msgstr "Other"
|
630 |
|
631 |
-
#: includes/i18n.php:
|
632 |
msgid "Kindly tell us the reason so we can improve."
|
633 |
msgstr "Kindly tell us the reason so we can improve."
|
634 |
|
635 |
-
#: includes/i18n.php:
|
636 |
msgid "What's the plugin's name?"
|
637 |
msgstr "What's the plugin's name?"
|
638 |
|
639 |
-
#: includes/i18n.php:
|
640 |
msgid "What price would you feel comfortable paying?"
|
641 |
msgstr "What price would you feel comfortable paying?"
|
642 |
|
643 |
-
#: includes/i18n.php:
|
644 |
msgid "I couldn't understand how to make it work"
|
645 |
msgstr "I couldn't understand how to make it work"
|
646 |
|
647 |
-
#: includes/i18n.php:
|
648 |
msgid "The plugin is great, but I need specific feature that you don't support"
|
649 |
msgstr "The plugin is great, but I need specific feature that you don't support"
|
650 |
|
651 |
-
#: includes/i18n.php:
|
652 |
msgid "The plugin is not working"
|
653 |
msgstr "The plugin is not working"
|
654 |
|
655 |
-
#: includes/i18n.php:
|
656 |
msgid "It's not what I was looking for"
|
657 |
msgstr "It's not what I was looking for"
|
658 |
|
659 |
-
#: includes/i18n.php:
|
660 |
msgid "The plugin didn't work as expected"
|
661 |
msgstr "The plugin didn't work as expected"
|
662 |
|
663 |
-
#: includes/i18n.php:
|
664 |
msgid "What feature?"
|
665 |
msgstr "What feature?"
|
666 |
|
667 |
-
#: includes/i18n.php:
|
668 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
669 |
msgstr "Kindly share what didn't work so we can fix it for future users..."
|
670 |
|
671 |
-
#: includes/i18n.php:
|
672 |
msgid "What you've been looking for?"
|
673 |
msgstr "What you've been looking for?"
|
674 |
|
675 |
-
#: includes/i18n.php:
|
676 |
msgid "What did you expect?"
|
677 |
msgstr "What did you expect?"
|
678 |
|
679 |
-
#: includes/i18n.php:
|
680 |
msgid "The plugin didn't work"
|
681 |
msgstr "The plugin didn't work"
|
682 |
|
683 |
-
#: includes/i18n.php:
|
684 |
msgid "I don't like to share my information with you"
|
685 |
msgstr "I don't like to share my information with you"
|
686 |
|
687 |
-
#: includes/i18n.php:
|
688 |
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
689 |
msgstr "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
690 |
|
691 |
-
#: includes/i18n.php:
|
692 |
msgctxt "greeting"
|
693 |
msgid "Hey %s,"
|
694 |
msgstr "Hey %s,"
|
695 |
|
696 |
-
#: includes/i18n.php:
|
697 |
msgctxt "a greeting. E.g. Thanks John!"
|
698 |
msgid "Thanks %s!"
|
699 |
msgstr "Thanks %s!"
|
700 |
|
701 |
-
#: includes/i18n.php:
|
702 |
msgid "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
703 |
msgstr "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
704 |
|
705 |
-
#: includes/i18n.php:
|
706 |
msgid "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
707 |
msgstr "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
708 |
|
709 |
-
#: includes/i18n.php:
|
710 |
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."
|
711 |
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."
|
712 |
|
713 |
-
#: includes/i18n.php:
|
714 |
msgid "complete the install"
|
715 |
msgstr "complete the install"
|
716 |
|
717 |
-
#: includes/i18n.php:
|
718 |
msgid "start the trial"
|
719 |
msgstr "start the trial"
|
720 |
|
721 |
-
#: includes/i18n.php:
|
722 |
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
723 |
msgstr "Thanks for purchasing %s! To get started, please enter your license key:"
|
724 |
|
725 |
-
#: includes/i18n.php:
|
726 |
msgid "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
727 |
msgstr "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
728 |
|
729 |
-
#: includes/i18n.php:
|
730 |
msgid "What permissions are being granted?"
|
731 |
msgstr "What permissions are being granted?"
|
732 |
|
733 |
-
#: includes/i18n.php:
|
734 |
msgid "Your Profile Overview"
|
735 |
msgstr "Your Profile Overview"
|
736 |
|
737 |
-
#: includes/i18n.php:
|
738 |
msgid "Name and email address"
|
739 |
msgstr "Name and email address"
|
740 |
|
741 |
-
#: includes/i18n.php:
|
742 |
msgid "Your Site Overview"
|
743 |
msgstr "Your Site Overview"
|
744 |
|
745 |
-
#: includes/i18n.php:
|
746 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
747 |
msgstr "Site URL, WP version, PHP info, plugins & themes"
|
748 |
|
749 |
-
#: includes/i18n.php:
|
750 |
msgid "Current Plugin Events"
|
751 |
msgstr "Current Plugin Events"
|
752 |
|
753 |
-
#: includes/i18n.php:
|
754 |
msgid "Activation, deactivation and uninstall"
|
755 |
msgstr "Activation, deactivation and uninstall"
|
756 |
|
757 |
-
#: includes/i18n.php:
|
758 |
msgid "Plugins & Themes"
|
759 |
msgstr "Plugins & Themes"
|
760 |
|
761 |
-
#: includes/i18n.php:
|
762 |
msgid "Titles, versions and state."
|
763 |
msgstr "Titles, versions and state."
|
764 |
|
765 |
-
#: includes/i18n.php:
|
766 |
msgid "Admin Notices"
|
767 |
msgstr "Admin Notices"
|
768 |
|
769 |
-
#: includes/i18n.php:
|
770 |
msgid "Newsletter"
|
771 |
msgstr "Newsletter"
|
772 |
|
773 |
-
#: includes/i18n.php:
|
774 |
msgid "Updates, announcements, marketing, no spam"
|
775 |
msgstr "Updates, announcements, marketing, no spam"
|
776 |
|
777 |
-
#: includes/i18n.php:
|
778 |
msgid "Privacy Policy"
|
779 |
msgstr "Privacy Policy"
|
780 |
|
781 |
-
#: includes/i18n.php:
|
782 |
msgid "Terms of Service"
|
783 |
msgstr "Terms of Service"
|
784 |
|
785 |
-
#: includes/i18n.php:
|
786 |
msgctxt "as activating plugin"
|
787 |
msgid "Activating"
|
788 |
msgstr "Activating"
|
789 |
|
790 |
-
#: includes/i18n.php:
|
791 |
msgctxt "as in the process of sending an email"
|
792 |
msgid "Sending email"
|
793 |
msgstr "Sending email"
|
794 |
|
795 |
-
#: includes/i18n.php:
|
796 |
msgctxt "button label"
|
797 |
msgid "Allow & Continue"
|
798 |
msgstr "Allow & Continue"
|
799 |
|
800 |
-
#: includes/i18n.php:
|
801 |
msgctxt "button label"
|
802 |
msgid "Agree & Activate License"
|
803 |
msgstr "Agree & Activate License"
|
804 |
|
805 |
-
#: includes/i18n.php:
|
806 |
msgctxt "verb"
|
807 |
msgid "Skip"
|
808 |
msgstr "Skip"
|
809 |
|
810 |
-
#: includes/i18n.php:
|
811 |
msgid "Click here to use the plugin anonymously"
|
812 |
msgstr "Click here to use the plugin anonymously"
|
813 |
|
814 |
-
#: includes/i18n.php:
|
815 |
msgid "Re-send activation email"
|
816 |
msgstr "Re-send activation email"
|
817 |
|
818 |
-
#: includes/i18n.php:
|
819 |
msgid "License key"
|
820 |
msgstr "License key"
|
821 |
|
822 |
-
#: includes/i18n.php:
|
823 |
msgid "Send License Key"
|
824 |
msgstr "Send License Key"
|
825 |
|
826 |
-
#: includes/i18n.php:
|
827 |
msgid "Sending license key"
|
828 |
msgstr "Sending license key"
|
829 |
|
830 |
-
#: includes/i18n.php:
|
831 |
msgid "Have a license key?"
|
832 |
msgstr "Have a license key?"
|
833 |
|
834 |
-
#: includes/i18n.php:
|
835 |
msgid "Don't have a license key?"
|
836 |
msgstr "Don't have a license key?"
|
837 |
|
838 |
-
#: includes/i18n.php:
|
839 |
msgid "Can't find your license key?"
|
840 |
msgstr "Can't find your license key?"
|
841 |
|
842 |
-
#: includes/i18n.php:
|
843 |
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
844 |
msgstr "We couldn't find your email address in the system, are you sure it's the right address?"
|
845 |
|
846 |
-
#: includes/i18n.php:
|
847 |
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
848 |
msgstr "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
849 |
|
850 |
-
#: includes/i18n.php:
|
851 |
msgid "Opt In"
|
852 |
msgstr "Opt In"
|
853 |
|
854 |
-
#: includes/i18n.php:
|
855 |
msgid "Opt Out"
|
856 |
msgstr "Opt Out"
|
857 |
|
858 |
-
#: includes/i18n.php:
|
859 |
msgid "On second thought - I want to continue helping"
|
860 |
msgstr "On second thought - I want to continue helping"
|
861 |
|
862 |
-
#: includes/i18n.php:
|
863 |
msgid "Opting out..."
|
864 |
msgstr "Opting out..."
|
865 |
|
866 |
-
#: includes/i18n.php:
|
867 |
msgid "Opting in..."
|
868 |
msgstr "Opting in..."
|
869 |
|
870 |
-
#: includes/i18n.php:
|
871 |
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
872 |
msgstr "We appreciate your help in making the %s better by letting us track some usage data."
|
873 |
|
874 |
-
#: includes/i18n.php:
|
875 |
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."
|
876 |
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."
|
877 |
|
878 |
-
#: includes/i18n.php:
|
879 |
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
880 |
msgstr "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
881 |
|
882 |
-
#: includes/i18n.php:
|
883 |
msgid "Screenshots"
|
884 |
msgstr "Screenshots"
|
885 |
|
886 |
-
#: includes/i18n.php:
|
887 |
msgid "Click to view full-size screenshot %d"
|
888 |
msgstr "Click to view full-size screenshot %d"
|
889 |
|
890 |
-
#: includes/i18n.php:
|
891 |
msgid "Freemius Debug"
|
892 |
msgstr "Freemius Debug"
|
893 |
|
894 |
-
#: includes/i18n.php:
|
895 |
msgctxt "as turned on"
|
896 |
msgid "On"
|
897 |
msgstr "On"
|
898 |
|
899 |
-
#: includes/i18n.php:
|
900 |
msgctxt "as turned off"
|
901 |
msgid "Off"
|
902 |
msgstr "Off"
|
903 |
|
904 |
-
#: includes/i18n.php:
|
905 |
msgctxt "as code debugging"
|
906 |
msgid "Debugging"
|
907 |
msgstr "Debugging"
|
908 |
|
909 |
-
#: includes/i18n.php:
|
910 |
msgid "Freemius State"
|
911 |
msgstr "Freemius State"
|
912 |
|
913 |
-
#: includes/i18n.php:
|
914 |
msgctxt "as connection was successful"
|
915 |
msgid "Connected"
|
916 |
msgstr "Connected"
|
917 |
|
918 |
-
#: includes/i18n.php:
|
919 |
msgctxt "as connection blocked"
|
920 |
msgid "Blocked"
|
921 |
msgstr "Blocked"
|
922 |
|
923 |
-
#: includes/i18n.php:
|
924 |
msgctxt "as application program interface"
|
925 |
msgid "API"
|
926 |
msgstr "API"
|
927 |
|
928 |
-
#: includes/i18n.php:
|
929 |
msgctxt "as software development kit versions"
|
930 |
msgid "SDK"
|
931 |
msgstr "SDK"
|
932 |
|
933 |
-
#: includes/i18n.php:
|
934 |
msgctxt "as software development kit versions"
|
935 |
msgid "SDK Versions"
|
936 |
msgstr "SDK Versions"
|
937 |
|
938 |
-
#: includes/i18n.php:
|
939 |
msgctxt "as plugin folder path"
|
940 |
msgid "Plugin Path"
|
941 |
msgstr "Plugin Path"
|
942 |
|
943 |
-
#: includes/i18n.php:
|
944 |
msgctxt "as sdk path"
|
945 |
msgid "SDK Path"
|
946 |
msgstr "SDK Path"
|
947 |
|
948 |
-
#: includes/i18n.php:
|
949 |
msgid "Add Ons of Plugin %s"
|
950 |
msgstr "Add Ons of Plugin %s"
|
951 |
|
952 |
-
#: includes/i18n.php:
|
953 |
msgid "Are you sure you want to delete all Freemius data?"
|
954 |
msgstr "Are you sure you want to delete all Freemius data?"
|
955 |
|
956 |
-
#: includes/i18n.php:
|
957 |
msgid "Actions"
|
958 |
msgstr "Actions"
|
959 |
|
960 |
-
#: includes/i18n.php:
|
961 |
msgid "Delete All Accounts"
|
962 |
msgstr "Delete All Accounts"
|
963 |
|
964 |
-
#: includes/i18n.php:
|
965 |
msgid "Start Fresh"
|
966 |
msgstr "Start Fresh"
|
967 |
|
968 |
-
#: includes/i18n.php:
|
969 |
msgid "Clear API Cache"
|
970 |
msgstr "Clear API Cache"
|
971 |
|
972 |
-
#: includes/i18n.php:
|
973 |
msgid "Sync Data From Server"
|
974 |
msgstr "Sync Data From Server"
|
975 |
|
976 |
-
#: includes/i18n.php:
|
977 |
msgid "Scheduled Crons"
|
978 |
msgstr "Scheduled Crons"
|
979 |
|
980 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
981 |
msgid "Plugins & Themes Sync"
|
982 |
msgstr "Plugins & Themes Sync"
|
983 |
|
984 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
985 |
msgctxt "as congratulations"
|
986 |
msgid "Congrats"
|
987 |
msgstr "Congrats"
|
988 |
|
989 |
-
#: includes/i18n.php:
|
990 |
msgctxt "exclamation"
|
991 |
msgid "Oops"
|
992 |
msgstr "Oops"
|
993 |
|
994 |
-
#: includes/i18n.php:
|
995 |
msgctxt "interjection expressing joy or exuberance"
|
996 |
msgid "Yee-haw"
|
997 |
msgstr "Yee-haw"
|
998 |
|
999 |
-
#: includes/i18n.php:
|
1000 |
msgctxt "(especially in electronic communication) used to express elation, enthusiasm, or triumph."
|
1001 |
msgid "W00t"
|
1002 |
msgstr "W00t"
|
1003 |
|
1004 |
-
#: includes/i18n.php:
|
1005 |
msgctxt "a positive response"
|
1006 |
msgid "Right on"
|
1007 |
msgstr "Right on"
|
1008 |
|
1009 |
-
#: includes/i18n.php:
|
1010 |
msgctxt "something somebody says when they are thinking about what you have just said. "
|
1011 |
msgid "Hmm"
|
1012 |
msgstr "Hmm"
|
1013 |
|
1014 |
-
#: includes/i18n.php:
|
1015 |
msgid "O.K"
|
1016 |
msgstr "O.K"
|
1017 |
|
1018 |
-
#: includes/i18n.php:
|
1019 |
msgctxt "exclamation"
|
1020 |
msgid "Hey"
|
1021 |
msgstr "Hey"
|
1022 |
|
1023 |
-
#: includes/i18n.php:
|
1024 |
msgctxt "advance notice of something that will need attention."
|
1025 |
msgid "Heads up"
|
1026 |
msgstr "Heads up"
|
1027 |
|
1028 |
-
#: includes/i18n.php:
|
1029 |
msgid "Seems like you got the latest release."
|
1030 |
msgstr "Seems like you got the latest release."
|
1031 |
|
1032 |
-
#: includes/i18n.php:
|
1033 |
msgid "You are all good!"
|
1034 |
msgstr "You are all good!"
|
1035 |
|
1036 |
-
#: includes/i18n.php:
|
1037 |
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1038 |
msgstr "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1039 |
|
1040 |
-
#: includes/i18n.php:
|
1041 |
msgid "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1042 |
msgstr "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1043 |
|
1044 |
-
#: includes/i18n.php:
|
1045 |
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1046 |
msgstr "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1047 |
|
1048 |
-
#: includes/i18n.php:
|
1049 |
msgid "Your name was successfully updated."
|
1050 |
msgstr "Your name was successfully updated."
|
1051 |
|
1052 |
-
#: includes/i18n.php:
|
1053 |
msgid "You have successfully updated your %s."
|
1054 |
msgstr "You have successfully updated your %s."
|
1055 |
|
1056 |
-
#: includes/i18n.php:
|
1057 |
msgid "Please provide your full name."
|
1058 |
msgstr "Please provide your full name."
|
1059 |
|
1060 |
-
#: includes/i18n.php:
|
1061 |
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1062 |
msgstr "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1063 |
|
1064 |
-
#: includes/i18n.php:
|
1065 |
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1066 |
msgstr "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1067 |
|
1068 |
-
#: includes/i18n.php:
|
1069 |
msgid "No credit card required"
|
1070 |
msgstr "No credit card required"
|
1071 |
|
1072 |
-
#: includes/i18n.php:
|
1073 |
msgid "Premium plugin version was successfully activated."
|
1074 |
msgstr "Premium plugin version was successfully activated."
|
1075 |
|
1076 |
-
#: includes/i18n.php:
|
1077 |
msgid "The upgrade of %s was successfully completed."
|
1078 |
msgstr "The upgrade of %s was successfully completed."
|
1079 |
|
1080 |
-
#: includes/i18n.php:
|
1081 |
msgid "Your account was successfully activated with the %s plan."
|
1082 |
msgstr "Your account was successfully activated with the %s plan."
|
1083 |
|
1084 |
-
#: includes/i18n.php:
|
1085 |
msgid "Download the latest %s version now"
|
1086 |
msgstr "Download the latest %s version now"
|
1087 |
|
1088 |
-
#: includes/i18n.php:
|
1089 |
msgid "Please follow these steps to complete the upgrade"
|
1090 |
msgstr "Please follow these steps to complete the upgrade"
|
1091 |
|
1092 |
-
#: includes/i18n.php:
|
1093 |
msgid "Download the latest %s version"
|
1094 |
msgstr "Download the latest %s version"
|
1095 |
|
1096 |
-
#: includes/i18n.php:
|
1097 |
msgid "Download the latest version"
|
1098 |
msgstr "Download the latest version"
|
1099 |
|
1100 |
-
#: includes/i18n.php:
|
1101 |
msgid "Deactivate the free version"
|
1102 |
msgstr "Deactivate the free version"
|
1103 |
|
1104 |
-
#: includes/i18n.php:
|
1105 |
msgid "Upload and activate the downloaded version"
|
1106 |
msgstr "Upload and activate the downloaded version"
|
1107 |
|
1108 |
-
#: includes/i18n.php:
|
1109 |
msgid "How to upload and activate?"
|
1110 |
msgstr "How to upload and activate?"
|
1111 |
|
1112 |
-
#: includes/i18n.php:
|
1113 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1114 |
msgid "%s Add-on was successfully purchased."
|
1115 |
msgstr "%s Add-on was successfully purchased."
|
1116 |
|
1117 |
-
#: includes/i18n.php:
|
1118 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1119 |
msgstr "Your %s Add-on plan was successfully upgraded."
|
1120 |
|
1121 |
-
#: includes/i18n.php:
|
1122 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1123 |
msgstr "Your email has been successfully verified - you are AWESOME!"
|
1124 |
|
1125 |
-
#: includes/i18n.php:
|
1126 |
msgid "Your plan was successfully upgraded."
|
1127 |
msgstr "Your plan was successfully upgraded."
|
1128 |
|
1129 |
-
#: includes/i18n.php:
|
1130 |
msgid "Your plan was successfully changed to %s."
|
1131 |
msgstr "Your plan was successfully changed to %s."
|
1132 |
|
1133 |
-
#: includes/i18n.php:
|
1134 |
msgid "Your license has expired. You can still continue using the free plugin forever."
|
1135 |
msgstr "Your license has expired. You can still continue using the free plugin forever."
|
1136 |
|
1137 |
-
#: includes/i18n.php:
|
1138 |
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1139 |
msgstr "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1140 |
|
1141 |
-
#: includes/i18n.php:
|
1142 |
msgid "Your trial has been successfully started."
|
1143 |
msgstr "Your trial has been successfully started."
|
1144 |
|
1145 |
-
#: includes/i18n.php:
|
1146 |
msgid "Your license was successfully activated."
|
1147 |
msgstr "Your license was successfully activated."
|
1148 |
|
1149 |
-
#: includes/i18n.php:
|
1150 |
msgid "It looks like your site currently doesn't have an active license."
|
1151 |
msgstr "It looks like your site currently doesn't have an active license."
|
1152 |
|
1153 |
-
#: includes/i18n.php:
|
1154 |
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
1155 |
msgstr "Your license was successfully deactivated, you are back to the %s plan."
|
1156 |
|
1157 |
-
#: includes/i18n.php:
|
1158 |
msgid "It looks like the license deactivation failed."
|
1159 |
msgstr "It looks like the license deactivation failed."
|
1160 |
|
1161 |
-
#: includes/i18n.php:
|
1162 |
msgid "It looks like the license could not be activated."
|
1163 |
msgstr "It looks like the license could not be activated."
|
1164 |
|
1165 |
-
#: includes/i18n.php:
|
1166 |
msgid "Error received from the server:"
|
1167 |
msgstr "Error received from the server:"
|
1168 |
|
1169 |
-
#: includes/i18n.php:
|
1170 |
msgid "Your trial has expired. You can still continue using all our free features."
|
1171 |
msgstr "Your trial has expired. You can still continue using all our free features."
|
1172 |
|
1173 |
-
#: includes/i18n.php:
|
1174 |
msgid "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1175 |
msgstr "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1176 |
|
1177 |
-
#: includes/i18n.php:
|
1178 |
msgid "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1179 |
msgstr "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1180 |
|
1181 |
-
#: includes/i18n.php:
|
1182 |
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1183 |
msgstr "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1184 |
|
1185 |
-
#: includes/i18n.php:
|
1186 |
msgid "Your %s free trial was successfully cancelled."
|
1187 |
msgstr "Your %s free trial was successfully cancelled."
|
1188 |
|
1189 |
-
#: includes/i18n.php:
|
1190 |
msgctxt "%s - numeric version number"
|
1191 |
msgid "Version %s was released."
|
1192 |
msgstr "Version %s was released."
|
1193 |
|
1194 |
-
#: includes/i18n.php:
|
1195 |
msgid "Please download %s."
|
1196 |
msgstr "Please download %s."
|
1197 |
|
1198 |
-
#: includes/i18n.php:
|
1199 |
msgctxt "%s - plan name, as the latest professional version here"
|
1200 |
msgid "the latest %s version here"
|
1201 |
msgstr "the latest %s version here"
|
1202 |
|
1203 |
-
#: includes/i18n.php:
|
1204 |
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1205 |
msgstr "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1206 |
|
1207 |
-
#: includes/i18n.php:
|
1208 |
msgctxt "call to action"
|
1209 |
msgid "Start free trial"
|
1210 |
msgstr "Start free trial"
|
1211 |
|
1212 |
-
#: includes/i18n.php:
|
1213 |
msgid "Starting trial"
|
1214 |
msgstr "Starting trial"
|
1215 |
|
1216 |
-
#: includes/i18n.php:
|
1217 |
msgid "Please wait"
|
1218 |
msgstr "Please wait"
|
1219 |
|
1220 |
-
#: includes/i18n.php:
|
1221 |
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1222 |
msgstr "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1223 |
|
1224 |
-
#: includes/i18n.php:
|
1225 |
msgid "You already utilized a trial before."
|
1226 |
msgstr "You already utilized a trial before."
|
1227 |
|
1228 |
-
#: includes/i18n.php:
|
1229 |
msgid "You are already running the plugin in a trial mode."
|
1230 |
msgstr "You are already running the plugin in a trial mode."
|
1231 |
|
1232 |
-
#: includes/i18n.php:
|
1233 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1234 |
msgstr "Plan %s do not exist, therefore, can't start a trial."
|
1235 |
|
1236 |
-
#: includes/i18n.php:
|
1237 |
msgid "Plan %s does not support a trial period."
|
1238 |
msgstr "Plan %s does not support a trial period."
|
1239 |
|
1240 |
-
#: includes/i18n.php:
|
1241 |
msgid "None of the plugin's plans supports a trial period."
|
1242 |
msgstr "None of the plugin's plans supports a trial period."
|
1243 |
|
1244 |
-
#: includes/i18n.php:
|
1245 |
msgid "Unexpected API error. Please contact the plugin's author with the following error."
|
1246 |
msgstr "Unexpected API error. Please contact the plugin's author with the following error."
|
1247 |
|
1248 |
-
#: includes/i18n.php:
|
1249 |
msgid "No commitment for %s days - cancel anytime!"
|
1250 |
msgstr "No commitment for %s days - cancel anytime!"
|
1251 |
|
1252 |
-
#: includes/i18n.php:
|
1253 |
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."
|
1254 |
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."
|
1255 |
|
1256 |
-
#: includes/i18n.php:
|
1257 |
msgid "Couldn't activate %s."
|
1258 |
msgstr "Couldn't activate %s."
|
1259 |
|
1260 |
-
#: includes/i18n.php:
|
1261 |
msgid "Please contact us with the following message:"
|
1262 |
msgstr "Please contact us with the following message:"
|
1263 |
|
1264 |
-
#: includes/i18n.php:
|
1265 |
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."
|
1266 |
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."
|
1267 |
|
1268 |
-
#: includes/i18n.php:
|
1269 |
msgid "Please contact us here"
|
1270 |
msgstr "Please contact us here"
|
1271 |
|
1272 |
-
#: includes/i18n.php:
|
1273 |
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1274 |
msgstr "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1275 |
|
1276 |
-
#: includes/i18n.php:
|
1277 |
msgid "From unknown reason, the API connectivity test failed."
|
1278 |
msgstr "From unknown reason, the API connectivity test failed."
|
1279 |
|
1280 |
-
#: includes/i18n.php:
|
1281 |
msgid "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1282 |
msgstr "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1283 |
|
1284 |
-
#: includes/i18n.php:
|
1285 |
msgid "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1286 |
msgstr "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1287 |
|
1288 |
-
#: includes/i18n.php:
|
1289 |
msgid "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1290 |
msgstr "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1291 |
|
1292 |
-
#: includes/i18n.php:
|
1293 |
msgctxt "as pluginX requires an access to our API"
|
1294 |
msgid "%s requires an access to our API."
|
1295 |
msgstr "%s requires an access to our API."
|
1296 |
|
1297 |
-
#: includes/i18n.php:
|
1298 |
msgid "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1299 |
msgstr "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1300 |
|
1301 |
-
#: includes/i18n.php:
|
1302 |
msgid "I don't know what is Squid or ACL, help me!"
|
1303 |
msgstr "I don't know what is Squid or ACL, help me!"
|
1304 |
|
1305 |
-
#: includes/i18n.php:
|
1306 |
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."
|
1307 |
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."
|
1308 |
|
1309 |
-
#: includes/i18n.php:
|
1310 |
msgid "I'm a system administrator"
|
1311 |
msgstr "I'm a system administrator"
|
1312 |
|
1313 |
-
#: includes/i18n.php:
|
1314 |
-
msgid "Great, please whitelist the following domains: %s. Once you done, deactivate the plugin and activate it again."
|
1315 |
-
msgstr "Great, please whitelist the following domains: %s. Once you done, deactivate the plugin and activate it again."
|
1316 |
|
1317 |
-
#: includes/i18n.php:
|
1318 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1319 |
msgstr "I don't know what is cURL or how to install it, help me!"
|
1320 |
|
1321 |
-
#: includes/i18n.php:
|
1322 |
msgid "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1323 |
msgstr "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1324 |
|
1325 |
-
#: includes/i18n.php:
|
1326 |
msgid "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1327 |
msgstr "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1328 |
|
1329 |
-
#: includes/i18n.php:
|
1330 |
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1331 |
msgstr "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1332 |
|
1333 |
-
#: includes/i18n.php:
|
1334 |
msgid "Yes - I'm giving you a chance to fix it"
|
1335 |
msgstr "Yes - I'm giving you a chance to fix it"
|
1336 |
|
1337 |
-
#: includes/i18n.php:
|
1338 |
msgid "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1339 |
msgstr "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1340 |
|
1341 |
-
#: includes/i18n.php:
|
1342 |
msgid "Let's try your previous version"
|
1343 |
msgstr "Let's try your previous version"
|
1344 |
|
1345 |
-
#: includes/i18n.php:
|
1346 |
msgid "Uninstall this version and install the previous one."
|
1347 |
msgstr "Uninstall this version and install the previous one."
|
1348 |
|
1349 |
-
#: includes/i18n.php:
|
1350 |
msgid "That's exhausting, please deactivate"
|
1351 |
msgstr "That's exhausting, please deactivate"
|
1352 |
|
1353 |
-
#: includes/i18n.php:
|
1354 |
msgid "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1355 |
msgstr "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1356 |
|
1357 |
-
#: includes/i18n.php:
|
1358 |
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."
|
1359 |
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."
|
1360 |
|
1361 |
-
#: includes/i18n.php:
|
1362 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1363 |
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1364 |
msgstr "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1365 |
|
1366 |
-
#: includes/i18n.php:
|
1367 |
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1368 |
msgstr "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1369 |
|
1370 |
-
#: includes/i18n.php:
|
1371 |
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."
|
1372 |
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."
|
1373 |
|
1374 |
-
#: includes/i18n.php:
|
1375 |
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1376 |
msgstr "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1377 |
|
1378 |
-
#: includes/i18n.php:
|
1379 |
msgid "%s is the new owner of the account."
|
1380 |
msgstr "%s is the new owner of the account."
|
1381 |
|
1382 |
-
#: includes/i18n.php:
|
1383 |
msgctxt "addonX cannot run without pluginY"
|
1384 |
msgid "%s cannot run without %s."
|
1385 |
msgstr "%s cannot run without %s."
|
1386 |
|
1387 |
-
#: includes/i18n.php:
|
1388 |
msgctxt "addonX cannot run..."
|
1389 |
msgid "%s cannot run without the plugin."
|
1390 |
msgstr "%s cannot run without the plugin."
|
1391 |
|
1392 |
-
#: includes/i18n.php:
|
1393 |
msgctxt "pluginX activation was successfully..."
|
1394 |
msgid "%s activation was successfully completed."
|
1395 |
msgstr "%s activation was successfully completed."
|
1396 |
|
1397 |
-
#: includes/i18n.php:
|
1398 |
msgctxt "Plugin installer section title"
|
1399 |
msgid "Features & Pricing"
|
1400 |
msgstr "Features & Pricing"
|
1401 |
|
1402 |
-
#: includes/i18n.php:
|
1403 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1404 |
msgstr "Add-on must be deployed to WordPress.org or Freemius."
|
1405 |
|
1406 |
-
#: includes/i18n.php:
|
1407 |
msgid "Paid add-on must be deployed to Freemius."
|
1408 |
msgstr "Paid add-on must be deployed to Freemius."
|
1409 |
|
1410 |
-
#: includes/i18n.php:
|
1411 |
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1412 |
msgstr "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1413 |
|
1414 |
-
#: includes/i18n.php:
|
1415 |
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."
|
1416 |
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."
|
1417 |
|
1418 |
-
#: includes/i18n.php:
|
1419 |
msgctxt "as every month"
|
1420 |
msgid "Monthly"
|
1421 |
msgstr "Monthly"
|
1422 |
|
1423 |
-
#: includes/i18n.php:
|
1424 |
msgctxt "as monthly period"
|
1425 |
msgid "mo"
|
1426 |
msgstr "mo"
|
1427 |
|
1428 |
-
#: includes/i18n.php:
|
1429 |
msgctxt "as once a year"
|
1430 |
msgid "Annual"
|
1431 |
msgstr "Annual"
|
1432 |
|
1433 |
-
#: includes/i18n.php:
|
1434 |
msgctxt "as once a year"
|
1435 |
msgid "Annually"
|
1436 |
msgstr "Annually"
|
1437 |
|
1438 |
-
#: includes/i18n.php:
|
1439 |
msgctxt "as once a year"
|
1440 |
msgid "Once"
|
1441 |
msgstr "Once"
|
1442 |
|
1443 |
-
#: includes/i18n.php:
|
1444 |
msgctxt "as annual period"
|
1445 |
msgid "year"
|
1446 |
msgstr "year"
|
1447 |
|
1448 |
-
#: includes/i18n.php:
|
1449 |
msgid "Lifetime"
|
1450 |
msgstr "Lifetime"
|
1451 |
|
1452 |
-
#: includes/i18n.php:
|
1453 |
msgctxt "e.g. the best product"
|
1454 |
msgid "Best"
|
1455 |
msgstr "Best"
|
1456 |
|
1457 |
-
#: includes/i18n.php:
|
1458 |
msgctxt "e.g. billed monthly"
|
1459 |
msgid "Billed %s"
|
1460 |
msgstr "Billed %s"
|
1461 |
|
1462 |
-
#: includes/i18n.php:
|
1463 |
msgctxt "as a discount of $5 or 10%"
|
1464 |
msgid "Save %s"
|
1465 |
msgstr "Save %s"
|
1466 |
|
1467 |
-
#: includes/i18n.php:
|
1468 |
msgid "View details"
|
1469 |
msgstr "View details"
|
1470 |
|
1471 |
-
#: includes/i18n.php:
|
1472 |
msgctxt "button label"
|
1473 |
msgid "Approve & Start Trial"
|
1474 |
msgstr "Approve & Start Trial"
|
1475 |
|
1476 |
-
#: includes/i18n.php:
|
1477 |
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1478 |
msgstr "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1479 |
|
1480 |
-
#: includes/i18n.php:
|
1481 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1482 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1483 |
|
1484 |
-
#: includes/i18n.php:
|
1485 |
msgid "Business name"
|
1486 |
msgstr "Business name"
|
1487 |
|
1488 |
-
#: includes/i18n.php:
|
1489 |
msgid "Tax / VAT ID"
|
1490 |
msgstr "Tax / VAT ID"
|
1491 |
|
1492 |
-
#: includes/i18n.php:
|
1493 |
msgid "Address Line %d"
|
1494 |
msgstr "Address Line %d"
|
1495 |
|
1496 |
-
#: includes/i18n.php:
|
1497 |
msgid "Country"
|
1498 |
msgstr "Country"
|
1499 |
|
1500 |
-
#: includes/i18n.php:
|
1501 |
msgid "Select Country"
|
1502 |
msgstr "Select Country"
|
1503 |
|
1504 |
-
#: includes/i18n.php:
|
1505 |
msgid "City"
|
1506 |
msgstr "City"
|
1507 |
|
1508 |
-
#: includes/i18n.php:
|
1509 |
msgid "Town"
|
1510 |
msgstr "Town"
|
1511 |
|
1512 |
-
#: includes/i18n.php:
|
1513 |
msgid "State"
|
1514 |
msgstr "State"
|
1515 |
|
1516 |
-
#: includes/i18n.php:
|
1517 |
msgid "Province"
|
1518 |
msgstr "Province"
|
1519 |
|
1520 |
-
#: includes/i18n.php:
|
1521 |
msgid "ZIP / Postal Code"
|
1522 |
msgstr "ZIP / Postal Code"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Copyright (C) 2017 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: _fs_text;_fs_echo;_fs_esc_attr;_fs_esc_attr_echo;_fs_esc_html;_fs_esc_html_echo;_fs_x:1,2c;_fs_ex:1,2c;_fs_esc_attr_x:1,2c;_fs_esc_html_x:1,2c;_fs_n:1,2;_fs_n_noop:1,2;_fs_nx:1,2,4c;_fs_nx_noop:1,2,3c\n"
|
18 |
+
"X-Poedit-SearchPath-0: .\n"
|
19 |
+
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
20 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
21 |
+
|
22 |
+
#: includes/i18n.php:37
|
|
|
|
|
|
|
|
|
23 |
msgid "Account"
|
24 |
msgstr "Account"
|
25 |
|
26 |
+
#: includes/i18n.php:38
|
27 |
msgid "Add On"
|
28 |
msgstr "Add On"
|
29 |
|
30 |
+
#: includes/i18n.php:39
|
31 |
msgid "Contact Us"
|
32 |
msgstr "Contact Us"
|
33 |
|
34 |
+
#: includes/i18n.php:40
|
35 |
msgid "Contact Support"
|
36 |
msgstr "Contact Support"
|
37 |
|
38 |
+
#: includes/i18n.php:41
|
39 |
msgid "Change Ownership"
|
40 |
msgstr "Change Ownership"
|
41 |
|
42 |
+
#: includes/i18n.php:42
|
43 |
msgid "Support"
|
44 |
msgstr "Support"
|
45 |
|
46 |
+
#: includes/i18n.php:43
|
47 |
msgid "Support Forum"
|
48 |
msgstr "Support Forum"
|
49 |
|
50 |
+
#: includes/i18n.php:44
|
51 |
msgid "Add Ons"
|
52 |
msgstr "Add Ons"
|
53 |
|
54 |
+
#: includes/i18n.php:45
|
55 |
msgctxt "verb"
|
56 |
msgid "Upgrade"
|
57 |
msgstr "Upgrade"
|
58 |
|
59 |
+
#: includes/i18n.php:46
|
60 |
msgid "Awesome"
|
61 |
msgstr "Awesome"
|
62 |
|
63 |
+
#: includes/i18n.php:47
|
64 |
msgctxt "noun"
|
65 |
msgid "Pricing"
|
66 |
msgstr "Pricing"
|
67 |
|
68 |
+
#: includes/i18n.php:48
|
69 |
msgctxt "noun"
|
70 |
msgid "Price"
|
71 |
msgstr "Price"
|
72 |
|
73 |
+
#: includes/i18n.php:49
|
74 |
msgid "Unlimited Updates"
|
75 |
msgstr "Unlimited Updates"
|
76 |
|
77 |
+
#: includes/i18n.php:50
|
78 |
msgctxt "verb"
|
79 |
msgid "Downgrade"
|
80 |
msgstr "Downgrade"
|
81 |
|
82 |
+
#: includes/i18n.php:51
|
83 |
msgid "Cancel Trial"
|
84 |
msgstr "Cancel Trial"
|
85 |
|
86 |
+
#: includes/i18n.php:52
|
87 |
msgid "Free Trial"
|
88 |
msgstr "Free Trial"
|
89 |
|
90 |
+
#: includes/i18n.php:53
|
91 |
msgid "Start my free %s"
|
92 |
msgstr "Start my free %s"
|
93 |
|
94 |
+
#: includes/i18n.php:54
|
95 |
msgid "No commitment for %s - cancel anytime"
|
96 |
msgstr "No commitment for %s - cancel anytime"
|
97 |
|
98 |
+
#: includes/i18n.php:55
|
99 |
msgid "After your free %s, pay as little as %s"
|
100 |
msgstr "After your free %s, pay as little as %s"
|
101 |
|
102 |
+
#: includes/i18n.php:56
|
103 |
msgid "Details"
|
104 |
msgstr "Details"
|
105 |
|
106 |
+
#: includes/i18n.php:57
|
107 |
msgid "Account Details"
|
108 |
msgstr "Account Details"
|
109 |
|
110 |
+
#: includes/i18n.php:58
|
111 |
msgctxt "verb"
|
112 |
msgid "Delete"
|
113 |
msgstr "Delete"
|
114 |
|
115 |
+
#: includes/i18n.php:59
|
116 |
msgctxt "verb"
|
117 |
msgid "Show"
|
118 |
msgstr "Show"
|
119 |
|
120 |
+
#: includes/i18n.php:60
|
121 |
msgctxt "verb"
|
122 |
msgid "Hide"
|
123 |
msgstr "Hide"
|
124 |
|
125 |
+
#: includes/i18n.php:61
|
126 |
msgctxt "verb"
|
127 |
msgid "Edit"
|
128 |
msgstr "Edit"
|
129 |
|
130 |
+
#: includes/i18n.php:62
|
131 |
msgctxt "verb"
|
132 |
msgid "Update"
|
133 |
msgstr "Update"
|
134 |
|
135 |
+
#: includes/i18n.php:63
|
136 |
msgid "Date"
|
137 |
msgstr "Date"
|
138 |
|
139 |
+
#: includes/i18n.php:64
|
140 |
msgid "Amount"
|
141 |
msgstr "Amount"
|
142 |
|
143 |
+
#: includes/i18n.php:65
|
144 |
msgid "Invoice"
|
145 |
msgstr "Invoice"
|
146 |
|
147 |
+
#: includes/i18n.php:66
|
148 |
msgid "Billing"
|
149 |
msgstr "Billing"
|
150 |
|
151 |
+
#: includes/i18n.php:67
|
152 |
msgid "Payments"
|
153 |
msgstr "Payments"
|
154 |
|
155 |
+
#: includes/i18n.php:68
|
156 |
msgid "Delete Account"
|
157 |
msgstr "Delete Account"
|
158 |
|
159 |
+
#: includes/i18n.php:69
|
160 |
msgctxt "as close a window"
|
161 |
msgid "Dismiss"
|
162 |
msgstr "Dismiss"
|
163 |
|
164 |
+
#: includes/i18n.php:70
|
165 |
msgctxt "as product pricing plan"
|
166 |
msgid "Plan"
|
167 |
msgstr "Plan"
|
168 |
|
169 |
+
#: includes/i18n.php:71
|
170 |
msgid "Change Plan"
|
171 |
msgstr "Change Plan"
|
172 |
|
173 |
+
#: includes/i18n.php:72
|
174 |
msgctxt "as download professional version"
|
175 |
msgid "Download %s Version"
|
176 |
msgstr "Download %s Version"
|
177 |
|
178 |
+
#: includes/i18n.php:73
|
179 |
msgctxt "as download professional version now"
|
180 |
msgid "Download %s version now"
|
181 |
msgstr "Download %s version now"
|
182 |
|
183 |
+
#: includes/i18n.php:74
|
184 |
msgctxt "as download latest version"
|
185 |
msgid "Download Latest"
|
186 |
msgstr "Download Latest"
|
187 |
|
188 |
+
#: includes/i18n.php:75
|
189 |
msgctxt "E.g. you have a professional license."
|
190 |
msgid "You have a %s license."
|
191 |
msgstr "You have a %s license."
|
192 |
|
193 |
+
#: includes/i18n.php:76
|
194 |
msgid "New"
|
195 |
msgstr "New"
|
196 |
|
197 |
+
#: includes/i18n.php:77
|
198 |
msgid "Free"
|
199 |
msgstr "Free"
|
200 |
|
201 |
+
#: includes/i18n.php:78
|
202 |
msgctxt "as trial plan"
|
203 |
msgid "Trial"
|
204 |
msgstr "Trial"
|
205 |
|
206 |
+
#: includes/i18n.php:79
|
207 |
msgctxt "as starting a trial plan"
|
208 |
msgid "Start Trial"
|
209 |
msgstr "Start Trial"
|
210 |
|
211 |
+
#: includes/i18n.php:80
|
212 |
msgctxt "verb"
|
213 |
msgid "Purchase"
|
214 |
msgstr "Purchase"
|
215 |
|
216 |
+
#: includes/i18n.php:81
|
217 |
msgid "Purchase License"
|
218 |
msgstr "Purchase License"
|
219 |
|
220 |
+
#: includes/i18n.php:82
|
221 |
msgctxt "verb"
|
222 |
msgid "Buy"
|
223 |
msgstr "Buy"
|
224 |
|
225 |
+
#: includes/i18n.php:83
|
226 |
msgid "Buy License"
|
227 |
msgstr "Buy License"
|
228 |
|
229 |
+
#: includes/i18n.php:84
|
230 |
msgid "Single Site License"
|
231 |
msgstr "Single Site License"
|
232 |
|
233 |
+
#: includes/i18n.php:85
|
234 |
msgid "Unlimited Licenses"
|
235 |
msgstr "Unlimited Licenses"
|
236 |
|
237 |
+
#: includes/i18n.php:86
|
238 |
msgid "Up to %s Sites"
|
239 |
msgstr "Up to %s Sites"
|
240 |
|
241 |
+
#: includes/i18n.php:87
|
242 |
msgid "%sRenew your license now%s to access version %s features and support."
|
243 |
msgstr "%sRenew your license now%s to access version %s features and support."
|
244 |
|
245 |
+
#: includes/i18n.php:88
|
246 |
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
247 |
msgstr "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
248 |
|
249 |
+
#: includes/i18n.php:89
|
250 |
msgctxt "e.g. Professional Plan"
|
251 |
msgid "%s Plan"
|
252 |
msgstr "%s Plan"
|
253 |
|
254 |
+
#: includes/i18n.php:90
|
255 |
msgid "You are just one step away - %s"
|
256 |
msgstr "You are just one step away - %s"
|
257 |
|
258 |
+
#: includes/i18n.php:91
|
259 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
260 |
msgid "Complete \"%s\" Activation Now"
|
261 |
msgstr "Complete \"%s\" Activation Now"
|
262 |
|
263 |
+
#: includes/i18n.php:93
|
264 |
msgid "We made a few tweaks to the plugin, %s"
|
265 |
msgstr "We made a few tweaks to the plugin, %s"
|
266 |
|
267 |
+
#: includes/i18n.php:94
|
268 |
msgid "Opt-in to make \"%s\" Better!"
|
269 |
msgstr "Opt-in to make \"%s\" Better!"
|
270 |
|
271 |
+
#: includes/i18n.php:95
|
272 |
msgid "Error"
|
273 |
msgstr "Error"
|
274 |
|
275 |
+
#: includes/i18n.php:96
|
276 |
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
277 |
msgstr "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
278 |
|
279 |
+
#: includes/i18n.php:99
|
280 |
msgctxt "as expiration date"
|
281 |
msgid "Expiration"
|
282 |
msgstr "Expiration"
|
283 |
|
284 |
+
#: includes/i18n.php:100
|
285 |
msgctxt "as software license"
|
286 |
msgid "License"
|
287 |
msgstr "License"
|
288 |
|
289 |
+
#: includes/i18n.php:101
|
290 |
msgid "not verified"
|
291 |
msgstr "not verified"
|
292 |
|
293 |
+
#: includes/i18n.php:102
|
294 |
msgid "Verify Email"
|
295 |
msgstr "Verify Email"
|
296 |
|
297 |
+
#: includes/i18n.php:103
|
298 |
msgctxt "e.g. expires in 2 months"
|
299 |
msgid "Expires in %s"
|
300 |
msgstr "Expires in %s"
|
301 |
|
302 |
+
#: includes/i18n.php:104
|
303 |
msgctxt "e.g. auto renews in 2 months"
|
304 |
msgid "Auto renews in %s"
|
305 |
msgstr "Auto renews in %s"
|
306 |
|
307 |
+
#: includes/i18n.php:105
|
308 |
msgid "No expiration"
|
309 |
msgstr "No expiration"
|
310 |
|
311 |
+
#: includes/i18n.php:106
|
312 |
msgid "Expired"
|
313 |
msgstr "Expired"
|
314 |
|
315 |
+
#: includes/i18n.php:107
|
316 |
msgid "Cancelled"
|
317 |
msgstr "Cancelled"
|
318 |
|
319 |
+
#: includes/i18n.php:108
|
320 |
msgctxt "e.g. In 2 hours"
|
321 |
msgid "In %s"
|
322 |
msgstr "In %s"
|
323 |
|
324 |
+
#: includes/i18n.php:109
|
325 |
msgctxt "e.g. 2 min ago"
|
326 |
msgid "%s ago"
|
327 |
msgstr "%s ago"
|
328 |
|
329 |
+
#: includes/i18n.php:111
|
330 |
+
msgid "%s or higher"
|
331 |
+
msgstr "%s or higher"
|
332 |
+
|
333 |
+
#: includes/i18n.php:112
|
334 |
msgctxt "as plugin version"
|
335 |
msgid "Version"
|
336 |
msgstr "Version"
|
337 |
|
338 |
+
#: includes/i18n.php:113
|
339 |
msgid "Name"
|
340 |
msgstr "Name"
|
341 |
|
342 |
+
#: includes/i18n.php:114
|
343 |
msgid "Email"
|
344 |
msgstr "Email"
|
345 |
|
346 |
+
#: includes/i18n.php:115
|
347 |
msgid "Email address"
|
348 |
msgstr "Email address"
|
349 |
|
350 |
+
#: includes/i18n.php:116
|
351 |
msgid "Verified"
|
352 |
msgstr "Verified"
|
353 |
|
354 |
+
#: includes/i18n.php:117
|
355 |
+
msgid "Module"
|
356 |
+
msgstr "Module"
|
357 |
+
|
358 |
+
#: includes/i18n.php:118
|
359 |
+
msgid "Module Type"
|
360 |
+
msgstr "Module Type"
|
361 |
+
|
362 |
+
#: includes/i18n.php:119
|
363 |
msgid "Plugin"
|
364 |
msgstr "Plugin"
|
365 |
|
366 |
+
#: includes/i18n.php:120
|
367 |
msgid "Plugins"
|
368 |
msgstr "Plugins"
|
369 |
|
370 |
+
#: includes/i18n.php:121
|
371 |
+
msgid "Theme"
|
372 |
+
msgstr "Theme"
|
373 |
+
|
374 |
+
#: includes/i18n.php:122
|
375 |
msgid "Themes"
|
376 |
msgstr "Themes"
|
377 |
|
378 |
+
#: includes/i18n.php:123
|
379 |
msgctxt "as file/folder path"
|
380 |
msgid "Path"
|
381 |
msgstr "Path"
|
382 |
|
383 |
+
#: includes/i18n.php:124
|
384 |
msgid "Title"
|
385 |
msgstr "Title"
|
386 |
|
387 |
+
#: includes/i18n.php:125
|
388 |
msgid "Free version"
|
389 |
msgstr "Free version"
|
390 |
|
391 |
+
#: includes/i18n.php:126
|
392 |
msgid "Premium version"
|
393 |
msgstr "Premium version"
|
394 |
|
395 |
+
#: includes/i18n.php:127
|
396 |
msgctxt "as WP plugin slug"
|
397 |
msgid "Slug"
|
398 |
msgstr "Slug"
|
399 |
|
400 |
+
#: includes/i18n.php:128
|
401 |
msgid "ID"
|
402 |
msgstr "ID"
|
403 |
|
404 |
+
#: includes/i18n.php:129
|
405 |
msgid "Users"
|
406 |
msgstr "Users"
|
407 |
|
408 |
+
#: includes/i18n.php:130
|
409 |
msgid "Plugin Installs"
|
410 |
msgstr "Plugin Installs"
|
411 |
|
412 |
+
#: includes/i18n.php:131
|
413 |
+
msgid "%s Installs"
|
414 |
+
msgstr "%s Installs"
|
415 |
+
|
416 |
+
#: includes/i18n.php:132
|
417 |
msgctxt "like websites"
|
418 |
msgid "Sites"
|
419 |
msgstr "Sites"
|
420 |
|
421 |
+
#: includes/i18n.php:133
|
422 |
msgid "User ID"
|
423 |
msgstr "User ID"
|
424 |
|
425 |
+
#: includes/i18n.php:134
|
426 |
msgid "Site ID"
|
427 |
msgstr "Site ID"
|
428 |
|
429 |
+
#: includes/i18n.php:135
|
430 |
msgid "Public Key"
|
431 |
msgstr "Public Key"
|
432 |
|
433 |
+
#: includes/i18n.php:136
|
434 |
msgid "Secret Key"
|
435 |
msgstr "Secret Key"
|
436 |
|
437 |
+
#: includes/i18n.php:137
|
438 |
msgctxt "as secret encryption key missing"
|
439 |
msgid "No Secret"
|
440 |
msgstr "No Secret"
|
441 |
|
442 |
+
#: includes/i18n.php:138
|
443 |
msgid "No ID"
|
444 |
msgstr "No ID"
|
445 |
|
446 |
+
#: includes/i18n.php:139
|
447 |
msgctxt "as synchronize license"
|
448 |
msgid "Sync License"
|
449 |
msgstr "Sync License"
|
450 |
|
451 |
+
#: includes/i18n.php:140
|
452 |
msgctxt "as synchronize"
|
453 |
msgid "Sync"
|
454 |
msgstr "Sync"
|
455 |
|
456 |
+
#: includes/i18n.php:141
|
457 |
msgid "Activate License"
|
458 |
msgstr "Activate License"
|
459 |
|
460 |
+
#: includes/i18n.php:142
|
461 |
msgid "Activate Free Version"
|
462 |
msgstr "Activate Free Version"
|
463 |
|
464 |
+
#: includes/i18n.php:143
|
465 |
msgid "Please enter the license key that you received in the email right after the purchase:"
|
466 |
msgstr "Please enter the license key that you received in the email right after the purchase:"
|
467 |
|
468 |
+
#: includes/i18n.php:144
|
469 |
msgid "Activating license..."
|
470 |
msgstr "Activating license..."
|
471 |
|
472 |
+
#: includes/i18n.php:145
|
473 |
msgid "Change License"
|
474 |
msgstr "Change License"
|
475 |
|
476 |
+
#: includes/i18n.php:146
|
477 |
msgid "Update License"
|
478 |
msgstr "Update License"
|
479 |
|
480 |
+
#: includes/i18n.php:147
|
481 |
msgid "Deactivate License"
|
482 |
msgstr "Deactivate License"
|
483 |
|
484 |
+
#: includes/i18n.php:148
|
485 |
msgid "Activate"
|
486 |
msgstr "Activate"
|
487 |
|
488 |
+
#: includes/i18n.php:149
|
489 |
msgid "Deactivate"
|
490 |
msgstr "Deactivate"
|
491 |
|
492 |
+
#: includes/i18n.php:150
|
493 |
msgid "Skip & Deactivate"
|
494 |
msgstr "Skip & Deactivate"
|
495 |
|
496 |
+
#: includes/i18n.php:151
|
497 |
+
msgid "Skip & %s"
|
498 |
+
msgstr "Skip & %s"
|
499 |
+
|
500 |
+
#: includes/i18n.php:152
|
501 |
msgid "No - just deactivate"
|
502 |
msgstr "No - just deactivate"
|
503 |
|
504 |
+
#: includes/i18n.php:153
|
505 |
msgid "Yes - do your thing"
|
506 |
msgstr "Yes - do your thing"
|
507 |
|
508 |
+
#: includes/i18n.php:154
|
509 |
msgctxt "active mode"
|
510 |
msgid "Active"
|
511 |
msgstr "Active"
|
512 |
|
513 |
+
#: includes/i18n.php:155
|
514 |
msgctxt "is active mode?"
|
515 |
msgid "Is Active"
|
516 |
msgstr "Is Active"
|
517 |
|
518 |
+
#: includes/i18n.php:156
|
519 |
msgid "Install Now"
|
520 |
msgstr "Install Now"
|
521 |
|
522 |
+
#: includes/i18n.php:157
|
523 |
msgid "Install Update Now"
|
524 |
msgstr "Install Update Now"
|
525 |
|
526 |
+
#: includes/i18n.php:158
|
527 |
msgid "More information about %s"
|
528 |
msgstr "More information about %s"
|
529 |
|
530 |
+
#: includes/i18n.php:159
|
531 |
msgid "Localhost"
|
532 |
msgstr "Localhost"
|
533 |
|
534 |
+
#: includes/i18n.php:160
|
535 |
msgctxt "as activate Professional plan"
|
536 |
msgid "Activate %s Plan"
|
537 |
msgstr "Activate %s Plan"
|
538 |
|
539 |
+
#: includes/i18n.php:161
|
540 |
msgctxt "as 5 licenses left"
|
541 |
msgid "%s left"
|
542 |
msgstr "%s left"
|
543 |
|
544 |
+
#: includes/i18n.php:162
|
545 |
msgid "Last license"
|
546 |
msgstr "Last license"
|
547 |
|
548 |
+
#: includes/i18n.php:163
|
549 |
msgid "What is your %s?"
|
550 |
msgstr "What is your %s?"
|
551 |
|
552 |
+
#: includes/i18n.php:164
|
553 |
msgid "Activate this add-on"
|
554 |
msgstr "Activate this add-on"
|
555 |
|
556 |
+
#: includes/i18n.php:165
|
557 |
msgid "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
558 |
msgstr "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
559 |
|
560 |
+
#: includes/i18n.php:166
|
561 |
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?"
|
562 |
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?"
|
563 |
|
564 |
+
#: includes/i18n.php:167
|
565 |
msgid "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
566 |
msgstr "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
567 |
|
568 |
+
#: includes/i18n.php:168
|
569 |
msgid "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
570 |
msgstr "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
571 |
|
572 |
+
#: includes/i18n.php:169
|
573 |
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
574 |
msgstr "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
575 |
|
576 |
+
#: includes/i18n.php:170
|
577 |
msgid "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
578 |
msgstr "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
579 |
|
580 |
+
#: includes/i18n.php:171
|
581 |
+
msgid "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
582 |
+
msgstr "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
583 |
|
584 |
+
#: includes/i18n.php:172
|
585 |
msgid "Are you sure you want to proceed?"
|
586 |
msgstr "Are you sure you want to proceed?"
|
587 |
|
588 |
+
#: includes/i18n.php:175
|
589 |
msgid "Add Ons for %s"
|
590 |
msgstr "Add Ons for %s"
|
591 |
|
592 |
+
#: includes/i18n.php:176
|
593 |
msgid "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
594 |
msgstr "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
595 |
|
596 |
+
#: includes/i18n.php:178
|
597 |
msgid "Anonymous feedback"
|
598 |
msgstr "Anonymous feedback"
|
599 |
|
600 |
+
#: includes/i18n.php:179
|
601 |
msgid "Quick feedback"
|
602 |
msgstr "Quick feedback"
|
603 |
|
604 |
+
#: includes/i18n.php:180
|
605 |
msgid "If you have a moment, please let us know why you are deactivating"
|
606 |
msgstr "If you have a moment, please let us know why you are deactivating"
|
607 |
|
608 |
+
#: includes/i18n.php:181
|
609 |
msgid "Yes - Deactivate"
|
610 |
msgstr "Yes - Deactivate"
|
611 |
|
612 |
+
#: includes/i18n.php:182
|
613 |
msgid "Submit & Deactivate"
|
614 |
msgstr "Submit & Deactivate"
|
615 |
|
616 |
+
#: includes/i18n.php:183
|
617 |
msgid "Cancel"
|
618 |
msgstr "Cancel"
|
619 |
|
620 |
+
#: includes/i18n.php:184
|
621 |
msgid "I no longer need the plugin"
|
622 |
msgstr "I no longer need the plugin"
|
623 |
|
624 |
+
#: includes/i18n.php:185
|
625 |
msgid "I found a better plugin"
|
626 |
msgstr "I found a better plugin"
|
627 |
|
628 |
+
#: includes/i18n.php:186
|
629 |
msgid "I only needed the plugin for a short period"
|
630 |
msgstr "I only needed the plugin for a short period"
|
631 |
|
632 |
+
#: includes/i18n.php:187
|
633 |
msgid "The plugin broke my site"
|
634 |
msgstr "The plugin broke my site"
|
635 |
|
636 |
+
#: includes/i18n.php:188
|
637 |
msgid "The plugin suddenly stopped working"
|
638 |
msgstr "The plugin suddenly stopped working"
|
639 |
|
640 |
+
#: includes/i18n.php:189
|
641 |
msgid "I can't pay for it anymore"
|
642 |
msgstr "I can't pay for it anymore"
|
643 |
|
644 |
+
#: includes/i18n.php:190
|
645 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
646 |
msgstr "It's a temporary deactivation. I'm just debugging an issue."
|
647 |
|
648 |
+
#: includes/i18n.php:191
|
649 |
msgctxt "the text of the \"other\" reason for deactivating the plugin that is shown in the modal box."
|
650 |
msgid "Other"
|
651 |
msgstr "Other"
|
652 |
|
653 |
+
#: includes/i18n.php:193
|
654 |
msgid "Kindly tell us the reason so we can improve."
|
655 |
msgstr "Kindly tell us the reason so we can improve."
|
656 |
|
657 |
+
#: includes/i18n.php:194
|
658 |
msgid "What's the plugin's name?"
|
659 |
msgstr "What's the plugin's name?"
|
660 |
|
661 |
+
#: includes/i18n.php:195
|
662 |
msgid "What price would you feel comfortable paying?"
|
663 |
msgstr "What price would you feel comfortable paying?"
|
664 |
|
665 |
+
#: includes/i18n.php:196
|
666 |
msgid "I couldn't understand how to make it work"
|
667 |
msgstr "I couldn't understand how to make it work"
|
668 |
|
669 |
+
#: includes/i18n.php:197
|
670 |
msgid "The plugin is great, but I need specific feature that you don't support"
|
671 |
msgstr "The plugin is great, but I need specific feature that you don't support"
|
672 |
|
673 |
+
#: includes/i18n.php:198
|
674 |
msgid "The plugin is not working"
|
675 |
msgstr "The plugin is not working"
|
676 |
|
677 |
+
#: includes/i18n.php:199
|
678 |
msgid "It's not what I was looking for"
|
679 |
msgstr "It's not what I was looking for"
|
680 |
|
681 |
+
#: includes/i18n.php:200
|
682 |
msgid "The plugin didn't work as expected"
|
683 |
msgstr "The plugin didn't work as expected"
|
684 |
|
685 |
+
#: includes/i18n.php:201
|
686 |
msgid "What feature?"
|
687 |
msgstr "What feature?"
|
688 |
|
689 |
+
#: includes/i18n.php:202
|
690 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
691 |
msgstr "Kindly share what didn't work so we can fix it for future users..."
|
692 |
|
693 |
+
#: includes/i18n.php:203
|
694 |
msgid "What you've been looking for?"
|
695 |
msgstr "What you've been looking for?"
|
696 |
|
697 |
+
#: includes/i18n.php:204
|
698 |
msgid "What did you expect?"
|
699 |
msgstr "What did you expect?"
|
700 |
|
701 |
+
#: includes/i18n.php:205
|
702 |
msgid "The plugin didn't work"
|
703 |
msgstr "The plugin didn't work"
|
704 |
|
705 |
+
#: includes/i18n.php:206
|
706 |
msgid "I don't like to share my information with you"
|
707 |
msgstr "I don't like to share my information with you"
|
708 |
|
709 |
+
#: includes/i18n.php:207
|
710 |
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
711 |
msgstr "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
712 |
|
713 |
+
#: includes/i18n.php:211
|
714 |
msgctxt "greeting"
|
715 |
msgid "Hey %s,"
|
716 |
msgstr "Hey %s,"
|
717 |
|
718 |
+
#: includes/i18n.php:212
|
719 |
msgctxt "a greeting. E.g. Thanks John!"
|
720 |
msgid "Thanks %s!"
|
721 |
msgstr "Thanks %s!"
|
722 |
|
723 |
+
#: includes/i18n.php:213
|
724 |
msgid "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
725 |
msgstr "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
726 |
|
727 |
+
#: includes/i18n.php:214
|
728 |
msgid "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
729 |
msgstr "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
730 |
|
731 |
+
#: includes/i18n.php:215
|
732 |
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."
|
733 |
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."
|
734 |
|
735 |
+
#: includes/i18n.php:216
|
736 |
msgid "complete the install"
|
737 |
msgstr "complete the install"
|
738 |
|
739 |
+
#: includes/i18n.php:217
|
740 |
msgid "start the trial"
|
741 |
msgstr "start the trial"
|
742 |
|
743 |
+
#: includes/i18n.php:218
|
744 |
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
745 |
msgstr "Thanks for purchasing %s! To get started, please enter your license key:"
|
746 |
|
747 |
+
#: includes/i18n.php:219
|
748 |
msgid "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
749 |
msgstr "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
750 |
|
751 |
+
#: includes/i18n.php:220
|
752 |
msgid "What permissions are being granted?"
|
753 |
msgstr "What permissions are being granted?"
|
754 |
|
755 |
+
#: includes/i18n.php:221
|
756 |
msgid "Your Profile Overview"
|
757 |
msgstr "Your Profile Overview"
|
758 |
|
759 |
+
#: includes/i18n.php:222
|
760 |
msgid "Name and email address"
|
761 |
msgstr "Name and email address"
|
762 |
|
763 |
+
#: includes/i18n.php:223
|
764 |
msgid "Your Site Overview"
|
765 |
msgstr "Your Site Overview"
|
766 |
|
767 |
+
#: includes/i18n.php:224
|
768 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
769 |
msgstr "Site URL, WP version, PHP info, plugins & themes"
|
770 |
|
771 |
+
#: includes/i18n.php:225
|
772 |
msgid "Current Plugin Events"
|
773 |
msgstr "Current Plugin Events"
|
774 |
|
775 |
+
#: includes/i18n.php:226
|
776 |
msgid "Activation, deactivation and uninstall"
|
777 |
msgstr "Activation, deactivation and uninstall"
|
778 |
|
779 |
+
#: includes/i18n.php:227
|
780 |
msgid "Plugins & Themes"
|
781 |
msgstr "Plugins & Themes"
|
782 |
|
783 |
+
#: includes/i18n.php:228
|
784 |
msgid "Titles, versions and state."
|
785 |
msgstr "Titles, versions and state."
|
786 |
|
787 |
+
#: includes/i18n.php:229
|
788 |
msgid "Admin Notices"
|
789 |
msgstr "Admin Notices"
|
790 |
|
791 |
+
#: includes/i18n.php:230
|
792 |
msgid "Newsletter"
|
793 |
msgstr "Newsletter"
|
794 |
|
795 |
+
#: includes/i18n.php:231
|
796 |
msgid "Updates, announcements, marketing, no spam"
|
797 |
msgstr "Updates, announcements, marketing, no spam"
|
798 |
|
799 |
+
#: includes/i18n.php:232
|
800 |
msgid "Privacy Policy"
|
801 |
msgstr "Privacy Policy"
|
802 |
|
803 |
+
#: includes/i18n.php:233
|
804 |
msgid "Terms of Service"
|
805 |
msgstr "Terms of Service"
|
806 |
|
807 |
+
#: includes/i18n.php:234
|
808 |
msgctxt "as activating plugin"
|
809 |
msgid "Activating"
|
810 |
msgstr "Activating"
|
811 |
|
812 |
+
#: includes/i18n.php:235
|
813 |
msgctxt "as in the process of sending an email"
|
814 |
msgid "Sending email"
|
815 |
msgstr "Sending email"
|
816 |
|
817 |
+
#: includes/i18n.php:236
|
818 |
msgctxt "button label"
|
819 |
msgid "Allow & Continue"
|
820 |
msgstr "Allow & Continue"
|
821 |
|
822 |
+
#: includes/i18n.php:237
|
823 |
msgctxt "button label"
|
824 |
msgid "Agree & Activate License"
|
825 |
msgstr "Agree & Activate License"
|
826 |
|
827 |
+
#: includes/i18n.php:238
|
828 |
msgctxt "verb"
|
829 |
msgid "Skip"
|
830 |
msgstr "Skip"
|
831 |
|
832 |
+
#: includes/i18n.php:239
|
833 |
msgid "Click here to use the plugin anonymously"
|
834 |
msgstr "Click here to use the plugin anonymously"
|
835 |
|
836 |
+
#: includes/i18n.php:240
|
837 |
msgid "Re-send activation email"
|
838 |
msgstr "Re-send activation email"
|
839 |
|
840 |
+
#: includes/i18n.php:241
|
841 |
msgid "License key"
|
842 |
msgstr "License key"
|
843 |
|
844 |
+
#: includes/i18n.php:242
|
845 |
msgid "Send License Key"
|
846 |
msgstr "Send License Key"
|
847 |
|
848 |
+
#: includes/i18n.php:243
|
849 |
msgid "Sending license key"
|
850 |
msgstr "Sending license key"
|
851 |
|
852 |
+
#: includes/i18n.php:244
|
853 |
msgid "Have a license key?"
|
854 |
msgstr "Have a license key?"
|
855 |
|
856 |
+
#: includes/i18n.php:245
|
857 |
msgid "Don't have a license key?"
|
858 |
msgstr "Don't have a license key?"
|
859 |
|
860 |
+
#: includes/i18n.php:246
|
861 |
msgid "Can't find your license key?"
|
862 |
msgstr "Can't find your license key?"
|
863 |
|
864 |
+
#: includes/i18n.php:247
|
865 |
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
866 |
msgstr "We couldn't find your email address in the system, are you sure it's the right address?"
|
867 |
|
868 |
+
#: includes/i18n.php:248
|
869 |
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
870 |
msgstr "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
871 |
|
872 |
+
#: includes/i18n.php:249
|
873 |
msgid "Opt In"
|
874 |
msgstr "Opt In"
|
875 |
|
876 |
+
#: includes/i18n.php:250
|
877 |
msgid "Opt Out"
|
878 |
msgstr "Opt Out"
|
879 |
|
880 |
+
#: includes/i18n.php:251
|
881 |
msgid "On second thought - I want to continue helping"
|
882 |
msgstr "On second thought - I want to continue helping"
|
883 |
|
884 |
+
#: includes/i18n.php:252
|
885 |
msgid "Opting out..."
|
886 |
msgstr "Opting out..."
|
887 |
|
888 |
+
#: includes/i18n.php:253
|
889 |
msgid "Opting in..."
|
890 |
msgstr "Opting in..."
|
891 |
|
892 |
+
#: includes/i18n.php:254
|
893 |
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
894 |
msgstr "We appreciate your help in making the %s better by letting us track some usage data."
|
895 |
|
896 |
+
#: includes/i18n.php:255
|
897 |
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."
|
898 |
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."
|
899 |
|
900 |
+
#: includes/i18n.php:256
|
901 |
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
902 |
msgstr "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
903 |
|
904 |
+
#: includes/i18n.php:260
|
905 |
msgid "Screenshots"
|
906 |
msgstr "Screenshots"
|
907 |
|
908 |
+
#: includes/i18n.php:261
|
909 |
msgid "Click to view full-size screenshot %d"
|
910 |
msgstr "Click to view full-size screenshot %d"
|
911 |
|
912 |
+
#: includes/i18n.php:265
|
913 |
msgid "Freemius Debug"
|
914 |
msgstr "Freemius Debug"
|
915 |
|
916 |
+
#: includes/i18n.php:266
|
917 |
msgctxt "as turned on"
|
918 |
msgid "On"
|
919 |
msgstr "On"
|
920 |
|
921 |
+
#: includes/i18n.php:267
|
922 |
msgctxt "as turned off"
|
923 |
msgid "Off"
|
924 |
msgstr "Off"
|
925 |
|
926 |
+
#: includes/i18n.php:268
|
927 |
msgctxt "as code debugging"
|
928 |
msgid "Debugging"
|
929 |
msgstr "Debugging"
|
930 |
|
931 |
+
#: includes/i18n.php:269
|
932 |
msgid "Freemius State"
|
933 |
msgstr "Freemius State"
|
934 |
|
935 |
+
#: includes/i18n.php:270
|
936 |
msgctxt "as connection was successful"
|
937 |
msgid "Connected"
|
938 |
msgstr "Connected"
|
939 |
|
940 |
+
#: includes/i18n.php:271
|
941 |
msgctxt "as connection blocked"
|
942 |
msgid "Blocked"
|
943 |
msgstr "Blocked"
|
944 |
|
945 |
+
#: includes/i18n.php:272
|
946 |
msgctxt "as application program interface"
|
947 |
msgid "API"
|
948 |
msgstr "API"
|
949 |
|
950 |
+
#: includes/i18n.php:273
|
951 |
msgctxt "as software development kit versions"
|
952 |
msgid "SDK"
|
953 |
msgstr "SDK"
|
954 |
|
955 |
+
#: includes/i18n.php:274
|
956 |
msgctxt "as software development kit versions"
|
957 |
msgid "SDK Versions"
|
958 |
msgstr "SDK Versions"
|
959 |
|
960 |
+
#: includes/i18n.php:275
|
961 |
msgctxt "as plugin folder path"
|
962 |
msgid "Plugin Path"
|
963 |
msgstr "Plugin Path"
|
964 |
|
965 |
+
#: includes/i18n.php:276
|
966 |
msgctxt "as sdk path"
|
967 |
msgid "SDK Path"
|
968 |
msgstr "SDK Path"
|
969 |
|
970 |
+
#: includes/i18n.php:277
|
971 |
msgid "Add Ons of Plugin %s"
|
972 |
msgstr "Add Ons of Plugin %s"
|
973 |
|
974 |
+
#: includes/i18n.php:278
|
975 |
msgid "Are you sure you want to delete all Freemius data?"
|
976 |
msgstr "Are you sure you want to delete all Freemius data?"
|
977 |
|
978 |
+
#: includes/i18n.php:279
|
979 |
msgid "Actions"
|
980 |
msgstr "Actions"
|
981 |
|
982 |
+
#: includes/i18n.php:280
|
983 |
msgid "Delete All Accounts"
|
984 |
msgstr "Delete All Accounts"
|
985 |
|
986 |
+
#: includes/i18n.php:281
|
987 |
msgid "Start Fresh"
|
988 |
msgstr "Start Fresh"
|
989 |
|
990 |
+
#: includes/i18n.php:282
|
991 |
msgid "Clear API Cache"
|
992 |
msgstr "Clear API Cache"
|
993 |
|
994 |
+
#: includes/i18n.php:283
|
995 |
msgid "Sync Data From Server"
|
996 |
msgstr "Sync Data From Server"
|
997 |
|
998 |
+
#: includes/i18n.php:284
|
999 |
msgid "Scheduled Crons"
|
1000 |
msgstr "Scheduled Crons"
|
1001 |
|
1002 |
+
#: includes/i18n.php:285
|
1003 |
+
msgid "Cron Type"
|
1004 |
+
msgstr "Cron Type"
|
1005 |
+
|
1006 |
+
#: includes/i18n.php:286
|
1007 |
msgid "Plugins & Themes Sync"
|
1008 |
msgstr "Plugins & Themes Sync"
|
1009 |
|
1010 |
+
#: includes/i18n.php:287
|
1011 |
+
msgid "Licenses"
|
1012 |
+
msgstr "Licenses"
|
1013 |
+
|
1014 |
+
#: includes/i18n.php:288
|
1015 |
+
msgid "Debug Log"
|
1016 |
+
msgstr "Debug Log"
|
1017 |
+
|
1018 |
+
#: includes/i18n.php:289
|
1019 |
+
msgid "All"
|
1020 |
+
msgstr "All"
|
1021 |
+
|
1022 |
+
#: includes/i18n.php:290
|
1023 |
+
msgid "File"
|
1024 |
+
msgstr "File"
|
1025 |
+
|
1026 |
+
#: includes/i18n.php:291
|
1027 |
+
msgid "Function"
|
1028 |
+
msgstr "Function"
|
1029 |
+
|
1030 |
+
#: includes/i18n.php:292
|
1031 |
+
msgid "Process ID"
|
1032 |
+
msgstr "Process ID"
|
1033 |
+
|
1034 |
+
#: includes/i18n.php:293
|
1035 |
+
msgid "Logger"
|
1036 |
+
msgstr "Logger"
|
1037 |
+
|
1038 |
+
#: includes/i18n.php:294
|
1039 |
+
msgid "Message"
|
1040 |
+
msgstr "Message"
|
1041 |
+
|
1042 |
+
#: includes/i18n.php:295
|
1043 |
+
msgid "Download"
|
1044 |
+
msgstr "Download"
|
1045 |
+
|
1046 |
+
#: includes/i18n.php:296
|
1047 |
+
msgid "Filter"
|
1048 |
+
msgstr "Filter"
|
1049 |
+
|
1050 |
+
#: includes/i18n.php:297
|
1051 |
+
msgid "Type"
|
1052 |
+
msgstr "Type"
|
1053 |
+
|
1054 |
+
#: includes/i18n.php:298
|
1055 |
+
msgid "All Types"
|
1056 |
+
msgstr "All Types"
|
1057 |
+
|
1058 |
+
#: includes/i18n.php:299
|
1059 |
+
msgid "All Requests"
|
1060 |
+
msgstr "All Requests"
|
1061 |
+
|
1062 |
+
#: includes/i18n.php:303
|
1063 |
msgctxt "as congratulations"
|
1064 |
msgid "Congrats"
|
1065 |
msgstr "Congrats"
|
1066 |
|
1067 |
+
#: includes/i18n.php:304
|
1068 |
msgctxt "exclamation"
|
1069 |
msgid "Oops"
|
1070 |
msgstr "Oops"
|
1071 |
|
1072 |
+
#: includes/i18n.php:305
|
1073 |
msgctxt "interjection expressing joy or exuberance"
|
1074 |
msgid "Yee-haw"
|
1075 |
msgstr "Yee-haw"
|
1076 |
|
1077 |
+
#: includes/i18n.php:306
|
1078 |
msgctxt "(especially in electronic communication) used to express elation, enthusiasm, or triumph."
|
1079 |
msgid "W00t"
|
1080 |
msgstr "W00t"
|
1081 |
|
1082 |
+
#: includes/i18n.php:308
|
1083 |
msgctxt "a positive response"
|
1084 |
msgid "Right on"
|
1085 |
msgstr "Right on"
|
1086 |
|
1087 |
+
#: includes/i18n.php:309
|
1088 |
msgctxt "something somebody says when they are thinking about what you have just said. "
|
1089 |
msgid "Hmm"
|
1090 |
msgstr "Hmm"
|
1091 |
|
1092 |
+
#: includes/i18n.php:311
|
1093 |
msgid "O.K"
|
1094 |
msgstr "O.K"
|
1095 |
|
1096 |
+
#: includes/i18n.php:312
|
1097 |
msgctxt "exclamation"
|
1098 |
msgid "Hey"
|
1099 |
msgstr "Hey"
|
1100 |
|
1101 |
+
#: includes/i18n.php:313
|
1102 |
msgctxt "advance notice of something that will need attention."
|
1103 |
msgid "Heads up"
|
1104 |
msgstr "Heads up"
|
1105 |
|
1106 |
+
#: includes/i18n.php:318
|
1107 |
msgid "Seems like you got the latest release."
|
1108 |
msgstr "Seems like you got the latest release."
|
1109 |
|
1110 |
+
#: includes/i18n.php:319
|
1111 |
msgid "You are all good!"
|
1112 |
msgstr "You are all good!"
|
1113 |
|
1114 |
+
#: includes/i18n.php:320
|
1115 |
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1116 |
msgstr "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1117 |
|
1118 |
+
#: includes/i18n.php:321
|
1119 |
msgid "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1120 |
msgstr "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1121 |
|
1122 |
+
#: includes/i18n.php:322
|
1123 |
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1124 |
msgstr "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1125 |
|
1126 |
+
#: includes/i18n.php:323
|
1127 |
msgid "Your name was successfully updated."
|
1128 |
msgstr "Your name was successfully updated."
|
1129 |
|
1130 |
+
#: includes/i18n.php:324
|
1131 |
msgid "You have successfully updated your %s."
|
1132 |
msgstr "You have successfully updated your %s."
|
1133 |
|
1134 |
+
#: includes/i18n.php:325
|
1135 |
msgid "Please provide your full name."
|
1136 |
msgstr "Please provide your full name."
|
1137 |
|
1138 |
+
#: includes/i18n.php:326
|
1139 |
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1140 |
msgstr "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1141 |
|
1142 |
+
#: includes/i18n.php:327
|
1143 |
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1144 |
msgstr "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1145 |
|
1146 |
+
#: includes/i18n.php:328
|
1147 |
msgid "No credit card required"
|
1148 |
msgstr "No credit card required"
|
1149 |
|
1150 |
+
#: includes/i18n.php:329
|
1151 |
msgid "Premium plugin version was successfully activated."
|
1152 |
msgstr "Premium plugin version was successfully activated."
|
1153 |
|
1154 |
+
#: includes/i18n.php:330
|
1155 |
msgid "The upgrade of %s was successfully completed."
|
1156 |
msgstr "The upgrade of %s was successfully completed."
|
1157 |
|
1158 |
+
#: includes/i18n.php:331
|
1159 |
msgid "Your account was successfully activated with the %s plan."
|
1160 |
msgstr "Your account was successfully activated with the %s plan."
|
1161 |
|
1162 |
+
#: includes/i18n.php:332
|
1163 |
msgid "Download the latest %s version now"
|
1164 |
msgstr "Download the latest %s version now"
|
1165 |
|
1166 |
+
#: includes/i18n.php:333
|
1167 |
msgid "Please follow these steps to complete the upgrade"
|
1168 |
msgstr "Please follow these steps to complete the upgrade"
|
1169 |
|
1170 |
+
#: includes/i18n.php:334
|
1171 |
msgid "Download the latest %s version"
|
1172 |
msgstr "Download the latest %s version"
|
1173 |
|
1174 |
+
#: includes/i18n.php:335
|
1175 |
msgid "Download the latest version"
|
1176 |
msgstr "Download the latest version"
|
1177 |
|
1178 |
+
#: includes/i18n.php:336
|
1179 |
msgid "Deactivate the free version"
|
1180 |
msgstr "Deactivate the free version"
|
1181 |
|
1182 |
+
#: includes/i18n.php:337
|
1183 |
msgid "Upload and activate the downloaded version"
|
1184 |
msgstr "Upload and activate the downloaded version"
|
1185 |
|
1186 |
+
#: includes/i18n.php:338
|
1187 |
msgid "How to upload and activate?"
|
1188 |
msgstr "How to upload and activate?"
|
1189 |
|
1190 |
+
#: includes/i18n.php:339
|
1191 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1192 |
msgid "%s Add-on was successfully purchased."
|
1193 |
msgstr "%s Add-on was successfully purchased."
|
1194 |
|
1195 |
+
#: includes/i18n.php:341
|
1196 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1197 |
msgstr "Your %s Add-on plan was successfully upgraded."
|
1198 |
|
1199 |
+
#: includes/i18n.php:342
|
1200 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1201 |
msgstr "Your email has been successfully verified - you are AWESOME!"
|
1202 |
|
1203 |
+
#: includes/i18n.php:343
|
1204 |
msgid "Your plan was successfully upgraded."
|
1205 |
msgstr "Your plan was successfully upgraded."
|
1206 |
|
1207 |
+
#: includes/i18n.php:344
|
1208 |
msgid "Your plan was successfully changed to %s."
|
1209 |
msgstr "Your plan was successfully changed to %s."
|
1210 |
|
1211 |
+
#: includes/i18n.php:345
|
1212 |
msgid "Your license has expired. You can still continue using the free plugin forever."
|
1213 |
msgstr "Your license has expired. You can still continue using the free plugin forever."
|
1214 |
|
1215 |
+
#: includes/i18n.php:346
|
1216 |
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1217 |
msgstr "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1218 |
|
1219 |
+
#: includes/i18n.php:347
|
1220 |
msgid "Your trial has been successfully started."
|
1221 |
msgstr "Your trial has been successfully started."
|
1222 |
|
1223 |
+
#: includes/i18n.php:348
|
1224 |
msgid "Your license was successfully activated."
|
1225 |
msgstr "Your license was successfully activated."
|
1226 |
|
1227 |
+
#: includes/i18n.php:349
|
1228 |
msgid "It looks like your site currently doesn't have an active license."
|
1229 |
msgstr "It looks like your site currently doesn't have an active license."
|
1230 |
|
1231 |
+
#: includes/i18n.php:350
|
1232 |
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
1233 |
msgstr "Your license was successfully deactivated, you are back to the %s plan."
|
1234 |
|
1235 |
+
#: includes/i18n.php:351
|
1236 |
msgid "It looks like the license deactivation failed."
|
1237 |
msgstr "It looks like the license deactivation failed."
|
1238 |
|
1239 |
+
#: includes/i18n.php:352
|
1240 |
msgid "It looks like the license could not be activated."
|
1241 |
msgstr "It looks like the license could not be activated."
|
1242 |
|
1243 |
+
#: includes/i18n.php:353
|
1244 |
msgid "Error received from the server:"
|
1245 |
msgstr "Error received from the server:"
|
1246 |
|
1247 |
+
#: includes/i18n.php:354
|
1248 |
msgid "Your trial has expired. You can still continue using all our free features."
|
1249 |
msgstr "Your trial has expired. You can still continue using all our free features."
|
1250 |
|
1251 |
+
#: includes/i18n.php:355
|
1252 |
msgid "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1253 |
msgstr "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1254 |
|
1255 |
+
#: includes/i18n.php:356
|
1256 |
msgid "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1257 |
msgstr "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1258 |
|
1259 |
+
#: includes/i18n.php:357
|
1260 |
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1261 |
msgstr "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1262 |
|
1263 |
+
#: includes/i18n.php:358
|
1264 |
msgid "Your %s free trial was successfully cancelled."
|
1265 |
msgstr "Your %s free trial was successfully cancelled."
|
1266 |
|
1267 |
+
#: includes/i18n.php:359
|
1268 |
msgctxt "%s - numeric version number"
|
1269 |
msgid "Version %s was released."
|
1270 |
msgstr "Version %s was released."
|
1271 |
|
1272 |
+
#: includes/i18n.php:360
|
1273 |
msgid "Please download %s."
|
1274 |
msgstr "Please download %s."
|
1275 |
|
1276 |
+
#: includes/i18n.php:361
|
1277 |
msgctxt "%s - plan name, as the latest professional version here"
|
1278 |
msgid "the latest %s version here"
|
1279 |
msgstr "the latest %s version here"
|
1280 |
|
1281 |
+
#: includes/i18n.php:363
|
1282 |
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1283 |
msgstr "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1284 |
|
1285 |
+
#: includes/i18n.php:364
|
1286 |
msgctxt "call to action"
|
1287 |
msgid "Start free trial"
|
1288 |
msgstr "Start free trial"
|
1289 |
|
1290 |
+
#: includes/i18n.php:365
|
1291 |
msgid "Starting trial"
|
1292 |
msgstr "Starting trial"
|
1293 |
|
1294 |
+
#: includes/i18n.php:366
|
1295 |
msgid "Please wait"
|
1296 |
msgstr "Please wait"
|
1297 |
|
1298 |
+
#: includes/i18n.php:367
|
1299 |
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1300 |
msgstr "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1301 |
|
1302 |
+
#: includes/i18n.php:368
|
1303 |
msgid "You already utilized a trial before."
|
1304 |
msgstr "You already utilized a trial before."
|
1305 |
|
1306 |
+
#: includes/i18n.php:369
|
1307 |
msgid "You are already running the plugin in a trial mode."
|
1308 |
msgstr "You are already running the plugin in a trial mode."
|
1309 |
|
1310 |
+
#: includes/i18n.php:370
|
1311 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1312 |
msgstr "Plan %s do not exist, therefore, can't start a trial."
|
1313 |
|
1314 |
+
#: includes/i18n.php:371
|
1315 |
msgid "Plan %s does not support a trial period."
|
1316 |
msgstr "Plan %s does not support a trial period."
|
1317 |
|
1318 |
+
#: includes/i18n.php:372
|
1319 |
msgid "None of the plugin's plans supports a trial period."
|
1320 |
msgstr "None of the plugin's plans supports a trial period."
|
1321 |
|
1322 |
+
#: includes/i18n.php:373
|
1323 |
msgid "Unexpected API error. Please contact the plugin's author with the following error."
|
1324 |
msgstr "Unexpected API error. Please contact the plugin's author with the following error."
|
1325 |
|
1326 |
+
#: includes/i18n.php:374
|
1327 |
msgid "No commitment for %s days - cancel anytime!"
|
1328 |
msgstr "No commitment for %s days - cancel anytime!"
|
1329 |
|
1330 |
+
#: includes/i18n.php:375
|
1331 |
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."
|
1332 |
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."
|
1333 |
|
1334 |
+
#: includes/i18n.php:376
|
1335 |
msgid "Couldn't activate %s."
|
1336 |
msgstr "Couldn't activate %s."
|
1337 |
|
1338 |
+
#: includes/i18n.php:377
|
1339 |
msgid "Please contact us with the following message:"
|
1340 |
msgstr "Please contact us with the following message:"
|
1341 |
|
1342 |
+
#: includes/i18n.php:378
|
1343 |
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."
|
1344 |
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."
|
1345 |
|
1346 |
+
#: includes/i18n.php:379
|
1347 |
msgid "Please contact us here"
|
1348 |
msgstr "Please contact us here"
|
1349 |
|
1350 |
+
#: includes/i18n.php:380
|
1351 |
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1352 |
msgstr "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1353 |
|
1354 |
+
#: includes/i18n.php:383
|
1355 |
msgid "From unknown reason, the API connectivity test failed."
|
1356 |
msgstr "From unknown reason, the API connectivity test failed."
|
1357 |
|
1358 |
+
#: includes/i18n.php:384
|
1359 |
msgid "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1360 |
msgstr "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1361 |
|
1362 |
+
#: includes/i18n.php:385
|
1363 |
msgid "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1364 |
msgstr "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1365 |
|
1366 |
+
#: includes/i18n.php:386
|
1367 |
msgid "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1368 |
msgstr "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1369 |
|
1370 |
+
#: includes/i18n.php:387
|
1371 |
msgctxt "as pluginX requires an access to our API"
|
1372 |
msgid "%s requires an access to our API."
|
1373 |
msgstr "%s requires an access to our API."
|
1374 |
|
1375 |
+
#: includes/i18n.php:389
|
1376 |
msgid "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1377 |
msgstr "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1378 |
|
1379 |
+
#: includes/i18n.php:390
|
1380 |
msgid "I don't know what is Squid or ACL, help me!"
|
1381 |
msgstr "I don't know what is Squid or ACL, help me!"
|
1382 |
|
1383 |
+
#: includes/i18n.php:391, includes/i18n.php:395
|
1384 |
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."
|
1385 |
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."
|
1386 |
|
1387 |
+
#: includes/i18n.php:392
|
1388 |
msgid "I'm a system administrator"
|
1389 |
msgstr "I'm a system administrator"
|
1390 |
|
1391 |
+
#: includes/i18n.php:393
|
1392 |
+
msgid "Great, please whitelist the following domains: %s. Once you are done, deactivate the plugin and activate it again."
|
1393 |
+
msgstr "Great, please whitelist the following domains: %s. Once you are done, deactivate the plugin and activate it again."
|
1394 |
|
1395 |
+
#: includes/i18n.php:394
|
1396 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1397 |
msgstr "I don't know what is cURL or how to install it, help me!"
|
1398 |
|
1399 |
+
#: includes/i18n.php:396
|
1400 |
msgid "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1401 |
msgstr "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1402 |
|
1403 |
+
#: includes/i18n.php:397
|
1404 |
msgid "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1405 |
msgstr "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1406 |
|
1407 |
+
#: includes/i18n.php:398
|
1408 |
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1409 |
msgstr "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1410 |
|
1411 |
+
#: includes/i18n.php:399
|
1412 |
msgid "Yes - I'm giving you a chance to fix it"
|
1413 |
msgstr "Yes - I'm giving you a chance to fix it"
|
1414 |
|
1415 |
+
#: includes/i18n.php:400
|
1416 |
msgid "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1417 |
msgstr "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1418 |
|
1419 |
+
#: includes/i18n.php:401
|
1420 |
msgid "Let's try your previous version"
|
1421 |
msgstr "Let's try your previous version"
|
1422 |
|
1423 |
+
#: includes/i18n.php:402
|
1424 |
msgid "Uninstall this version and install the previous one."
|
1425 |
msgstr "Uninstall this version and install the previous one."
|
1426 |
|
1427 |
+
#: includes/i18n.php:403
|
1428 |
msgid "That's exhausting, please deactivate"
|
1429 |
msgstr "That's exhausting, please deactivate"
|
1430 |
|
1431 |
+
#: includes/i18n.php:404
|
1432 |
msgid "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1433 |
msgstr "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1434 |
|
1435 |
+
#: includes/i18n.php:405
|
1436 |
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."
|
1437 |
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."
|
1438 |
|
1439 |
+
#: includes/i18n.php:406
|
1440 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1441 |
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1442 |
msgstr "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1443 |
|
1444 |
+
#: includes/i18n.php:408
|
1445 |
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1446 |
msgstr "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1447 |
|
1448 |
+
#: includes/i18n.php:411
|
1449 |
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."
|
1450 |
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."
|
1451 |
|
1452 |
+
#: includes/i18n.php:412
|
1453 |
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1454 |
msgstr "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1455 |
|
1456 |
+
#: includes/i18n.php:413
|
1457 |
msgid "%s is the new owner of the account."
|
1458 |
msgstr "%s is the new owner of the account."
|
1459 |
|
1460 |
+
#: includes/i18n.php:415
|
1461 |
msgctxt "addonX cannot run without pluginY"
|
1462 |
msgid "%s cannot run without %s."
|
1463 |
msgstr "%s cannot run without %s."
|
1464 |
|
1465 |
+
#: includes/i18n.php:417
|
1466 |
msgctxt "addonX cannot run..."
|
1467 |
msgid "%s cannot run without the plugin."
|
1468 |
msgstr "%s cannot run without the plugin."
|
1469 |
|
1470 |
+
#: includes/i18n.php:418
|
1471 |
msgctxt "pluginX activation was successfully..."
|
1472 |
msgid "%s activation was successfully completed."
|
1473 |
msgstr "%s activation was successfully completed."
|
1474 |
|
1475 |
+
#: includes/i18n.php:420
|
1476 |
msgctxt "Plugin installer section title"
|
1477 |
msgid "Features & Pricing"
|
1478 |
msgstr "Features & Pricing"
|
1479 |
|
1480 |
+
#: includes/i18n.php:421
|
1481 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1482 |
msgstr "Add-on must be deployed to WordPress.org or Freemius."
|
1483 |
|
1484 |
+
#: includes/i18n.php:422
|
1485 |
msgid "Paid add-on must be deployed to Freemius."
|
1486 |
msgstr "Paid add-on must be deployed to Freemius."
|
1487 |
|
1488 |
+
#: includes/i18n.php:426
|
1489 |
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1490 |
msgstr "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1491 |
|
1492 |
+
#: includes/i18n.php:427
|
1493 |
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."
|
1494 |
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."
|
1495 |
|
1496 |
+
#: includes/i18n.php:432
|
1497 |
msgctxt "as every month"
|
1498 |
msgid "Monthly"
|
1499 |
msgstr "Monthly"
|
1500 |
|
1501 |
+
#: includes/i18n.php:433
|
1502 |
msgctxt "as monthly period"
|
1503 |
msgid "mo"
|
1504 |
msgstr "mo"
|
1505 |
|
1506 |
+
#: includes/i18n.php:434
|
1507 |
msgctxt "as once a year"
|
1508 |
msgid "Annual"
|
1509 |
msgstr "Annual"
|
1510 |
|
1511 |
+
#: includes/i18n.php:435
|
1512 |
msgctxt "as once a year"
|
1513 |
msgid "Annually"
|
1514 |
msgstr "Annually"
|
1515 |
|
1516 |
+
#: includes/i18n.php:436
|
1517 |
msgctxt "as once a year"
|
1518 |
msgid "Once"
|
1519 |
msgstr "Once"
|
1520 |
|
1521 |
+
#: includes/i18n.php:437
|
1522 |
msgctxt "as annual period"
|
1523 |
msgid "year"
|
1524 |
msgstr "year"
|
1525 |
|
1526 |
+
#: includes/i18n.php:438
|
1527 |
msgid "Lifetime"
|
1528 |
msgstr "Lifetime"
|
1529 |
|
1530 |
+
#: includes/i18n.php:439
|
1531 |
msgctxt "e.g. the best product"
|
1532 |
msgid "Best"
|
1533 |
msgstr "Best"
|
1534 |
|
1535 |
+
#: includes/i18n.php:440
|
1536 |
msgctxt "e.g. billed monthly"
|
1537 |
msgid "Billed %s"
|
1538 |
msgstr "Billed %s"
|
1539 |
|
1540 |
+
#: includes/i18n.php:441
|
1541 |
msgctxt "as a discount of $5 or 10%"
|
1542 |
msgid "Save %s"
|
1543 |
msgstr "Save %s"
|
1544 |
|
1545 |
+
#: includes/i18n.php:443
|
1546 |
msgid "View details"
|
1547 |
msgstr "View details"
|
1548 |
|
1549 |
+
#: includes/i18n.php:447
|
1550 |
msgctxt "button label"
|
1551 |
msgid "Approve & Start Trial"
|
1552 |
msgstr "Approve & Start Trial"
|
1553 |
|
1554 |
+
#: includes/i18n.php:449
|
1555 |
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1556 |
msgstr "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1557 |
|
1558 |
+
#: includes/i18n.php:451
|
1559 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1560 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1561 |
|
1562 |
+
#: includes/i18n.php:457
|
1563 |
msgid "Business name"
|
1564 |
msgstr "Business name"
|
1565 |
|
1566 |
+
#: includes/i18n.php:458
|
1567 |
msgid "Tax / VAT ID"
|
1568 |
msgstr "Tax / VAT ID"
|
1569 |
|
1570 |
+
#: includes/i18n.php:459
|
1571 |
msgid "Address Line %d"
|
1572 |
msgstr "Address Line %d"
|
1573 |
|
1574 |
+
#: includes/i18n.php:460
|
1575 |
msgid "Country"
|
1576 |
msgstr "Country"
|
1577 |
|
1578 |
+
#: includes/i18n.php:461
|
1579 |
msgid "Select Country"
|
1580 |
msgstr "Select Country"
|
1581 |
|
1582 |
+
#: includes/i18n.php:462
|
1583 |
msgid "City"
|
1584 |
msgstr "City"
|
1585 |
|
1586 |
+
#: includes/i18n.php:463
|
1587 |
msgid "Town"
|
1588 |
msgstr "Town"
|
1589 |
|
1590 |
+
#: includes/i18n.php:464
|
1591 |
msgid "State"
|
1592 |
msgstr "State"
|
1593 |
|
1594 |
+
#: includes/i18n.php:465
|
1595 |
msgid "Province"
|
1596 |
msgstr "Province"
|
1597 |
|
1598 |
+
#: includes/i18n.php:466
|
1599 |
msgid "ZIP / Postal Code"
|
1600 |
msgstr "ZIP / Postal Code"
|
1601 |
+
|
1602 |
+
#: includes/i18n.php:481
|
1603 |
+
msgctxt "Plugin installer section title"
|
1604 |
+
msgid "Description"
|
1605 |
+
msgstr "Description"
|
1606 |
+
|
1607 |
+
#: includes/i18n.php:482
|
1608 |
+
msgctxt "Plugin installer section title"
|
1609 |
+
msgid "Installation"
|
1610 |
+
msgstr "Installation"
|
1611 |
+
|
1612 |
+
#: includes/i18n.php:483
|
1613 |
+
msgctxt "Plugin installer section title"
|
1614 |
+
msgid "FAQ"
|
1615 |
+
msgstr "FAQ"
|
1616 |
+
|
1617 |
+
#: includes/i18n.php:484
|
1618 |
+
msgctxt "Plugin installer section title"
|
1619 |
+
msgid "Changelog"
|
1620 |
+
msgstr "Changelog"
|
1621 |
+
|
1622 |
+
#: includes/i18n.php:485
|
1623 |
+
msgctxt "Plugin installer section title"
|
1624 |
+
msgid "Reviews"
|
1625 |
+
msgstr "Reviews"
|
1626 |
+
|
1627 |
+
#: includes/i18n.php:486
|
1628 |
+
msgctxt "Plugin installer section title"
|
1629 |
+
msgid "Other Notes"
|
1630 |
+
msgstr "Other Notes"
|
1631 |
+
|
1632 |
+
#: includes/i18n.php:488
|
1633 |
+
msgid "%s star"
|
1634 |
+
msgstr "%s star"
|
1635 |
+
|
1636 |
+
#: includes/i18n.php:490
|
1637 |
+
msgid "%s stars"
|
1638 |
+
msgstr "%s stars"
|
1639 |
+
|
1640 |
+
#: includes/i18n.php:492
|
1641 |
+
msgid "%s rating"
|
1642 |
+
msgstr "%s rating"
|
1643 |
+
|
1644 |
+
#: includes/i18n.php:494
|
1645 |
+
msgid "%s ratings"
|
1646 |
+
msgstr "%s ratings"
|
1647 |
+
|
1648 |
+
#: includes/i18n.php:496
|
1649 |
+
msgid "%s time"
|
1650 |
+
msgstr "%s time"
|
1651 |
+
|
1652 |
+
#: includes/i18n.php:498
|
1653 |
+
msgid "%s times"
|
1654 |
+
msgstr "%s times"
|
1655 |
+
|
1656 |
+
#: includes/i18n.php:500
|
1657 |
+
msgid "Click to see reviews that provided a rating of %s"
|
1658 |
+
msgstr "Click to see reviews that provided a rating of %s"
|
1659 |
+
|
1660 |
+
#: includes/i18n.php:501
|
1661 |
+
msgid "Last Updated"
|
1662 |
+
msgstr "Last Updated"
|
1663 |
+
|
1664 |
+
#: includes/i18n.php:502
|
1665 |
+
msgid "Requires WordPress Version:"
|
1666 |
+
msgstr "Requires WordPress Version:"
|
1667 |
+
|
1668 |
+
#: includes/i18n.php:503
|
1669 |
+
msgctxt "as the plugin author"
|
1670 |
+
msgid "Author:"
|
1671 |
+
msgstr "Author:"
|
1672 |
+
|
1673 |
+
#: includes/i18n.php:504
|
1674 |
+
msgid "Compatible up to:"
|
1675 |
+
msgstr "Compatible up to:"
|
1676 |
+
|
1677 |
+
#: includes/i18n.php:505
|
1678 |
+
msgid "Downloaded:"
|
1679 |
+
msgstr "Downloaded:"
|
1680 |
+
|
1681 |
+
#: includes/i18n.php:506
|
1682 |
+
msgid "WordPress.org Plugin Page"
|
1683 |
+
msgstr "WordPress.org Plugin Page"
|
1684 |
+
|
1685 |
+
#: includes/i18n.php:507
|
1686 |
+
msgid "Plugin Homepage"
|
1687 |
+
msgstr "Plugin Homepage"
|
1688 |
+
|
1689 |
+
#: includes/i18n.php:508
|
1690 |
+
msgid "Donate to this plugin"
|
1691 |
+
msgstr "Donate to this plugin"
|
1692 |
+
|
1693 |
+
#: includes/i18n.php:509
|
1694 |
+
msgid "Average Rating"
|
1695 |
+
msgstr "Average Rating"
|
1696 |
+
|
1697 |
+
#: includes/i18n.php:510
|
1698 |
+
msgid "based on %s"
|
1699 |
+
msgstr "based on %s"
|
1700 |
+
|
1701 |
+
#: includes/i18n.php:511
|
1702 |
+
msgid "Warning:"
|
1703 |
+
msgstr "Warning:"
|
1704 |
+
|
1705 |
+
#: includes/i18n.php:512
|
1706 |
+
msgid "Contributors"
|
1707 |
+
msgstr "Contributors"
|
1708 |
+
|
1709 |
+
#: includes/i18n.php:513
|
1710 |
+
msgid "Plugin Install"
|
1711 |
+
msgstr "Plugin Install"
|
1712 |
+
|
1713 |
+
#: includes/i18n.php:514
|
1714 |
+
msgid "This plugin has not been tested with your current version of WordPress."
|
1715 |
+
msgstr "This plugin has not been tested with your current version of WordPress."
|
1716 |
+
|
1717 |
+
#: includes/i18n.php:515
|
1718 |
+
msgid "This plugin has not been marked as compatible with your version of WordPress."
|
1719 |
+
msgstr "This plugin has not been marked as compatible with your version of WordPress."
|
1720 |
+
|
1721 |
+
#: includes/i18n.php:516
|
1722 |
+
msgid "Newer Version (%s) Installed"
|
1723 |
+
msgstr "Newer Version (%s) Installed"
|
1724 |
+
|
1725 |
+
#: includes/i18n.php:517
|
1726 |
+
msgid "Latest Version Installed"
|
1727 |
+
msgstr "Latest Version Installed"
|
freemius/languages/freemius-it_IT.mo
CHANGED
Binary file
|
freemius/languages/freemius-it_IT.po
CHANGED
@@ -1,16 +1,17 @@
|
|
1 |
-
# Copyright (C)
|
2 |
# This file is distributed under the same license as the freemius package.
|
3 |
# Translators:
|
4 |
# Pelly Benassi <plasmax@gmail.com>, 2016
|
5 |
-
# Daniele Scasciafratte Mte90 <mte90net@gmail.com>, 2015
|
6 |
-
# Pelly Benassi <plasmax@gmail.com>, 2016
|
7 |
# Vova Feldman <vova@freemius.com>, 2015-2016
|
8 |
msgid ""
|
9 |
msgstr ""
|
10 |
"Project-Id-Version: WordPress SDK\n"
|
11 |
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
12 |
-
"
|
13 |
-
"
|
|
|
14 |
"Language-Team: Italian (Italy) (http://www.transifex.com/freemius/wordpress-sdk/language/it_IT/)\n"
|
15 |
"MIME-Version: 1.0\n"
|
16 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -18,543 +19,559 @@ msgstr ""
|
|
18 |
"Language: it_IT\n"
|
19 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
20 |
"X-Poedit-Basepath: ..\n"
|
21 |
-
"X-Poedit-KeywordsList:
|
22 |
"X-Poedit-SearchPath-0: .\n"
|
23 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
24 |
"X-Poedit-SourceCharset: UTF-8\n"
|
25 |
|
26 |
-
#: includes/i18n.
|
27 |
-
msgid "Yes - I'm in!"
|
28 |
-
msgstr "Sì, ci sto!"
|
29 |
-
|
30 |
-
#: includes/i18n.php43, includes/i18n.php:57
|
31 |
-
msgid "Not today"
|
32 |
-
msgstr "Non oggi"
|
33 |
-
|
34 |
-
#: includes/i18n.php:69
|
35 |
msgid "Account"
|
36 |
msgstr "Account"
|
37 |
|
38 |
-
#: includes/i18n.php:
|
39 |
msgid "Add On"
|
40 |
msgstr "Add-on"
|
41 |
|
42 |
-
#: includes/i18n.php:
|
43 |
msgid "Contact Us"
|
44 |
msgstr "Contattaci"
|
45 |
|
46 |
-
#: includes/i18n.php:
|
47 |
msgid "Contact Support"
|
48 |
msgstr "Contatta il supporto"
|
49 |
|
50 |
-
#: includes/i18n.php:
|
51 |
msgid "Change Ownership"
|
52 |
msgstr "Cambia Proprietario"
|
53 |
|
54 |
-
#: includes/i18n.php:
|
55 |
msgid "Support"
|
56 |
msgstr "Supporto"
|
57 |
|
58 |
-
#: includes/i18n.php:
|
59 |
msgid "Support Forum"
|
60 |
msgstr "Forum di supporto"
|
61 |
|
62 |
-
#: includes/i18n.php:
|
63 |
msgid "Add Ons"
|
64 |
msgstr "Add-on"
|
65 |
|
66 |
-
#: includes/i18n.php:
|
67 |
msgctxt "verb"
|
68 |
msgid "Upgrade"
|
69 |
msgstr "Aggiornamento"
|
70 |
|
71 |
-
#: includes/i18n.php:
|
72 |
msgid "Awesome"
|
73 |
msgstr "Fantastico"
|
74 |
|
75 |
-
#: includes/i18n.php:
|
76 |
msgctxt "noun"
|
77 |
msgid "Pricing"
|
78 |
msgstr "Prezzi"
|
79 |
|
80 |
-
#: includes/i18n.php:
|
81 |
msgctxt "noun"
|
82 |
msgid "Price"
|
83 |
msgstr "Prezzo"
|
84 |
|
85 |
-
#: includes/i18n.php:
|
86 |
msgid "Unlimited Updates"
|
87 |
msgstr "Aggiornamenti Illimitati"
|
88 |
|
89 |
-
#: includes/i18n.php:
|
90 |
msgctxt "verb"
|
91 |
msgid "Downgrade"
|
92 |
msgstr "Downgrade"
|
93 |
|
94 |
-
#: includes/i18n.php:
|
95 |
msgid "Cancel Trial"
|
96 |
msgstr "Annulla prova gratuita"
|
97 |
|
98 |
-
#: includes/i18n.php:
|
99 |
msgid "Free Trial"
|
100 |
msgstr "Prova gratuita"
|
101 |
|
102 |
-
#: includes/i18n.php:
|
103 |
msgid "Start my free %s"
|
104 |
msgstr "Inizia la mia %s"
|
105 |
|
106 |
-
#: includes/i18n.php:
|
107 |
msgid "No commitment for %s - cancel anytime"
|
108 |
msgstr "Nessun impegno con %s - cancella quando vuoi"
|
109 |
|
110 |
-
#: includes/i18n.php:
|
111 |
msgid "After your free %s, pay as little as %s"
|
112 |
msgstr "Dopo il tuo %s gratuito, paghi solamente %s"
|
113 |
|
114 |
-
#: includes/i18n.php:
|
115 |
msgid "Details"
|
116 |
msgstr "Dettagli"
|
117 |
|
118 |
-
#: includes/i18n.php:
|
119 |
msgid "Account Details"
|
120 |
msgstr "Dettagli dell'account"
|
121 |
|
122 |
-
#: includes/i18n.php:
|
123 |
msgctxt "verb"
|
124 |
msgid "Delete"
|
125 |
msgstr "Elimina"
|
126 |
|
127 |
-
#: includes/i18n.php:
|
128 |
msgctxt "verb"
|
129 |
msgid "Show"
|
130 |
msgstr "Mostra"
|
131 |
|
132 |
-
#: includes/i18n.php:
|
133 |
msgctxt "verb"
|
134 |
msgid "Hide"
|
135 |
msgstr "Nascondi"
|
136 |
|
137 |
-
#: includes/i18n.php:
|
138 |
msgctxt "verb"
|
139 |
msgid "Edit"
|
140 |
msgstr "Modifica"
|
141 |
|
142 |
-
#: includes/i18n.php:
|
143 |
msgctxt "verb"
|
144 |
msgid "Update"
|
145 |
msgstr "Aggiorna"
|
146 |
|
147 |
-
#: includes/i18n.php:
|
148 |
msgid "Date"
|
149 |
msgstr "Data"
|
150 |
|
151 |
-
#: includes/i18n.php:
|
152 |
msgid "Amount"
|
153 |
msgstr "Importo"
|
154 |
|
155 |
-
#: includes/i18n.php:
|
156 |
msgid "Invoice"
|
157 |
msgstr "Fattura"
|
158 |
|
159 |
-
#: includes/i18n.php:
|
160 |
msgid "Billing"
|
161 |
msgstr "Fatturazione"
|
162 |
|
163 |
-
#: includes/i18n.php:
|
164 |
msgid "Payments"
|
165 |
msgstr "Pagamenti"
|
166 |
|
167 |
-
#: includes/i18n.php:
|
168 |
msgid "Delete Account"
|
169 |
msgstr "Elimina Account"
|
170 |
|
171 |
-
#: includes/i18n.php:
|
172 |
msgctxt "as close a window"
|
173 |
msgid "Dismiss"
|
174 |
msgstr "Chiudi"
|
175 |
|
176 |
-
#: includes/i18n.php:
|
177 |
msgctxt "as product pricing plan"
|
178 |
msgid "Plan"
|
179 |
msgstr "Piano"
|
180 |
|
181 |
-
#: includes/i18n.php:
|
182 |
msgid "Change Plan"
|
183 |
msgstr "Cambia piano"
|
184 |
|
185 |
-
#: includes/i18n.php:
|
186 |
msgctxt "as download professional version"
|
187 |
msgid "Download %s Version"
|
188 |
msgstr "Scarica la versione %s"
|
189 |
|
190 |
-
#: includes/i18n.php:
|
191 |
msgctxt "as download professional version now"
|
192 |
msgid "Download %s version now"
|
193 |
msgstr "Scarica la versione %s ora"
|
194 |
|
195 |
-
#: includes/i18n.php:
|
196 |
msgctxt "as download latest version"
|
197 |
msgid "Download Latest"
|
198 |
msgstr "Scarica l'ultima versione"
|
199 |
|
200 |
-
#: includes/i18n.php:
|
201 |
msgctxt "E.g. you have a professional license."
|
202 |
msgid "You have a %s license."
|
203 |
msgstr "Hai la licenza %s."
|
204 |
|
205 |
-
#: includes/i18n.php:
|
206 |
msgid "New"
|
207 |
msgstr "Nuovo"
|
208 |
|
209 |
-
#: includes/i18n.php:
|
210 |
msgid "Free"
|
211 |
msgstr "Gratuito"
|
212 |
|
213 |
-
#: includes/i18n.php:
|
214 |
msgctxt "as trial plan"
|
215 |
msgid "Trial"
|
216 |
msgstr "Prova gratuita"
|
217 |
|
218 |
-
#: includes/i18n.php:
|
219 |
msgctxt "as starting a trial plan"
|
220 |
msgid "Start Trial"
|
221 |
msgstr "Inizia il periodo di prova gratuito"
|
222 |
|
223 |
-
#: includes/i18n.php:
|
224 |
msgctxt "verb"
|
225 |
msgid "Purchase"
|
226 |
msgstr "Acquisto"
|
227 |
|
228 |
-
#: includes/i18n.php:
|
229 |
msgid "Purchase License"
|
230 |
msgstr "Acquista licenza"
|
231 |
|
232 |
-
#: includes/i18n.php:
|
233 |
msgctxt "verb"
|
234 |
msgid "Buy"
|
235 |
msgstr "Compra"
|
236 |
|
237 |
-
#: includes/i18n.php:
|
238 |
msgid "Buy License"
|
239 |
msgstr "Compra licenza"
|
240 |
|
241 |
-
#: includes/i18n.php:
|
242 |
msgid "Single Site License"
|
243 |
msgstr "Licenza per sito singolo"
|
244 |
|
245 |
-
#: includes/i18n.php:
|
246 |
msgid "Unlimited Licenses"
|
247 |
msgstr "Licenze illimitate"
|
248 |
|
249 |
-
#: includes/i18n.php:
|
250 |
msgid "Up to %s Sites"
|
251 |
msgstr "Fino a %s siti"
|
252 |
|
253 |
-
#: includes/i18n.php:
|
254 |
msgid "%sRenew your license now%s to access version %s features and support."
|
255 |
msgstr "%sRinnova la tua licenza ora%s per accedere a funzionalità e supporto della versione %s."
|
256 |
|
257 |
-
#: includes/i18n.php:
|
258 |
msgid ""
|
259 |
"Enter the email address you've used for the upgrade below and we will resend"
|
260 |
" you the license key."
|
261 |
msgstr "Inserisci qui sotto l'indirizzo email che hai usato per registrare l'aggiornamento e ti invieremo di nuovo la chiave di licenza."
|
262 |
|
263 |
-
#: includes/i18n.php:
|
264 |
msgctxt "e.g. Professional Plan"
|
265 |
msgid "%s Plan"
|
266 |
msgstr "Piano %s"
|
267 |
|
268 |
-
#: includes/i18n.php:
|
269 |
msgid "You are just one step away - %s"
|
270 |
msgstr "Sei a un passo dalla fine - %s"
|
271 |
|
272 |
-
#: includes/i18n.php:
|
273 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
274 |
msgid "Complete \"%s\" Activation Now"
|
275 |
msgstr "Completa l'attivazione di \"%s\" ora"
|
276 |
|
277 |
-
#: includes/i18n.php:
|
278 |
msgid "We made a few tweaks to the plugin, %s"
|
279 |
msgstr "Abbiamo apportato alcune modifiche al plugin, %s"
|
280 |
|
281 |
-
#: includes/i18n.php:
|
282 |
msgid "Opt-in to make \"%s\" Better!"
|
283 |
msgstr "Contribuisci a rendere \"%s\" migliore!"
|
284 |
|
285 |
-
#: includes/i18n.php:
|
286 |
msgid "Error"
|
287 |
msgstr "Errore"
|
288 |
|
289 |
-
#: includes/i18n.php:
|
290 |
msgid ""
|
291 |
"Freemius SDK couldn't find the plugin's main file. Please contact "
|
292 |
"sdk@freemius.com with the current error."
|
293 |
msgstr "L'SDK di Freemius non è riuscito a trovare il file principale del plugin. Per favore contatta sdk@freemius.com riportando l'errore."
|
294 |
|
295 |
-
#: includes/i18n.php:
|
296 |
msgctxt "as expiration date"
|
297 |
msgid "Expiration"
|
298 |
msgstr "Scadenza"
|
299 |
|
300 |
-
#: includes/i18n.php:
|
301 |
msgctxt "as software license"
|
302 |
msgid "License"
|
303 |
msgstr "Licenza"
|
304 |
|
305 |
-
#: includes/i18n.php:
|
306 |
msgid "not verified"
|
307 |
msgstr "non verificato"
|
308 |
|
309 |
-
#: includes/i18n.php:
|
310 |
msgid "Verify Email"
|
311 |
msgstr "Verifica email"
|
312 |
|
313 |
-
#: includes/i18n.php:
|
314 |
msgctxt "e.g. expires in 2 months"
|
315 |
msgid "Expires in %s"
|
316 |
msgstr "Scade in %s"
|
317 |
|
318 |
-
#: includes/i18n.php:
|
319 |
msgctxt "e.g. auto renews in 2 months"
|
320 |
msgid "Auto renews in %s"
|
321 |
msgstr "Rinnovo automatico in %s"
|
322 |
|
323 |
-
#: includes/i18n.php:
|
324 |
msgid "No expiration"
|
325 |
msgstr "Nessuna scadenza"
|
326 |
|
327 |
-
#: includes/i18n.php:
|
328 |
msgid "Expired"
|
329 |
msgstr "Scaduto"
|
330 |
|
331 |
-
#: includes/i18n.php:
|
332 |
msgid "Cancelled"
|
333 |
msgstr "Annullato"
|
334 |
|
335 |
-
#: includes/i18n.php:
|
336 |
msgctxt "e.g. In 2 hours"
|
337 |
msgid "In %s"
|
338 |
msgstr "In %s"
|
339 |
|
340 |
-
#: includes/i18n.php:
|
341 |
msgctxt "e.g. 2 min ago"
|
342 |
msgid "%s ago"
|
343 |
msgstr "%s fa"
|
344 |
|
345 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
346 |
msgctxt "as plugin version"
|
347 |
msgid "Version"
|
348 |
msgstr "Versione"
|
349 |
|
350 |
-
#: includes/i18n.php:
|
351 |
msgid "Name"
|
352 |
msgstr "Nome"
|
353 |
|
354 |
-
#: includes/i18n.php:
|
355 |
msgid "Email"
|
356 |
msgstr "Email"
|
357 |
|
358 |
-
#: includes/i18n.php:
|
359 |
msgid "Email address"
|
360 |
msgstr "Indirizzo email"
|
361 |
|
362 |
-
#: includes/i18n.php:
|
363 |
msgid "Verified"
|
364 |
msgstr "Verificato"
|
365 |
|
366 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
367 |
msgid "Plugin"
|
368 |
msgstr "Plugin"
|
369 |
|
370 |
-
#: includes/i18n.php:
|
371 |
msgid "Plugins"
|
372 |
msgstr "Plugin"
|
373 |
|
374 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
375 |
msgid "Themes"
|
376 |
msgstr "Temi"
|
377 |
|
378 |
-
#: includes/i18n.php:
|
379 |
msgctxt "as file/folder path"
|
380 |
msgid "Path"
|
381 |
msgstr "Percorso"
|
382 |
|
383 |
-
#: includes/i18n.php:
|
384 |
msgid "Title"
|
385 |
msgstr "Titolo"
|
386 |
|
387 |
-
#: includes/i18n.php:
|
388 |
msgid "Free version"
|
389 |
msgstr "Versione gratuita"
|
390 |
|
391 |
-
#: includes/i18n.php:
|
392 |
msgid "Premium version"
|
393 |
msgstr "Versione premium"
|
394 |
|
395 |
-
#: includes/i18n.php:
|
396 |
msgctxt "as WP plugin slug"
|
397 |
msgid "Slug"
|
398 |
msgstr "Slug"
|
399 |
|
400 |
-
#: includes/i18n.php:
|
401 |
msgid "ID"
|
402 |
msgstr "ID"
|
403 |
|
404 |
-
#: includes/i18n.php:
|
405 |
msgid "Users"
|
406 |
msgstr "Utenti"
|
407 |
|
408 |
-
#: includes/i18n.php:
|
409 |
msgid "Plugin Installs"
|
410 |
msgstr "Installazioni Plugin"
|
411 |
|
412 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
413 |
msgctxt "like websites"
|
414 |
msgid "Sites"
|
415 |
msgstr "Siti"
|
416 |
|
417 |
-
#: includes/i18n.php:
|
418 |
msgid "User ID"
|
419 |
msgstr "ID utente"
|
420 |
|
421 |
-
#: includes/i18n.php:
|
422 |
msgid "Site ID"
|
423 |
msgstr "ID del sito"
|
424 |
|
425 |
-
#: includes/i18n.php:
|
426 |
msgid "Public Key"
|
427 |
msgstr "Chiave pubblica"
|
428 |
|
429 |
-
#: includes/i18n.php:
|
430 |
msgid "Secret Key"
|
431 |
msgstr "Chiave segreta"
|
432 |
|
433 |
-
#: includes/i18n.php:
|
434 |
msgctxt "as secret encryption key missing"
|
435 |
msgid "No Secret"
|
436 |
msgstr "Nessuna chiave"
|
437 |
|
438 |
-
#: includes/i18n.php:
|
439 |
msgid "No ID"
|
440 |
msgstr "Nessun ID"
|
441 |
|
442 |
-
#: includes/i18n.php:
|
443 |
msgctxt "as synchronize license"
|
444 |
msgid "Sync License"
|
445 |
msgstr "Sincronizza la licenza"
|
446 |
|
447 |
-
#: includes/i18n.php:
|
448 |
msgctxt "as synchronize"
|
449 |
msgid "Sync"
|
450 |
msgstr "Sincronizza"
|
451 |
|
452 |
-
#: includes/i18n.php:
|
453 |
msgid "Activate License"
|
454 |
msgstr "Attiva licenza"
|
455 |
|
456 |
-
#: includes/i18n.php:
|
457 |
msgid "Activate Free Version"
|
458 |
msgstr "Attiva versione gratuita"
|
459 |
|
460 |
-
#: includes/i18n.php:
|
461 |
msgid ""
|
462 |
"Please enter the license key that you received in the email right after the "
|
463 |
"purchase:"
|
464 |
msgstr "Per favore inserisci la chiave di licenza che hai ricevuto via mail subito dopo l'acquisto:"
|
465 |
|
466 |
-
#: includes/i18n.php:
|
467 |
msgid "Activating license..."
|
468 |
msgstr "Sto attivando la licenza..."
|
469 |
|
470 |
-
#: includes/i18n.php:
|
471 |
msgid "Change License"
|
472 |
msgstr "Cambia licenza"
|
473 |
|
474 |
-
#: includes/i18n.php:
|
475 |
msgid "Update License"
|
476 |
msgstr "Aggiorna licenza"
|
477 |
|
478 |
-
#: includes/i18n.php:
|
479 |
msgid "Deactivate License"
|
480 |
msgstr "Disattiva licenza"
|
481 |
|
482 |
-
#: includes/i18n.php:
|
483 |
msgid "Activate"
|
484 |
msgstr "Attiva"
|
485 |
|
486 |
-
#: includes/i18n.php:
|
487 |
msgid "Deactivate"
|
488 |
msgstr "Disattiva"
|
489 |
|
490 |
-
#: includes/i18n.php:
|
491 |
msgid "Skip & Deactivate"
|
492 |
msgstr "Salta e disattiva"
|
493 |
|
494 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
495 |
msgid "No - just deactivate"
|
496 |
msgstr "No - disattiva e basta"
|
497 |
|
498 |
-
#: includes/i18n.php:
|
499 |
msgid "Yes - do your thing"
|
500 |
msgstr "Sì - fai pure"
|
501 |
|
502 |
-
#: includes/i18n.php:
|
503 |
msgctxt "active mode"
|
504 |
msgid "Active"
|
505 |
msgstr "Attiva"
|
506 |
|
507 |
-
#: includes/i18n.php:
|
508 |
msgctxt "is active mode?"
|
509 |
msgid "Is Active"
|
510 |
msgstr "è attiva"
|
511 |
|
512 |
-
#: includes/i18n.php:
|
513 |
msgid "Install Now"
|
514 |
msgstr "Installa ora"
|
515 |
|
516 |
-
#: includes/i18n.php:
|
517 |
msgid "Install Update Now"
|
518 |
msgstr "Installa l'aggiornamento ora"
|
519 |
|
520 |
-
#: includes/i18n.php:
|
521 |
msgid "More information about %s"
|
522 |
msgstr "Ulteriori informazioni su %s"
|
523 |
|
524 |
-
#: includes/i18n.php:
|
525 |
msgid "Localhost"
|
526 |
msgstr "Localhost"
|
527 |
|
528 |
-
#: includes/i18n.php:
|
529 |
msgctxt "as activate Professional plan"
|
530 |
msgid "Activate %s Plan"
|
531 |
msgstr "Attivare il piano %s"
|
532 |
|
533 |
-
#: includes/i18n.php:
|
534 |
msgctxt "as 5 licenses left"
|
535 |
msgid "%s left"
|
536 |
msgstr "%s rimanenti"
|
537 |
|
538 |
-
#: includes/i18n.php:
|
539 |
msgid "Last license"
|
540 |
msgstr "Ultima licenza"
|
541 |
|
542 |
-
#: includes/i18n.php:
|
543 |
msgid "What is your %s?"
|
544 |
msgstr "Qual è il tuo %s?"
|
545 |
|
546 |
-
#: includes/i18n.php:
|
547 |
msgid "Activate this add-on"
|
548 |
msgstr "Attivare questo addon"
|
549 |
|
550 |
-
#: includes/i18n.php:
|
551 |
msgid ""
|
552 |
"Deactivating your license will block all premium features, but will enable "
|
553 |
"you to activate the license on another site. Are you sure you want to "
|
554 |
"proceed?"
|
555 |
msgstr "La disattivazione della licenza bloccherà tutte le funzionalità premium, ma vi permetterà di attivare la licenza su un altro sito. Sei sicuro di voler procedere?"
|
556 |
|
557 |
-
#: includes/i18n.php:
|
558 |
msgid ""
|
559 |
"Deleting the account will automatically deactivate your %s plan license so "
|
560 |
"you can use it on other sites. If you want to terminate the recurring "
|
@@ -562,941 +579,997 @@ msgid ""
|
|
562 |
"account. Are you sure you would like to continue with the deletion?"
|
563 |
msgstr "L'eliminazione dell'account disattiva automaticamente la tua licenza del piano %s quindi è possibile utilizzarlo su altri siti. Se si desidera anche terminare i pagamenti ricorrenti, fare clic sul pulsante \"Annulla\" ed effettuare il \"Downgrade\" del tuo account. Sei sicuro di voler continuare con l'eliminazione?"
|
564 |
|
565 |
-
#: includes/i18n.php:
|
566 |
msgid ""
|
567 |
"Deletion is not temporary. Only delete if you no longer want to use this "
|
568 |
"plugin anymore. Are you sure you would like to continue with the deletion?"
|
569 |
msgstr "L'eliminazione non è temporanea. Cancella solo se non si desidera più utilizzare questo plugin. Sei sicuro di voler continuare con l'eliminazione?"
|
570 |
|
571 |
-
#: includes/i18n.php:
|
572 |
msgid ""
|
573 |
"Downgrading your plan will immediately stop all future recurring payments "
|
574 |
"and your %s plan license will expire in %s."
|
575 |
msgstr "Effettuare il downgrade del piano interromperà immediatamente tutti i futuri pagamenti ricorrenti e la licenza del piano %s scadrà in %s."
|
576 |
|
577 |
-
#: includes/i18n.php:
|
578 |
msgid ""
|
579 |
"Cancelling the trial will immediately block access to all premium features. "
|
580 |
"Are you sure?"
|
581 |
msgstr "Cancellando il periodo di prova gratuito bloccherai immediatamente l'accesso a tutte le funzionalità premium. Vuoi continuare?"
|
582 |
|
583 |
-
#: includes/i18n.php:
|
584 |
msgid ""
|
585 |
"You can still enjoy all %s features but you will not have access to plugin "
|
586 |
"updates and support."
|
587 |
msgstr "Puoi ancora sfruttare tutte le funzionalità di %s, ma non avrai accesso al supporto ed agli aggiornamenti del plugin."
|
588 |
|
589 |
-
#: includes/i18n.php:
|
590 |
msgid ""
|
591 |
-
"Once your license
|
592 |
-
" have access to the %s features."
|
593 |
-
msgstr "
|
594 |
|
595 |
-
#: includes/i18n.php:
|
596 |
msgid "Are you sure you want to proceed?"
|
597 |
msgstr "Sei sicuro di voler procedere?"
|
598 |
|
599 |
-
#: includes/i18n.php:
|
600 |
msgid "Add Ons for %s"
|
601 |
msgstr "Add-on per %s"
|
602 |
|
603 |
-
#: includes/i18n.php:
|
604 |
msgid ""
|
605 |
"We could'nt load the add-ons list. It's probably an issue on our side, "
|
606 |
"please try to come back in few minutes."
|
607 |
msgstr "Non siamo riusciti a caricare la lista degli add-on. Si tratta probabilmente di un problema nel nostro sistema, per favore riprova tra qualche minuto."
|
608 |
|
609 |
-
#: includes/i18n.php:
|
610 |
msgid "Anonymous feedback"
|
611 |
msgstr "Feedback anonimo"
|
612 |
|
613 |
-
#: includes/i18n.php:
|
614 |
msgid "Quick feedback"
|
615 |
msgstr "Feedback veloce"
|
616 |
|
617 |
-
#: includes/i18n.php:
|
618 |
msgid "If you have a moment, please let us know why you are deactivating"
|
619 |
msgstr "Se hai un momento, potresti dirci perché lo hai disattivato?"
|
620 |
|
621 |
-
#: includes/i18n.php:
|
622 |
msgid "Yes - Deactivate"
|
623 |
msgstr "Si - Disattiva"
|
624 |
|
625 |
-
#: includes/i18n.php:
|
626 |
msgid "Submit & Deactivate"
|
627 |
msgstr "Invia & Disattiva"
|
628 |
|
629 |
-
#: includes/i18n.php:
|
630 |
msgid "Cancel"
|
631 |
msgstr "Annulla"
|
632 |
|
633 |
-
#: includes/i18n.php:
|
634 |
msgid "I no longer need the plugin"
|
635 |
msgstr "Non ho piú bisogno di questo plugin"
|
636 |
|
637 |
-
#: includes/i18n.php:
|
638 |
msgid "I found a better plugin"
|
639 |
msgstr "Ho trovato un plugin migliore"
|
640 |
|
641 |
-
#: includes/i18n.php:
|
642 |
msgid "I only needed the plugin for a short period"
|
643 |
msgstr "Avevo bisogno del plugin solo per un breve periodo"
|
644 |
|
645 |
-
#: includes/i18n.php:
|
646 |
msgid "The plugin broke my site"
|
647 |
msgstr "Il plugin ha causato problemi al mio sito"
|
648 |
|
649 |
-
#: includes/i18n.php:
|
650 |
msgid "The plugin suddenly stopped working"
|
651 |
msgstr "Il plugin ha smesso di funzionare"
|
652 |
|
653 |
-
#: includes/i18n.php:
|
654 |
msgid "I can't pay for it anymore"
|
655 |
msgstr "Non posso piú pagarlo"
|
656 |
|
657 |
-
#: includes/i18n.php:
|
658 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
659 |
msgstr "È una disattivazione temporanea. Sto solo cercando di risolvere un problema."
|
660 |
|
661 |
-
#: includes/i18n.php:
|
662 |
msgctxt ""
|
663 |
"the text of the \"other\" reason for deactivating the plugin that is shown "
|
664 |
"in the modal box."
|
665 |
msgid "Other"
|
666 |
msgstr "Altro"
|
667 |
|
668 |
-
#: includes/i18n.php:
|
669 |
msgid "Kindly tell us the reason so we can improve."
|
670 |
msgstr "Spiegandoci il motivo ci aiuterai a migliorare."
|
671 |
|
672 |
-
#: includes/i18n.php:
|
673 |
msgid "What's the plugin's name?"
|
674 |
msgstr "Qual è il nome del plugin?"
|
675 |
|
676 |
-
#: includes/i18n.php:
|
677 |
msgid "What price would you feel comfortable paying?"
|
678 |
msgstr "Che prezzo ritieni opportuno pagare?"
|
679 |
|
680 |
-
#: includes/i18n.php:
|
681 |
msgid "I couldn't understand how to make it work"
|
682 |
msgstr "Non capisco come farlo funzionare"
|
683 |
|
684 |
-
#: includes/i18n.php:
|
685 |
msgid ""
|
686 |
"The plugin is great, but I need specific feature that you don't support"
|
687 |
msgstr "Il plugin é ottimo ma ho bisogno di una funzionalitá specifica che non é supportata"
|
688 |
|
689 |
-
#: includes/i18n.php:
|
690 |
msgid "The plugin is not working"
|
691 |
msgstr "Il plugin non funziona"
|
692 |
|
693 |
-
#: includes/i18n.php:
|
694 |
msgid "It's not what I was looking for"
|
695 |
msgstr "Non é quello che stavo cercando"
|
696 |
|
697 |
-
#: includes/i18n.php:
|
698 |
msgid "The plugin didn't work as expected"
|
699 |
msgstr "Il plugin non funziona come mi aspettavo"
|
700 |
|
701 |
-
#: includes/i18n.php:
|
702 |
msgid "What feature?"
|
703 |
msgstr "Quale funzionalitá?"
|
704 |
|
705 |
-
#: includes/i18n.php:
|
706 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
707 |
msgstr "Condividi cosa non ha funzionato in modo da migliorare il prodotto per gli utenti futuri..."
|
708 |
|
709 |
-
#: includes/i18n.php:
|
710 |
msgid "What you've been looking for?"
|
711 |
msgstr "Che cosa stai cercando?"
|
712 |
|
713 |
-
#: includes/i18n.php:
|
714 |
msgid "What did you expect?"
|
715 |
msgstr "Che cosa ti aspettavi?"
|
716 |
|
717 |
-
#: includes/i18n.php:
|
718 |
msgid "The plugin didn't work"
|
719 |
msgstr "Il plugin non funziona"
|
720 |
|
721 |
-
#: includes/i18n.php:
|
722 |
msgid "I don't like to share my information with you"
|
723 |
msgstr "Non voglio condividere i miei dati con te"
|
724 |
|
725 |
-
#: includes/i18n.php:
|
726 |
msgid ""
|
727 |
"You might have missed it, but you don't have to share any data and can just "
|
728 |
"%s the opt-in."
|
729 |
msgstr "Potresti non averci fatto caso, ma non sei obbligato a condividere i tuoi dati e puoi semplicemente %s la tua partecipazione."
|
730 |
|
731 |
-
#: includes/i18n.php:
|
732 |
msgctxt "greeting"
|
733 |
msgid "Hey %s,"
|
734 |
msgstr "Hey %s,"
|
735 |
|
736 |
-
#: includes/i18n.php:
|
737 |
msgctxt "a greeting. E.g. Thanks John!"
|
738 |
msgid "Thanks %s!"
|
739 |
msgstr "Grazie %s!"
|
740 |
|
741 |
-
#: includes/i18n.php:
|
742 |
msgid ""
|
743 |
"Never miss an important update - opt-in to our security and feature updates "
|
744 |
"notifications, and non-sensitive diagnostic tracking with %4$s."
|
745 |
msgstr "Non perdere nessun aggiornamento importante - iscriviti per ricevere notifiche su aggiornamenti relativi alla sicurezza e nuove versioni, oltre al tracciamento di diagnostica non sensibile con %4$s."
|
746 |
|
747 |
-
#: includes/i18n.php:
|
748 |
msgid ""
|
749 |
"Please help us improve %1$s! If you opt-in, some data about your usage of "
|
750 |
"%1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still "
|
751 |
"work just fine."
|
752 |
msgstr "Aiutaci a migliorare %1$s! Se ti iscrivi, alcuni dati riguardanti il tuo utilizzo di %1$s verranno inviati a %4$s. Se salti questo passaggio, non c'è problema! %1$s funzionerà ugualmente."
|
753 |
|
754 |
-
#: includes/i18n.php:
|
755 |
msgid ""
|
756 |
"You should receive an activation email for %s to your mailbox at %s. Please "
|
757 |
"make sure you click the activation button in that email to %s."
|
758 |
-
msgstr "Dovresti ricevere un'email di attivazione di %s all'indirizzo %s. Assicurati di fare clic sul pulsante di attivazione nell'email per
|
759 |
|
760 |
-
#: includes/i18n.php:
|
761 |
msgid "complete the install"
|
762 |
msgstr "completa l'installazione"
|
763 |
|
764 |
-
#: includes/i18n.php:
|
765 |
msgid "start the trial"
|
766 |
msgstr "Inizia il periodo di prova gratuito"
|
767 |
|
768 |
-
#: includes/i18n.php:
|
769 |
msgid ""
|
770 |
"Thanks for purchasing %s! To get started, please enter your license key:"
|
771 |
msgstr "Grazie per aver acquistato %s! Per iniziare, per favore inserisci la tua chiave di licenza:"
|
772 |
|
773 |
-
#: includes/i18n.php:
|
774 |
msgid ""
|
775 |
"The plugin will be periodically sending data to %s to check for plugin "
|
776 |
"updates and verify the validity of your license."
|
777 |
msgstr "Il plugin invierà dati periodicamente a %s per controllare l'esistenza di aggiornamenti e verificare la validità della tua licenza."
|
778 |
|
779 |
-
#: includes/i18n.php:
|
780 |
msgid "What permissions are being granted?"
|
781 |
msgstr "Quali autorizzazioni vengono concesse?"
|
782 |
|
783 |
-
#: includes/i18n.php:
|
784 |
msgid "Your Profile Overview"
|
785 |
msgstr "Panoramica del tuo profilo"
|
786 |
|
787 |
-
#: includes/i18n.php:
|
788 |
msgid "Name and email address"
|
789 |
msgstr "Nome ed indirizzo email"
|
790 |
|
791 |
-
#: includes/i18n.php:
|
792 |
msgid "Your Site Overview"
|
793 |
msgstr "Panoramica del tuo sito"
|
794 |
|
795 |
-
#: includes/i18n.php:
|
796 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
797 |
msgstr "URL del sito, versione di WP, informazioni PHP, plugin e temi"
|
798 |
|
799 |
-
#: includes/i18n.php:
|
800 |
msgid "Current Plugin Events"
|
801 |
msgstr "Eventi correnti del plugin"
|
802 |
|
803 |
-
#: includes/i18n.php:
|
804 |
msgid "Activation, deactivation and uninstall"
|
805 |
msgstr "Attiva, disattivazione e disinstallazione"
|
806 |
|
807 |
-
#: includes/i18n.php:
|
808 |
msgid "Plugins & Themes"
|
809 |
msgstr "Plugin e temi"
|
810 |
|
811 |
-
#: includes/i18n.php:
|
812 |
msgid "Titles, versions and state."
|
813 |
msgstr "Titoli, versioni e stato."
|
814 |
|
815 |
-
#: includes/i18n.php:
|
816 |
msgid "Admin Notices"
|
817 |
msgstr "Avvisi amministratore"
|
818 |
|
819 |
-
#: includes/i18n.php:
|
820 |
msgid "Newsletter"
|
821 |
msgstr "Newsletter"
|
822 |
|
823 |
-
#: includes/i18n.php:
|
824 |
msgid "Updates, announcements, marketing, no spam"
|
825 |
msgstr "Aggiornamenti, annunci, marketing, no spam"
|
826 |
|
827 |
-
#: includes/i18n.php:
|
828 |
msgid "Privacy Policy"
|
829 |
msgstr "Politica sulla privacy"
|
830 |
|
831 |
-
#: includes/i18n.php:
|
832 |
msgid "Terms of Service"
|
833 |
msgstr "Termini del Servizio"
|
834 |
|
835 |
-
#: includes/i18n.php:
|
836 |
msgctxt "as activating plugin"
|
837 |
msgid "Activating"
|
838 |
msgstr "Attivazione"
|
839 |
|
840 |
-
#: includes/i18n.php:
|
841 |
msgctxt "as in the process of sending an email"
|
842 |
msgid "Sending email"
|
843 |
msgstr "Invio email"
|
844 |
|
845 |
-
#: includes/i18n.php:
|
846 |
msgctxt "button label"
|
847 |
msgid "Allow & Continue"
|
848 |
msgstr "Consenti & Continua"
|
849 |
|
850 |
-
#: includes/i18n.php:
|
851 |
msgctxt "button label"
|
852 |
msgid "Agree & Activate License"
|
853 |
msgstr "Accetta e attiva la licenza"
|
854 |
|
855 |
-
#: includes/i18n.php:
|
856 |
msgctxt "verb"
|
857 |
msgid "Skip"
|
858 |
msgstr "Salta"
|
859 |
|
860 |
-
#: includes/i18n.php:
|
861 |
msgid "Click here to use the plugin anonymously"
|
862 |
msgstr "Fai clic qui per usare il plugin anonimamente"
|
863 |
|
864 |
-
#: includes/i18n.php:
|
865 |
msgid "Re-send activation email"
|
866 |
msgstr "Invia nuovamente l'email di attivazione"
|
867 |
|
868 |
-
#: includes/i18n.php:
|
869 |
msgid "License key"
|
870 |
msgstr "Chiave di licenza"
|
871 |
|
872 |
-
#: includes/i18n.php:
|
873 |
msgid "Send License Key"
|
874 |
msgstr "Invia chiave di licenza"
|
875 |
|
876 |
-
#: includes/i18n.php:
|
877 |
msgid "Sending license key"
|
878 |
msgstr "Invio chiave di licenza"
|
879 |
|
880 |
-
#: includes/i18n.php:
|
881 |
msgid "Have a license key?"
|
882 |
msgstr "Hai una chiave di licenza?"
|
883 |
|
884 |
-
#: includes/i18n.php:
|
885 |
msgid "Don't have a license key?"
|
886 |
msgstr "Non hai una chiave di licenza?"
|
887 |
|
888 |
-
#: includes/i18n.php:
|
889 |
msgid "Can't find your license key?"
|
890 |
msgstr "Non trovi la tua chiave di licenza?"
|
891 |
|
892 |
-
#: includes/i18n.php:
|
893 |
msgid ""
|
894 |
"We couldn't find your email address in the system, are you sure it's the "
|
895 |
"right address?"
|
896 |
msgstr "Non siamo riusciti a trovare il tuo indirizzo email nel sistema, sei sicuro che sia l'indirizzo giusto?"
|
897 |
|
898 |
-
#: includes/i18n.php:
|
899 |
msgid ""
|
900 |
"We can't see any active licenses associated with that email address, are you"
|
901 |
" sure it's the right address?"
|
902 |
msgstr "Non siamo riusciti a trovare alcuna licenza attiva associata al tuo indirizzo email, sei sicuro che sia l'indirizzo giusto?"
|
903 |
|
904 |
-
#: includes/i18n.php:
|
905 |
msgid "Opt In"
|
906 |
msgstr "Iscriviti"
|
907 |
|
908 |
-
#: includes/i18n.php:
|
909 |
msgid "Opt Out"
|
910 |
msgstr "Cancella iscrizione"
|
911 |
|
912 |
-
#: includes/i18n.php:
|
913 |
msgid "On second thought - I want to continue helping"
|
914 |
msgstr "Ci ho ripensato, voglio continuare a fornire il mio aiuto"
|
915 |
|
916 |
-
#: includes/i18n.php:
|
917 |
msgid "Opting out..."
|
918 |
msgstr "Cancellamento dell'iscrizione..."
|
919 |
|
920 |
-
#: includes/i18n.php:
|
921 |
msgid "Opting in..."
|
922 |
msgstr "Iscrizione in corso..."
|
923 |
|
924 |
-
#: includes/i18n.php:
|
925 |
msgid ""
|
926 |
"We appreciate your help in making the %s better by letting us track some "
|
927 |
"usage data."
|
928 |
msgstr "Ti ringraziamo per averci concesso di tracciare alcuni dati di utilizzo al fine di migliorare %s"
|
929 |
|
930 |
-
#: includes/i18n.php:
|
931 |
msgid ""
|
932 |
"Usage tracking is done in the name of making %s better. Making a better user"
|
933 |
" experience, prioritizing new features, and more good things. We'd really "
|
934 |
"appreciate if you'll reconsider letting us continue with the tracking."
|
935 |
msgstr "Tracciamo l'utilizzo esclusivamente per rendere %s migliore, creando una migliore esperienza utente e dando priorità a nuove funzionalità, oltre a molte altre buone cose. Saremmo veramente felici di vederti cambiare idea e lasciarci continuare con il tracciamento."
|
936 |
|
937 |
-
#: includes/i18n.php:
|
938 |
msgid ""
|
939 |
"By clicking \"Opt Out\", we will no longer be sending any data from %s to "
|
940 |
"%s."
|
941 |
msgstr "Cliccando su \"Cancella iscrizione\", non invieremo più nessuna informazione da %s a %s."
|
942 |
|
943 |
-
#: includes/i18n.php:
|
944 |
msgid "Screenshots"
|
945 |
msgstr "Screenshots"
|
946 |
|
947 |
-
#: includes/i18n.php:
|
948 |
msgid "Click to view full-size screenshot %d"
|
949 |
msgstr "Fare clic per visualizzare lo screenshot in grandi dimensioni %d"
|
950 |
|
951 |
-
#: includes/i18n.php:
|
952 |
msgid "Freemius Debug"
|
953 |
msgstr "Debug Freemius"
|
954 |
|
955 |
-
#: includes/i18n.php:
|
956 |
msgctxt "as turned on"
|
957 |
msgid "On"
|
958 |
msgstr "Attivo"
|
959 |
|
960 |
-
#: includes/i18n.php:
|
961 |
msgctxt "as turned off"
|
962 |
msgid "Off"
|
963 |
msgstr "Non attivo"
|
964 |
|
965 |
-
#: includes/i18n.php:
|
966 |
msgctxt "as code debugging"
|
967 |
msgid "Debugging"
|
968 |
msgstr "Debugging"
|
969 |
|
970 |
-
#: includes/i18n.php:
|
971 |
msgid "Freemius State"
|
972 |
msgstr "Stato di Freemius"
|
973 |
|
974 |
-
#: includes/i18n.php:
|
975 |
msgctxt "as connection was successful"
|
976 |
msgid "Connected"
|
977 |
msgstr "Connesso"
|
978 |
|
979 |
-
#: includes/i18n.php:
|
980 |
msgctxt "as connection blocked"
|
981 |
msgid "Blocked"
|
982 |
msgstr "Bloccato"
|
983 |
|
984 |
-
#: includes/i18n.php:
|
985 |
msgctxt "as application program interface"
|
986 |
msgid "API"
|
987 |
msgstr "API"
|
988 |
|
989 |
-
#: includes/i18n.php:
|
990 |
msgctxt "as software development kit versions"
|
991 |
msgid "SDK"
|
992 |
msgstr "SDK"
|
993 |
|
994 |
-
#: includes/i18n.php:
|
995 |
msgctxt "as software development kit versions"
|
996 |
msgid "SDK Versions"
|
997 |
msgstr "Versioni SDK"
|
998 |
|
999 |
-
#: includes/i18n.php:
|
1000 |
msgctxt "as plugin folder path"
|
1001 |
msgid "Plugin Path"
|
1002 |
msgstr "Percorso del plugin"
|
1003 |
|
1004 |
-
#: includes/i18n.php:
|
1005 |
msgctxt "as sdk path"
|
1006 |
msgid "SDK Path"
|
1007 |
msgstr "Percorso SDK"
|
1008 |
|
1009 |
-
#: includes/i18n.php:
|
1010 |
msgid "Add Ons of Plugin %s"
|
1011 |
msgstr "Add-on del Plugin %s"
|
1012 |
|
1013 |
-
#: includes/i18n.php:
|
1014 |
msgid "Are you sure you want to delete all Freemius data?"
|
1015 |
msgstr "Sei sicuro di voler eliminare tutti i dati di Freemius?"
|
1016 |
|
1017 |
-
#: includes/i18n.php:
|
1018 |
msgid "Actions"
|
1019 |
msgstr "Azioni"
|
1020 |
|
1021 |
-
#: includes/i18n.php:
|
1022 |
msgid "Delete All Accounts"
|
1023 |
msgstr "Eliminare tutti gli account"
|
1024 |
|
1025 |
-
#: includes/i18n.php:
|
1026 |
msgid "Start Fresh"
|
1027 |
msgstr "Inizia da capo"
|
1028 |
|
1029 |
-
#: includes/i18n.php:
|
1030 |
msgid "Clear API Cache"
|
1031 |
msgstr "Elimina cache API"
|
1032 |
|
1033 |
-
#: includes/i18n.php:
|
1034 |
msgid "Sync Data From Server"
|
1035 |
msgstr "Sincronizza i dati dal server"
|
1036 |
|
1037 |
-
#: includes/i18n.php:
|
1038 |
msgid "Scheduled Crons"
|
1039 |
msgstr "Azioni programmate"
|
1040 |
|
1041 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
1042 |
msgid "Plugins & Themes Sync"
|
1043 |
msgstr "Sincronizzazione plugin e temi"
|
1044 |
|
1045 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1046 |
msgctxt "as congratulations"
|
1047 |
msgid "Congrats"
|
1048 |
msgstr "Congratulazioni"
|
1049 |
|
1050 |
-
#: includes/i18n.php:
|
1051 |
msgctxt "exclamation"
|
1052 |
msgid "Oops"
|
1053 |
msgstr "Ops"
|
1054 |
|
1055 |
-
#: includes/i18n.php:
|
1056 |
msgctxt "interjection expressing joy or exuberance"
|
1057 |
msgid "Yee-haw"
|
1058 |
msgstr "Evvai"
|
1059 |
|
1060 |
-
#: includes/i18n.php:
|
1061 |
msgctxt ""
|
1062 |
"(especially in electronic communication) used to express elation, "
|
1063 |
"enthusiasm, or triumph."
|
1064 |
msgid "W00t"
|
1065 |
msgstr "Forte"
|
1066 |
|
1067 |
-
#: includes/i18n.php:
|
1068 |
msgctxt "a positive response"
|
1069 |
msgid "Right on"
|
1070 |
msgstr "Sì"
|
1071 |
|
1072 |
-
#: includes/i18n.php:
|
1073 |
msgctxt ""
|
1074 |
"something somebody says when they are thinking about what you have just "
|
1075 |
"said. "
|
1076 |
msgid "Hmm"
|
1077 |
msgstr "Uhm"
|
1078 |
|
1079 |
-
#: includes/i18n.php:
|
1080 |
msgid "O.K"
|
1081 |
msgstr "OK"
|
1082 |
|
1083 |
-
#: includes/i18n.php:
|
1084 |
msgctxt "exclamation"
|
1085 |
msgid "Hey"
|
1086 |
msgstr "Hey"
|
1087 |
|
1088 |
-
#: includes/i18n.php:
|
1089 |
msgctxt "advance notice of something that will need attention."
|
1090 |
msgid "Heads up"
|
1091 |
msgstr "Attenzione"
|
1092 |
|
1093 |
-
#: includes/i18n.php:
|
1094 |
msgid "Seems like you got the latest release."
|
1095 |
msgstr "Sembra che tu abbia la versione più recente."
|
1096 |
|
1097 |
-
#: includes/i18n.php:
|
1098 |
msgid "You are all good!"
|
1099 |
msgstr "Sei fantastico!"
|
1100 |
|
1101 |
-
#: includes/i18n.php:
|
1102 |
msgid ""
|
1103 |
"Sorry, we could not complete the email update. Another user with the same "
|
1104 |
"email is already registered."
|
1105 |
msgstr "Siamo spiacenti, non siamo riusciti a completare l'aggiornamento via email. Un altro utente con lo stesso indirizzo email è già registrato."
|
1106 |
|
1107 |
-
#: includes/i18n.php:
|
1108 |
msgid ""
|
1109 |
"If you would like to give up the ownership of the plugin's account to %s "
|
1110 |
"click the Change Ownership button."
|
1111 |
msgstr "Se vuoi cedere la proprietá dell'account del plugin a %s clicca su Cambia Proprietà."
|
1112 |
|
1113 |
-
#: includes/i18n.php:
|
1114 |
msgid ""
|
1115 |
"Your email was successfully updated. You should receive an email with "
|
1116 |
"confirmation instructions in few moments."
|
1117 |
msgstr "Il tuo indirizzo email è stato aggiornato correttamente. Riceverai un'email con le istruzioni di conferma in pochi istanti."
|
1118 |
|
1119 |
-
#: includes/i18n.php:
|
1120 |
msgid "Your name was successfully updated."
|
1121 |
msgstr "Il tuo nome è stato aggiornato correttamente."
|
1122 |
|
1123 |
-
#: includes/i18n.php:
|
1124 |
msgid "You have successfully updated your %s."
|
1125 |
msgstr "Hai aggiornato con successo il tuo %s."
|
1126 |
|
1127 |
-
#: includes/i18n.php:
|
1128 |
msgid "Please provide your full name."
|
1129 |
msgstr "Per favore inserisci il tuo nome completo."
|
1130 |
|
1131 |
-
#: includes/i18n.php:
|
1132 |
msgid ""
|
1133 |
"Verification mail was just sent to %s. If you can't find it after 5 min, "
|
1134 |
"please check your spam box."
|
1135 |
msgstr "L'email di verifica è stata inviata a %s. Se dopo 5 minuti non è ancora arrivata, per favore controlla nella tua casella di posta indesiderata."
|
1136 |
|
1137 |
-
#: includes/i18n.php:
|
1138 |
msgid ""
|
1139 |
"Just letting you know that the add-ons information of %s is being pulled "
|
1140 |
"from an external server."
|
1141 |
msgstr "Le informazioni sugli add-on di %s vengono scaricate da un server esterno."
|
1142 |
|
1143 |
-
#: includes/i18n.php:
|
1144 |
msgid "No credit card required"
|
1145 |
msgstr "Nessuna carta di credito richiesta"
|
1146 |
|
1147 |
-
#: includes/i18n.php:
|
1148 |
msgid "Premium plugin version was successfully activated."
|
1149 |
msgstr "La versione Premium del plugin è stata attivata correttamente."
|
1150 |
|
1151 |
-
#: includes/i18n.php:
|
1152 |
msgid "The upgrade of %s was successfully completed."
|
1153 |
msgstr "L'aggiornamento di %s è stato completato con successo."
|
1154 |
|
1155 |
-
#: includes/i18n.php:
|
1156 |
msgid "Your account was successfully activated with the %s plan."
|
1157 |
msgstr "Il tuo account è stato attivato correttamente con il piano %s."
|
1158 |
|
1159 |
-
#: includes/i18n.php:
|
1160 |
msgid "Download the latest %s version now"
|
1161 |
msgstr "Scarica l'ultima versione di %s"
|
1162 |
|
1163 |
-
#: includes/i18n.php:
|
1164 |
msgid "Please follow these steps to complete the upgrade"
|
1165 |
msgstr "Segui i passi seguenti per completare l'aggiornamento"
|
1166 |
|
1167 |
-
#: includes/i18n.php:
|
1168 |
msgid "Download the latest %s version"
|
1169 |
msgstr "Scarica l'ultima versione di %s"
|
1170 |
|
1171 |
-
#: includes/i18n.php:
|
1172 |
msgid "Download the latest version"
|
1173 |
msgstr "Scarica l'ultima versione"
|
1174 |
|
1175 |
-
#: includes/i18n.php:
|
1176 |
msgid "Deactivate the free version"
|
1177 |
msgstr "Disattiva la versione gratuita"
|
1178 |
|
1179 |
-
#: includes/i18n.php:
|
1180 |
msgid "Upload and activate the downloaded version"
|
1181 |
msgstr "Carica e attiva la versione scaricata"
|
1182 |
|
1183 |
-
#: includes/i18n.php:
|
1184 |
msgid "How to upload and activate?"
|
1185 |
msgstr "Come faccio a caricare ed attivare?"
|
1186 |
|
1187 |
-
#: includes/i18n.php:
|
1188 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1189 |
msgid "%s Add-on was successfully purchased."
|
1190 |
msgstr "L' add-on %s è stato acquistato con successo."
|
1191 |
|
1192 |
-
#: includes/i18n.php:
|
1193 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1194 |
msgstr "Il piano del tuo add-on %s è stato aggiornato con successo."
|
1195 |
|
1196 |
-
#: includes/i18n.php:
|
1197 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1198 |
msgstr "Il tuo indirizzo email è stato verificato con successo - SEI UN GRANDE!"
|
1199 |
|
1200 |
-
#: includes/i18n.php:
|
1201 |
msgid "Your plan was successfully upgraded."
|
1202 |
msgstr "Il piano è stato aggiornato con successo."
|
1203 |
|
1204 |
-
#: includes/i18n.php:
|
1205 |
msgid "Your plan was successfully changed to %s."
|
1206 |
msgstr "Il piano è stato cambiato con successo a %s."
|
1207 |
|
1208 |
-
#: includes/i18n.php:
|
1209 |
msgid ""
|
1210 |
"Your license has expired. You can still continue using the free plugin "
|
1211 |
"forever."
|
1212 |
msgstr "La licenza è scaduta. È comunque possibile continuare ad utilizzare il plugin gratuito per sempre."
|
1213 |
|
1214 |
-
#: includes/i18n.php:
|
1215 |
msgid ""
|
1216 |
"Your license has been cancelled. If you think it's a mistake, please contact"
|
1217 |
" support."
|
1218 |
msgstr "La tua licenza è stata cancellata. Se credi sia un errore, per favore contatta il supporto."
|
1219 |
|
1220 |
-
#: includes/i18n.php:
|
1221 |
msgid "Your trial has been successfully started."
|
1222 |
msgstr "La versione di prova è stata avviata correttamente."
|
1223 |
|
1224 |
-
#: includes/i18n.php:
|
1225 |
msgid "Your license was successfully activated."
|
1226 |
msgstr "La tua licenza è stata attivata correttamente."
|
1227 |
|
1228 |
-
#: includes/i18n.php:
|
1229 |
msgid "It looks like your site currently doesn't have an active license."
|
1230 |
msgstr "Sembra che il tuo sito non disponga di alcuna licenza attiva."
|
1231 |
|
1232 |
-
#: includes/i18n.php:
|
1233 |
msgid ""
|
1234 |
"Your license was successfully deactivated, you are back to the %s plan."
|
1235 |
msgstr "La tua licenza é stata disattivata con successo, sei tornato al piano %s."
|
1236 |
|
1237 |
-
#: includes/i18n.php:
|
1238 |
msgid "It looks like the license deactivation failed."
|
1239 |
msgstr "Sembra che la disattivazione della licenza non sia riuscita."
|
1240 |
|
1241 |
-
#: includes/i18n.php:
|
1242 |
msgid "It looks like the license could not be activated."
|
1243 |
msgstr "Sembra che la licenza non possa essere attivata."
|
1244 |
|
1245 |
-
#: includes/i18n.php:
|
1246 |
msgid "Error received from the server:"
|
1247 |
msgstr "Errore ricevuto dal server:"
|
1248 |
|
1249 |
-
#: includes/i18n.php:
|
1250 |
msgid ""
|
1251 |
"Your trial has expired. You can still continue using all our free features."
|
1252 |
msgstr "La versione di prova è scaduta. Si può comunque continuare a utilizzare tutte le nostre funzioni gratuite."
|
1253 |
|
1254 |
-
#: includes/i18n.php:
|
1255 |
msgid ""
|
1256 |
"Your plan was successfully downgraded. Your %s plan license will expire in "
|
1257 |
"%s."
|
1258 |
msgstr "Il tuo piano è stato declassato con successo. La licenza del piano %s scadrà in %s."
|
1259 |
|
1260 |
-
#: includes/i18n.php:
|
1261 |
msgid ""
|
1262 |
"Seems like we are having some temporary issue with your plan downgrade. "
|
1263 |
"Please try again in few minutes."
|
1264 |
msgstr "Stiamo avendo qualche problema temporaneo con il downgrade del piano. Riprova tra qualche minuto."
|
1265 |
|
1266 |
-
#: includes/i18n.php:
|
1267 |
msgid ""
|
1268 |
"It looks like you are not in trial mode anymore so there's nothing to cancel"
|
1269 |
" :)"
|
1270 |
msgstr "Sembra che tu non stia più usando la prova gratuita, quindi non c'è niente che tu debba annullare :)"
|
1271 |
|
1272 |
-
#: includes/i18n.php:
|
1273 |
msgid "Your %s free trial was successfully cancelled."
|
1274 |
msgstr "Il tuo periodo di prova gratuito %s è stato annullato con successo."
|
1275 |
|
1276 |
-
#: includes/i18n.php:
|
1277 |
msgctxt "%s - numeric version number"
|
1278 |
msgid "Version %s was released."
|
1279 |
msgstr "La versione %s é stata rilasciata."
|
1280 |
|
1281 |
-
#: includes/i18n.php:
|
1282 |
msgid "Please download %s."
|
1283 |
msgstr "Scarica %s."
|
1284 |
|
1285 |
-
#: includes/i18n.php:
|
1286 |
msgctxt "%s - plan name, as the latest professional version here"
|
1287 |
msgid "the latest %s version here"
|
1288 |
msgstr "l'ultima versione %s é quì"
|
1289 |
|
1290 |
-
#: includes/i18n.php:
|
1291 |
msgid ""
|
1292 |
"How do you like %s so far? Test all our %s premium features with a %d-day "
|
1293 |
"free trial."
|
1294 |
msgstr "Come sta andando con %s? Prova tutte le funzionalità premium di %s con una prova gratuita di %d giorni."
|
1295 |
|
1296 |
-
#: includes/i18n.php:
|
1297 |
msgctxt "call to action"
|
1298 |
msgid "Start free trial"
|
1299 |
msgstr "Inizia il periodo di prova gratuito"
|
1300 |
|
1301 |
-
#: includes/i18n.php:
|
1302 |
msgid "Starting trial"
|
1303 |
msgstr "Inizio del periodo di prova gratuito"
|
1304 |
|
1305 |
-
#: includes/i18n.php:
|
1306 |
msgid "Please wait"
|
1307 |
msgstr "Attendere"
|
1308 |
|
1309 |
-
#: includes/i18n.php:
|
1310 |
msgid ""
|
1311 |
"Seems like we are having some temporary issue with your trial cancellation. "
|
1312 |
"Please try again in few minutes."
|
1313 |
msgstr "Stiamo avendo qualche problema temporaneo con l'annullamento del periodo di prova. Riprova tra qualche minuto."
|
1314 |
|
1315 |
-
#: includes/i18n.php:
|
1316 |
msgid "You already utilized a trial before."
|
1317 |
msgstr "Hai già utilizzato una prova gratuita in passato."
|
1318 |
|
1319 |
-
#: includes/i18n.php:
|
1320 |
msgid "You are already running the plugin in a trial mode."
|
1321 |
msgstr "Stai già usando il plugin in modalità di prova gratuita."
|
1322 |
|
1323 |
-
#: includes/i18n.php:
|
1324 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1325 |
msgstr "Il piano %s non esiste, per questo motivo non è possibile iniziare il periodo di prova."
|
1326 |
|
1327 |
-
#: includes/i18n.php:
|
1328 |
msgid "Plan %s does not support a trial period."
|
1329 |
msgstr "Il piano %s non supporta il periodo di prova."
|
1330 |
|
1331 |
-
#: includes/i18n.php:
|
1332 |
msgid "None of the plugin's plans supports a trial period."
|
1333 |
msgstr "Non esiste alcun piano del plugin che offra il periodo di prova."
|
1334 |
|
1335 |
-
#: includes/i18n.php:
|
1336 |
msgid ""
|
1337 |
"Unexpected API error. Please contact the plugin's author with the following "
|
1338 |
"error."
|
1339 |
msgstr "Errore inaspettato dell'API. Per favore contatta l'autore del plugin riportando il seguente errore."
|
1340 |
|
1341 |
-
#: includes/i18n.php:
|
1342 |
msgid "No commitment for %s days - cancel anytime!"
|
1343 |
msgstr "Nessun impegno per %s giorni - puoi annullare in qualsiasi momento!"
|
1344 |
|
1345 |
-
#: includes/i18n.php:
|
1346 |
msgid ""
|
1347 |
"Your license has expired. You can still continue using all the %s features, "
|
1348 |
"but you'll need to renew your license to continue getting updates and "
|
1349 |
"support."
|
1350 |
msgstr "La licenza è scaduta. È comunque possibile continuare a utilizzare tutte le funzionalità di %s, ma sarà necessario rinnovare la licenza per continuare a ricevere gli aggiornamenti ed il supporto."
|
1351 |
|
1352 |
-
#: includes/i18n.php:
|
1353 |
msgid "Couldn't activate %s."
|
1354 |
msgstr "Non é stato possibile attivare %s."
|
1355 |
|
1356 |
-
#: includes/i18n.php:
|
1357 |
msgid "Please contact us with the following message:"
|
1358 |
msgstr "Contattaci con il seguente messaggio:"
|
1359 |
|
1360 |
-
#: includes/i18n.php:
|
1361 |
msgid ""
|
1362 |
"It looks like you are still on the %s plan. If you did upgrade or change "
|
1363 |
"your plan, it's probably an issue on our side - sorry."
|
1364 |
msgstr "Sembra che tu sia ancora usando il piano %s. Se hai effettuato un upgrade o cambiato il piano, è probabile che ci sia un problema nei nostri sistemi."
|
1365 |
|
1366 |
-
#: includes/i18n.php:
|
1367 |
msgid "Please contact us here"
|
1368 |
msgstr "Contattaci qui"
|
1369 |
|
1370 |
-
#: includes/i18n.php:
|
1371 |
msgid ""
|
1372 |
"I have upgraded my account but when I try to Sync the License, the plan "
|
1373 |
"remains %s."
|
1374 |
msgstr "Ho aggiornato il mio account, ma quando cerco di sincronizzare la licenza, il piano rimane %s."
|
1375 |
|
1376 |
-
#: includes/i18n.php:
|
1377 |
msgid "From unknown reason, the API connectivity test failed."
|
1378 |
msgstr "Il test di connettività dell'API ha fallito per motivi sconosciuti."
|
1379 |
|
1380 |
-
#: includes/i18n.php:
|
1381 |
msgid ""
|
1382 |
"It's probably a temporary issue on our end. Just to be sure, with your "
|
1383 |
"permission, would it be o.k to run another connectivity test?"
|
1384 |
msgstr "Si tratta probabilmente di un problema nei nostri sistemi. Per esserne sicuri, potresti darci il permesso di effettuare un ulteriore test della connettività? "
|
1385 |
|
1386 |
-
#: includes/i18n.php:
|
1387 |
msgid ""
|
1388 |
"We use PHP cURL library for the API calls, which is a very common library "
|
1389 |
"and usually installed out of the box. Unfortunately, cURL is not installed "
|
1390 |
"on your server."
|
1391 |
msgstr "Utilizziamo la libreria PHP cURL per le chiamate alla nostra API. Questa libreria è molto comune ed è installata di base. Sfortunatamente cURL non è presente nel tuo server."
|
1392 |
|
1393 |
-
#: includes/i18n.php:
|
1394 |
msgid ""
|
1395 |
"From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1396 |
msgstr "Per un motivo sconosciuto, CloudFlare, il firewall che utilizziamo, blocca la connessione."
|
1397 |
|
1398 |
-
#: includes/i18n.php:
|
1399 |
msgctxt "as pluginX requires an access to our API"
|
1400 |
msgid "%s requires an access to our API."
|
1401 |
msgstr "%s richiede un accesso alla nostra API."
|
1402 |
|
1403 |
-
#: includes/i18n.php:
|
1404 |
msgid ""
|
1405 |
"It looks like your server is using Squid ACL (access control lists), which "
|
1406 |
"blocks the connection."
|
1407 |
msgstr "Sembra che il tuo server stia usando Squid ACL (lista per il controllo degli accessi) il quale blocca la connessione."
|
1408 |
|
1409 |
-
#: includes/i18n.php:
|
1410 |
msgid "I don't know what is Squid or ACL, help me!"
|
1411 |
msgstr "Non ho idea di cosa sia Squid o ACL, aiutami!"
|
1412 |
|
1413 |
-
#: includes/i18n.
|
1414 |
msgid ""
|
1415 |
"We'll make sure to contact your hosting company and resolve the issue. You "
|
1416 |
"will get a follow-up email to %s once we have an update."
|
1417 |
msgstr "Contatteremo il tuo hosting e risolveremo il problema. Riceverai un' email a %s non appena ci saranno aggiornamenti."
|
1418 |
|
1419 |
-
#: includes/i18n.php:
|
1420 |
msgid "I'm a system administrator"
|
1421 |
msgstr "Sono un sistemista"
|
1422 |
|
1423 |
-
#: includes/i18n.php:
|
1424 |
msgid ""
|
1425 |
-
"Great, please whitelist the following domains: %s. Once you done,
|
1426 |
-
" the plugin and activate it again."
|
1427 |
-
msgstr "Perfetto, aggiungi alla whitelist i seguenti domini: %s.
|
1428 |
|
1429 |
-
#: includes/i18n.php:
|
1430 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1431 |
msgstr "Non ho idea di cosa sia cURL o come installarlo, aiutami!"
|
1432 |
|
1433 |
-
#: includes/i18n.php:
|
1434 |
msgid ""
|
1435 |
"Great, please install cURL and enable it in your php.ini file. To make sure "
|
1436 |
"it was successfully activated, use 'phpinfo()'. Once activated, deactivate "
|
1437 |
"the plugin and reactivate it back again."
|
1438 |
msgstr "Perfetto, installa cURL ed attivalo nel tuo file php.ini. Per essere sicuro di averlo attivato con successo, usa \"phpinfo()\". Una volta attivato disattva il plugin e attivalo di nuovo."
|
1439 |
|
1440 |
-
#: includes/i18n.php:
|
1441 |
msgid ""
|
1442 |
"We are sure it's an issue on our side and more than happy to resolve it for "
|
1443 |
"you ASAP if you give us a chance."
|
1444 |
msgstr "Siamo sicuri che sia un nostro problema e siamo più che felici di risolverlo per te al più presto. Per poter procedere abbiamo bisogno del tuo consenso."
|
1445 |
|
1446 |
-
#: includes/i18n.php:
|
1447 |
msgid ""
|
1448 |
"Sorry for the inconvenience and we are here to help if you give us a chance."
|
1449 |
msgstr "Siamo spiacenti per l'inconveniente e siamo qui per aiutarti con il tuo permesso."
|
1450 |
|
1451 |
-
#: includes/i18n.php:
|
1452 |
msgid "Yes - I'm giving you a chance to fix it"
|
1453 |
msgstr "Sì - sto dandovi la possibilità di risolvere il problema"
|
1454 |
|
1455 |
-
#: includes/i18n.php:
|
1456 |
msgid ""
|
1457 |
"We will do our best to whitelist your server and resolve this issue ASAP. "
|
1458 |
"You will get a follow-up email to %s once we have an update."
|
1459 |
msgstr "Faremo del nostro meglio per mettere il server in whitelist e risolvere il problema il prima possibile. Avrai un aggiornamento dello stato tramite email all'indirizzo %s."
|
1460 |
|
1461 |
-
#: includes/i18n.php:
|
1462 |
msgid "Let's try your previous version"
|
1463 |
msgstr "Proviamo con la versione precedente"
|
1464 |
|
1465 |
-
#: includes/i18n.php:
|
1466 |
msgid "Uninstall this version and install the previous one."
|
1467 |
msgstr "Disinstalla questa versione e installa quella precedente."
|
1468 |
|
1469 |
-
#: includes/i18n.php:
|
1470 |
msgid "That's exhausting, please deactivate"
|
1471 |
msgstr "È estenuante, disattivalo"
|
1472 |
|
1473 |
-
#: includes/i18n.php:
|
1474 |
msgid ""
|
1475 |
"We feel your frustration and sincerely apologize for the inconvenience. Hope"
|
1476 |
" to see you again in the future."
|
1477 |
msgstr "Capiamo la tua frustrazione e ci scusiamo per l'inconveniente. Speriamo di rivederti nuovamente in futuro."
|
1478 |
|
1479 |
-
#: includes/i18n.php:
|
1480 |
msgid ""
|
1481 |
"Thank for giving us the chance to fix it! A message was just sent to our "
|
1482 |
"technical staff. We will get back to you as soon as we have an update to %s."
|
1483 |
" Appreciate your patience."
|
1484 |
msgstr "Grazie per averci dato la possibilità di risolvere il problema! È stato appena inviato un messaggio al nostro staff tecnico. Ti risponderemo non appena avremo un aggiornamento riguardante %s. Grazie per la tua pazienza."
|
1485 |
|
1486 |
-
#: includes/i18n.php:
|
1487 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1488 |
msgid ""
|
1489 |
"Your server is blocking the access to Freemius' API, which is crucial for "
|
1490 |
"%1s synchronization. Please contact your host to whitelist %2s"
|
1491 |
msgstr "Il tuo server sta bloccando l'accesso all'API di Freemius. L'accesso è cruciale per quanto riguarda la la sincronizzazione di %1s. Per favore contatta il tuo host per aggiungere %2s alla whitelist."
|
1492 |
|
1493 |
-
#: includes/i18n.php:
|
1494 |
msgid ""
|
1495 |
"It seems like one of the authentication parameters is wrong. Update your "
|
1496 |
"Public Key, Secret Key & User ID, and try again."
|
1497 |
msgstr "Sembra che uno dei parametri di autenticazione sia sbagliato. Aggiorna la tua chiave pubblica, Secret Key & User ID e riprova."
|
1498 |
|
1499 |
-
#: includes/i18n.php:
|
1500 |
msgid ""
|
1501 |
"Please check your mailbox, you should receive an email via %s to confirm the"
|
1502 |
" ownership change. From security reasons, you must confirm the change within"
|
@@ -1504,122 +1577,122 @@ msgid ""
|
|
1504 |
"folder."
|
1505 |
msgstr "Verifica di aver ricevuto l'email da %s per confermare il cambiamento del proprietario. Per ragioni di sicurezza devi confermare il cambiamento entro 15 minuti. Se non trovi l'email controlla nella posta indesiderata."
|
1506 |
|
1507 |
-
#: includes/i18n.php:
|
1508 |
msgid ""
|
1509 |
"Thanks for confirming the ownership change. An email was just sent to %s for"
|
1510 |
" final approval."
|
1511 |
msgstr "Grazie per aver confermato il cambiamento del proprietario. Un' email è stata appena inviata a %s per la conferma finale."
|
1512 |
|
1513 |
-
#: includes/i18n.php:
|
1514 |
msgid "%s is the new owner of the account."
|
1515 |
msgstr "%s è il nuovo proprietario dell'account."
|
1516 |
|
1517 |
-
#: includes/i18n.php:
|
1518 |
msgctxt "addonX cannot run without pluginY"
|
1519 |
msgid "%s cannot run without %s."
|
1520 |
msgstr "%s non può funzionare senza %s."
|
1521 |
|
1522 |
-
#: includes/i18n.php:
|
1523 |
msgctxt "addonX cannot run..."
|
1524 |
msgid "%s cannot run without the plugin."
|
1525 |
msgstr "%s non può funzionare senza il plugin."
|
1526 |
|
1527 |
-
#: includes/i18n.php:
|
1528 |
msgctxt "pluginX activation was successfully..."
|
1529 |
msgid "%s activation was successfully completed."
|
1530 |
msgstr "%s è stato attivato con successo."
|
1531 |
|
1532 |
-
#: includes/i18n.php:
|
1533 |
msgctxt "Plugin installer section title"
|
1534 |
msgid "Features & Pricing"
|
1535 |
msgstr "Caratteristiche & prezzi"
|
1536 |
|
1537 |
-
#: includes/i18n.php:
|
1538 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1539 |
msgstr "L'add-on dev'essere distribuito da WordPress.org o Freemius."
|
1540 |
|
1541 |
-
#: includes/i18n.php:
|
1542 |
msgid "Paid add-on must be deployed to Freemius."
|
1543 |
msgstr "Gli add-on a pagamento devono essere distribuiti da Freemius."
|
1544 |
|
1545 |
-
#: includes/i18n.php:
|
1546 |
msgid ""
|
1547 |
"%s is a premium only add-on. You have to purchase a license first before "
|
1548 |
"activating the plugin."
|
1549 |
msgstr "%s è un add-on premium. Devi comprare una licenza prima di poter attivare il plugin."
|
1550 |
|
1551 |
-
#: includes/i18n.php:
|
1552 |
msgid ""
|
1553 |
"%s free trial was successfully cancelled. Since the add-on is premium only "
|
1554 |
"it was automatically deactivated. If you like to use it in the future, "
|
1555 |
"you'll have to purchase a license."
|
1556 |
msgstr "Il periodo di prova gratuito %s è stato annullato con successo. Siccome l'add-on è premium, è stato disattivato automaticamente. Se vorrai usarlo in futuro, dovrai comprare una licenza."
|
1557 |
|
1558 |
-
#: includes/i18n.php:
|
1559 |
msgctxt "as every month"
|
1560 |
msgid "Monthly"
|
1561 |
msgstr "Mensilmente"
|
1562 |
|
1563 |
-
#: includes/i18n.php:
|
1564 |
msgctxt "as monthly period"
|
1565 |
msgid "mo"
|
1566 |
msgstr "mese"
|
1567 |
|
1568 |
-
#: includes/i18n.php:
|
1569 |
msgctxt "as once a year"
|
1570 |
msgid "Annual"
|
1571 |
msgstr "Annuale"
|
1572 |
|
1573 |
-
#: includes/i18n.php:
|
1574 |
msgctxt "as once a year"
|
1575 |
msgid "Annually"
|
1576 |
msgstr "Annualmente"
|
1577 |
|
1578 |
-
#: includes/i18n.php:
|
1579 |
msgctxt "as once a year"
|
1580 |
msgid "Once"
|
1581 |
msgstr "Una volta"
|
1582 |
|
1583 |
-
#: includes/i18n.php:
|
1584 |
msgctxt "as annual period"
|
1585 |
msgid "year"
|
1586 |
msgstr "anno"
|
1587 |
|
1588 |
-
#: includes/i18n.php:
|
1589 |
msgid "Lifetime"
|
1590 |
msgstr "Tutta la vita"
|
1591 |
|
1592 |
-
#: includes/i18n.php:
|
1593 |
msgctxt "e.g. the best product"
|
1594 |
msgid "Best"
|
1595 |
msgstr "Migliore"
|
1596 |
|
1597 |
-
#: includes/i18n.php:
|
1598 |
msgctxt "e.g. billed monthly"
|
1599 |
msgid "Billed %s"
|
1600 |
msgstr "Fatturato %s"
|
1601 |
|
1602 |
-
#: includes/i18n.php:
|
1603 |
msgctxt "as a discount of $5 or 10%"
|
1604 |
msgid "Save %s"
|
1605 |
msgstr "Risparmia %s"
|
1606 |
|
1607 |
-
#: includes/i18n.php:
|
1608 |
msgid "View details"
|
1609 |
msgstr "Visualizza dettagli"
|
1610 |
|
1611 |
-
#: includes/i18n.php:
|
1612 |
msgctxt "button label"
|
1613 |
msgid "Approve & Start Trial"
|
1614 |
msgstr "Approva e inizia il periodo di prova gratuito"
|
1615 |
|
1616 |
-
#: includes/i18n.php:
|
1617 |
msgid ""
|
1618 |
"You are 1-click away from starting your %1$s-day free trial of the %2$s "
|
1619 |
"plan."
|
1620 |
msgstr "Sei a un clic di distanza dall'iniziare il tuo periodo di prova gratuito di %1$s giorni per il piano %2$s."
|
1621 |
|
1622 |
-
#: includes/i18n.php:
|
1623 |
msgid ""
|
1624 |
"For compliance with the WordPress.org guidelines, before we start the trial "
|
1625 |
"we ask that you opt-in with your user and non-sensitive site information, "
|
@@ -1627,42 +1700,172 @@ msgid ""
|
|
1627 |
"updates and to validate your trial."
|
1628 |
msgstr "Per seguire le linee guida di WordPress, prima di iniziare il periodo di prova ti chiediamo di iscriverti con il tuo utente e i dati non sensibili inerenti al tuo sito, così da permettere periodicamente al plugin di inviare dati a %s per poter controllare la presenza di nuove versioni e convalidare il tuo periodo di prova gratuito."
|
1629 |
|
1630 |
-
#: includes/i18n.php:
|
1631 |
msgid "Business name"
|
1632 |
msgstr "Nome della compagnia"
|
1633 |
|
1634 |
-
#: includes/i18n.php:
|
1635 |
msgid "Tax / VAT ID"
|
1636 |
msgstr "Numero Partita Iva o VAT"
|
1637 |
|
1638 |
-
#: includes/i18n.php:
|
1639 |
msgid "Address Line %d"
|
1640 |
msgstr "Riga indirizzo %d"
|
1641 |
|
1642 |
-
#: includes/i18n.php:
|
1643 |
msgid "Country"
|
1644 |
msgstr "Nazione"
|
1645 |
|
1646 |
-
#: includes/i18n.php:
|
1647 |
msgid "Select Country"
|
1648 |
msgstr "Seleziona Nazione"
|
1649 |
|
1650 |
-
#: includes/i18n.php:
|
1651 |
msgid "City"
|
1652 |
msgstr "Città"
|
1653 |
|
1654 |
-
#: includes/i18n.php:
|
1655 |
msgid "Town"
|
1656 |
msgstr "Cittadina"
|
1657 |
|
1658 |
-
#: includes/i18n.php:
|
1659 |
msgid "State"
|
1660 |
msgstr "Stato"
|
1661 |
|
1662 |
-
#: includes/i18n.php:
|
1663 |
msgid "Province"
|
1664 |
msgstr "Provincia"
|
1665 |
|
1666 |
-
#: includes/i18n.php:
|
1667 |
msgid "ZIP / Postal Code"
|
1668 |
msgstr "CAP"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Copyright (C) 2017 freemius
|
2 |
# This file is distributed under the same license as the freemius package.
|
3 |
# Translators:
|
4 |
# Pelly Benassi <plasmax@gmail.com>, 2016
|
5 |
+
# Daniele Scasciafratte Mte90 <mte90net@gmail.com>, 2015-2017
|
6 |
+
# Pelly Benassi <plasmax@gmail.com>, 2016-2017
|
7 |
# Vova Feldman <vova@freemius.com>, 2015-2016
|
8 |
msgid ""
|
9 |
msgstr ""
|
10 |
"Project-Id-Version: WordPress SDK\n"
|
11 |
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
12 |
+
"POT-Creation-Date: \n"
|
13 |
+
"PO-Revision-Date: 2017-03-09 20:58+0000\n"
|
14 |
+
"Last-Translator: Pelly Benassi <plasmax@gmail.com>\n"
|
15 |
"Language-Team: Italian (Italy) (http://www.transifex.com/freemius/wordpress-sdk/language/it_IT/)\n"
|
16 |
"MIME-Version: 1.0\n"
|
17 |
"Content-Type: text/plain; charset=UTF-8\n"
|
19 |
"Language: it_IT\n"
|
20 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
21 |
"X-Poedit-Basepath: ..\n"
|
22 |
+
"X-Poedit-KeywordsList: _fs_text;_fs_echo;_fs_esc_attr;_fs_esc_attr_echo;_fs_esc_html;_fs_esc_html_echo;_fs_x:1,2c;_fs_ex:1,2c;_fs_esc_attr_x:1,2c;_fs_esc_html_x:1,2c;_fs_n:1,2;_fs_n_noop:1,2;_fs_nx:1,2,4c;_fs_nx_noop:1,2,3c\n"
|
23 |
"X-Poedit-SearchPath-0: .\n"
|
24 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
25 |
"X-Poedit-SourceCharset: UTF-8\n"
|
26 |
|
27 |
+
#: includes/i18n.php:35
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
msgid "Account"
|
29 |
msgstr "Account"
|
30 |
|
31 |
+
#: includes/i18n.php:36
|
32 |
msgid "Add On"
|
33 |
msgstr "Add-on"
|
34 |
|
35 |
+
#: includes/i18n.php:37
|
36 |
msgid "Contact Us"
|
37 |
msgstr "Contattaci"
|
38 |
|
39 |
+
#: includes/i18n.php:38
|
40 |
msgid "Contact Support"
|
41 |
msgstr "Contatta il supporto"
|
42 |
|
43 |
+
#: includes/i18n.php:39
|
44 |
msgid "Change Ownership"
|
45 |
msgstr "Cambia Proprietario"
|
46 |
|
47 |
+
#: includes/i18n.php:40
|
48 |
msgid "Support"
|
49 |
msgstr "Supporto"
|
50 |
|
51 |
+
#: includes/i18n.php:41
|
52 |
msgid "Support Forum"
|
53 |
msgstr "Forum di supporto"
|
54 |
|
55 |
+
#: includes/i18n.php:42
|
56 |
msgid "Add Ons"
|
57 |
msgstr "Add-on"
|
58 |
|
59 |
+
#: includes/i18n.php:43
|
60 |
msgctxt "verb"
|
61 |
msgid "Upgrade"
|
62 |
msgstr "Aggiornamento"
|
63 |
|
64 |
+
#: includes/i18n.php:44
|
65 |
msgid "Awesome"
|
66 |
msgstr "Fantastico"
|
67 |
|
68 |
+
#: includes/i18n.php:45
|
69 |
msgctxt "noun"
|
70 |
msgid "Pricing"
|
71 |
msgstr "Prezzi"
|
72 |
|
73 |
+
#: includes/i18n.php:46
|
74 |
msgctxt "noun"
|
75 |
msgid "Price"
|
76 |
msgstr "Prezzo"
|
77 |
|
78 |
+
#: includes/i18n.php:47
|
79 |
msgid "Unlimited Updates"
|
80 |
msgstr "Aggiornamenti Illimitati"
|
81 |
|
82 |
+
#: includes/i18n.php:48
|
83 |
msgctxt "verb"
|
84 |
msgid "Downgrade"
|
85 |
msgstr "Downgrade"
|
86 |
|
87 |
+
#: includes/i18n.php:49
|
88 |
msgid "Cancel Trial"
|
89 |
msgstr "Annulla prova gratuita"
|
90 |
|
91 |
+
#: includes/i18n.php:50
|
92 |
msgid "Free Trial"
|
93 |
msgstr "Prova gratuita"
|
94 |
|
95 |
+
#: includes/i18n.php:51
|
96 |
msgid "Start my free %s"
|
97 |
msgstr "Inizia la mia %s"
|
98 |
|
99 |
+
#: includes/i18n.php:52
|
100 |
msgid "No commitment for %s - cancel anytime"
|
101 |
msgstr "Nessun impegno con %s - cancella quando vuoi"
|
102 |
|
103 |
+
#: includes/i18n.php:53
|
104 |
msgid "After your free %s, pay as little as %s"
|
105 |
msgstr "Dopo il tuo %s gratuito, paghi solamente %s"
|
106 |
|
107 |
+
#: includes/i18n.php:54
|
108 |
msgid "Details"
|
109 |
msgstr "Dettagli"
|
110 |
|
111 |
+
#: includes/i18n.php:55
|
112 |
msgid "Account Details"
|
113 |
msgstr "Dettagli dell'account"
|
114 |
|
115 |
+
#: includes/i18n.php:56
|
116 |
msgctxt "verb"
|
117 |
msgid "Delete"
|
118 |
msgstr "Elimina"
|
119 |
|
120 |
+
#: includes/i18n.php:57
|
121 |
msgctxt "verb"
|
122 |
msgid "Show"
|
123 |
msgstr "Mostra"
|
124 |
|
125 |
+
#: includes/i18n.php:58
|
126 |
msgctxt "verb"
|
127 |
msgid "Hide"
|
128 |
msgstr "Nascondi"
|
129 |
|
130 |
+
#: includes/i18n.php:59
|
131 |
msgctxt "verb"
|
132 |
msgid "Edit"
|
133 |
msgstr "Modifica"
|
134 |
|
135 |
+
#: includes/i18n.php:60
|
136 |
msgctxt "verb"
|
137 |
msgid "Update"
|
138 |
msgstr "Aggiorna"
|
139 |
|
140 |
+
#: includes/i18n.php:61
|
141 |
msgid "Date"
|
142 |
msgstr "Data"
|
143 |
|
144 |
+
#: includes/i18n.php:62
|
145 |
msgid "Amount"
|
146 |
msgstr "Importo"
|
147 |
|
148 |
+
#: includes/i18n.php:63
|
149 |
msgid "Invoice"
|
150 |
msgstr "Fattura"
|
151 |
|
152 |
+
#: includes/i18n.php:64
|
153 |
msgid "Billing"
|
154 |
msgstr "Fatturazione"
|
155 |
|
156 |
+
#: includes/i18n.php:65
|
157 |
msgid "Payments"
|
158 |
msgstr "Pagamenti"
|
159 |
|
160 |
+
#: includes/i18n.php:66
|
161 |
msgid "Delete Account"
|
162 |
msgstr "Elimina Account"
|
163 |
|
164 |
+
#: includes/i18n.php:67
|
165 |
msgctxt "as close a window"
|
166 |
msgid "Dismiss"
|
167 |
msgstr "Chiudi"
|
168 |
|
169 |
+
#: includes/i18n.php:68
|
170 |
msgctxt "as product pricing plan"
|
171 |
msgid "Plan"
|
172 |
msgstr "Piano"
|
173 |
|
174 |
+
#: includes/i18n.php:69
|
175 |
msgid "Change Plan"
|
176 |
msgstr "Cambia piano"
|
177 |
|
178 |
+
#: includes/i18n.php:70
|
179 |
msgctxt "as download professional version"
|
180 |
msgid "Download %s Version"
|
181 |
msgstr "Scarica la versione %s"
|
182 |
|
183 |
+
#: includes/i18n.php:71
|
184 |
msgctxt "as download professional version now"
|
185 |
msgid "Download %s version now"
|
186 |
msgstr "Scarica la versione %s ora"
|
187 |
|
188 |
+
#: includes/i18n.php:72
|
189 |
msgctxt "as download latest version"
|
190 |
msgid "Download Latest"
|
191 |
msgstr "Scarica l'ultima versione"
|
192 |
|
193 |
+
#: includes/i18n.php:73
|
194 |
msgctxt "E.g. you have a professional license."
|
195 |
msgid "You have a %s license."
|
196 |
msgstr "Hai la licenza %s."
|
197 |
|
198 |
+
#: includes/i18n.php:74
|
199 |
msgid "New"
|
200 |
msgstr "Nuovo"
|
201 |
|
202 |
+
#: includes/i18n.php:75
|
203 |
msgid "Free"
|
204 |
msgstr "Gratuito"
|
205 |
|
206 |
+
#: includes/i18n.php:76
|
207 |
msgctxt "as trial plan"
|
208 |
msgid "Trial"
|
209 |
msgstr "Prova gratuita"
|
210 |
|
211 |
+
#: includes/i18n.php:77
|
212 |
msgctxt "as starting a trial plan"
|
213 |
msgid "Start Trial"
|
214 |
msgstr "Inizia il periodo di prova gratuito"
|
215 |
|
216 |
+
#: includes/i18n.php:78
|
217 |
msgctxt "verb"
|
218 |
msgid "Purchase"
|
219 |
msgstr "Acquisto"
|
220 |
|
221 |
+
#: includes/i18n.php:79
|
222 |
msgid "Purchase License"
|
223 |
msgstr "Acquista licenza"
|
224 |
|
225 |
+
#: includes/i18n.php:80
|
226 |
msgctxt "verb"
|
227 |
msgid "Buy"
|
228 |
msgstr "Compra"
|
229 |
|
230 |
+
#: includes/i18n.php:81
|
231 |
msgid "Buy License"
|
232 |
msgstr "Compra licenza"
|
233 |
|
234 |
+
#: includes/i18n.php:82
|
235 |
msgid "Single Site License"
|
236 |
msgstr "Licenza per sito singolo"
|
237 |
|
238 |
+
#: includes/i18n.php:83
|
239 |
msgid "Unlimited Licenses"
|
240 |
msgstr "Licenze illimitate"
|
241 |
|
242 |
+
#: includes/i18n.php:84
|
243 |
msgid "Up to %s Sites"
|
244 |
msgstr "Fino a %s siti"
|
245 |
|
246 |
+
#: includes/i18n.php:85
|
247 |
msgid "%sRenew your license now%s to access version %s features and support."
|
248 |
msgstr "%sRinnova la tua licenza ora%s per accedere a funzionalità e supporto della versione %s."
|
249 |
|
250 |
+
#: includes/i18n.php:86
|
251 |
msgid ""
|
252 |
"Enter the email address you've used for the upgrade below and we will resend"
|
253 |
" you the license key."
|
254 |
msgstr "Inserisci qui sotto l'indirizzo email che hai usato per registrare l'aggiornamento e ti invieremo di nuovo la chiave di licenza."
|
255 |
|
256 |
+
#: includes/i18n.php:87
|
257 |
msgctxt "e.g. Professional Plan"
|
258 |
msgid "%s Plan"
|
259 |
msgstr "Piano %s"
|
260 |
|
261 |
+
#: includes/i18n.php:88
|
262 |
msgid "You are just one step away - %s"
|
263 |
msgstr "Sei a un passo dalla fine - %s"
|
264 |
|
265 |
+
#: includes/i18n.php:89
|
266 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
267 |
msgid "Complete \"%s\" Activation Now"
|
268 |
msgstr "Completa l'attivazione di \"%s\" ora"
|
269 |
|
270 |
+
#: includes/i18n.php:91
|
271 |
msgid "We made a few tweaks to the plugin, %s"
|
272 |
msgstr "Abbiamo apportato alcune modifiche al plugin, %s"
|
273 |
|
274 |
+
#: includes/i18n.php:92
|
275 |
msgid "Opt-in to make \"%s\" Better!"
|
276 |
msgstr "Contribuisci a rendere \"%s\" migliore!"
|
277 |
|
278 |
+
#: includes/i18n.php:93
|
279 |
msgid "Error"
|
280 |
msgstr "Errore"
|
281 |
|
282 |
+
#: includes/i18n.php:94
|
283 |
msgid ""
|
284 |
"Freemius SDK couldn't find the plugin's main file. Please contact "
|
285 |
"sdk@freemius.com with the current error."
|
286 |
msgstr "L'SDK di Freemius non è riuscito a trovare il file principale del plugin. Per favore contatta sdk@freemius.com riportando l'errore."
|
287 |
|
288 |
+
#: includes/i18n.php:97
|
289 |
msgctxt "as expiration date"
|
290 |
msgid "Expiration"
|
291 |
msgstr "Scadenza"
|
292 |
|
293 |
+
#: includes/i18n.php:98
|
294 |
msgctxt "as software license"
|
295 |
msgid "License"
|
296 |
msgstr "Licenza"
|
297 |
|
298 |
+
#: includes/i18n.php:99
|
299 |
msgid "not verified"
|
300 |
msgstr "non verificato"
|
301 |
|
302 |
+
#: includes/i18n.php:100
|
303 |
msgid "Verify Email"
|
304 |
msgstr "Verifica email"
|
305 |
|
306 |
+
#: includes/i18n.php:101
|
307 |
msgctxt "e.g. expires in 2 months"
|
308 |
msgid "Expires in %s"
|
309 |
msgstr "Scade in %s"
|
310 |
|
311 |
+
#: includes/i18n.php:102
|
312 |
msgctxt "e.g. auto renews in 2 months"
|
313 |
msgid "Auto renews in %s"
|
314 |
msgstr "Rinnovo automatico in %s"
|
315 |
|
316 |
+
#: includes/i18n.php:103
|
317 |
msgid "No expiration"
|
318 |
msgstr "Nessuna scadenza"
|
319 |
|
320 |
+
#: includes/i18n.php:104
|
321 |
msgid "Expired"
|
322 |
msgstr "Scaduto"
|
323 |
|
324 |
+
#: includes/i18n.php:105
|
325 |
msgid "Cancelled"
|
326 |
msgstr "Annullato"
|
327 |
|
328 |
+
#: includes/i18n.php:106
|
329 |
msgctxt "e.g. In 2 hours"
|
330 |
msgid "In %s"
|
331 |
msgstr "In %s"
|
332 |
|
333 |
+
#: includes/i18n.php:107
|
334 |
msgctxt "e.g. 2 min ago"
|
335 |
msgid "%s ago"
|
336 |
msgstr "%s fa"
|
337 |
|
338 |
+
#: includes/i18n.php:109
|
339 |
+
msgid "%s or higher"
|
340 |
+
msgstr "%s o superiore"
|
341 |
+
|
342 |
+
#: includes/i18n.php:110
|
343 |
msgctxt "as plugin version"
|
344 |
msgid "Version"
|
345 |
msgstr "Versione"
|
346 |
|
347 |
+
#: includes/i18n.php:111
|
348 |
msgid "Name"
|
349 |
msgstr "Nome"
|
350 |
|
351 |
+
#: includes/i18n.php:112
|
352 |
msgid "Email"
|
353 |
msgstr "Email"
|
354 |
|
355 |
+
#: includes/i18n.php:113
|
356 |
msgid "Email address"
|
357 |
msgstr "Indirizzo email"
|
358 |
|
359 |
+
#: includes/i18n.php:114
|
360 |
msgid "Verified"
|
361 |
msgstr "Verificato"
|
362 |
|
363 |
+
#: includes/i18n.php:115
|
364 |
+
msgid "Module"
|
365 |
+
msgstr "Modulo"
|
366 |
+
|
367 |
+
#: includes/i18n.php:116
|
368 |
+
msgid "Module Type"
|
369 |
+
msgstr "Tipo di modulo"
|
370 |
+
|
371 |
+
#: includes/i18n.php:117
|
372 |
msgid "Plugin"
|
373 |
msgstr "Plugin"
|
374 |
|
375 |
+
#: includes/i18n.php:118
|
376 |
msgid "Plugins"
|
377 |
msgstr "Plugin"
|
378 |
|
379 |
+
#: includes/i18n.php:119
|
380 |
+
msgid "Theme"
|
381 |
+
msgstr "Tema"
|
382 |
+
|
383 |
+
#: includes/i18n.php:120
|
384 |
msgid "Themes"
|
385 |
msgstr "Temi"
|
386 |
|
387 |
+
#: includes/i18n.php:121
|
388 |
msgctxt "as file/folder path"
|
389 |
msgid "Path"
|
390 |
msgstr "Percorso"
|
391 |
|
392 |
+
#: includes/i18n.php:122
|
393 |
msgid "Title"
|
394 |
msgstr "Titolo"
|
395 |
|
396 |
+
#: includes/i18n.php:123
|
397 |
msgid "Free version"
|
398 |
msgstr "Versione gratuita"
|
399 |
|
400 |
+
#: includes/i18n.php:124
|
401 |
msgid "Premium version"
|
402 |
msgstr "Versione premium"
|
403 |
|
404 |
+
#: includes/i18n.php:125
|
405 |
msgctxt "as WP plugin slug"
|
406 |
msgid "Slug"
|
407 |
msgstr "Slug"
|
408 |
|
409 |
+
#: includes/i18n.php:126
|
410 |
msgid "ID"
|
411 |
msgstr "ID"
|
412 |
|
413 |
+
#: includes/i18n.php:127
|
414 |
msgid "Users"
|
415 |
msgstr "Utenti"
|
416 |
|
417 |
+
#: includes/i18n.php:128
|
418 |
msgid "Plugin Installs"
|
419 |
msgstr "Installazioni Plugin"
|
420 |
|
421 |
+
#: includes/i18n.php:129
|
422 |
+
msgid "%s Installs"
|
423 |
+
msgstr "%s Installazioni"
|
424 |
+
|
425 |
+
#: includes/i18n.php:130
|
426 |
msgctxt "like websites"
|
427 |
msgid "Sites"
|
428 |
msgstr "Siti"
|
429 |
|
430 |
+
#: includes/i18n.php:131
|
431 |
msgid "User ID"
|
432 |
msgstr "ID utente"
|
433 |
|
434 |
+
#: includes/i18n.php:132
|
435 |
msgid "Site ID"
|
436 |
msgstr "ID del sito"
|
437 |
|
438 |
+
#: includes/i18n.php:133
|
439 |
msgid "Public Key"
|
440 |
msgstr "Chiave pubblica"
|
441 |
|
442 |
+
#: includes/i18n.php:134
|
443 |
msgid "Secret Key"
|
444 |
msgstr "Chiave segreta"
|
445 |
|
446 |
+
#: includes/i18n.php:135
|
447 |
msgctxt "as secret encryption key missing"
|
448 |
msgid "No Secret"
|
449 |
msgstr "Nessuna chiave"
|
450 |
|
451 |
+
#: includes/i18n.php:136
|
452 |
msgid "No ID"
|
453 |
msgstr "Nessun ID"
|
454 |
|
455 |
+
#: includes/i18n.php:137
|
456 |
msgctxt "as synchronize license"
|
457 |
msgid "Sync License"
|
458 |
msgstr "Sincronizza la licenza"
|
459 |
|
460 |
+
#: includes/i18n.php:138
|
461 |
msgctxt "as synchronize"
|
462 |
msgid "Sync"
|
463 |
msgstr "Sincronizza"
|
464 |
|
465 |
+
#: includes/i18n.php:139
|
466 |
msgid "Activate License"
|
467 |
msgstr "Attiva licenza"
|
468 |
|
469 |
+
#: includes/i18n.php:140
|
470 |
msgid "Activate Free Version"
|
471 |
msgstr "Attiva versione gratuita"
|
472 |
|
473 |
+
#: includes/i18n.php:141
|
474 |
msgid ""
|
475 |
"Please enter the license key that you received in the email right after the "
|
476 |
"purchase:"
|
477 |
msgstr "Per favore inserisci la chiave di licenza che hai ricevuto via mail subito dopo l'acquisto:"
|
478 |
|
479 |
+
#: includes/i18n.php:142
|
480 |
msgid "Activating license..."
|
481 |
msgstr "Sto attivando la licenza..."
|
482 |
|
483 |
+
#: includes/i18n.php:143
|
484 |
msgid "Change License"
|
485 |
msgstr "Cambia licenza"
|
486 |
|
487 |
+
#: includes/i18n.php:144
|
488 |
msgid "Update License"
|
489 |
msgstr "Aggiorna licenza"
|
490 |
|
491 |
+
#: includes/i18n.php:145
|
492 |
msgid "Deactivate License"
|
493 |
msgstr "Disattiva licenza"
|
494 |
|
495 |
+
#: includes/i18n.php:146
|
496 |
msgid "Activate"
|
497 |
msgstr "Attiva"
|
498 |
|
499 |
+
#: includes/i18n.php:147
|
500 |
msgid "Deactivate"
|
501 |
msgstr "Disattiva"
|
502 |
|
503 |
+
#: includes/i18n.php:148
|
504 |
msgid "Skip & Deactivate"
|
505 |
msgstr "Salta e disattiva"
|
506 |
|
507 |
+
#: includes/i18n.php:149
|
508 |
+
msgid "Skip & %s"
|
509 |
+
msgstr "Salta & %s"
|
510 |
+
|
511 |
+
#: includes/i18n.php:150
|
512 |
msgid "No - just deactivate"
|
513 |
msgstr "No - disattiva e basta"
|
514 |
|
515 |
+
#: includes/i18n.php:151
|
516 |
msgid "Yes - do your thing"
|
517 |
msgstr "Sì - fai pure"
|
518 |
|
519 |
+
#: includes/i18n.php:152
|
520 |
msgctxt "active mode"
|
521 |
msgid "Active"
|
522 |
msgstr "Attiva"
|
523 |
|
524 |
+
#: includes/i18n.php:153
|
525 |
msgctxt "is active mode?"
|
526 |
msgid "Is Active"
|
527 |
msgstr "è attiva"
|
528 |
|
529 |
+
#: includes/i18n.php:154
|
530 |
msgid "Install Now"
|
531 |
msgstr "Installa ora"
|
532 |
|
533 |
+
#: includes/i18n.php:155
|
534 |
msgid "Install Update Now"
|
535 |
msgstr "Installa l'aggiornamento ora"
|
536 |
|
537 |
+
#: includes/i18n.php:156
|
538 |
msgid "More information about %s"
|
539 |
msgstr "Ulteriori informazioni su %s"
|
540 |
|
541 |
+
#: includes/i18n.php:157
|
542 |
msgid "Localhost"
|
543 |
msgstr "Localhost"
|
544 |
|
545 |
+
#: includes/i18n.php:158
|
546 |
msgctxt "as activate Professional plan"
|
547 |
msgid "Activate %s Plan"
|
548 |
msgstr "Attivare il piano %s"
|
549 |
|
550 |
+
#: includes/i18n.php:159
|
551 |
msgctxt "as 5 licenses left"
|
552 |
msgid "%s left"
|
553 |
msgstr "%s rimanenti"
|
554 |
|
555 |
+
#: includes/i18n.php:160
|
556 |
msgid "Last license"
|
557 |
msgstr "Ultima licenza"
|
558 |
|
559 |
+
#: includes/i18n.php:161
|
560 |
msgid "What is your %s?"
|
561 |
msgstr "Qual è il tuo %s?"
|
562 |
|
563 |
+
#: includes/i18n.php:162
|
564 |
msgid "Activate this add-on"
|
565 |
msgstr "Attivare questo addon"
|
566 |
|
567 |
+
#: includes/i18n.php:163
|
568 |
msgid ""
|
569 |
"Deactivating your license will block all premium features, but will enable "
|
570 |
"you to activate the license on another site. Are you sure you want to "
|
571 |
"proceed?"
|
572 |
msgstr "La disattivazione della licenza bloccherà tutte le funzionalità premium, ma vi permetterà di attivare la licenza su un altro sito. Sei sicuro di voler procedere?"
|
573 |
|
574 |
+
#: includes/i18n.php:164
|
575 |
msgid ""
|
576 |
"Deleting the account will automatically deactivate your %s plan license so "
|
577 |
"you can use it on other sites. If you want to terminate the recurring "
|
579 |
"account. Are you sure you would like to continue with the deletion?"
|
580 |
msgstr "L'eliminazione dell'account disattiva automaticamente la tua licenza del piano %s quindi è possibile utilizzarlo su altri siti. Se si desidera anche terminare i pagamenti ricorrenti, fare clic sul pulsante \"Annulla\" ed effettuare il \"Downgrade\" del tuo account. Sei sicuro di voler continuare con l'eliminazione?"
|
581 |
|
582 |
+
#: includes/i18n.php:165
|
583 |
msgid ""
|
584 |
"Deletion is not temporary. Only delete if you no longer want to use this "
|
585 |
"plugin anymore. Are you sure you would like to continue with the deletion?"
|
586 |
msgstr "L'eliminazione non è temporanea. Cancella solo se non si desidera più utilizzare questo plugin. Sei sicuro di voler continuare con l'eliminazione?"
|
587 |
|
588 |
+
#: includes/i18n.php:166
|
589 |
msgid ""
|
590 |
"Downgrading your plan will immediately stop all future recurring payments "
|
591 |
"and your %s plan license will expire in %s."
|
592 |
msgstr "Effettuare il downgrade del piano interromperà immediatamente tutti i futuri pagamenti ricorrenti e la licenza del piano %s scadrà in %s."
|
593 |
|
594 |
+
#: includes/i18n.php:167
|
595 |
msgid ""
|
596 |
"Cancelling the trial will immediately block access to all premium features. "
|
597 |
"Are you sure?"
|
598 |
msgstr "Cancellando il periodo di prova gratuito bloccherai immediatamente l'accesso a tutte le funzionalità premium. Vuoi continuare?"
|
599 |
|
600 |
+
#: includes/i18n.php:168
|
601 |
msgid ""
|
602 |
"You can still enjoy all %s features but you will not have access to plugin "
|
603 |
"updates and support."
|
604 |
msgstr "Puoi ancora sfruttare tutte le funzionalità di %s, ma non avrai accesso al supporto ed agli aggiornamenti del plugin."
|
605 |
|
606 |
+
#: includes/i18n.php:169
|
607 |
msgid ""
|
608 |
+
"Once your license expires you can still use the Free version but you will "
|
609 |
+
"NOT have access to the %s features."
|
610 |
+
msgstr "Quando la tua licenza scadrà, potrai comunque continuare a usare la versione gratuita, ma NON avrai accesso alle funzionalità %s."
|
611 |
|
612 |
+
#: includes/i18n.php:170
|
613 |
msgid "Are you sure you want to proceed?"
|
614 |
msgstr "Sei sicuro di voler procedere?"
|
615 |
|
616 |
+
#: includes/i18n.php:173
|
617 |
msgid "Add Ons for %s"
|
618 |
msgstr "Add-on per %s"
|
619 |
|
620 |
+
#: includes/i18n.php:174
|
621 |
msgid ""
|
622 |
"We could'nt load the add-ons list. It's probably an issue on our side, "
|
623 |
"please try to come back in few minutes."
|
624 |
msgstr "Non siamo riusciti a caricare la lista degli add-on. Si tratta probabilmente di un problema nel nostro sistema, per favore riprova tra qualche minuto."
|
625 |
|
626 |
+
#: includes/i18n.php:176
|
627 |
msgid "Anonymous feedback"
|
628 |
msgstr "Feedback anonimo"
|
629 |
|
630 |
+
#: includes/i18n.php:177
|
631 |
msgid "Quick feedback"
|
632 |
msgstr "Feedback veloce"
|
633 |
|
634 |
+
#: includes/i18n.php:178
|
635 |
msgid "If you have a moment, please let us know why you are deactivating"
|
636 |
msgstr "Se hai un momento, potresti dirci perché lo hai disattivato?"
|
637 |
|
638 |
+
#: includes/i18n.php:179
|
639 |
msgid "Yes - Deactivate"
|
640 |
msgstr "Si - Disattiva"
|
641 |
|
642 |
+
#: includes/i18n.php:180
|
643 |
msgid "Submit & Deactivate"
|
644 |
msgstr "Invia & Disattiva"
|
645 |
|
646 |
+
#: includes/i18n.php:181
|
647 |
msgid "Cancel"
|
648 |
msgstr "Annulla"
|
649 |
|
650 |
+
#: includes/i18n.php:182
|
651 |
msgid "I no longer need the plugin"
|
652 |
msgstr "Non ho piú bisogno di questo plugin"
|
653 |
|
654 |
+
#: includes/i18n.php:183
|
655 |
msgid "I found a better plugin"
|
656 |
msgstr "Ho trovato un plugin migliore"
|
657 |
|
658 |
+
#: includes/i18n.php:184
|
659 |
msgid "I only needed the plugin for a short period"
|
660 |
msgstr "Avevo bisogno del plugin solo per un breve periodo"
|
661 |
|
662 |
+
#: includes/i18n.php:185
|
663 |
msgid "The plugin broke my site"
|
664 |
msgstr "Il plugin ha causato problemi al mio sito"
|
665 |
|
666 |
+
#: includes/i18n.php:186
|
667 |
msgid "The plugin suddenly stopped working"
|
668 |
msgstr "Il plugin ha smesso di funzionare"
|
669 |
|
670 |
+
#: includes/i18n.php:187
|
671 |
msgid "I can't pay for it anymore"
|
672 |
msgstr "Non posso piú pagarlo"
|
673 |
|
674 |
+
#: includes/i18n.php:188
|
675 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
676 |
msgstr "È una disattivazione temporanea. Sto solo cercando di risolvere un problema."
|
677 |
|
678 |
+
#: includes/i18n.php:189
|
679 |
msgctxt ""
|
680 |
"the text of the \"other\" reason for deactivating the plugin that is shown "
|
681 |
"in the modal box."
|
682 |
msgid "Other"
|
683 |
msgstr "Altro"
|
684 |
|
685 |
+
#: includes/i18n.php:191
|
686 |
msgid "Kindly tell us the reason so we can improve."
|
687 |
msgstr "Spiegandoci il motivo ci aiuterai a migliorare."
|
688 |
|
689 |
+
#: includes/i18n.php:192
|
690 |
msgid "What's the plugin's name?"
|
691 |
msgstr "Qual è il nome del plugin?"
|
692 |
|
693 |
+
#: includes/i18n.php:193
|
694 |
msgid "What price would you feel comfortable paying?"
|
695 |
msgstr "Che prezzo ritieni opportuno pagare?"
|
696 |
|
697 |
+
#: includes/i18n.php:194
|
698 |
msgid "I couldn't understand how to make it work"
|
699 |
msgstr "Non capisco come farlo funzionare"
|
700 |
|
701 |
+
#: includes/i18n.php:195
|
702 |
msgid ""
|
703 |
"The plugin is great, but I need specific feature that you don't support"
|
704 |
msgstr "Il plugin é ottimo ma ho bisogno di una funzionalitá specifica che non é supportata"
|
705 |
|
706 |
+
#: includes/i18n.php:196
|
707 |
msgid "The plugin is not working"
|
708 |
msgstr "Il plugin non funziona"
|
709 |
|
710 |
+
#: includes/i18n.php:197
|
711 |
msgid "It's not what I was looking for"
|
712 |
msgstr "Non é quello che stavo cercando"
|
713 |
|
714 |
+
#: includes/i18n.php:198
|
715 |
msgid "The plugin didn't work as expected"
|
716 |
msgstr "Il plugin non funziona come mi aspettavo"
|
717 |
|
718 |
+
#: includes/i18n.php:199
|
719 |
msgid "What feature?"
|
720 |
msgstr "Quale funzionalitá?"
|
721 |
|
722 |
+
#: includes/i18n.php:200
|
723 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
724 |
msgstr "Condividi cosa non ha funzionato in modo da migliorare il prodotto per gli utenti futuri..."
|
725 |
|
726 |
+
#: includes/i18n.php:201
|
727 |
msgid "What you've been looking for?"
|
728 |
msgstr "Che cosa stai cercando?"
|
729 |
|
730 |
+
#: includes/i18n.php:202
|
731 |
msgid "What did you expect?"
|
732 |
msgstr "Che cosa ti aspettavi?"
|
733 |
|
734 |
+
#: includes/i18n.php:203
|
735 |
msgid "The plugin didn't work"
|
736 |
msgstr "Il plugin non funziona"
|
737 |
|
738 |
+
#: includes/i18n.php:204
|
739 |
msgid "I don't like to share my information with you"
|
740 |
msgstr "Non voglio condividere i miei dati con te"
|
741 |
|
742 |
+
#: includes/i18n.php:205
|
743 |
msgid ""
|
744 |
"You might have missed it, but you don't have to share any data and can just "
|
745 |
"%s the opt-in."
|
746 |
msgstr "Potresti non averci fatto caso, ma non sei obbligato a condividere i tuoi dati e puoi semplicemente %s la tua partecipazione."
|
747 |
|
748 |
+
#: includes/i18n.php:209
|
749 |
msgctxt "greeting"
|
750 |
msgid "Hey %s,"
|
751 |
msgstr "Hey %s,"
|
752 |
|
753 |
+
#: includes/i18n.php:210
|
754 |
msgctxt "a greeting. E.g. Thanks John!"
|
755 |
msgid "Thanks %s!"
|
756 |
msgstr "Grazie %s!"
|
757 |
|
758 |
+
#: includes/i18n.php:211
|
759 |
msgid ""
|
760 |
"Never miss an important update - opt-in to our security and feature updates "
|
761 |
"notifications, and non-sensitive diagnostic tracking with %4$s."
|
762 |
msgstr "Non perdere nessun aggiornamento importante - iscriviti per ricevere notifiche su aggiornamenti relativi alla sicurezza e nuove versioni, oltre al tracciamento di diagnostica non sensibile con %4$s."
|
763 |
|
764 |
+
#: includes/i18n.php:212
|
765 |
msgid ""
|
766 |
"Please help us improve %1$s! If you opt-in, some data about your usage of "
|
767 |
"%1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still "
|
768 |
"work just fine."
|
769 |
msgstr "Aiutaci a migliorare %1$s! Se ti iscrivi, alcuni dati riguardanti il tuo utilizzo di %1$s verranno inviati a %4$s. Se salti questo passaggio, non c'è problema! %1$s funzionerà ugualmente."
|
770 |
|
771 |
+
#: includes/i18n.php:213
|
772 |
msgid ""
|
773 |
"You should receive an activation email for %s to your mailbox at %s. Please "
|
774 |
"make sure you click the activation button in that email to %s."
|
775 |
+
msgstr "Dovresti ricevere un'email di attivazione di %s all'indirizzo %s. Assicurati di fare clic sul pulsante di attivazione nell'email per %s."
|
776 |
|
777 |
+
#: includes/i18n.php:214
|
778 |
msgid "complete the install"
|
779 |
msgstr "completa l'installazione"
|
780 |
|
781 |
+
#: includes/i18n.php:215
|
782 |
msgid "start the trial"
|
783 |
msgstr "Inizia il periodo di prova gratuito"
|
784 |
|
785 |
+
#: includes/i18n.php:216
|
786 |
msgid ""
|
787 |
"Thanks for purchasing %s! To get started, please enter your license key:"
|
788 |
msgstr "Grazie per aver acquistato %s! Per iniziare, per favore inserisci la tua chiave di licenza:"
|
789 |
|
790 |
+
#: includes/i18n.php:217
|
791 |
msgid ""
|
792 |
"The plugin will be periodically sending data to %s to check for plugin "
|
793 |
"updates and verify the validity of your license."
|
794 |
msgstr "Il plugin invierà dati periodicamente a %s per controllare l'esistenza di aggiornamenti e verificare la validità della tua licenza."
|
795 |
|
796 |
+
#: includes/i18n.php:218
|
797 |
msgid "What permissions are being granted?"
|
798 |
msgstr "Quali autorizzazioni vengono concesse?"
|
799 |
|
800 |
+
#: includes/i18n.php:219
|
801 |
msgid "Your Profile Overview"
|
802 |
msgstr "Panoramica del tuo profilo"
|
803 |
|
804 |
+
#: includes/i18n.php:220
|
805 |
msgid "Name and email address"
|
806 |
msgstr "Nome ed indirizzo email"
|
807 |
|
808 |
+
#: includes/i18n.php:221
|
809 |
msgid "Your Site Overview"
|
810 |
msgstr "Panoramica del tuo sito"
|
811 |
|
812 |
+
#: includes/i18n.php:222
|
813 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
814 |
msgstr "URL del sito, versione di WP, informazioni PHP, plugin e temi"
|
815 |
|
816 |
+
#: includes/i18n.php:223
|
817 |
msgid "Current Plugin Events"
|
818 |
msgstr "Eventi correnti del plugin"
|
819 |
|
820 |
+
#: includes/i18n.php:224
|
821 |
msgid "Activation, deactivation and uninstall"
|
822 |
msgstr "Attiva, disattivazione e disinstallazione"
|
823 |
|
824 |
+
#: includes/i18n.php:225
|
825 |
msgid "Plugins & Themes"
|
826 |
msgstr "Plugin e temi"
|
827 |
|
828 |
+
#: includes/i18n.php:226
|
829 |
msgid "Titles, versions and state."
|
830 |
msgstr "Titoli, versioni e stato."
|
831 |
|
832 |
+
#: includes/i18n.php:227
|
833 |
msgid "Admin Notices"
|
834 |
msgstr "Avvisi amministratore"
|
835 |
|
836 |
+
#: includes/i18n.php:228
|
837 |
msgid "Newsletter"
|
838 |
msgstr "Newsletter"
|
839 |
|
840 |
+
#: includes/i18n.php:229
|
841 |
msgid "Updates, announcements, marketing, no spam"
|
842 |
msgstr "Aggiornamenti, annunci, marketing, no spam"
|
843 |
|
844 |
+
#: includes/i18n.php:230
|
845 |
msgid "Privacy Policy"
|
846 |
msgstr "Politica sulla privacy"
|
847 |
|
848 |
+
#: includes/i18n.php:231
|
849 |
msgid "Terms of Service"
|
850 |
msgstr "Termini del Servizio"
|
851 |
|
852 |
+
#: includes/i18n.php:232
|
853 |
msgctxt "as activating plugin"
|
854 |
msgid "Activating"
|
855 |
msgstr "Attivazione"
|
856 |
|
857 |
+
#: includes/i18n.php:233
|
858 |
msgctxt "as in the process of sending an email"
|
859 |
msgid "Sending email"
|
860 |
msgstr "Invio email"
|
861 |
|
862 |
+
#: includes/i18n.php:234
|
863 |
msgctxt "button label"
|
864 |
msgid "Allow & Continue"
|
865 |
msgstr "Consenti & Continua"
|
866 |
|
867 |
+
#: includes/i18n.php:235
|
868 |
msgctxt "button label"
|
869 |
msgid "Agree & Activate License"
|
870 |
msgstr "Accetta e attiva la licenza"
|
871 |
|
872 |
+
#: includes/i18n.php:236
|
873 |
msgctxt "verb"
|
874 |
msgid "Skip"
|
875 |
msgstr "Salta"
|
876 |
|
877 |
+
#: includes/i18n.php:237
|
878 |
msgid "Click here to use the plugin anonymously"
|
879 |
msgstr "Fai clic qui per usare il plugin anonimamente"
|
880 |
|
881 |
+
#: includes/i18n.php:238
|
882 |
msgid "Re-send activation email"
|
883 |
msgstr "Invia nuovamente l'email di attivazione"
|
884 |
|
885 |
+
#: includes/i18n.php:239
|
886 |
msgid "License key"
|
887 |
msgstr "Chiave di licenza"
|
888 |
|
889 |
+
#: includes/i18n.php:240
|
890 |
msgid "Send License Key"
|
891 |
msgstr "Invia chiave di licenza"
|
892 |
|
893 |
+
#: includes/i18n.php:241
|
894 |
msgid "Sending license key"
|
895 |
msgstr "Invio chiave di licenza"
|
896 |
|
897 |
+
#: includes/i18n.php:242
|
898 |
msgid "Have a license key?"
|
899 |
msgstr "Hai una chiave di licenza?"
|
900 |
|
901 |
+
#: includes/i18n.php:243
|
902 |
msgid "Don't have a license key?"
|
903 |
msgstr "Non hai una chiave di licenza?"
|
904 |
|
905 |
+
#: includes/i18n.php:244
|
906 |
msgid "Can't find your license key?"
|
907 |
msgstr "Non trovi la tua chiave di licenza?"
|
908 |
|
909 |
+
#: includes/i18n.php:245
|
910 |
msgid ""
|
911 |
"We couldn't find your email address in the system, are you sure it's the "
|
912 |
"right address?"
|
913 |
msgstr "Non siamo riusciti a trovare il tuo indirizzo email nel sistema, sei sicuro che sia l'indirizzo giusto?"
|
914 |
|
915 |
+
#: includes/i18n.php:246
|
916 |
msgid ""
|
917 |
"We can't see any active licenses associated with that email address, are you"
|
918 |
" sure it's the right address?"
|
919 |
msgstr "Non siamo riusciti a trovare alcuna licenza attiva associata al tuo indirizzo email, sei sicuro che sia l'indirizzo giusto?"
|
920 |
|
921 |
+
#: includes/i18n.php:247
|
922 |
msgid "Opt In"
|
923 |
msgstr "Iscriviti"
|
924 |
|
925 |
+
#: includes/i18n.php:248
|
926 |
msgid "Opt Out"
|
927 |
msgstr "Cancella iscrizione"
|
928 |
|
929 |
+
#: includes/i18n.php:249
|
930 |
msgid "On second thought - I want to continue helping"
|
931 |
msgstr "Ci ho ripensato, voglio continuare a fornire il mio aiuto"
|
932 |
|
933 |
+
#: includes/i18n.php:250
|
934 |
msgid "Opting out..."
|
935 |
msgstr "Cancellamento dell'iscrizione..."
|
936 |
|
937 |
+
#: includes/i18n.php:251
|
938 |
msgid "Opting in..."
|
939 |
msgstr "Iscrizione in corso..."
|
940 |
|
941 |
+
#: includes/i18n.php:252
|
942 |
msgid ""
|
943 |
"We appreciate your help in making the %s better by letting us track some "
|
944 |
"usage data."
|
945 |
msgstr "Ti ringraziamo per averci concesso di tracciare alcuni dati di utilizzo al fine di migliorare %s"
|
946 |
|
947 |
+
#: includes/i18n.php:253
|
948 |
msgid ""
|
949 |
"Usage tracking is done in the name of making %s better. Making a better user"
|
950 |
" experience, prioritizing new features, and more good things. We'd really "
|
951 |
"appreciate if you'll reconsider letting us continue with the tracking."
|
952 |
msgstr "Tracciamo l'utilizzo esclusivamente per rendere %s migliore, creando una migliore esperienza utente e dando priorità a nuove funzionalità, oltre a molte altre buone cose. Saremmo veramente felici di vederti cambiare idea e lasciarci continuare con il tracciamento."
|
953 |
|
954 |
+
#: includes/i18n.php:254
|
955 |
msgid ""
|
956 |
"By clicking \"Opt Out\", we will no longer be sending any data from %s to "
|
957 |
"%s."
|
958 |
msgstr "Cliccando su \"Cancella iscrizione\", non invieremo più nessuna informazione da %s a %s."
|
959 |
|
960 |
+
#: includes/i18n.php:258
|
961 |
msgid "Screenshots"
|
962 |
msgstr "Screenshots"
|
963 |
|
964 |
+
#: includes/i18n.php:259
|
965 |
msgid "Click to view full-size screenshot %d"
|
966 |
msgstr "Fare clic per visualizzare lo screenshot in grandi dimensioni %d"
|
967 |
|
968 |
+
#: includes/i18n.php:263
|
969 |
msgid "Freemius Debug"
|
970 |
msgstr "Debug Freemius"
|
971 |
|
972 |
+
#: includes/i18n.php:264
|
973 |
msgctxt "as turned on"
|
974 |
msgid "On"
|
975 |
msgstr "Attivo"
|
976 |
|
977 |
+
#: includes/i18n.php:265
|
978 |
msgctxt "as turned off"
|
979 |
msgid "Off"
|
980 |
msgstr "Non attivo"
|
981 |
|
982 |
+
#: includes/i18n.php:266
|
983 |
msgctxt "as code debugging"
|
984 |
msgid "Debugging"
|
985 |
msgstr "Debugging"
|
986 |
|
987 |
+
#: includes/i18n.php:267
|
988 |
msgid "Freemius State"
|
989 |
msgstr "Stato di Freemius"
|
990 |
|
991 |
+
#: includes/i18n.php:268
|
992 |
msgctxt "as connection was successful"
|
993 |
msgid "Connected"
|
994 |
msgstr "Connesso"
|
995 |
|
996 |
+
#: includes/i18n.php:269
|
997 |
msgctxt "as connection blocked"
|
998 |
msgid "Blocked"
|
999 |
msgstr "Bloccato"
|
1000 |
|
1001 |
+
#: includes/i18n.php:270
|
1002 |
msgctxt "as application program interface"
|
1003 |
msgid "API"
|
1004 |
msgstr "API"
|
1005 |
|
1006 |
+
#: includes/i18n.php:271
|
1007 |
msgctxt "as software development kit versions"
|
1008 |
msgid "SDK"
|
1009 |
msgstr "SDK"
|
1010 |
|
1011 |
+
#: includes/i18n.php:272
|
1012 |
msgctxt "as software development kit versions"
|
1013 |
msgid "SDK Versions"
|
1014 |
msgstr "Versioni SDK"
|
1015 |
|
1016 |
+
#: includes/i18n.php:273
|
1017 |
msgctxt "as plugin folder path"
|
1018 |
msgid "Plugin Path"
|
1019 |
msgstr "Percorso del plugin"
|
1020 |
|
1021 |
+
#: includes/i18n.php:274
|
1022 |
msgctxt "as sdk path"
|
1023 |
msgid "SDK Path"
|
1024 |
msgstr "Percorso SDK"
|
1025 |
|
1026 |
+
#: includes/i18n.php:275
|
1027 |
msgid "Add Ons of Plugin %s"
|
1028 |
msgstr "Add-on del Plugin %s"
|
1029 |
|
1030 |
+
#: includes/i18n.php:276
|
1031 |
msgid "Are you sure you want to delete all Freemius data?"
|
1032 |
msgstr "Sei sicuro di voler eliminare tutti i dati di Freemius?"
|
1033 |
|
1034 |
+
#: includes/i18n.php:277
|
1035 |
msgid "Actions"
|
1036 |
msgstr "Azioni"
|
1037 |
|
1038 |
+
#: includes/i18n.php:278
|
1039 |
msgid "Delete All Accounts"
|
1040 |
msgstr "Eliminare tutti gli account"
|
1041 |
|
1042 |
+
#: includes/i18n.php:279
|
1043 |
msgid "Start Fresh"
|
1044 |
msgstr "Inizia da capo"
|
1045 |
|
1046 |
+
#: includes/i18n.php:280
|
1047 |
msgid "Clear API Cache"
|
1048 |
msgstr "Elimina cache API"
|
1049 |
|
1050 |
+
#: includes/i18n.php:281
|
1051 |
msgid "Sync Data From Server"
|
1052 |
msgstr "Sincronizza i dati dal server"
|
1053 |
|
1054 |
+
#: includes/i18n.php:282
|
1055 |
msgid "Scheduled Crons"
|
1056 |
msgstr "Azioni programmate"
|
1057 |
|
1058 |
+
#: includes/i18n.php:283
|
1059 |
+
msgid "Cron Type"
|
1060 |
+
msgstr "Tipo di Cron"
|
1061 |
+
|
1062 |
+
#: includes/i18n.php:284
|
1063 |
msgid "Plugins & Themes Sync"
|
1064 |
msgstr "Sincronizzazione plugin e temi"
|
1065 |
|
1066 |
+
#: includes/i18n.php:285
|
1067 |
+
msgid "Licenses"
|
1068 |
+
msgstr "Licenze"
|
1069 |
+
|
1070 |
+
#: includes/i18n.php:286
|
1071 |
+
msgid "Debug Log"
|
1072 |
+
msgstr "Debug Log"
|
1073 |
+
|
1074 |
+
#: includes/i18n.php:287
|
1075 |
+
msgid "All"
|
1076 |
+
msgstr "Tutto"
|
1077 |
+
|
1078 |
+
#: includes/i18n.php:288
|
1079 |
+
msgid "File"
|
1080 |
+
msgstr "File"
|
1081 |
+
|
1082 |
+
#: includes/i18n.php:289
|
1083 |
+
msgid "Function"
|
1084 |
+
msgstr "Funzione"
|
1085 |
+
|
1086 |
+
#: includes/i18n.php:290
|
1087 |
+
msgid "Process ID"
|
1088 |
+
msgstr "ID processo"
|
1089 |
+
|
1090 |
+
#: includes/i18n.php:291
|
1091 |
+
msgid "Logger"
|
1092 |
+
msgstr "Logger"
|
1093 |
+
|
1094 |
+
#: includes/i18n.php:292
|
1095 |
+
msgid "Message"
|
1096 |
+
msgstr "Messaggio"
|
1097 |
+
|
1098 |
+
#: includes/i18n.php:293
|
1099 |
+
msgid "Download"
|
1100 |
+
msgstr "Download"
|
1101 |
+
|
1102 |
+
#: includes/i18n.php:294
|
1103 |
+
msgid "Filter"
|
1104 |
+
msgstr "Filtro"
|
1105 |
+
|
1106 |
+
#: includes/i18n.php:295
|
1107 |
+
msgid "Type"
|
1108 |
+
msgstr "Tipo"
|
1109 |
+
|
1110 |
+
#: includes/i18n.php:296
|
1111 |
+
msgid "All Types"
|
1112 |
+
msgstr "Tutti i tipi"
|
1113 |
+
|
1114 |
+
#: includes/i18n.php:297
|
1115 |
+
msgid "All Requests"
|
1116 |
+
msgstr "Tutte le richieste"
|
1117 |
+
|
1118 |
+
#: includes/i18n.php:301
|
1119 |
msgctxt "as congratulations"
|
1120 |
msgid "Congrats"
|
1121 |
msgstr "Congratulazioni"
|
1122 |
|
1123 |
+
#: includes/i18n.php:302
|
1124 |
msgctxt "exclamation"
|
1125 |
msgid "Oops"
|
1126 |
msgstr "Ops"
|
1127 |
|
1128 |
+
#: includes/i18n.php:303
|
1129 |
msgctxt "interjection expressing joy or exuberance"
|
1130 |
msgid "Yee-haw"
|
1131 |
msgstr "Evvai"
|
1132 |
|
1133 |
+
#: includes/i18n.php:304
|
1134 |
msgctxt ""
|
1135 |
"(especially in electronic communication) used to express elation, "
|
1136 |
"enthusiasm, or triumph."
|
1137 |
msgid "W00t"
|
1138 |
msgstr "Forte"
|
1139 |
|
1140 |
+
#: includes/i18n.php:306
|
1141 |
msgctxt "a positive response"
|
1142 |
msgid "Right on"
|
1143 |
msgstr "Sì"
|
1144 |
|
1145 |
+
#: includes/i18n.php:307
|
1146 |
msgctxt ""
|
1147 |
"something somebody says when they are thinking about what you have just "
|
1148 |
"said. "
|
1149 |
msgid "Hmm"
|
1150 |
msgstr "Uhm"
|
1151 |
|
1152 |
+
#: includes/i18n.php:309
|
1153 |
msgid "O.K"
|
1154 |
msgstr "OK"
|
1155 |
|
1156 |
+
#: includes/i18n.php:310
|
1157 |
msgctxt "exclamation"
|
1158 |
msgid "Hey"
|
1159 |
msgstr "Hey"
|
1160 |
|
1161 |
+
#: includes/i18n.php:311
|
1162 |
msgctxt "advance notice of something that will need attention."
|
1163 |
msgid "Heads up"
|
1164 |
msgstr "Attenzione"
|
1165 |
|
1166 |
+
#: includes/i18n.php:316
|
1167 |
msgid "Seems like you got the latest release."
|
1168 |
msgstr "Sembra che tu abbia la versione più recente."
|
1169 |
|
1170 |
+
#: includes/i18n.php:317
|
1171 |
msgid "You are all good!"
|
1172 |
msgstr "Sei fantastico!"
|
1173 |
|
1174 |
+
#: includes/i18n.php:318
|
1175 |
msgid ""
|
1176 |
"Sorry, we could not complete the email update. Another user with the same "
|
1177 |
"email is already registered."
|
1178 |
msgstr "Siamo spiacenti, non siamo riusciti a completare l'aggiornamento via email. Un altro utente con lo stesso indirizzo email è già registrato."
|
1179 |
|
1180 |
+
#: includes/i18n.php:319
|
1181 |
msgid ""
|
1182 |
"If you would like to give up the ownership of the plugin's account to %s "
|
1183 |
"click the Change Ownership button."
|
1184 |
msgstr "Se vuoi cedere la proprietá dell'account del plugin a %s clicca su Cambia Proprietà."
|
1185 |
|
1186 |
+
#: includes/i18n.php:320
|
1187 |
msgid ""
|
1188 |
"Your email was successfully updated. You should receive an email with "
|
1189 |
"confirmation instructions in few moments."
|
1190 |
msgstr "Il tuo indirizzo email è stato aggiornato correttamente. Riceverai un'email con le istruzioni di conferma in pochi istanti."
|
1191 |
|
1192 |
+
#: includes/i18n.php:321
|
1193 |
msgid "Your name was successfully updated."
|
1194 |
msgstr "Il tuo nome è stato aggiornato correttamente."
|
1195 |
|
1196 |
+
#: includes/i18n.php:322
|
1197 |
msgid "You have successfully updated your %s."
|
1198 |
msgstr "Hai aggiornato con successo il tuo %s."
|
1199 |
|
1200 |
+
#: includes/i18n.php:323
|
1201 |
msgid "Please provide your full name."
|
1202 |
msgstr "Per favore inserisci il tuo nome completo."
|
1203 |
|
1204 |
+
#: includes/i18n.php:324
|
1205 |
msgid ""
|
1206 |
"Verification mail was just sent to %s. If you can't find it after 5 min, "
|
1207 |
"please check your spam box."
|
1208 |
msgstr "L'email di verifica è stata inviata a %s. Se dopo 5 minuti non è ancora arrivata, per favore controlla nella tua casella di posta indesiderata."
|
1209 |
|
1210 |
+
#: includes/i18n.php:325
|
1211 |
msgid ""
|
1212 |
"Just letting you know that the add-ons information of %s is being pulled "
|
1213 |
"from an external server."
|
1214 |
msgstr "Le informazioni sugli add-on di %s vengono scaricate da un server esterno."
|
1215 |
|
1216 |
+
#: includes/i18n.php:326
|
1217 |
msgid "No credit card required"
|
1218 |
msgstr "Nessuna carta di credito richiesta"
|
1219 |
|
1220 |
+
#: includes/i18n.php:327
|
1221 |
msgid "Premium plugin version was successfully activated."
|
1222 |
msgstr "La versione Premium del plugin è stata attivata correttamente."
|
1223 |
|
1224 |
+
#: includes/i18n.php:328
|
1225 |
msgid "The upgrade of %s was successfully completed."
|
1226 |
msgstr "L'aggiornamento di %s è stato completato con successo."
|
1227 |
|
1228 |
+
#: includes/i18n.php:329
|
1229 |
msgid "Your account was successfully activated with the %s plan."
|
1230 |
msgstr "Il tuo account è stato attivato correttamente con il piano %s."
|
1231 |
|
1232 |
+
#: includes/i18n.php:330
|
1233 |
msgid "Download the latest %s version now"
|
1234 |
msgstr "Scarica l'ultima versione di %s"
|
1235 |
|
1236 |
+
#: includes/i18n.php:331
|
1237 |
msgid "Please follow these steps to complete the upgrade"
|
1238 |
msgstr "Segui i passi seguenti per completare l'aggiornamento"
|
1239 |
|
1240 |
+
#: includes/i18n.php:332
|
1241 |
msgid "Download the latest %s version"
|
1242 |
msgstr "Scarica l'ultima versione di %s"
|
1243 |
|
1244 |
+
#: includes/i18n.php:333
|
1245 |
msgid "Download the latest version"
|
1246 |
msgstr "Scarica l'ultima versione"
|
1247 |
|
1248 |
+
#: includes/i18n.php:334
|
1249 |
msgid "Deactivate the free version"
|
1250 |
msgstr "Disattiva la versione gratuita"
|
1251 |
|
1252 |
+
#: includes/i18n.php:335
|
1253 |
msgid "Upload and activate the downloaded version"
|
1254 |
msgstr "Carica e attiva la versione scaricata"
|
1255 |
|
1256 |
+
#: includes/i18n.php:336
|
1257 |
msgid "How to upload and activate?"
|
1258 |
msgstr "Come faccio a caricare ed attivare?"
|
1259 |
|
1260 |
+
#: includes/i18n.php:337
|
1261 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1262 |
msgid "%s Add-on was successfully purchased."
|
1263 |
msgstr "L' add-on %s è stato acquistato con successo."
|
1264 |
|
1265 |
+
#: includes/i18n.php:339
|
1266 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1267 |
msgstr "Il piano del tuo add-on %s è stato aggiornato con successo."
|
1268 |
|
1269 |
+
#: includes/i18n.php:340
|
1270 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1271 |
msgstr "Il tuo indirizzo email è stato verificato con successo - SEI UN GRANDE!"
|
1272 |
|
1273 |
+
#: includes/i18n.php:341
|
1274 |
msgid "Your plan was successfully upgraded."
|
1275 |
msgstr "Il piano è stato aggiornato con successo."
|
1276 |
|
1277 |
+
#: includes/i18n.php:342
|
1278 |
msgid "Your plan was successfully changed to %s."
|
1279 |
msgstr "Il piano è stato cambiato con successo a %s."
|
1280 |
|
1281 |
+
#: includes/i18n.php:343
|
1282 |
msgid ""
|
1283 |
"Your license has expired. You can still continue using the free plugin "
|
1284 |
"forever."
|
1285 |
msgstr "La licenza è scaduta. È comunque possibile continuare ad utilizzare il plugin gratuito per sempre."
|
1286 |
|
1287 |
+
#: includes/i18n.php:344
|
1288 |
msgid ""
|
1289 |
"Your license has been cancelled. If you think it's a mistake, please contact"
|
1290 |
" support."
|
1291 |
msgstr "La tua licenza è stata cancellata. Se credi sia un errore, per favore contatta il supporto."
|
1292 |
|
1293 |
+
#: includes/i18n.php:345
|
1294 |
msgid "Your trial has been successfully started."
|
1295 |
msgstr "La versione di prova è stata avviata correttamente."
|
1296 |
|
1297 |
+
#: includes/i18n.php:346
|
1298 |
msgid "Your license was successfully activated."
|
1299 |
msgstr "La tua licenza è stata attivata correttamente."
|
1300 |
|
1301 |
+
#: includes/i18n.php:347
|
1302 |
msgid "It looks like your site currently doesn't have an active license."
|
1303 |
msgstr "Sembra che il tuo sito non disponga di alcuna licenza attiva."
|
1304 |
|
1305 |
+
#: includes/i18n.php:348
|
1306 |
msgid ""
|
1307 |
"Your license was successfully deactivated, you are back to the %s plan."
|
1308 |
msgstr "La tua licenza é stata disattivata con successo, sei tornato al piano %s."
|
1309 |
|
1310 |
+
#: includes/i18n.php:349
|
1311 |
msgid "It looks like the license deactivation failed."
|
1312 |
msgstr "Sembra che la disattivazione della licenza non sia riuscita."
|
1313 |
|
1314 |
+
#: includes/i18n.php:350
|
1315 |
msgid "It looks like the license could not be activated."
|
1316 |
msgstr "Sembra che la licenza non possa essere attivata."
|
1317 |
|
1318 |
+
#: includes/i18n.php:351
|
1319 |
msgid "Error received from the server:"
|
1320 |
msgstr "Errore ricevuto dal server:"
|
1321 |
|
1322 |
+
#: includes/i18n.php:352
|
1323 |
msgid ""
|
1324 |
"Your trial has expired. You can still continue using all our free features."
|
1325 |
msgstr "La versione di prova è scaduta. Si può comunque continuare a utilizzare tutte le nostre funzioni gratuite."
|
1326 |
|
1327 |
+
#: includes/i18n.php:353
|
1328 |
msgid ""
|
1329 |
"Your plan was successfully downgraded. Your %s plan license will expire in "
|
1330 |
"%s."
|
1331 |
msgstr "Il tuo piano è stato declassato con successo. La licenza del piano %s scadrà in %s."
|
1332 |
|
1333 |
+
#: includes/i18n.php:354
|
1334 |
msgid ""
|
1335 |
"Seems like we are having some temporary issue with your plan downgrade. "
|
1336 |
"Please try again in few minutes."
|
1337 |
msgstr "Stiamo avendo qualche problema temporaneo con il downgrade del piano. Riprova tra qualche minuto."
|
1338 |
|
1339 |
+
#: includes/i18n.php:355
|
1340 |
msgid ""
|
1341 |
"It looks like you are not in trial mode anymore so there's nothing to cancel"
|
1342 |
" :)"
|
1343 |
msgstr "Sembra che tu non stia più usando la prova gratuita, quindi non c'è niente che tu debba annullare :)"
|
1344 |
|
1345 |
+
#: includes/i18n.php:356
|
1346 |
msgid "Your %s free trial was successfully cancelled."
|
1347 |
msgstr "Il tuo periodo di prova gratuito %s è stato annullato con successo."
|
1348 |
|
1349 |
+
#: includes/i18n.php:357
|
1350 |
msgctxt "%s - numeric version number"
|
1351 |
msgid "Version %s was released."
|
1352 |
msgstr "La versione %s é stata rilasciata."
|
1353 |
|
1354 |
+
#: includes/i18n.php:358
|
1355 |
msgid "Please download %s."
|
1356 |
msgstr "Scarica %s."
|
1357 |
|
1358 |
+
#: includes/i18n.php:359
|
1359 |
msgctxt "%s - plan name, as the latest professional version here"
|
1360 |
msgid "the latest %s version here"
|
1361 |
msgstr "l'ultima versione %s é quì"
|
1362 |
|
1363 |
+
#: includes/i18n.php:361
|
1364 |
msgid ""
|
1365 |
"How do you like %s so far? Test all our %s premium features with a %d-day "
|
1366 |
"free trial."
|
1367 |
msgstr "Come sta andando con %s? Prova tutte le funzionalità premium di %s con una prova gratuita di %d giorni."
|
1368 |
|
1369 |
+
#: includes/i18n.php:362
|
1370 |
msgctxt "call to action"
|
1371 |
msgid "Start free trial"
|
1372 |
msgstr "Inizia il periodo di prova gratuito"
|
1373 |
|
1374 |
+
#: includes/i18n.php:363
|
1375 |
msgid "Starting trial"
|
1376 |
msgstr "Inizio del periodo di prova gratuito"
|
1377 |
|
1378 |
+
#: includes/i18n.php:364
|
1379 |
msgid "Please wait"
|
1380 |
msgstr "Attendere"
|
1381 |
|
1382 |
+
#: includes/i18n.php:365
|
1383 |
msgid ""
|
1384 |
"Seems like we are having some temporary issue with your trial cancellation. "
|
1385 |
"Please try again in few minutes."
|
1386 |
msgstr "Stiamo avendo qualche problema temporaneo con l'annullamento del periodo di prova. Riprova tra qualche minuto."
|
1387 |
|
1388 |
+
#: includes/i18n.php:366
|
1389 |
msgid "You already utilized a trial before."
|
1390 |
msgstr "Hai già utilizzato una prova gratuita in passato."
|
1391 |
|
1392 |
+
#: includes/i18n.php:367
|
1393 |
msgid "You are already running the plugin in a trial mode."
|
1394 |
msgstr "Stai già usando il plugin in modalità di prova gratuita."
|
1395 |
|
1396 |
+
#: includes/i18n.php:368
|
1397 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1398 |
msgstr "Il piano %s non esiste, per questo motivo non è possibile iniziare il periodo di prova."
|
1399 |
|
1400 |
+
#: includes/i18n.php:369
|
1401 |
msgid "Plan %s does not support a trial period."
|
1402 |
msgstr "Il piano %s non supporta il periodo di prova."
|
1403 |
|
1404 |
+
#: includes/i18n.php:370
|
1405 |
msgid "None of the plugin's plans supports a trial period."
|
1406 |
msgstr "Non esiste alcun piano del plugin che offra il periodo di prova."
|
1407 |
|
1408 |
+
#: includes/i18n.php:371
|
1409 |
msgid ""
|
1410 |
"Unexpected API error. Please contact the plugin's author with the following "
|
1411 |
"error."
|
1412 |
msgstr "Errore inaspettato dell'API. Per favore contatta l'autore del plugin riportando il seguente errore."
|
1413 |
|
1414 |
+
#: includes/i18n.php:372
|
1415 |
msgid "No commitment for %s days - cancel anytime!"
|
1416 |
msgstr "Nessun impegno per %s giorni - puoi annullare in qualsiasi momento!"
|
1417 |
|
1418 |
+
#: includes/i18n.php:373
|
1419 |
msgid ""
|
1420 |
"Your license has expired. You can still continue using all the %s features, "
|
1421 |
"but you'll need to renew your license to continue getting updates and "
|
1422 |
"support."
|
1423 |
msgstr "La licenza è scaduta. È comunque possibile continuare a utilizzare tutte le funzionalità di %s, ma sarà necessario rinnovare la licenza per continuare a ricevere gli aggiornamenti ed il supporto."
|
1424 |
|
1425 |
+
#: includes/i18n.php:374
|
1426 |
msgid "Couldn't activate %s."
|
1427 |
msgstr "Non é stato possibile attivare %s."
|
1428 |
|
1429 |
+
#: includes/i18n.php:375
|
1430 |
msgid "Please contact us with the following message:"
|
1431 |
msgstr "Contattaci con il seguente messaggio:"
|
1432 |
|
1433 |
+
#: includes/i18n.php:376
|
1434 |
msgid ""
|
1435 |
"It looks like you are still on the %s plan. If you did upgrade or change "
|
1436 |
"your plan, it's probably an issue on our side - sorry."
|
1437 |
msgstr "Sembra che tu sia ancora usando il piano %s. Se hai effettuato un upgrade o cambiato il piano, è probabile che ci sia un problema nei nostri sistemi."
|
1438 |
|
1439 |
+
#: includes/i18n.php:377
|
1440 |
msgid "Please contact us here"
|
1441 |
msgstr "Contattaci qui"
|
1442 |
|
1443 |
+
#: includes/i18n.php:378
|
1444 |
msgid ""
|
1445 |
"I have upgraded my account but when I try to Sync the License, the plan "
|
1446 |
"remains %s."
|
1447 |
msgstr "Ho aggiornato il mio account, ma quando cerco di sincronizzare la licenza, il piano rimane %s."
|
1448 |
|
1449 |
+
#: includes/i18n.php:381
|
1450 |
msgid "From unknown reason, the API connectivity test failed."
|
1451 |
msgstr "Il test di connettività dell'API ha fallito per motivi sconosciuti."
|
1452 |
|
1453 |
+
#: includes/i18n.php:382
|
1454 |
msgid ""
|
1455 |
"It's probably a temporary issue on our end. Just to be sure, with your "
|
1456 |
"permission, would it be o.k to run another connectivity test?"
|
1457 |
msgstr "Si tratta probabilmente di un problema nei nostri sistemi. Per esserne sicuri, potresti darci il permesso di effettuare un ulteriore test della connettività? "
|
1458 |
|
1459 |
+
#: includes/i18n.php:383
|
1460 |
msgid ""
|
1461 |
"We use PHP cURL library for the API calls, which is a very common library "
|
1462 |
"and usually installed out of the box. Unfortunately, cURL is not installed "
|
1463 |
"on your server."
|
1464 |
msgstr "Utilizziamo la libreria PHP cURL per le chiamate alla nostra API. Questa libreria è molto comune ed è installata di base. Sfortunatamente cURL non è presente nel tuo server."
|
1465 |
|
1466 |
+
#: includes/i18n.php:384
|
1467 |
msgid ""
|
1468 |
"From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1469 |
msgstr "Per un motivo sconosciuto, CloudFlare, il firewall che utilizziamo, blocca la connessione."
|
1470 |
|
1471 |
+
#: includes/i18n.php:385
|
1472 |
msgctxt "as pluginX requires an access to our API"
|
1473 |
msgid "%s requires an access to our API."
|
1474 |
msgstr "%s richiede un accesso alla nostra API."
|
1475 |
|
1476 |
+
#: includes/i18n.php:387
|
1477 |
msgid ""
|
1478 |
"It looks like your server is using Squid ACL (access control lists), which "
|
1479 |
"blocks the connection."
|
1480 |
msgstr "Sembra che il tuo server stia usando Squid ACL (lista per il controllo degli accessi) il quale blocca la connessione."
|
1481 |
|
1482 |
+
#: includes/i18n.php:388
|
1483 |
msgid "I don't know what is Squid or ACL, help me!"
|
1484 |
msgstr "Non ho idea di cosa sia Squid o ACL, aiutami!"
|
1485 |
|
1486 |
+
#: includes/i18n.php389, includes/i18n.php:393
|
1487 |
msgid ""
|
1488 |
"We'll make sure to contact your hosting company and resolve the issue. You "
|
1489 |
"will get a follow-up email to %s once we have an update."
|
1490 |
msgstr "Contatteremo il tuo hosting e risolveremo il problema. Riceverai un' email a %s non appena ci saranno aggiornamenti."
|
1491 |
|
1492 |
+
#: includes/i18n.php:390
|
1493 |
msgid "I'm a system administrator"
|
1494 |
msgstr "Sono un sistemista"
|
1495 |
|
1496 |
+
#: includes/i18n.php:391
|
1497 |
msgid ""
|
1498 |
+
"Great, please whitelist the following domains: %s. Once you are done, "
|
1499 |
+
"deactivate the plugin and activate it again."
|
1500 |
+
msgstr "Perfetto, ora per favore aggiungi alla whitelist i seguenti domini: %s. Quando hai fatto, disattiva il plugin e riattivalo di nuovo."
|
1501 |
|
1502 |
+
#: includes/i18n.php:392
|
1503 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1504 |
msgstr "Non ho idea di cosa sia cURL o come installarlo, aiutami!"
|
1505 |
|
1506 |
+
#: includes/i18n.php:394
|
1507 |
msgid ""
|
1508 |
"Great, please install cURL and enable it in your php.ini file. To make sure "
|
1509 |
"it was successfully activated, use 'phpinfo()'. Once activated, deactivate "
|
1510 |
"the plugin and reactivate it back again."
|
1511 |
msgstr "Perfetto, installa cURL ed attivalo nel tuo file php.ini. Per essere sicuro di averlo attivato con successo, usa \"phpinfo()\". Una volta attivato disattva il plugin e attivalo di nuovo."
|
1512 |
|
1513 |
+
#: includes/i18n.php:395
|
1514 |
msgid ""
|
1515 |
"We are sure it's an issue on our side and more than happy to resolve it for "
|
1516 |
"you ASAP if you give us a chance."
|
1517 |
msgstr "Siamo sicuri che sia un nostro problema e siamo più che felici di risolverlo per te al più presto. Per poter procedere abbiamo bisogno del tuo consenso."
|
1518 |
|
1519 |
+
#: includes/i18n.php:396
|
1520 |
msgid ""
|
1521 |
"Sorry for the inconvenience and we are here to help if you give us a chance."
|
1522 |
msgstr "Siamo spiacenti per l'inconveniente e siamo qui per aiutarti con il tuo permesso."
|
1523 |
|
1524 |
+
#: includes/i18n.php:397
|
1525 |
msgid "Yes - I'm giving you a chance to fix it"
|
1526 |
msgstr "Sì - sto dandovi la possibilità di risolvere il problema"
|
1527 |
|
1528 |
+
#: includes/i18n.php:398
|
1529 |
msgid ""
|
1530 |
"We will do our best to whitelist your server and resolve this issue ASAP. "
|
1531 |
"You will get a follow-up email to %s once we have an update."
|
1532 |
msgstr "Faremo del nostro meglio per mettere il server in whitelist e risolvere il problema il prima possibile. Avrai un aggiornamento dello stato tramite email all'indirizzo %s."
|
1533 |
|
1534 |
+
#: includes/i18n.php:399
|
1535 |
msgid "Let's try your previous version"
|
1536 |
msgstr "Proviamo con la versione precedente"
|
1537 |
|
1538 |
+
#: includes/i18n.php:400
|
1539 |
msgid "Uninstall this version and install the previous one."
|
1540 |
msgstr "Disinstalla questa versione e installa quella precedente."
|
1541 |
|
1542 |
+
#: includes/i18n.php:401
|
1543 |
msgid "That's exhausting, please deactivate"
|
1544 |
msgstr "È estenuante, disattivalo"
|
1545 |
|
1546 |
+
#: includes/i18n.php:402
|
1547 |
msgid ""
|
1548 |
"We feel your frustration and sincerely apologize for the inconvenience. Hope"
|
1549 |
" to see you again in the future."
|
1550 |
msgstr "Capiamo la tua frustrazione e ci scusiamo per l'inconveniente. Speriamo di rivederti nuovamente in futuro."
|
1551 |
|
1552 |
+
#: includes/i18n.php:403
|
1553 |
msgid ""
|
1554 |
"Thank for giving us the chance to fix it! A message was just sent to our "
|
1555 |
"technical staff. We will get back to you as soon as we have an update to %s."
|
1556 |
" Appreciate your patience."
|
1557 |
msgstr "Grazie per averci dato la possibilità di risolvere il problema! È stato appena inviato un messaggio al nostro staff tecnico. Ti risponderemo non appena avremo un aggiornamento riguardante %s. Grazie per la tua pazienza."
|
1558 |
|
1559 |
+
#: includes/i18n.php:404
|
1560 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1561 |
msgid ""
|
1562 |
"Your server is blocking the access to Freemius' API, which is crucial for "
|
1563 |
"%1s synchronization. Please contact your host to whitelist %2s"
|
1564 |
msgstr "Il tuo server sta bloccando l'accesso all'API di Freemius. L'accesso è cruciale per quanto riguarda la la sincronizzazione di %1s. Per favore contatta il tuo host per aggiungere %2s alla whitelist."
|
1565 |
|
1566 |
+
#: includes/i18n.php:406
|
1567 |
msgid ""
|
1568 |
"It seems like one of the authentication parameters is wrong. Update your "
|
1569 |
"Public Key, Secret Key & User ID, and try again."
|
1570 |
msgstr "Sembra che uno dei parametri di autenticazione sia sbagliato. Aggiorna la tua chiave pubblica, Secret Key & User ID e riprova."
|
1571 |
|
1572 |
+
#: includes/i18n.php:409
|
1573 |
msgid ""
|
1574 |
"Please check your mailbox, you should receive an email via %s to confirm the"
|
1575 |
" ownership change. From security reasons, you must confirm the change within"
|
1577 |
"folder."
|
1578 |
msgstr "Verifica di aver ricevuto l'email da %s per confermare il cambiamento del proprietario. Per ragioni di sicurezza devi confermare il cambiamento entro 15 minuti. Se non trovi l'email controlla nella posta indesiderata."
|
1579 |
|
1580 |
+
#: includes/i18n.php:410
|
1581 |
msgid ""
|
1582 |
"Thanks for confirming the ownership change. An email was just sent to %s for"
|
1583 |
" final approval."
|
1584 |
msgstr "Grazie per aver confermato il cambiamento del proprietario. Un' email è stata appena inviata a %s per la conferma finale."
|
1585 |
|
1586 |
+
#: includes/i18n.php:411
|
1587 |
msgid "%s is the new owner of the account."
|
1588 |
msgstr "%s è il nuovo proprietario dell'account."
|
1589 |
|
1590 |
+
#: includes/i18n.php:413
|
1591 |
msgctxt "addonX cannot run without pluginY"
|
1592 |
msgid "%s cannot run without %s."
|
1593 |
msgstr "%s non può funzionare senza %s."
|
1594 |
|
1595 |
+
#: includes/i18n.php:415
|
1596 |
msgctxt "addonX cannot run..."
|
1597 |
msgid "%s cannot run without the plugin."
|
1598 |
msgstr "%s non può funzionare senza il plugin."
|
1599 |
|
1600 |
+
#: includes/i18n.php:416
|
1601 |
msgctxt "pluginX activation was successfully..."
|
1602 |
msgid "%s activation was successfully completed."
|
1603 |
msgstr "%s è stato attivato con successo."
|
1604 |
|
1605 |
+
#: includes/i18n.php:418
|
1606 |
msgctxt "Plugin installer section title"
|
1607 |
msgid "Features & Pricing"
|
1608 |
msgstr "Caratteristiche & prezzi"
|
1609 |
|
1610 |
+
#: includes/i18n.php:419
|
1611 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1612 |
msgstr "L'add-on dev'essere distribuito da WordPress.org o Freemius."
|
1613 |
|
1614 |
+
#: includes/i18n.php:420
|
1615 |
msgid "Paid add-on must be deployed to Freemius."
|
1616 |
msgstr "Gli add-on a pagamento devono essere distribuiti da Freemius."
|
1617 |
|
1618 |
+
#: includes/i18n.php:424
|
1619 |
msgid ""
|
1620 |
"%s is a premium only add-on. You have to purchase a license first before "
|
1621 |
"activating the plugin."
|
1622 |
msgstr "%s è un add-on premium. Devi comprare una licenza prima di poter attivare il plugin."
|
1623 |
|
1624 |
+
#: includes/i18n.php:425
|
1625 |
msgid ""
|
1626 |
"%s free trial was successfully cancelled. Since the add-on is premium only "
|
1627 |
"it was automatically deactivated. If you like to use it in the future, "
|
1628 |
"you'll have to purchase a license."
|
1629 |
msgstr "Il periodo di prova gratuito %s è stato annullato con successo. Siccome l'add-on è premium, è stato disattivato automaticamente. Se vorrai usarlo in futuro, dovrai comprare una licenza."
|
1630 |
|
1631 |
+
#: includes/i18n.php:430
|
1632 |
msgctxt "as every month"
|
1633 |
msgid "Monthly"
|
1634 |
msgstr "Mensilmente"
|
1635 |
|
1636 |
+
#: includes/i18n.php:431
|
1637 |
msgctxt "as monthly period"
|
1638 |
msgid "mo"
|
1639 |
msgstr "mese"
|
1640 |
|
1641 |
+
#: includes/i18n.php:432
|
1642 |
msgctxt "as once a year"
|
1643 |
msgid "Annual"
|
1644 |
msgstr "Annuale"
|
1645 |
|
1646 |
+
#: includes/i18n.php:433
|
1647 |
msgctxt "as once a year"
|
1648 |
msgid "Annually"
|
1649 |
msgstr "Annualmente"
|
1650 |
|
1651 |
+
#: includes/i18n.php:434
|
1652 |
msgctxt "as once a year"
|
1653 |
msgid "Once"
|
1654 |
msgstr "Una volta"
|
1655 |
|
1656 |
+
#: includes/i18n.php:435
|
1657 |
msgctxt "as annual period"
|
1658 |
msgid "year"
|
1659 |
msgstr "anno"
|
1660 |
|
1661 |
+
#: includes/i18n.php:436
|
1662 |
msgid "Lifetime"
|
1663 |
msgstr "Tutta la vita"
|
1664 |
|
1665 |
+
#: includes/i18n.php:437
|
1666 |
msgctxt "e.g. the best product"
|
1667 |
msgid "Best"
|
1668 |
msgstr "Migliore"
|
1669 |
|
1670 |
+
#: includes/i18n.php:438
|
1671 |
msgctxt "e.g. billed monthly"
|
1672 |
msgid "Billed %s"
|
1673 |
msgstr "Fatturato %s"
|
1674 |
|
1675 |
+
#: includes/i18n.php:439
|
1676 |
msgctxt "as a discount of $5 or 10%"
|
1677 |
msgid "Save %s"
|
1678 |
msgstr "Risparmia %s"
|
1679 |
|
1680 |
+
#: includes/i18n.php:441
|
1681 |
msgid "View details"
|
1682 |
msgstr "Visualizza dettagli"
|
1683 |
|
1684 |
+
#: includes/i18n.php:445
|
1685 |
msgctxt "button label"
|
1686 |
msgid "Approve & Start Trial"
|
1687 |
msgstr "Approva e inizia il periodo di prova gratuito"
|
1688 |
|
1689 |
+
#: includes/i18n.php:447
|
1690 |
msgid ""
|
1691 |
"You are 1-click away from starting your %1$s-day free trial of the %2$s "
|
1692 |
"plan."
|
1693 |
msgstr "Sei a un clic di distanza dall'iniziare il tuo periodo di prova gratuito di %1$s giorni per il piano %2$s."
|
1694 |
|
1695 |
+
#: includes/i18n.php:449
|
1696 |
msgid ""
|
1697 |
"For compliance with the WordPress.org guidelines, before we start the trial "
|
1698 |
"we ask that you opt-in with your user and non-sensitive site information, "
|
1700 |
"updates and to validate your trial."
|
1701 |
msgstr "Per seguire le linee guida di WordPress, prima di iniziare il periodo di prova ti chiediamo di iscriverti con il tuo utente e i dati non sensibili inerenti al tuo sito, così da permettere periodicamente al plugin di inviare dati a %s per poter controllare la presenza di nuove versioni e convalidare il tuo periodo di prova gratuito."
|
1702 |
|
1703 |
+
#: includes/i18n.php:455
|
1704 |
msgid "Business name"
|
1705 |
msgstr "Nome della compagnia"
|
1706 |
|
1707 |
+
#: includes/i18n.php:456
|
1708 |
msgid "Tax / VAT ID"
|
1709 |
msgstr "Numero Partita Iva o VAT"
|
1710 |
|
1711 |
+
#: includes/i18n.php:457
|
1712 |
msgid "Address Line %d"
|
1713 |
msgstr "Riga indirizzo %d"
|
1714 |
|
1715 |
+
#: includes/i18n.php:458
|
1716 |
msgid "Country"
|
1717 |
msgstr "Nazione"
|
1718 |
|
1719 |
+
#: includes/i18n.php:459
|
1720 |
msgid "Select Country"
|
1721 |
msgstr "Seleziona Nazione"
|
1722 |
|
1723 |
+
#: includes/i18n.php:460
|
1724 |
msgid "City"
|
1725 |
msgstr "Città"
|
1726 |
|
1727 |
+
#: includes/i18n.php:461
|
1728 |
msgid "Town"
|
1729 |
msgstr "Cittadina"
|
1730 |
|
1731 |
+
#: includes/i18n.php:462
|
1732 |
msgid "State"
|
1733 |
msgstr "Stato"
|
1734 |
|
1735 |
+
#: includes/i18n.php:463
|
1736 |
msgid "Province"
|
1737 |
msgstr "Provincia"
|
1738 |
|
1739 |
+
#: includes/i18n.php:464
|
1740 |
msgid "ZIP / Postal Code"
|
1741 |
msgstr "CAP"
|
1742 |
+
|
1743 |
+
#: includes/i18n.php:479
|
1744 |
+
msgctxt "Plugin installer section title"
|
1745 |
+
msgid "Description"
|
1746 |
+
msgstr "Descrizione"
|
1747 |
+
|
1748 |
+
#: includes/i18n.php:480
|
1749 |
+
msgctxt "Plugin installer section title"
|
1750 |
+
msgid "Installation"
|
1751 |
+
msgstr "Installazione"
|
1752 |
+
|
1753 |
+
#: includes/i18n.php:481
|
1754 |
+
msgctxt "Plugin installer section title"
|
1755 |
+
msgid "FAQ"
|
1756 |
+
msgstr "FAQ"
|
1757 |
+
|
1758 |
+
#: includes/i18n.php:482
|
1759 |
+
msgctxt "Plugin installer section title"
|
1760 |
+
msgid "Changelog"
|
1761 |
+
msgstr "Changelog"
|
1762 |
+
|
1763 |
+
#: includes/i18n.php:483
|
1764 |
+
msgctxt "Plugin installer section title"
|
1765 |
+
msgid "Reviews"
|
1766 |
+
msgstr "Recensioni"
|
1767 |
+
|
1768 |
+
#: includes/i18n.php:484
|
1769 |
+
msgctxt "Plugin installer section title"
|
1770 |
+
msgid "Other Notes"
|
1771 |
+
msgstr "Altre note"
|
1772 |
+
|
1773 |
+
#: includes/i18n.php:486
|
1774 |
+
msgid "%s star"
|
1775 |
+
msgstr "%s stella"
|
1776 |
+
|
1777 |
+
#: includes/i18n.php:488
|
1778 |
+
msgid "%s stars"
|
1779 |
+
msgstr "%s stelle"
|
1780 |
+
|
1781 |
+
#: includes/i18n.php:490
|
1782 |
+
msgid "%s rating"
|
1783 |
+
msgstr "%s valutazione"
|
1784 |
+
|
1785 |
+
#: includes/i18n.php:492
|
1786 |
+
msgid "%s ratings"
|
1787 |
+
msgstr "%s valutazioni"
|
1788 |
+
|
1789 |
+
#: includes/i18n.php:494
|
1790 |
+
msgid "%s time"
|
1791 |
+
msgstr "% volta"
|
1792 |
+
|
1793 |
+
#: includes/i18n.php:496
|
1794 |
+
msgid "%s times"
|
1795 |
+
msgstr "%s volte"
|
1796 |
+
|
1797 |
+
#: includes/i18n.php:498
|
1798 |
+
msgid "Click to see reviews that provided a rating of %s"
|
1799 |
+
msgstr "Fai clic per vedere le recensioni che hanno fornito una valutazione di %s"
|
1800 |
+
|
1801 |
+
#: includes/i18n.php:499
|
1802 |
+
msgid "Last Updated"
|
1803 |
+
msgstr "Ultimo aggiornamento"
|
1804 |
+
|
1805 |
+
#: includes/i18n.php:500
|
1806 |
+
msgid "Requires WordPress Version:"
|
1807 |
+
msgstr "Richiede la versione di WordPress:"
|
1808 |
+
|
1809 |
+
#: includes/i18n.php:501
|
1810 |
+
msgctxt "as the plugin author"
|
1811 |
+
msgid "Author:"
|
1812 |
+
msgstr "Autore:"
|
1813 |
+
|
1814 |
+
#: includes/i18n.php:502
|
1815 |
+
msgid "Compatible up to:"
|
1816 |
+
msgstr "Compatibile fino a:"
|
1817 |
+
|
1818 |
+
#: includes/i18n.php:503
|
1819 |
+
msgid "Downloaded:"
|
1820 |
+
msgstr "Scaricato:"
|
1821 |
+
|
1822 |
+
#: includes/i18n.php:504
|
1823 |
+
msgid "WordPress.org Plugin Page"
|
1824 |
+
msgstr "Pagina dei plugin di WordPress.org"
|
1825 |
+
|
1826 |
+
#: includes/i18n.php:505
|
1827 |
+
msgid "Plugin Homepage"
|
1828 |
+
msgstr "Homepage del plugin"
|
1829 |
+
|
1830 |
+
#: includes/i18n.php:506
|
1831 |
+
msgid "Donate to this plugin"
|
1832 |
+
msgstr "Fai una donazione a questo plugin"
|
1833 |
+
|
1834 |
+
#: includes/i18n.php:507
|
1835 |
+
msgid "Average Rating"
|
1836 |
+
msgstr "Valutazione media"
|
1837 |
+
|
1838 |
+
#: includes/i18n.php:508
|
1839 |
+
msgid "based on %s"
|
1840 |
+
msgstr "basato su %s"
|
1841 |
+
|
1842 |
+
#: includes/i18n.php:509
|
1843 |
+
msgid "Warning:"
|
1844 |
+
msgstr "Avviso:"
|
1845 |
+
|
1846 |
+
#: includes/i18n.php:510
|
1847 |
+
msgid "Contributors"
|
1848 |
+
msgstr "Contributori"
|
1849 |
+
|
1850 |
+
#: includes/i18n.php:511
|
1851 |
+
msgid "Plugin Install"
|
1852 |
+
msgstr "Installazione del plugin"
|
1853 |
+
|
1854 |
+
#: includes/i18n.php:512
|
1855 |
+
msgid ""
|
1856 |
+
"This plugin has not been tested with your current version of WordPress."
|
1857 |
+
msgstr "Questo plugin non è stato testato con la versione corrente di WordPress."
|
1858 |
+
|
1859 |
+
#: includes/i18n.php:513
|
1860 |
+
msgid ""
|
1861 |
+
"This plugin has not been marked as compatible with your version of "
|
1862 |
+
"WordPress."
|
1863 |
+
msgstr "Questo plugin non è stato segnato come compatibile con la tua versione di WordPress."
|
1864 |
+
|
1865 |
+
#: includes/i18n.php:514
|
1866 |
+
msgid "Newer Version (%s) Installed"
|
1867 |
+
msgstr "Versione più recente (%s) installata"
|
1868 |
+
|
1869 |
+
#: includes/i18n.php:515
|
1870 |
+
msgid "Latest Version Installed"
|
1871 |
+
msgstr "Versione più recente installata"
|
freemius/languages/freemius-ja_JP.mo
ADDED
Binary file
|
freemius/languages/freemius-ja_JP.po
ADDED
@@ -0,0 +1,1662 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#
|
2 |
+
# Translators:
|
3 |
+
# Odyssey <8bitodyssey+github@gmail.com>, 2016
|
4 |
+
# Takayuki Miyauchi <miya0001@users.noreply.github.com>, 2016
|
5 |
+
msgid ""
|
6 |
+
msgstr ""
|
7 |
+
"Project-Id-Version: WordPress SDK\n"
|
8 |
+
"Report-Msgid-Bugs-To: \n"
|
9 |
+
"POT-Creation-Date: \n"
|
10 |
+
"PO-Revision-Date: 2017-02-28 03:42+0000\n"
|
11 |
+
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
12 |
+
"Language-Team: Japanese (Japan) (http://www.transifex.com/freemius/wordpress-sdk/language/ja_JP/)\n"
|
13 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
+
"Content-Transfer-Encoding: \n"
|
15 |
+
"Language: ja_JP\n"
|
16 |
+
"Plural-Forms: nplurals=1; plural=0;\n"
|
17 |
+
|
18 |
+
# Copyright (C) 2017 freemius
|
19 |
+
# This file is distributed under the same license as the freemius package.
|
20 |
+
#: includes/i18n.php41, includes/i18n.php:55
|
21 |
+
msgid "Yes - I'm in!"
|
22 |
+
msgstr "加入します"
|
23 |
+
|
24 |
+
#: includes/i18n.php43, includes/i18n.php:57
|
25 |
+
msgid "Not today"
|
26 |
+
msgstr "今日はやめておく"
|
27 |
+
|
28 |
+
#: includes/i18n.php:69
|
29 |
+
msgid "Account"
|
30 |
+
msgstr "アカウント"
|
31 |
+
|
32 |
+
#: includes/i18n.php:71
|
33 |
+
msgid "Add On"
|
34 |
+
msgstr "アドオン"
|
35 |
+
|
36 |
+
#: includes/i18n.php:73
|
37 |
+
msgid "Contact Us"
|
38 |
+
msgstr "連絡"
|
39 |
+
|
40 |
+
#: includes/i18n.php:75
|
41 |
+
msgid "Contact Support"
|
42 |
+
msgstr "サポートに連絡"
|
43 |
+
|
44 |
+
#: includes/i18n.php:77
|
45 |
+
msgid "Change Ownership"
|
46 |
+
msgstr "オーナーを変更"
|
47 |
+
|
48 |
+
#: includes/i18n.php:79
|
49 |
+
msgid "Support"
|
50 |
+
msgstr "サポート"
|
51 |
+
|
52 |
+
#: includes/i18n.php:81
|
53 |
+
msgid "Support Forum"
|
54 |
+
msgstr "サポートフォーラム"
|
55 |
+
|
56 |
+
#: includes/i18n.php:83
|
57 |
+
msgid "Add Ons"
|
58 |
+
msgstr "アドオン"
|
59 |
+
|
60 |
+
#: includes/i18n.php:85
|
61 |
+
msgctxt "verb"
|
62 |
+
msgid "Upgrade"
|
63 |
+
msgstr "アップグレード"
|
64 |
+
|
65 |
+
#: includes/i18n.php:87
|
66 |
+
msgid "Awesome"
|
67 |
+
msgstr "すごい!"
|
68 |
+
|
69 |
+
#: includes/i18n.php:89
|
70 |
+
msgctxt "noun"
|
71 |
+
msgid "Pricing"
|
72 |
+
msgstr "料金表"
|
73 |
+
|
74 |
+
#: includes/i18n.php:91
|
75 |
+
msgctxt "noun"
|
76 |
+
msgid "Price"
|
77 |
+
msgstr "料金"
|
78 |
+
|
79 |
+
#: includes/i18n.php:93
|
80 |
+
msgid "Unlimited Updates"
|
81 |
+
msgstr "無制限のアップデート"
|
82 |
+
|
83 |
+
#: includes/i18n.php:95
|
84 |
+
msgctxt "verb"
|
85 |
+
msgid "Downgrade"
|
86 |
+
msgstr "ダウングレード"
|
87 |
+
|
88 |
+
#: includes/i18n.php:97
|
89 |
+
msgid "Cancel Trial"
|
90 |
+
msgstr "トライアルをキャンセル"
|
91 |
+
|
92 |
+
#: includes/i18n.php:99
|
93 |
+
msgid "Free Trial"
|
94 |
+
msgstr "フリートライアル"
|
95 |
+
|
96 |
+
#: includes/i18n.php:101
|
97 |
+
msgid "Start my free %s"
|
98 |
+
msgstr "無料の %s を開始"
|
99 |
+
|
100 |
+
#: includes/i18n.php:103
|
101 |
+
msgid "No commitment for %s - cancel anytime"
|
102 |
+
msgstr "%s の拘束はありません。いつでもキャンセルできます。"
|
103 |
+
|
104 |
+
#: includes/i18n.php:105
|
105 |
+
msgid "After your free %s, pay as little as %s"
|
106 |
+
msgstr "無料の %s の後は、わずか %s だけお支払ください。"
|
107 |
+
|
108 |
+
#: includes/i18n.php:107
|
109 |
+
msgid "Details"
|
110 |
+
msgstr "詳細"
|
111 |
+
|
112 |
+
#: includes/i18n.php:109
|
113 |
+
msgid "Account Details"
|
114 |
+
msgstr "アカウント詳細"
|
115 |
+
|
116 |
+
#: includes/i18n.php:111
|
117 |
+
msgctxt "verb"
|
118 |
+
msgid "Delete"
|
119 |
+
msgstr "削除"
|
120 |
+
|
121 |
+
#: includes/i18n.php:113
|
122 |
+
msgctxt "verb"
|
123 |
+
msgid "Show"
|
124 |
+
msgstr "表示"
|
125 |
+
|
126 |
+
#: includes/i18n.php:115
|
127 |
+
msgctxt "verb"
|
128 |
+
msgid "Hide"
|
129 |
+
msgstr "非表示"
|
130 |
+
|
131 |
+
#: includes/i18n.php:117
|
132 |
+
msgctxt "verb"
|
133 |
+
msgid "Edit"
|
134 |
+
msgstr "編集"
|
135 |
+
|
136 |
+
#: includes/i18n.php:119
|
137 |
+
msgctxt "verb"
|
138 |
+
msgid "Update"
|
139 |
+
msgstr "更新"
|
140 |
+
|
141 |
+
#: includes/i18n.php:121
|
142 |
+
msgid "Date"
|
143 |
+
msgstr "日付"
|
144 |
+
|
145 |
+
#: includes/i18n.php:123
|
146 |
+
msgid "Amount"
|
147 |
+
msgstr "総額"
|
148 |
+
|
149 |
+
#: includes/i18n.php:125
|
150 |
+
msgid "Invoice"
|
151 |
+
msgstr "請求書"
|
152 |
+
|
153 |
+
#: includes/i18n.php:127
|
154 |
+
msgid "Billing"
|
155 |
+
msgstr "請求書"
|
156 |
+
|
157 |
+
#: includes/i18n.php:129
|
158 |
+
msgid "Payments"
|
159 |
+
msgstr "支払い"
|
160 |
+
|
161 |
+
#: includes/i18n.php:131
|
162 |
+
msgid "Delete Account"
|
163 |
+
msgstr "アカウントを削除"
|
164 |
+
|
165 |
+
#: includes/i18n.php:133
|
166 |
+
msgctxt "as close a window"
|
167 |
+
msgid "Dismiss"
|
168 |
+
msgstr "却下"
|
169 |
+
|
170 |
+
#: includes/i18n.php:135
|
171 |
+
msgctxt "as product pricing plan"
|
172 |
+
msgid "Plan"
|
173 |
+
msgstr "プラン"
|
174 |
+
|
175 |
+
#: includes/i18n.php:137
|
176 |
+
msgid "Change Plan"
|
177 |
+
msgstr "プラン変更"
|
178 |
+
|
179 |
+
#: includes/i18n.php:139
|
180 |
+
msgctxt "as download professional version"
|
181 |
+
msgid "Download %s Version"
|
182 |
+
msgstr "%s バージョンをダウンロード"
|
183 |
+
|
184 |
+
#: includes/i18n.php:141
|
185 |
+
msgctxt "as download professional version now"
|
186 |
+
msgid "Download %s version now"
|
187 |
+
msgstr "%s バージョンを今すぐダウンロード"
|
188 |
+
|
189 |
+
#: includes/i18n.php:145
|
190 |
+
msgctxt "as download latest version"
|
191 |
+
msgid "Download Latest"
|
192 |
+
msgstr "最新版をダウンロード"
|
193 |
+
|
194 |
+
#: includes/i18n.php:147
|
195 |
+
msgctxt "E.g. you have a professional license."
|
196 |
+
msgid "You have a %s license."
|
197 |
+
msgstr "%s ライセンスを持っています。"
|
198 |
+
|
199 |
+
#: includes/i18n.php:151
|
200 |
+
msgid "New"
|
201 |
+
msgstr "新規"
|
202 |
+
|
203 |
+
#: includes/i18n.php:153
|
204 |
+
msgid "Free"
|
205 |
+
msgstr "無料"
|
206 |
+
|
207 |
+
#: includes/i18n.php:155
|
208 |
+
msgctxt "as trial plan"
|
209 |
+
msgid "Trial"
|
210 |
+
msgstr "トライアル"
|
211 |
+
|
212 |
+
#: includes/i18n.php:157
|
213 |
+
msgctxt "as starting a trial plan"
|
214 |
+
msgid "Start Trial"
|
215 |
+
msgstr "トライアルを開始"
|
216 |
+
|
217 |
+
#: includes/i18n.php:159
|
218 |
+
msgctxt "verb"
|
219 |
+
msgid "Purchase"
|
220 |
+
msgstr "購入"
|
221 |
+
|
222 |
+
#: includes/i18n.php:161
|
223 |
+
msgid "Purchase License"
|
224 |
+
msgstr "ライセンスを購入"
|
225 |
+
|
226 |
+
#: includes/i18n.php:163
|
227 |
+
msgctxt "verb"
|
228 |
+
msgid "Buy"
|
229 |
+
msgstr "買う"
|
230 |
+
|
231 |
+
#: includes/i18n.php:165
|
232 |
+
msgid "Buy License"
|
233 |
+
msgstr "ライセンスを買う"
|
234 |
+
|
235 |
+
#: includes/i18n.php:167
|
236 |
+
msgid "Single Site License"
|
237 |
+
msgstr "シングルサイトライセンス"
|
238 |
+
|
239 |
+
#: includes/i18n.php:169
|
240 |
+
msgid "Unlimited Licenses"
|
241 |
+
msgstr "無制限ライセンス"
|
242 |
+
|
243 |
+
#: includes/i18n.php:171
|
244 |
+
msgid "Up to %s Sites"
|
245 |
+
msgstr "%sサイトまで"
|
246 |
+
|
247 |
+
#: includes/i18n.php:173
|
248 |
+
msgid "%sRenew your license now%s to access version %s features and support."
|
249 |
+
msgstr "%sいますぐライセンスを更新して%s バージョン %s の機能とサポートにアクセスする"
|
250 |
+
|
251 |
+
#: includes/i18n.php:177
|
252 |
+
msgid ""
|
253 |
+
"Enter the email address you've used for the upgrade below and we will resend"
|
254 |
+
" you the license key."
|
255 |
+
msgstr "アップグレードに使用したメールアドレスを下に入力してください。そうすれば、ライセンスキーをお送りします。"
|
256 |
+
|
257 |
+
#: includes/i18n.php:181
|
258 |
+
msgctxt "e.g. Professional Plan"
|
259 |
+
msgid "%s Plan"
|
260 |
+
msgstr "%s プラン"
|
261 |
+
|
262 |
+
#: includes/i18n.php:183
|
263 |
+
msgid "You are just one step away - %s"
|
264 |
+
msgstr "もうあとわずかです - %s"
|
265 |
+
|
266 |
+
#: includes/i18n.php:185
|
267 |
+
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
268 |
+
msgid "Complete \"%s\" Activation Now"
|
269 |
+
msgstr "すぐに \"%s\" 有効化を完了してください"
|
270 |
+
|
271 |
+
#: includes/i18n.php:189
|
272 |
+
msgid "We made a few tweaks to the plugin, %s"
|
273 |
+
msgstr "プラグインを微調整します, %s"
|
274 |
+
|
275 |
+
#: includes/i18n.php:191
|
276 |
+
msgid "Opt-in to make \"%s\" Better!"
|
277 |
+
msgstr "\"%s\" をより良くするためにオプトインしてください!"
|
278 |
+
|
279 |
+
#: includes/i18n.php:193
|
280 |
+
msgid "Error"
|
281 |
+
msgstr "エラー"
|
282 |
+
|
283 |
+
#: includes/i18n.php:195
|
284 |
+
msgid ""
|
285 |
+
"Freemius SDK couldn't find the plugin's main file. Please contact "
|
286 |
+
"sdk@freemius.com with the current error."
|
287 |
+
msgstr "Freemius SDK がプラグインのメインファイルを見つけることができませんでした。現在のエラーを添えて sdk@freemius.com に連絡してください。"
|
288 |
+
|
289 |
+
#: includes/i18n.php:203
|
290 |
+
msgctxt "as expiration date"
|
291 |
+
msgid "Expiration"
|
292 |
+
msgstr "期限切れ"
|
293 |
+
|
294 |
+
#: includes/i18n.php:205
|
295 |
+
msgctxt "as software license"
|
296 |
+
msgid "License"
|
297 |
+
msgstr "ライセンス"
|
298 |
+
|
299 |
+
#: includes/i18n.php:207
|
300 |
+
msgid "not verified"
|
301 |
+
msgstr "未認証"
|
302 |
+
|
303 |
+
#: includes/i18n.php:209
|
304 |
+
msgid "Verify Email"
|
305 |
+
msgstr "認証メール"
|
306 |
+
|
307 |
+
#: includes/i18n.php:211
|
308 |
+
msgctxt "e.g. expires in 2 months"
|
309 |
+
msgid "Expires in %s"
|
310 |
+
msgstr "%s で期間終了"
|
311 |
+
|
312 |
+
#: includes/i18n.php:213
|
313 |
+
msgctxt "e.g. auto renews in 2 months"
|
314 |
+
msgid "Auto renews in %s"
|
315 |
+
msgstr "%s に自動更新"
|
316 |
+
|
317 |
+
#: includes/i18n.php:215
|
318 |
+
msgid "No expiration"
|
319 |
+
msgstr "有効期限なし"
|
320 |
+
|
321 |
+
#: includes/i18n.php:217
|
322 |
+
msgid "Expired"
|
323 |
+
msgstr "期限切れ"
|
324 |
+
|
325 |
+
#: includes/i18n.php:219
|
326 |
+
msgid "Cancelled"
|
327 |
+
msgstr "キャンセル"
|
328 |
+
|
329 |
+
#: includes/i18n.php:221
|
330 |
+
msgctxt "e.g. In 2 hours"
|
331 |
+
msgid "In %s"
|
332 |
+
msgstr "%s 内"
|
333 |
+
|
334 |
+
#: includes/i18n.php:223
|
335 |
+
msgctxt "e.g. 2 min ago"
|
336 |
+
msgid "%s ago"
|
337 |
+
msgstr "%s 前"
|
338 |
+
|
339 |
+
#: includes/i18n.php:225
|
340 |
+
msgctxt "as plugin version"
|
341 |
+
msgid "Version"
|
342 |
+
msgstr "バージョン"
|
343 |
+
|
344 |
+
#: includes/i18n.php:227
|
345 |
+
msgid "Name"
|
346 |
+
msgstr "名前"
|
347 |
+
|
348 |
+
#: includes/i18n.php:229
|
349 |
+
msgid "Email"
|
350 |
+
msgstr "Email"
|
351 |
+
|
352 |
+
#: includes/i18n.php:231
|
353 |
+
msgid "Email address"
|
354 |
+
msgstr "メールアドレス"
|
355 |
+
|
356 |
+
#: includes/i18n.php:233
|
357 |
+
msgid "Verified"
|
358 |
+
msgstr "認証済み"
|
359 |
+
|
360 |
+
#: includes/i18n.php:235
|
361 |
+
msgid "Plugin"
|
362 |
+
msgstr "プラグイン"
|
363 |
+
|
364 |
+
#: includes/i18n.php:237
|
365 |
+
msgid "Plugins"
|
366 |
+
msgstr "プラグイン"
|
367 |
+
|
368 |
+
#: includes/i18n.php:239
|
369 |
+
msgid "Themes"
|
370 |
+
msgstr "テーマ"
|
371 |
+
|
372 |
+
#: includes/i18n.php:241
|
373 |
+
msgctxt "as file/folder path"
|
374 |
+
msgid "Path"
|
375 |
+
msgstr "パス"
|
376 |
+
|
377 |
+
#: includes/i18n.php:243
|
378 |
+
msgid "Title"
|
379 |
+
msgstr "タイトル"
|
380 |
+
|
381 |
+
#: includes/i18n.php:245
|
382 |
+
msgid "Free version"
|
383 |
+
msgstr "フリーバージョン"
|
384 |
+
|
385 |
+
#: includes/i18n.php:247
|
386 |
+
msgid "Premium version"
|
387 |
+
msgstr "プレミアムバージョン"
|
388 |
+
|
389 |
+
#: includes/i18n.php:249
|
390 |
+
msgctxt "as WP plugin slug"
|
391 |
+
msgid "Slug"
|
392 |
+
msgstr "スラッグ"
|
393 |
+
|
394 |
+
#: includes/i18n.php:251
|
395 |
+
msgid "ID"
|
396 |
+
msgstr "ID"
|
397 |
+
|
398 |
+
#: includes/i18n.php:253
|
399 |
+
msgid "Users"
|
400 |
+
msgstr "ユーザー"
|
401 |
+
|
402 |
+
#: includes/i18n.php:255
|
403 |
+
msgid "Plugin Installs"
|
404 |
+
msgstr "プラグインインストール数"
|
405 |
+
|
406 |
+
#: includes/i18n.php:257
|
407 |
+
msgctxt "like websites"
|
408 |
+
msgid "Sites"
|
409 |
+
msgstr "サイト数"
|
410 |
+
|
411 |
+
#: includes/i18n.php:259
|
412 |
+
msgid "User ID"
|
413 |
+
msgstr "ユーザー ID"
|
414 |
+
|
415 |
+
#: includes/i18n.php:261
|
416 |
+
msgid "Site ID"
|
417 |
+
msgstr "サイト ID"
|
418 |
+
|
419 |
+
#: includes/i18n.php:263
|
420 |
+
msgid "Public Key"
|
421 |
+
msgstr "公開鍵"
|
422 |
+
|
423 |
+
#: includes/i18n.php:265
|
424 |
+
msgid "Secret Key"
|
425 |
+
msgstr "秘密鍵"
|
426 |
+
|
427 |
+
#: includes/i18n.php:267
|
428 |
+
msgctxt "as secret encryption key missing"
|
429 |
+
msgid "No Secret"
|
430 |
+
msgstr "秘密鍵がありません"
|
431 |
+
|
432 |
+
#: includes/i18n.php:269
|
433 |
+
msgid "No ID"
|
434 |
+
msgstr "ID がありません"
|
435 |
+
|
436 |
+
#: includes/i18n.php:271
|
437 |
+
msgctxt "as synchronize license"
|
438 |
+
msgid "Sync License"
|
439 |
+
msgstr "ライセンスを同期"
|
440 |
+
|
441 |
+
#: includes/i18n.php:273
|
442 |
+
msgctxt "as synchronize"
|
443 |
+
msgid "Sync"
|
444 |
+
msgstr "同期"
|
445 |
+
|
446 |
+
#: includes/i18n.php:275
|
447 |
+
msgid "Activate License"
|
448 |
+
msgstr "ライセンスを有効化"
|
449 |
+
|
450 |
+
#: includes/i18n.php:277
|
451 |
+
msgid "Activate Free Version"
|
452 |
+
msgstr "フリーバージョンを有効化"
|
453 |
+
|
454 |
+
#: includes/i18n.php:279
|
455 |
+
msgid ""
|
456 |
+
"Please enter the license key that you received in the email right after the "
|
457 |
+
"purchase:"
|
458 |
+
msgstr "購入後すぐにメールで受け取ったライセンスキーを入力してください:"
|
459 |
+
|
460 |
+
#: includes/i18n.php:283
|
461 |
+
msgid "Activating license..."
|
462 |
+
msgstr "ライセンスを有効化中…"
|
463 |
+
|
464 |
+
#: includes/i18n.php:285
|
465 |
+
msgid "Change License"
|
466 |
+
msgstr "ライセンスを変更"
|
467 |
+
|
468 |
+
#: includes/i18n.php:287
|
469 |
+
msgid "Update License"
|
470 |
+
msgstr "ライセンスを更新"
|
471 |
+
|
472 |
+
#: includes/i18n.php:289
|
473 |
+
msgid "Deactivate License"
|
474 |
+
msgstr "ライセンスを無効化"
|
475 |
+
|
476 |
+
#: includes/i18n.php:291
|
477 |
+
msgid "Activate"
|
478 |
+
msgstr "有効化"
|
479 |
+
|
480 |
+
#: includes/i18n.php:293
|
481 |
+
msgid "Deactivate"
|
482 |
+
msgstr "無効化"
|
483 |
+
|
484 |
+
#: includes/i18n.php:295
|
485 |
+
msgid "Skip & Deactivate"
|
486 |
+
msgstr "スキップし、無効化"
|
487 |
+
|
488 |
+
#: includes/i18n.php:297
|
489 |
+
msgid "No - just deactivate"
|
490 |
+
msgstr "いいえ - すぐに無効化"
|
491 |
+
|
492 |
+
#: includes/i18n.php:299
|
493 |
+
msgid "Yes - do your thing"
|
494 |
+
msgstr "はい - お構いなく"
|
495 |
+
|
496 |
+
#: includes/i18n.php:301
|
497 |
+
msgctxt "active mode"
|
498 |
+
msgid "Active"
|
499 |
+
msgstr "有効"
|
500 |
+
|
501 |
+
#: includes/i18n.php:303
|
502 |
+
msgctxt "is active mode?"
|
503 |
+
msgid "Is Active"
|
504 |
+
msgstr "有効"
|
505 |
+
|
506 |
+
#: includes/i18n.php:305
|
507 |
+
msgid "Install Now"
|
508 |
+
msgstr "今すぐインストール"
|
509 |
+
|
510 |
+
#: includes/i18n.php:307
|
511 |
+
msgid "Install Update Now"
|
512 |
+
msgstr "今すぐ更新をインストール"
|
513 |
+
|
514 |
+
#: includes/i18n.php:309
|
515 |
+
msgid "More information about %s"
|
516 |
+
msgstr "%s に関する詳細情報"
|
517 |
+
|
518 |
+
#: includes/i18n.php:311
|
519 |
+
msgid "Localhost"
|
520 |
+
msgstr "localhost"
|
521 |
+
|
522 |
+
#: includes/i18n.php:313
|
523 |
+
msgctxt "as activate Professional plan"
|
524 |
+
msgid "Activate %s Plan"
|
525 |
+
msgstr "%s プランを有効化"
|
526 |
+
|
527 |
+
#: includes/i18n.php:315
|
528 |
+
msgctxt "as 5 licenses left"
|
529 |
+
msgid "%s left"
|
530 |
+
msgstr "あと %s"
|
531 |
+
|
532 |
+
#: includes/i18n.php:317
|
533 |
+
msgid "Last license"
|
534 |
+
msgstr "最新のライセンス"
|
535 |
+
|
536 |
+
#: includes/i18n.php:319
|
537 |
+
msgid "What is your %s?"
|
538 |
+
msgstr "自分の %s はなんですか?"
|
539 |
+
|
540 |
+
#: includes/i18n.php:321
|
541 |
+
msgid "Activate this add-on"
|
542 |
+
msgstr "このアドオンを有効化"
|
543 |
+
|
544 |
+
#: includes/i18n.php:323
|
545 |
+
msgid ""
|
546 |
+
"Deactivating your license will block all premium features, but will enable "
|
547 |
+
"you to activate the license on another site. Are you sure you want to "
|
548 |
+
"proceed?"
|
549 |
+
msgstr "ライセンスを無効化するとすべてのプレミアム機能が使えなくなりますが、他のサイトでライセンスを有効にすることができるようになります。本当に実行しますか?"
|
550 |
+
|
551 |
+
#: includes/i18n.php:327
|
552 |
+
msgid ""
|
553 |
+
"Deleting the account will automatically deactivate your %s plan license so "
|
554 |
+
"you can use it on other sites. If you want to terminate the recurring "
|
555 |
+
"payments as well, click the \"Cancel\" button, and first \"Downgrade\" your "
|
556 |
+
"account. Are you sure you would like to continue with the deletion?"
|
557 |
+
msgstr "アカウントを削除すると自動的に %s プランライセンスが無効になり、他のサイトで使うことができます。定期の支払いも終了したい場合は、\"キャンセル\"ボタンをクリックし、まずアカウントを\"ダウングレード\"してください。本当に削除を続行してもいいですか?"
|
558 |
+
|
559 |
+
#: includes/i18n.php:331
|
560 |
+
msgid ""
|
561 |
+
"Deletion is not temporary. Only delete if you no longer want to use this "
|
562 |
+
"plugin anymore. Are you sure you would like to continue with the deletion?"
|
563 |
+
msgstr "削除は一時的なものではありません。このプラグインを今後使いたくない場合にだけ削除してください。本当に削除を続行してもいいですか?"
|
564 |
+
|
565 |
+
#: includes/i18n.php:335
|
566 |
+
msgid ""
|
567 |
+
"Downgrading your plan will immediately stop all future recurring payments "
|
568 |
+
"and your %s plan license will expire in %s."
|
569 |
+
msgstr "プランをダウングレードするとすぐに将来の定期の支払いはすべて停止し、%s プランライセンスは %s で期限切れとなります。"
|
570 |
+
|
571 |
+
#: includes/i18n.php:339
|
572 |
+
msgid ""
|
573 |
+
"Cancelling the trial will immediately block access to all premium features. "
|
574 |
+
"Are you sure?"
|
575 |
+
msgstr "トライアルをキャンセルするとすぐにすべてのプレミアム機能へのアクセスができなくなります。本当に実行しますか?"
|
576 |
+
|
577 |
+
#: includes/i18n.php:343
|
578 |
+
msgid ""
|
579 |
+
"You can still enjoy all %s features but you will not have access to plugin "
|
580 |
+
"updates and support."
|
581 |
+
msgstr "すべての %s 機能をまだ楽しむことができますが、プラグインの更新とサポートにアクセスすることはできなくなります。"
|
582 |
+
|
583 |
+
#: includes/i18n.php:347
|
584 |
+
msgid ""
|
585 |
+
"Once your license expire you can still use the Free version but you will NOT"
|
586 |
+
" have access to the %s features."
|
587 |
+
msgstr "ライセンスが期限切れになるとフリーバージョンを使うことはできますが、%s 機能にアクセスすることはできなくなります。"
|
588 |
+
|
589 |
+
#: includes/i18n.php:351
|
590 |
+
msgid "Are you sure you want to proceed?"
|
591 |
+
msgstr "本当に続行していいですか?"
|
592 |
+
|
593 |
+
#: includes/i18n.php:357
|
594 |
+
msgid "Add Ons for %s"
|
595 |
+
msgstr "%s のアドオン"
|
596 |
+
|
597 |
+
#: includes/i18n.php:359
|
598 |
+
msgid ""
|
599 |
+
"We could'nt load the add-ons list. It's probably an issue on our side, "
|
600 |
+
"please try to come back in few minutes."
|
601 |
+
msgstr "アドオンリストを読み込むことができませんでした。おそらく運営側の問題になりますので、しばらくしてからお試しください。"
|
602 |
+
|
603 |
+
#: includes/i18n.php:365
|
604 |
+
msgid "Anonymous feedback"
|
605 |
+
msgstr "匿名のフィードバック"
|
606 |
+
|
607 |
+
#: includes/i18n.php:367
|
608 |
+
msgid "Quick feedback"
|
609 |
+
msgstr "クイックフィードバック"
|
610 |
+
|
611 |
+
#: includes/i18n.php:369
|
612 |
+
msgid "If you have a moment, please let us know why you are deactivating"
|
613 |
+
msgstr "お時間があれば、なぜ無効化するのか理由を教えてください。"
|
614 |
+
|
615 |
+
#: includes/i18n.php:373
|
616 |
+
msgid "Yes - Deactivate"
|
617 |
+
msgstr "はい - 無効化します"
|
618 |
+
|
619 |
+
#: includes/i18n.php:375
|
620 |
+
msgid "Submit & Deactivate"
|
621 |
+
msgstr "送信し無効化"
|
622 |
+
|
623 |
+
#: includes/i18n.php:377
|
624 |
+
msgid "Cancel"
|
625 |
+
msgstr "キャンセル"
|
626 |
+
|
627 |
+
#: includes/i18n.php:379
|
628 |
+
msgid "I no longer need the plugin"
|
629 |
+
msgstr "もうプラグインを必要としていません"
|
630 |
+
|
631 |
+
#: includes/i18n.php:381
|
632 |
+
msgid "I found a better plugin"
|
633 |
+
msgstr "もっと良いプラグインを見つけました"
|
634 |
+
|
635 |
+
#: includes/i18n.php:383
|
636 |
+
msgid "I only needed the plugin for a short period"
|
637 |
+
msgstr "短期間プラグインを必要としていただけです"
|
638 |
+
|
639 |
+
#: includes/i18n.php:385
|
640 |
+
msgid "The plugin broke my site"
|
641 |
+
msgstr "プラグインのせいでサイトが壊れました"
|
642 |
+
|
643 |
+
#: includes/i18n.php:387
|
644 |
+
msgid "The plugin suddenly stopped working"
|
645 |
+
msgstr "プラグインはすぐに動かなくなりました"
|
646 |
+
|
647 |
+
#: includes/i18n.php:389
|
648 |
+
msgid "I can't pay for it anymore"
|
649 |
+
msgstr "もう払うことができません"
|
650 |
+
|
651 |
+
#: includes/i18n.php:391
|
652 |
+
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
653 |
+
msgstr "一時的な無効化です。問題をデバッグしているだけです。"
|
654 |
+
|
655 |
+
#: includes/i18n.php:395
|
656 |
+
msgctxt ""
|
657 |
+
"the text of the \"other\" reason for deactivating the plugin that is shown "
|
658 |
+
"in the modal box."
|
659 |
+
msgid "Other"
|
660 |
+
msgstr "その他"
|
661 |
+
|
662 |
+
#: includes/i18n.php:399
|
663 |
+
msgid "Kindly tell us the reason so we can improve."
|
664 |
+
msgstr "改善できるよう、どうか理由を教えてください。"
|
665 |
+
|
666 |
+
#: includes/i18n.php:401
|
667 |
+
msgid "What's the plugin's name?"
|
668 |
+
msgstr "プラグイン名は何ですか?"
|
669 |
+
|
670 |
+
#: includes/i18n.php:403
|
671 |
+
msgid "What price would you feel comfortable paying?"
|
672 |
+
msgstr " 支払ってもよいと思う価格はいくらですか?"
|
673 |
+
|
674 |
+
#: includes/i18n.php:405
|
675 |
+
msgid "I couldn't understand how to make it work"
|
676 |
+
msgstr "どうしたら動作するか分かりませんでした。"
|
677 |
+
|
678 |
+
#: includes/i18n.php:407
|
679 |
+
msgid ""
|
680 |
+
"The plugin is great, but I need specific feature that you don't support"
|
681 |
+
msgstr "プラグインは素晴らしいけれど、サポートしていないある機能を必要としています"
|
682 |
+
|
683 |
+
#: includes/i18n.php:411
|
684 |
+
msgid "The plugin is not working"
|
685 |
+
msgstr "プラグインが動いていません"
|
686 |
+
|
687 |
+
#: includes/i18n.php:413
|
688 |
+
msgid "It's not what I was looking for"
|
689 |
+
msgstr "探していたものではありません"
|
690 |
+
|
691 |
+
#: includes/i18n.php:415
|
692 |
+
msgid "The plugin didn't work as expected"
|
693 |
+
msgstr "プラグインは期待通りには動きませんでした"
|
694 |
+
|
695 |
+
#: includes/i18n.php:417
|
696 |
+
msgid "What feature?"
|
697 |
+
msgstr "何の機能ですか?"
|
698 |
+
|
699 |
+
#: includes/i18n.php:419
|
700 |
+
msgid "Kindly share what didn't work so we can fix it for future users..."
|
701 |
+
msgstr "将来のユーザーのために修正できるよう、何が動作しなかったのかどうか共有してください…"
|
702 |
+
|
703 |
+
#: includes/i18n.php:423
|
704 |
+
msgid "What you've been looking for?"
|
705 |
+
msgstr "探していたのは何ですか?"
|
706 |
+
|
707 |
+
#: includes/i18n.php:425
|
708 |
+
msgid "What did you expect?"
|
709 |
+
msgstr "何を期待していましたか?"
|
710 |
+
|
711 |
+
#: includes/i18n.php:427
|
712 |
+
msgid "The plugin didn't work"
|
713 |
+
msgstr "プラグインが動作しませんでした"
|
714 |
+
|
715 |
+
#: includes/i18n.php:429
|
716 |
+
msgid "I don't like to share my information with you"
|
717 |
+
msgstr "自分の情報を共有したくありません"
|
718 |
+
|
719 |
+
#: includes/i18n.php:431
|
720 |
+
msgid ""
|
721 |
+
"You might have missed it, but you don't have to share any data and can just "
|
722 |
+
"%s the opt-in."
|
723 |
+
msgstr "見逃していたかもしれませんが、どんな情報も共有する必要はなく、オプトインを $s することができます。 "
|
724 |
+
|
725 |
+
#: includes/i18n.php:441
|
726 |
+
msgctxt "greeting"
|
727 |
+
msgid "Hey %s,"
|
728 |
+
msgstr "おおい %s さん、"
|
729 |
+
|
730 |
+
#: includes/i18n.php:443
|
731 |
+
msgctxt "a greeting. E.g. Thanks John!"
|
732 |
+
msgid "Thanks %s!"
|
733 |
+
msgstr "ありがとう $s さん!"
|
734 |
+
|
735 |
+
#: includes/i18n.php:445
|
736 |
+
msgid ""
|
737 |
+
"Never miss an important update - opt-in to our security and feature updates "
|
738 |
+
"notifications, and non-sensitive diagnostic tracking with %4$s."
|
739 |
+
msgstr "重要な更新を逃さないように - セキュリティとおすすめの更新通知、%4$s とセンシティブではない診断トラッキングをオプトイン"
|
740 |
+
|
741 |
+
#: includes/i18n.php:449
|
742 |
+
msgid ""
|
743 |
+
"Please help us improve %1$s! If you opt-in, some data about your usage of "
|
744 |
+
"%1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still "
|
745 |
+
"work just fine."
|
746 |
+
msgstr "%1$s を改善するのを手伝ってください。オプトインすれば、あなたの %1$s の使用に関するデータが %4$s へと送られます。これをスキップしても大丈夫です! %1$s は今でも素晴らしいでしょう。"
|
747 |
+
|
748 |
+
#: includes/i18n.php:453
|
749 |
+
msgid ""
|
750 |
+
"You should receive an activation email for %s to your mailbox at %s. Please "
|
751 |
+
"make sure you click the activation button in that email to %s."
|
752 |
+
msgstr "%s のメールボックスに %s の有効化のメールを受け取っているはずです。%s のメールに記載された有効化ボタンをクリックしてください。"
|
753 |
+
|
754 |
+
#: includes/i18n.php:455
|
755 |
+
msgid "complete the install"
|
756 |
+
msgstr "インストールを完了"
|
757 |
+
|
758 |
+
#: includes/i18n.php:457
|
759 |
+
msgid "start the trial"
|
760 |
+
msgstr "トライアルを開始"
|
761 |
+
|
762 |
+
#: includes/i18n.php:459
|
763 |
+
msgid ""
|
764 |
+
"Thanks for purchasing %s! To get started, please enter your license key:"
|
765 |
+
msgstr "%s を購入いただきありがとうございます。はじめにライセンスキーを入力してください:"
|
766 |
+
|
767 |
+
#: includes/i18n.php:463
|
768 |
+
msgid ""
|
769 |
+
"The plugin will be periodically sending data to %s to check for plugin "
|
770 |
+
"updates and verify the validity of your license."
|
771 |
+
msgstr "プラグインはプラグインの更新をチェックし、ライセンスが有効か確認するために、%s に周期的にデータを送信します。"
|
772 |
+
|
773 |
+
#: includes/i18n.php:467
|
774 |
+
msgid "What permissions are being granted?"
|
775 |
+
msgstr "付与されているパーミッションは何ですか?"
|
776 |
+
|
777 |
+
#: includes/i18n.php:469
|
778 |
+
msgid "Your Profile Overview"
|
779 |
+
msgstr "プロフィール概要"
|
780 |
+
|
781 |
+
#: includes/i18n.php:471
|
782 |
+
msgid "Name and email address"
|
783 |
+
msgstr "名前とメールアドレス"
|
784 |
+
|
785 |
+
#: includes/i18n.php:473
|
786 |
+
msgid "Your Site Overview"
|
787 |
+
msgstr "サイト概要"
|
788 |
+
|
789 |
+
#: includes/i18n.php:475
|
790 |
+
msgid "Site URL, WP version, PHP info, plugins & themes"
|
791 |
+
msgstr "サイト URL、WP バージョン、PHP info、プラグインとテーマ"
|
792 |
+
|
793 |
+
#: includes/i18n.php:479
|
794 |
+
msgid "Current Plugin Events"
|
795 |
+
msgstr "現在のプラグインイベント"
|
796 |
+
|
797 |
+
#: includes/i18n.php:481
|
798 |
+
msgid "Activation, deactivation and uninstall"
|
799 |
+
msgstr "有効化、無効化、アンインストール"
|
800 |
+
|
801 |
+
#: includes/i18n.php:483
|
802 |
+
msgid "Plugins & Themes"
|
803 |
+
msgstr "プラグインとテーマ"
|
804 |
+
|
805 |
+
#: includes/i18n.php:485
|
806 |
+
msgid "Titles, versions and state."
|
807 |
+
msgstr "タイトル、バージョン、状態"
|
808 |
+
|
809 |
+
#: includes/i18n.php:487
|
810 |
+
msgid "Admin Notices"
|
811 |
+
msgstr "管理者通知"
|
812 |
+
|
813 |
+
#: includes/i18n.php:489
|
814 |
+
msgid "Newsletter"
|
815 |
+
msgstr "ニュースレター"
|
816 |
+
|
817 |
+
#: includes/i18n.php:491
|
818 |
+
msgid "Updates, announcements, marketing, no spam"
|
819 |
+
msgstr "更新、発表、マーケティング、スパムなし"
|
820 |
+
|
821 |
+
#: includes/i18n.php:493
|
822 |
+
msgid "Privacy Policy"
|
823 |
+
msgstr "プライバシーポリシー"
|
824 |
+
|
825 |
+
#: includes/i18n.php:495
|
826 |
+
msgid "Terms of Service"
|
827 |
+
msgstr "利用規約"
|
828 |
+
|
829 |
+
#: includes/i18n.php:497
|
830 |
+
msgctxt "as activating plugin"
|
831 |
+
msgid "Activating"
|
832 |
+
msgstr "有効化中"
|
833 |
+
|
834 |
+
#: includes/i18n.php:499
|
835 |
+
msgctxt "as in the process of sending an email"
|
836 |
+
msgid "Sending email"
|
837 |
+
msgstr "メール送信中"
|
838 |
+
|
839 |
+
#: includes/i18n.php:503
|
840 |
+
msgctxt "button label"
|
841 |
+
msgid "Allow & Continue"
|
842 |
+
msgstr "許可して続ける"
|
843 |
+
|
844 |
+
#: includes/i18n.php:505
|
845 |
+
msgctxt "button label"
|
846 |
+
msgid "Agree & Activate License"
|
847 |
+
msgstr "同意してライセンスを有効化"
|
848 |
+
|
849 |
+
#: includes/i18n.php:507
|
850 |
+
msgctxt "verb"
|
851 |
+
msgid "Skip"
|
852 |
+
msgstr "スキップ"
|
853 |
+
|
854 |
+
#: includes/i18n.php:509
|
855 |
+
msgid "Click here to use the plugin anonymously"
|
856 |
+
msgstr "匿名でプラグインを使用するにはこちらをクリック"
|
857 |
+
|
858 |
+
#: includes/i18n.php:511
|
859 |
+
msgid "Re-send activation email"
|
860 |
+
msgstr "有効化メールを再送信"
|
861 |
+
|
862 |
+
#: includes/i18n.php:513
|
863 |
+
msgid "License key"
|
864 |
+
msgstr "ライセンスキー"
|
865 |
+
|
866 |
+
#: includes/i18n.php:515
|
867 |
+
msgid "Send License Key"
|
868 |
+
msgstr "ライセンスキーを送信"
|
869 |
+
|
870 |
+
#: includes/i18n.php:517
|
871 |
+
msgid "Sending license key"
|
872 |
+
msgstr "ライセンスキーを送信中"
|
873 |
+
|
874 |
+
#: includes/i18n.php:519
|
875 |
+
msgid "Have a license key?"
|
876 |
+
msgstr "ライセンスキーはお持ちですか?"
|
877 |
+
|
878 |
+
#: includes/i18n.php:521
|
879 |
+
msgid "Don't have a license key?"
|
880 |
+
msgstr "ライセンスキーをお持ちではありませんか?"
|
881 |
+
|
882 |
+
#: includes/i18n.php:523
|
883 |
+
msgid "Can't find your license key?"
|
884 |
+
msgstr "ライセンスキーは見つかりませんか?"
|
885 |
+
|
886 |
+
#: includes/i18n.php:525
|
887 |
+
msgid ""
|
888 |
+
"We couldn't find your email address in the system, are you sure it's the "
|
889 |
+
"right address?"
|
890 |
+
msgstr "システムではメールアドレスを見つけることができませんでした。メールアドレスが正しいか確認してください。"
|
891 |
+
|
892 |
+
#: includes/i18n.php:529
|
893 |
+
msgid ""
|
894 |
+
"We can't see any active licenses associated with that email address, are you"
|
895 |
+
" sure it's the right address?"
|
896 |
+
msgstr "メールアドレスに関連付けられた有効なライセンスが見つかりません。メールアドレスが正しいか確認してください。"
|
897 |
+
|
898 |
+
#: includes/i18n.php:533
|
899 |
+
msgid "Opt In"
|
900 |
+
msgstr "オプトイン"
|
901 |
+
|
902 |
+
#: includes/i18n.php:535
|
903 |
+
msgid "Opt Out"
|
904 |
+
msgstr "オプトアウト"
|
905 |
+
|
906 |
+
#: includes/i18n.php:537
|
907 |
+
msgid "On second thought - I want to continue helping"
|
908 |
+
msgstr "第二の考えで - 手伝い続けたいです"
|
909 |
+
|
910 |
+
#: includes/i18n.php:541
|
911 |
+
msgid "Opting out..."
|
912 |
+
msgstr "オプトアウト中…"
|
913 |
+
|
914 |
+
#: includes/i18n.php:543
|
915 |
+
msgid "Opting in..."
|
916 |
+
msgstr "オプトイン中…"
|
917 |
+
|
918 |
+
#: includes/i18n.php:545
|
919 |
+
msgid ""
|
920 |
+
"We appreciate your help in making the %s better by letting us track some "
|
921 |
+
"usage data."
|
922 |
+
msgstr "使用データを追跡できるよう許可してくれたことで、%s をより良くするための手助けに感謝致します。"
|
923 |
+
|
924 |
+
#: includes/i18n.php:549
|
925 |
+
msgid ""
|
926 |
+
"Usage tracking is done in the name of making %s better. Making a better user"
|
927 |
+
" experience, prioritizing new features, and more good things. We'd really "
|
928 |
+
"appreciate if you'll reconsider letting us continue with the tracking."
|
929 |
+
msgstr "使用の追跡は %s をより良くする名目の下に行われています。ユーザー体験をより良くし、新機能に優先順位をつけるためなどに使います。追跡を続けてもよいと再考してくれるなら本当に感謝致します。"
|
930 |
+
|
931 |
+
#: includes/i18n.php:553
|
932 |
+
msgid ""
|
933 |
+
"By clicking \"Opt Out\", we will no longer be sending any data from %s to "
|
934 |
+
"%s."
|
935 |
+
msgstr "\"オプトアウト\"をクリックすることで、もう %s から %s へのデータの送信は行いません。"
|
936 |
+
|
937 |
+
#: includes/i18n.php:563
|
938 |
+
msgid "Screenshots"
|
939 |
+
msgstr "スクリーンショット"
|
940 |
+
|
941 |
+
#: includes/i18n.php:565
|
942 |
+
msgid "Click to view full-size screenshot %d"
|
943 |
+
msgstr "クリックしてフルサイズのスクリーンショットを見る %d"
|
944 |
+
|
945 |
+
#: includes/i18n.php:573
|
946 |
+
msgid "Freemius Debug"
|
947 |
+
msgstr "Freemius デバッグ"
|
948 |
+
|
949 |
+
#: includes/i18n.php:575
|
950 |
+
msgctxt "as turned on"
|
951 |
+
msgid "On"
|
952 |
+
msgstr "オン"
|
953 |
+
|
954 |
+
#: includes/i18n.php:577
|
955 |
+
msgctxt "as turned off"
|
956 |
+
msgid "Off"
|
957 |
+
msgstr "オフ"
|
958 |
+
|
959 |
+
#: includes/i18n.php:579
|
960 |
+
msgctxt "as code debugging"
|
961 |
+
msgid "Debugging"
|
962 |
+
msgstr "デバッグ"
|
963 |
+
|
964 |
+
#: includes/i18n.php:581
|
965 |
+
msgid "Freemius State"
|
966 |
+
msgstr "Freemius ステータス"
|
967 |
+
|
968 |
+
#: includes/i18n.php:583
|
969 |
+
msgctxt "as connection was successful"
|
970 |
+
msgid "Connected"
|
971 |
+
msgstr "接続"
|
972 |
+
|
973 |
+
#: includes/i18n.php:585
|
974 |
+
msgctxt "as connection blocked"
|
975 |
+
msgid "Blocked"
|
976 |
+
msgstr "ブロック"
|
977 |
+
|
978 |
+
#: includes/i18n.php:587
|
979 |
+
msgctxt "as application program interface"
|
980 |
+
msgid "API"
|
981 |
+
msgstr "API"
|
982 |
+
|
983 |
+
#: includes/i18n.php:589
|
984 |
+
msgctxt "as software development kit versions"
|
985 |
+
msgid "SDK"
|
986 |
+
msgstr "SDK"
|
987 |
+
|
988 |
+
#: includes/i18n.php:591
|
989 |
+
msgctxt "as software development kit versions"
|
990 |
+
msgid "SDK Versions"
|
991 |
+
msgstr "SDK バージョン"
|
992 |
+
|
993 |
+
#: includes/i18n.php:595
|
994 |
+
msgctxt "as plugin folder path"
|
995 |
+
msgid "Plugin Path"
|
996 |
+
msgstr "プラグインのパス"
|
997 |
+
|
998 |
+
#: includes/i18n.php:597
|
999 |
+
msgctxt "as sdk path"
|
1000 |
+
msgid "SDK Path"
|
1001 |
+
msgstr "SDK のパス"
|
1002 |
+
|
1003 |
+
#: includes/i18n.php:599
|
1004 |
+
msgid "Add Ons of Plugin %s"
|
1005 |
+
msgstr "プラグインのアドオン %s"
|
1006 |
+
|
1007 |
+
#: includes/i18n.php:601
|
1008 |
+
msgid "Are you sure you want to delete all Freemius data?"
|
1009 |
+
msgstr "ほんとうに全ての Freemius データを削除しますか?"
|
1010 |
+
|
1011 |
+
#: includes/i18n.php:605
|
1012 |
+
msgid "Actions"
|
1013 |
+
msgstr "アクション"
|
1014 |
+
|
1015 |
+
#: includes/i18n.php:607
|
1016 |
+
msgid "Delete All Accounts"
|
1017 |
+
msgstr "全てのアカウントを削除"
|
1018 |
+
|
1019 |
+
#: includes/i18n.php:609
|
1020 |
+
msgid "Start Fresh"
|
1021 |
+
msgstr "初期化を開始"
|
1022 |
+
|
1023 |
+
#: includes/i18n.php:611
|
1024 |
+
msgid "Clear API Cache"
|
1025 |
+
msgstr "API キャッシュをクリア"
|
1026 |
+
|
1027 |
+
#: includes/i18n.php:613
|
1028 |
+
msgid "Sync Data From Server"
|
1029 |
+
msgstr "サーバーからのデータを同期"
|
1030 |
+
|
1031 |
+
#: includes/i18n.php:615
|
1032 |
+
msgid "Scheduled Crons"
|
1033 |
+
msgstr "スケジュール Cron"
|
1034 |
+
|
1035 |
+
#: includes/i18n.php:617
|
1036 |
+
msgid "Plugins & Themes Sync"
|
1037 |
+
msgstr "プラグインとテーマを同期"
|
1038 |
+
|
1039 |
+
#: includes/i18n.php:625
|
1040 |
+
msgctxt "as congratulations"
|
1041 |
+
msgid "Congrats"
|
1042 |
+
msgstr "おめでとう"
|
1043 |
+
|
1044 |
+
#: includes/i18n.php:627
|
1045 |
+
msgctxt "exclamation"
|
1046 |
+
msgid "Oops"
|
1047 |
+
msgstr "おっと"
|
1048 |
+
|
1049 |
+
#: includes/i18n.php:629
|
1050 |
+
msgctxt "interjection expressing joy or exuberance"
|
1051 |
+
msgid "Yee-haw"
|
1052 |
+
msgstr "ヤッホー"
|
1053 |
+
|
1054 |
+
#: includes/i18n.php:633
|
1055 |
+
msgctxt ""
|
1056 |
+
"(especially in electronic communication) used to express elation, "
|
1057 |
+
"enthusiasm, or triumph."
|
1058 |
+
msgid "W00t"
|
1059 |
+
msgstr "やったー"
|
1060 |
+
|
1061 |
+
#: includes/i18n.php:637
|
1062 |
+
msgctxt "a positive response"
|
1063 |
+
msgid "Right on"
|
1064 |
+
msgstr "そうだ"
|
1065 |
+
|
1066 |
+
#: includes/i18n.php:639
|
1067 |
+
msgctxt ""
|
1068 |
+
"something somebody says when they are thinking about what you have just "
|
1069 |
+
"said. "
|
1070 |
+
msgid "Hmm"
|
1071 |
+
msgstr "ふむ"
|
1072 |
+
|
1073 |
+
#: includes/i18n.php:643
|
1074 |
+
msgid "O.K"
|
1075 |
+
msgstr "O.K"
|
1076 |
+
|
1077 |
+
#: includes/i18n.php:645
|
1078 |
+
msgctxt "exclamation"
|
1079 |
+
msgid "Hey"
|
1080 |
+
msgstr "ヘイ"
|
1081 |
+
|
1082 |
+
#: includes/i18n.php:647
|
1083 |
+
msgctxt "advance notice of something that will need attention."
|
1084 |
+
msgid "Heads up"
|
1085 |
+
msgstr "警告"
|
1086 |
+
|
1087 |
+
#: includes/i18n.php:657
|
1088 |
+
msgid "Seems like you got the latest release."
|
1089 |
+
msgstr "最新版を取得できました。"
|
1090 |
+
|
1091 |
+
#: includes/i18n.php:659
|
1092 |
+
msgid "You are all good!"
|
1093 |
+
msgstr "すべて完璧です!"
|
1094 |
+
|
1095 |
+
#: includes/i18n.php:661
|
1096 |
+
msgid ""
|
1097 |
+
"Sorry, we could not complete the email update. Another user with the same "
|
1098 |
+
"email is already registered."
|
1099 |
+
msgstr "メールアドレスのアップデートを完了できませんでした。他のユーザーがすでに同じメールアドレスで登録しているようです。"
|
1100 |
+
|
1101 |
+
#: includes/i18n.php:665
|
1102 |
+
msgid ""
|
1103 |
+
"If you would like to give up the ownership of the plugin's account to %s "
|
1104 |
+
"click the Change Ownership button."
|
1105 |
+
msgstr "もし%s にプラグインの所有権を譲りたいなら、所有権を変更ボタンをクリックしてください。"
|
1106 |
+
|
1107 |
+
#: includes/i18n.php:669
|
1108 |
+
msgid ""
|
1109 |
+
"Your email was successfully updated. You should receive an email with "
|
1110 |
+
"confirmation instructions in few moments."
|
1111 |
+
msgstr "メールアドレスのアップデートが完了しました。まもなく確認メールが届きます。"
|
1112 |
+
|
1113 |
+
#: includes/i18n.php:673
|
1114 |
+
msgid "Your name was successfully updated."
|
1115 |
+
msgstr "名前のアップデートが成功しました。"
|
1116 |
+
|
1117 |
+
#: includes/i18n.php:675
|
1118 |
+
msgid "You have successfully updated your %s."
|
1119 |
+
msgstr "%s のアップデートが成功しました。"
|
1120 |
+
|
1121 |
+
#: includes/i18n.php:677
|
1122 |
+
msgid "Please provide your full name."
|
1123 |
+
msgstr "フルネームを入力してください。"
|
1124 |
+
|
1125 |
+
#: includes/i18n.php:679
|
1126 |
+
msgid ""
|
1127 |
+
"Verification mail was just sent to %s. If you can't find it after 5 min, "
|
1128 |
+
"please check your spam box."
|
1129 |
+
msgstr "%s に確認メールを送信しました。もし5分以内にそれが届かない場合、迷惑メールボックスを確認してください。"
|
1130 |
+
|
1131 |
+
#: includes/i18n.php:683
|
1132 |
+
msgid ""
|
1133 |
+
"Just letting you know that the add-ons information of %s is being pulled "
|
1134 |
+
"from an external server."
|
1135 |
+
msgstr "%s のアドオンに関する情報は、外部サーバーから取得されます。"
|
1136 |
+
|
1137 |
+
#: includes/i18n.php:687
|
1138 |
+
msgid "No credit card required"
|
1139 |
+
msgstr "クレジットカードは必要ありません。"
|
1140 |
+
|
1141 |
+
#: includes/i18n.php:689
|
1142 |
+
msgid "Premium plugin version was successfully activated."
|
1143 |
+
msgstr "プレミアムプラグインのバージョンの有効化に成功しました。"
|
1144 |
+
|
1145 |
+
#: includes/i18n.php:693
|
1146 |
+
msgid "The upgrade of %s was successfully completed."
|
1147 |
+
msgstr "%s のアップグレードが完了しました。"
|
1148 |
+
|
1149 |
+
#: includes/i18n.php:695
|
1150 |
+
msgid "Your account was successfully activated with the %s plan."
|
1151 |
+
msgstr "アカウントが %s プランで有効化できました。"
|
1152 |
+
|
1153 |
+
#: includes/i18n.php:699
|
1154 |
+
msgid "Download the latest %s version now"
|
1155 |
+
msgstr "%s の最新版をダウンロードする"
|
1156 |
+
|
1157 |
+
#: includes/i18n.php:701
|
1158 |
+
msgid "Please follow these steps to complete the upgrade"
|
1159 |
+
msgstr "アップグレードを完了するには以下の手順を完了させてください。"
|
1160 |
+
|
1161 |
+
#: includes/i18n.php:705
|
1162 |
+
msgid "Download the latest %s version"
|
1163 |
+
msgstr "最新の %s をダウンロード"
|
1164 |
+
|
1165 |
+
#: includes/i18n.php:707
|
1166 |
+
msgid "Download the latest version"
|
1167 |
+
msgstr "最新版をダウンロード"
|
1168 |
+
|
1169 |
+
#: includes/i18n.php:709
|
1170 |
+
msgid "Deactivate the free version"
|
1171 |
+
msgstr "無料バージョンを無効化"
|
1172 |
+
|
1173 |
+
#: includes/i18n.php:711
|
1174 |
+
msgid "Upload and activate the downloaded version"
|
1175 |
+
msgstr "ダウンロードしたバージョンをアップロードして有効化"
|
1176 |
+
|
1177 |
+
#: includes/i18n.php:713
|
1178 |
+
msgid "How to upload and activate?"
|
1179 |
+
msgstr "アップロードと有効化の方法"
|
1180 |
+
|
1181 |
+
#: includes/i18n.php:715
|
1182 |
+
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1183 |
+
msgid "%s Add-on was successfully purchased."
|
1184 |
+
msgstr "%s のアドオンの支払いが完了しました。"
|
1185 |
+
|
1186 |
+
#: includes/i18n.php:719
|
1187 |
+
msgid "Your %s Add-on plan was successfully upgraded."
|
1188 |
+
msgstr "%s のアドオンのプランのアップグレードが完了しました。"
|
1189 |
+
|
1190 |
+
#: includes/i18n.php:723
|
1191 |
+
msgid "Your email has been successfully verified - you are AWESOME!"
|
1192 |
+
msgstr "あなたのメールアドレスの承認が完了しました。すごい!"
|
1193 |
+
|
1194 |
+
#: includes/i18n.php:727
|
1195 |
+
msgid "Your plan was successfully upgraded."
|
1196 |
+
msgstr "プランのアップグレードが成功しました。"
|
1197 |
+
|
1198 |
+
#: includes/i18n.php:729
|
1199 |
+
msgid "Your plan was successfully changed to %s."
|
1200 |
+
msgstr "プランの %s への変更が成功しました。"
|
1201 |
+
|
1202 |
+
#: includes/i18n.php:731
|
1203 |
+
msgid ""
|
1204 |
+
"Your license has expired. You can still continue using the free plugin "
|
1205 |
+
"forever."
|
1206 |
+
msgstr "ライセンスの有効期限が切れました。無料バージョンの利用を継続することができます。"
|
1207 |
+
|
1208 |
+
#: includes/i18n.php:735
|
1209 |
+
msgid ""
|
1210 |
+
"Your license has been cancelled. If you think it's a mistake, please contact"
|
1211 |
+
" support."
|
1212 |
+
msgstr "ライセンスはキャンセルされました。もしそれが間違いだと思うならサポートに連絡してください。"
|
1213 |
+
|
1214 |
+
#: includes/i18n.php:739
|
1215 |
+
msgid "Your trial has been successfully started."
|
1216 |
+
msgstr "トライアル版の利用を開始しました。"
|
1217 |
+
|
1218 |
+
#: includes/i18n.php:741
|
1219 |
+
msgid "Your license was successfully activated."
|
1220 |
+
msgstr "ライセンスの有効化が成功しました。"
|
1221 |
+
|
1222 |
+
#: includes/i18n.php:743
|
1223 |
+
msgid "It looks like your site currently doesn't have an active license."
|
1224 |
+
msgstr "サイトは有効なライセンスを持っていないようです。"
|
1225 |
+
|
1226 |
+
#: includes/i18n.php:747
|
1227 |
+
msgid ""
|
1228 |
+
"Your license was successfully deactivated, you are back to the %s plan."
|
1229 |
+
msgstr "ライセンスの無効化が完了しました。%s プランに戻りました。"
|
1230 |
+
|
1231 |
+
#: includes/i18n.php:751
|
1232 |
+
msgid "It looks like the license deactivation failed."
|
1233 |
+
msgstr "ライセンスの無効化ができませんでした。"
|
1234 |
+
|
1235 |
+
#: includes/i18n.php:755
|
1236 |
+
msgid "It looks like the license could not be activated."
|
1237 |
+
msgstr "ライセンスの有効化ができませんでした。"
|
1238 |
+
|
1239 |
+
#: includes/i18n.php:759
|
1240 |
+
msgid "Error received from the server:"
|
1241 |
+
msgstr "サーバーからエラーを受信しました。"
|
1242 |
+
|
1243 |
+
#: includes/i18n.php:761
|
1244 |
+
msgid ""
|
1245 |
+
"Your trial has expired. You can still continue using all our free features."
|
1246 |
+
msgstr "トライアルの有効期限が切れました。引き続き無料の機能の利用を続けることができます。"
|
1247 |
+
|
1248 |
+
#: includes/i18n.php:765
|
1249 |
+
msgid ""
|
1250 |
+
"Your plan was successfully downgraded. Your %s plan license will expire in "
|
1251 |
+
"%s."
|
1252 |
+
msgstr "プランのダウングレードが完了しました。%s プランは %s に有効期限が切れます。"
|
1253 |
+
|
1254 |
+
#: includes/i18n.php:769
|
1255 |
+
msgid ""
|
1256 |
+
"Seems like we are having some temporary issue with your plan downgrade. "
|
1257 |
+
"Please try again in few minutes."
|
1258 |
+
msgstr "プランのダウングレードの際に一時的な問題が発生したようです。数分後に再度操作してください。"
|
1259 |
+
|
1260 |
+
#: includes/i18n.php:773
|
1261 |
+
msgid ""
|
1262 |
+
"It looks like you are not in trial mode anymore so there's nothing to cancel"
|
1263 |
+
" :)"
|
1264 |
+
msgstr "すでにトライアルモードではないようなので、キャンセルする必要はありません :)"
|
1265 |
+
|
1266 |
+
#: includes/i18n.php:777
|
1267 |
+
msgid "Your %s free trial was successfully cancelled."
|
1268 |
+
msgstr "%s のフリートライアルはキャンセルされました。"
|
1269 |
+
|
1270 |
+
#: includes/i18n.php:781
|
1271 |
+
msgctxt "%s - numeric version number"
|
1272 |
+
msgid "Version %s was released."
|
1273 |
+
msgstr "バージョン %s をリリースしました。"
|
1274 |
+
|
1275 |
+
#: includes/i18n.php:785
|
1276 |
+
msgid "Please download %s."
|
1277 |
+
msgstr "%s をダウンロードしてください。"
|
1278 |
+
|
1279 |
+
#: includes/i18n.php:787
|
1280 |
+
msgctxt "%s - plan name, as the latest professional version here"
|
1281 |
+
msgid "the latest %s version here"
|
1282 |
+
msgstr "最新の %s バージョンはこちらです。"
|
1283 |
+
|
1284 |
+
#: includes/i18n.php:791
|
1285 |
+
msgid ""
|
1286 |
+
"How do you like %s so far? Test all our %s premium features with a %d-day "
|
1287 |
+
"free trial."
|
1288 |
+
msgstr "%s はどうですか? 私たちの全ての %s のプレミアム機能をお試しください。"
|
1289 |
+
|
1290 |
+
#: includes/i18n.php:795
|
1291 |
+
msgctxt "call to action"
|
1292 |
+
msgid "Start free trial"
|
1293 |
+
msgstr "フリートライアルを開始"
|
1294 |
+
|
1295 |
+
#: includes/i18n.php:797
|
1296 |
+
msgid "Starting trial"
|
1297 |
+
msgstr "トライアルを開始"
|
1298 |
+
|
1299 |
+
#: includes/i18n.php:799
|
1300 |
+
msgid "Please wait"
|
1301 |
+
msgstr "お待ちください"
|
1302 |
+
|
1303 |
+
#: includes/i18n.php:801
|
1304 |
+
msgid ""
|
1305 |
+
"Seems like we are having some temporary issue with your trial cancellation. "
|
1306 |
+
"Please try again in few minutes."
|
1307 |
+
msgstr "トライアルのキャンセルに一時的な問題がありました。数分後に再度お試しください。"
|
1308 |
+
|
1309 |
+
#: includes/i18n.php:805
|
1310 |
+
msgid "You already utilized a trial before."
|
1311 |
+
msgstr "以前すでに試用版を利用しました。"
|
1312 |
+
|
1313 |
+
#: includes/i18n.php:807
|
1314 |
+
msgid "You are already running the plugin in a trial mode."
|
1315 |
+
msgstr "すでにトライアル版のプラグインを利用しています。"
|
1316 |
+
|
1317 |
+
#: includes/i18n.php:811
|
1318 |
+
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1319 |
+
msgstr "%s プランは存在しないため、試用を開始できません。"
|
1320 |
+
|
1321 |
+
#: includes/i18n.php:815
|
1322 |
+
msgid "Plan %s does not support a trial period."
|
1323 |
+
msgstr "%s プランにはトライアル期間はありません。"
|
1324 |
+
|
1325 |
+
#: includes/i18n.php:817
|
1326 |
+
msgid "None of the plugin's plans supports a trial period."
|
1327 |
+
msgstr "トライアル期間をサポートしているプランのプラグインはありません。"
|
1328 |
+
|
1329 |
+
#: includes/i18n.php:821
|
1330 |
+
msgid ""
|
1331 |
+
"Unexpected API error. Please contact the plugin's author with the following "
|
1332 |
+
"error."
|
1333 |
+
msgstr "予期しない API のエラー。プラグイン開発者に連絡をとってください。"
|
1334 |
+
|
1335 |
+
#: includes/i18n.php:825
|
1336 |
+
msgid "No commitment for %s days - cancel anytime!"
|
1337 |
+
msgstr "%s 日以内であればいつでもキャンセルできます。"
|
1338 |
+
|
1339 |
+
#: includes/i18n.php:827
|
1340 |
+
msgid ""
|
1341 |
+
"Your license has expired. You can still continue using all the %s features, "
|
1342 |
+
"but you'll need to renew your license to continue getting updates and "
|
1343 |
+
"support."
|
1344 |
+
msgstr "ライセンスは有効期限がきれました。%s の機能を引き続き利用することができます。ただし、アップデートやサポートをうけるにはライセンスをアップデートする必要があります。"
|
1345 |
+
|
1346 |
+
#: includes/i18n.php:831
|
1347 |
+
msgid "Couldn't activate %s."
|
1348 |
+
msgstr "%s を有効化できません。"
|
1349 |
+
|
1350 |
+
#: includes/i18n.php:833
|
1351 |
+
msgid "Please contact us with the following message:"
|
1352 |
+
msgstr "以下のメッセージとともに私たちに連絡をください。"
|
1353 |
+
|
1354 |
+
#: includes/i18n.php:835
|
1355 |
+
msgid ""
|
1356 |
+
"It looks like you are still on the %s plan. If you did upgrade or change "
|
1357 |
+
"your plan, it's probably an issue on our side - sorry."
|
1358 |
+
msgstr "まだ %s プランのようです。もしアップグレードやプランの変更をしたのなら、こちらで何らかの問題が発生しているようです。申し訳ありません。"
|
1359 |
+
|
1360 |
+
#: includes/i18n.php:839
|
1361 |
+
msgid "Please contact us here"
|
1362 |
+
msgstr "こちらで私たちに連絡をとってください。"
|
1363 |
+
|
1364 |
+
#: includes/i18n.php:841
|
1365 |
+
msgid ""
|
1366 |
+
"I have upgraded my account but when I try to Sync the License, the plan "
|
1367 |
+
"remains %s."
|
1368 |
+
msgstr "アカウントをアップグレードしましたが、ライセンスを同期しようとするとプランが %s のままです。"
|
1369 |
+
|
1370 |
+
#: includes/i18n.php:849
|
1371 |
+
msgid "From unknown reason, the API connectivity test failed."
|
1372 |
+
msgstr "不明のエラーにより、API 接続ができませんでした。"
|
1373 |
+
|
1374 |
+
#: includes/i18n.php:853
|
1375 |
+
msgid ""
|
1376 |
+
"It's probably a temporary issue on our end. Just to be sure, with your "
|
1377 |
+
"permission, would it be o.k to run another connectivity test?"
|
1378 |
+
msgstr "それは私たちの一時的な問題のようです。もし許可していただけるなら他の接続テストをしてもよいですか?"
|
1379 |
+
|
1380 |
+
#: includes/i18n.php:857
|
1381 |
+
msgid ""
|
1382 |
+
"We use PHP cURL library for the API calls, which is a very common library "
|
1383 |
+
"and usually installed out of the box. Unfortunately, cURL is not installed "
|
1384 |
+
"on your server."
|
1385 |
+
msgstr "私たちは、API コールに PHP の cURL ライブラリを使用しています。これは一般的なライブラリで多くの場合インストールされていますが、あなたのサーバーにはインストールされていないようです。"
|
1386 |
+
|
1387 |
+
#: includes/i18n.php:861
|
1388 |
+
msgid ""
|
1389 |
+
"From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1390 |
+
msgstr "不明のエラーにより私たちが使用している CloudFlare のファイヤーウォールが接続を拒否したようです。"
|
1391 |
+
|
1392 |
+
#: includes/i18n.php:865
|
1393 |
+
msgctxt "as pluginX requires an access to our API"
|
1394 |
+
msgid "%s requires an access to our API."
|
1395 |
+
msgstr "%s は、私たちの API への接続が必要です。"
|
1396 |
+
|
1397 |
+
#: includes/i18n.php:869
|
1398 |
+
msgid ""
|
1399 |
+
"It looks like your server is using Squid ACL (access control lists), which "
|
1400 |
+
"blocks the connection."
|
1401 |
+
msgstr "サーバーは Squid ACL(Access control lists) を使用しているらしく、それが接続をブロックしています。"
|
1402 |
+
|
1403 |
+
#: includes/i18n.php:873
|
1404 |
+
msgid "I don't know what is Squid or ACL, help me!"
|
1405 |
+
msgstr "Squid ACL について知りません。助けてください!"
|
1406 |
+
|
1407 |
+
#: includes/i18n.php875, includes/i18n.php:889
|
1408 |
+
msgid ""
|
1409 |
+
"We'll make sure to contact your hosting company and resolve the issue. You "
|
1410 |
+
"will get a follow-up email to %s once we have an update."
|
1411 |
+
msgstr "ホスティング会社に連絡して問題を解決してください。 更新が完了したら、 %s へのフォローアップメールが届きます。"
|
1412 |
+
|
1413 |
+
#: includes/i18n.php:879
|
1414 |
+
msgid "I'm a system administrator"
|
1415 |
+
msgstr "私はシステム管理者です"
|
1416 |
+
|
1417 |
+
#: includes/i18n.php:881
|
1418 |
+
msgid ""
|
1419 |
+
"Great, please whitelist the following domains: %s. Once you done, deactivate"
|
1420 |
+
" the plugin and activate it again."
|
1421 |
+
msgstr "以下のドメインを許可してください: %s 。それが完了したらそのプラグインを無効化して有効化してください。"
|
1422 |
+
|
1423 |
+
#: includes/i18n.php:885
|
1424 |
+
msgid "I don't know what is cURL or how to install it, help me!"
|
1425 |
+
msgstr "cURL がなにか、そのインストール方法を知りません。助けてください。"
|
1426 |
+
|
1427 |
+
#: includes/i18n.php:893
|
1428 |
+
msgid ""
|
1429 |
+
"Great, please install cURL and enable it in your php.ini file. To make sure "
|
1430 |
+
"it was successfully activated, use 'phpinfo()'. Once activated, deactivate "
|
1431 |
+
"the plugin and reactivate it back again."
|
1432 |
+
msgstr "cURLをインストールし、php.iniファイルで有効にしてください。 正常に起動されたことを確認するには、 'phpinfo()' を使用してください。 プラグインを有効化したら、プラグインを無効化して再度有効化し直してください。"
|
1433 |
+
|
1434 |
+
#: includes/i18n.php:897
|
1435 |
+
msgid ""
|
1436 |
+
"We are sure it's an issue on our side and more than happy to resolve it for "
|
1437 |
+
"you ASAP if you give us a chance."
|
1438 |
+
msgstr "それは私たちの側の問題だと確信しています。もし機会をくれるなら私たちはそれを一刻でも早く修正します。"
|
1439 |
+
|
1440 |
+
#: includes/i18n.php:901
|
1441 |
+
msgid ""
|
1442 |
+
"Sorry for the inconvenience and we are here to help if you give us a chance."
|
1443 |
+
msgstr "ご迷惑をおかけしてすいません。もし機会をいただけたらお手伝いをします。"
|
1444 |
+
|
1445 |
+
#: includes/i18n.php:905
|
1446 |
+
msgid "Yes - I'm giving you a chance to fix it"
|
1447 |
+
msgstr "はい、修正をお願いします。"
|
1448 |
+
|
1449 |
+
#: includes/i18n.php:907
|
1450 |
+
msgid ""
|
1451 |
+
"We will do our best to whitelist your server and resolve this issue ASAP. "
|
1452 |
+
"You will get a follow-up email to %s once we have an update."
|
1453 |
+
msgstr "私たちは、少しでも早くサーバーをホワイトリストに登録して問題を修正します。アップデートを行ったら、%s あてに報告を送信します。"
|
1454 |
+
|
1455 |
+
#: includes/i18n.php:911
|
1456 |
+
msgid "Let's try your previous version"
|
1457 |
+
msgstr "以前のバージョンでお試しください。"
|
1458 |
+
|
1459 |
+
#: includes/i18n.php:913
|
1460 |
+
msgid "Uninstall this version and install the previous one."
|
1461 |
+
msgstr "このバージョンをアンインストールして、以前のバージョンをインストールする。"
|
1462 |
+
|
1463 |
+
#: includes/i18n.php:917
|
1464 |
+
msgid "That's exhausting, please deactivate"
|
1465 |
+
msgstr "それは、使用できません。無効化してください。"
|
1466 |
+
|
1467 |
+
#: includes/i18n.php:919
|
1468 |
+
msgid ""
|
1469 |
+
"We feel your frustration and sincerely apologize for the inconvenience. Hope"
|
1470 |
+
" to see you again in the future."
|
1471 |
+
msgstr "ご迷惑をおかけして心からお詫び申し上げます。将来ふたたびお会いできることを楽しみにしています。"
|
1472 |
+
|
1473 |
+
#: includes/i18n.php:923
|
1474 |
+
msgid ""
|
1475 |
+
"Thank for giving us the chance to fix it! A message was just sent to our "
|
1476 |
+
"technical staff. We will get back to you as soon as we have an update to %s."
|
1477 |
+
" Appreciate your patience."
|
1478 |
+
msgstr "修正するチャンスをいただきありがとうございます! テクニカルスタッフにメッセージが送信されました。 %s への更新が行われるとすぐにあなたに連絡します。 あなたの忍耐に感謝します。"
|
1479 |
+
|
1480 |
+
#: includes/i18n.php:927
|
1481 |
+
msgctxt "%1s - plugin title, %2s - API domain"
|
1482 |
+
msgid ""
|
1483 |
+
"Your server is blocking the access to Freemius' API, which is crucial for "
|
1484 |
+
"%1s synchronization. Please contact your host to whitelist %2s"
|
1485 |
+
msgstr "サーバーは %1s の同期に不可欠な Freemius の API へのアクセスをブロックしています。 ホワイトリストに %2s を追加していただけるようあなたのホスティング会社に連絡してください。"
|
1486 |
+
|
1487 |
+
#: includes/i18n.php:931
|
1488 |
+
msgid ""
|
1489 |
+
"It seems like one of the authentication parameters is wrong. Update your "
|
1490 |
+
"Public Key, Secret Key & User ID, and try again."
|
1491 |
+
msgstr "認証パラメータの1つが間違っているようです。 公開鍵、秘密鍵、ユーザーIDを更新して、もう一度お試しください。"
|
1492 |
+
|
1493 |
+
#: includes/i18n.php:939
|
1494 |
+
msgid ""
|
1495 |
+
"Please check your mailbox, you should receive an email via %s to confirm the"
|
1496 |
+
" ownership change. From security reasons, you must confirm the change within"
|
1497 |
+
" the next 15 min. If you cannot find the email, please check your spam "
|
1498 |
+
"folder."
|
1499 |
+
msgstr "メールボックスを確認してください。所有権の変更を確認するには、%s でメールを受け取る必要があります。 セキュリティ上の理由から、次の15分以内に変更を確認する必要があります。 電子メールが見つからない場合は、迷惑メールフォルダを確認してください。"
|
1500 |
+
|
1501 |
+
#: includes/i18n.php:943
|
1502 |
+
msgid ""
|
1503 |
+
"Thanks for confirming the ownership change. An email was just sent to %s for"
|
1504 |
+
" final approval."
|
1505 |
+
msgstr "所有権の変更を確認していただきありがとうございます。 %s に承認メールが送信されました。"
|
1506 |
+
|
1507 |
+
#: includes/i18n.php:947
|
1508 |
+
msgid "%s is the new owner of the account."
|
1509 |
+
msgstr "%s は新しいオーナーです。"
|
1510 |
+
|
1511 |
+
#: includes/i18n.php:951
|
1512 |
+
msgctxt "addonX cannot run without pluginY"
|
1513 |
+
msgid "%s cannot run without %s."
|
1514 |
+
msgstr "%s は、%s が無いと実行することができません。"
|
1515 |
+
|
1516 |
+
#: includes/i18n.php:955
|
1517 |
+
msgctxt "addonX cannot run..."
|
1518 |
+
msgid "%s cannot run without the plugin."
|
1519 |
+
msgstr "%s は、プラグインが無いと実行することができません。"
|
1520 |
+
|
1521 |
+
#: includes/i18n.php:959
|
1522 |
+
msgctxt "pluginX activation was successfully..."
|
1523 |
+
msgid "%s activation was successfully completed."
|
1524 |
+
msgstr "%s の有効化が成功しました。"
|
1525 |
+
|
1526 |
+
#: includes/i18n.php:963
|
1527 |
+
msgctxt "Plugin installer section title"
|
1528 |
+
msgid "Features & Pricing"
|
1529 |
+
msgstr "機能 & 料金"
|
1530 |
+
|
1531 |
+
#: includes/i18n.php:967
|
1532 |
+
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1533 |
+
msgstr "アドオンが WordPress.org か Freemius にデプロイされている必要があります。"
|
1534 |
+
|
1535 |
+
#: includes/i18n.php:971
|
1536 |
+
msgid "Paid add-on must be deployed to Freemius."
|
1537 |
+
msgstr "有料アドオンは Freemius にデプロイされている必要があります。"
|
1538 |
+
|
1539 |
+
#: includes/i18n.php:979
|
1540 |
+
msgid ""
|
1541 |
+
"%s is a premium only add-on. You have to purchase a license first before "
|
1542 |
+
"activating the plugin."
|
1543 |
+
msgstr "%s はプレミアムのみのアドオンです。そのプラグインを有効化する前にライセンスを購入する必要があります。"
|
1544 |
+
|
1545 |
+
#: includes/i18n.php:983
|
1546 |
+
msgid ""
|
1547 |
+
"%s free trial was successfully cancelled. Since the add-on is premium only "
|
1548 |
+
"it was automatically deactivated. If you like to use it in the future, "
|
1549 |
+
"you'll have to purchase a license."
|
1550 |
+
msgstr "%s の無料試用が正常にキャンセルされました。 アドオンはプレミアムなので、自動的に無効化されました。 将来使用したい場合は、ライセンスを購入する必要があります。"
|
1551 |
+
|
1552 |
+
#: includes/i18n.php:995
|
1553 |
+
msgctxt "as every month"
|
1554 |
+
msgid "Monthly"
|
1555 |
+
msgstr "月"
|
1556 |
+
|
1557 |
+
#: includes/i18n.php:997
|
1558 |
+
msgctxt "as monthly period"
|
1559 |
+
msgid "mo"
|
1560 |
+
msgstr "月"
|
1561 |
+
|
1562 |
+
#: includes/i18n.php:999
|
1563 |
+
msgctxt "as once a year"
|
1564 |
+
msgid "Annual"
|
1565 |
+
msgstr "年次"
|
1566 |
+
|
1567 |
+
#: includes/i18n.php:1001
|
1568 |
+
msgctxt "as once a year"
|
1569 |
+
msgid "Annually"
|
1570 |
+
msgstr "毎年"
|
1571 |
+
|
1572 |
+
#: includes/i18n.php:1003
|
1573 |
+
msgctxt "as once a year"
|
1574 |
+
msgid "Once"
|
1575 |
+
msgstr "一度"
|
1576 |
+
|
1577 |
+
#: includes/i18n.php:1005
|
1578 |
+
msgctxt "as annual period"
|
1579 |
+
msgid "year"
|
1580 |
+
msgstr "年"
|
1581 |
+
|
1582 |
+
#: includes/i18n.php:1007
|
1583 |
+
msgid "Lifetime"
|
1584 |
+
msgstr "ライフタイム"
|
1585 |
+
|
1586 |
+
#: includes/i18n.php:1009
|
1587 |
+
msgctxt "e.g. the best product"
|
1588 |
+
msgid "Best"
|
1589 |
+
msgstr "ベスト"
|
1590 |
+
|
1591 |
+
#: includes/i18n.php:1011
|
1592 |
+
msgctxt "e.g. billed monthly"
|
1593 |
+
msgid "Billed %s"
|
1594 |
+
msgstr "%s への請求"
|
1595 |
+
|
1596 |
+
#: includes/i18n.php:1013
|
1597 |
+
msgctxt "as a discount of $5 or 10%"
|
1598 |
+
msgid "Save %s"
|
1599 |
+
msgstr "%s を保存"
|
1600 |
+
|
1601 |
+
#: includes/i18n.php:1017
|
1602 |
+
msgid "View details"
|
1603 |
+
msgstr "詳細を表示"
|
1604 |
+
|
1605 |
+
#: includes/i18n.php:1025
|
1606 |
+
msgctxt "button label"
|
1607 |
+
msgid "Approve & Start Trial"
|
1608 |
+
msgstr "気に入ったのでトライアルを開始"
|
1609 |
+
|
1610 |
+
#: includes/i18n.php:1029
|
1611 |
+
msgid ""
|
1612 |
+
"You are 1-click away from starting your %1$s-day free trial of the %2$s "
|
1613 |
+
"plan."
|
1614 |
+
msgstr "%2$s プランの%1$s日間のフリートライアルを開始するまであとワンクリックです。"
|
1615 |
+
|
1616 |
+
#: includes/i18n.php:1033
|
1617 |
+
msgid ""
|
1618 |
+
"For compliance with the WordPress.org guidelines, before we start the trial "
|
1619 |
+
"we ask that you opt-in with your user and non-sensitive site information, "
|
1620 |
+
"allowing the plugin to periodically send data to %s to check for version "
|
1621 |
+
"updates and to validate your trial."
|
1622 |
+
msgstr "WordPress.org ガイドラインの遵守のため、ユーザーとセンシティブでないサイト情報をオプトインすること、バージョンの更新確認のために %s へとプラグインが一時的にデータを送信することの許可、トライアルを有効にすることの3つについて、トライアルの開始前にお尋ねします。"
|
1623 |
+
|
1624 |
+
#: includes/i18n.php:1045
|
1625 |
+
msgid "Business name"
|
1626 |
+
msgstr "商号"
|
1627 |
+
|
1628 |
+
#: includes/i18n.php:1047
|
1629 |
+
msgid "Tax / VAT ID"
|
1630 |
+
msgstr "税金 / VAT ID"
|
1631 |
+
|
1632 |
+
#: includes/i18n.php:1049
|
1633 |
+
msgid "Address Line %d"
|
1634 |
+
msgstr "住所欄 %d"
|
1635 |
+
|
1636 |
+
#: includes/i18n.php:1051
|
1637 |
+
msgid "Country"
|
1638 |
+
msgstr "国"
|
1639 |
+
|
1640 |
+
#: includes/i18n.php:1053
|
1641 |
+
msgid "Select Country"
|
1642 |
+
msgstr "国を選択"
|
1643 |
+
|
1644 |
+
#: includes/i18n.php:1055
|
1645 |
+
msgid "City"
|
1646 |
+
msgstr "市"
|
1647 |
+
|
1648 |
+
#: includes/i18n.php:1057
|
1649 |
+
msgid "Town"
|
1650 |
+
msgstr "町"
|
1651 |
+
|
1652 |
+
#: includes/i18n.php:1059
|
1653 |
+
msgid "State"
|
1654 |
+
msgstr "州"
|
1655 |
+
|
1656 |
+
#: includes/i18n.php:1061
|
1657 |
+
msgid "Province"
|
1658 |
+
msgstr "県・州・省"
|
1659 |
+
|
1660 |
+
#: includes/i18n.php:1063
|
1661 |
+
msgid "ZIP / Postal Code"
|
1662 |
+
msgstr "ZIP / 郵便番号"
|
freemius/languages/freemius.pot
CHANGED
@@ -1,1525 +1,1724 @@
|
|
1 |
-
# Copyright (C)
|
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 |
"MIME-Version: 1.0\n"
|
8 |
"Content-Type: text/plain; charset=UTF-8\n"
|
9 |
"Content-Transfer-Encoding: 8bit\n"
|
10 |
-
"PO-Revision-Date: 2016-MO-DA HO:MI+ZONE\n"
|
11 |
-
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
12 |
"Language-Team: Freemius Team <admin@freemius.com>\n"
|
|
|
|
|
13 |
"X-Poedit-Basepath: ..\n"
|
14 |
-
"X-Poedit-
|
15 |
-
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
|
|
18 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
19 |
-
#: includes/i18n.php:41, includes/i18n.php:55
|
20 |
-
msgid "Yes - I'm in!"
|
21 |
-
msgstr ""
|
22 |
|
23 |
-
#: includes/i18n.php:
|
24 |
-
msgid "Not today"
|
25 |
-
msgstr ""
|
26 |
-
|
27 |
-
#: includes/i18n.php:69
|
28 |
msgid "Account"
|
29 |
msgstr ""
|
30 |
|
31 |
-
#: includes/i18n.php:
|
32 |
msgid "Add On"
|
33 |
msgstr ""
|
34 |
|
35 |
-
#: includes/i18n.php:
|
36 |
msgid "Contact Us"
|
37 |
msgstr ""
|
38 |
|
39 |
-
#: includes/i18n.php:
|
40 |
msgid "Contact Support"
|
41 |
msgstr ""
|
42 |
|
43 |
-
#: includes/i18n.php:
|
44 |
msgid "Change Ownership"
|
45 |
msgstr ""
|
46 |
|
47 |
-
#: includes/i18n.php:
|
48 |
msgid "Support"
|
49 |
msgstr ""
|
50 |
|
51 |
-
#: includes/i18n.php:
|
52 |
msgid "Support Forum"
|
53 |
msgstr ""
|
54 |
|
55 |
-
#: includes/i18n.php:
|
56 |
msgid "Add Ons"
|
57 |
msgstr ""
|
58 |
|
59 |
-
#: includes/i18n.php:
|
60 |
msgctxt "verb"
|
61 |
msgid "Upgrade"
|
62 |
msgstr ""
|
63 |
|
64 |
-
#: includes/i18n.php:
|
65 |
msgid "Awesome"
|
66 |
msgstr ""
|
67 |
|
68 |
-
#: includes/i18n.php:
|
69 |
msgctxt "noun"
|
70 |
msgid "Pricing"
|
71 |
msgstr ""
|
72 |
|
73 |
-
#: includes/i18n.php:
|
74 |
msgctxt "noun"
|
75 |
msgid "Price"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: includes/i18n.php:
|
79 |
msgid "Unlimited Updates"
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: includes/i18n.php:
|
83 |
msgctxt "verb"
|
84 |
msgid "Downgrade"
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: includes/i18n.php:
|
88 |
msgid "Cancel Trial"
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: includes/i18n.php:
|
92 |
msgid "Free Trial"
|
93 |
msgstr ""
|
94 |
|
95 |
-
#: includes/i18n.php:
|
96 |
msgid "Start my free %s"
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: includes/i18n.php:
|
100 |
msgid "No commitment for %s - cancel anytime"
|
101 |
msgstr ""
|
102 |
|
103 |
-
#: includes/i18n.php:
|
104 |
msgid "After your free %s, pay as little as %s"
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: includes/i18n.php:
|
108 |
msgid "Details"
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: includes/i18n.php:
|
112 |
msgid "Account Details"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: includes/i18n.php:
|
116 |
msgctxt "verb"
|
117 |
msgid "Delete"
|
118 |
msgstr ""
|
119 |
|
120 |
-
#: includes/i18n.php:
|
121 |
msgctxt "verb"
|
122 |
msgid "Show"
|
123 |
msgstr ""
|
124 |
|
125 |
-
#: includes/i18n.php:
|
126 |
msgctxt "verb"
|
127 |
msgid "Hide"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: includes/i18n.php:
|
131 |
msgctxt "verb"
|
132 |
msgid "Edit"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: includes/i18n.php:
|
136 |
msgctxt "verb"
|
137 |
msgid "Update"
|
138 |
msgstr ""
|
139 |
|
140 |
-
#: includes/i18n.php:
|
141 |
msgid "Date"
|
142 |
msgstr ""
|
143 |
|
144 |
-
#: includes/i18n.php:
|
145 |
msgid "Amount"
|
146 |
msgstr ""
|
147 |
|
148 |
-
#: includes/i18n.php:
|
149 |
msgid "Invoice"
|
150 |
msgstr ""
|
151 |
|
152 |
-
#: includes/i18n.php:
|
153 |
msgid "Billing"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: includes/i18n.php:
|
157 |
msgid "Payments"
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: includes/i18n.php:
|
161 |
msgid "Delete Account"
|
162 |
msgstr ""
|
163 |
|
164 |
-
#: includes/i18n.php:
|
165 |
msgctxt "as close a window"
|
166 |
msgid "Dismiss"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: includes/i18n.php:
|
170 |
msgctxt "as product pricing plan"
|
171 |
msgid "Plan"
|
172 |
msgstr ""
|
173 |
|
174 |
-
#: includes/i18n.php:
|
175 |
msgid "Change Plan"
|
176 |
msgstr ""
|
177 |
|
178 |
-
#: includes/i18n.php:
|
179 |
msgctxt "as download professional version"
|
180 |
msgid "Download %s Version"
|
181 |
msgstr ""
|
182 |
|
183 |
-
#: includes/i18n.php:
|
184 |
msgctxt "as download professional version now"
|
185 |
msgid "Download %s version now"
|
186 |
msgstr ""
|
187 |
|
188 |
-
#: includes/i18n.php:
|
189 |
msgctxt "as download latest version"
|
190 |
msgid "Download Latest"
|
191 |
msgstr ""
|
192 |
|
193 |
-
#: includes/i18n.php:
|
194 |
msgctxt "E.g. you have a professional license."
|
195 |
msgid "You have a %s license."
|
196 |
msgstr ""
|
197 |
|
198 |
-
#: includes/i18n.php:
|
199 |
msgid "New"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: includes/i18n.php:
|
203 |
msgid "Free"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: includes/i18n.php:
|
207 |
msgctxt "as trial plan"
|
208 |
msgid "Trial"
|
209 |
msgstr ""
|
210 |
|
211 |
-
#: includes/i18n.php:
|
212 |
msgctxt "as starting a trial plan"
|
213 |
msgid "Start Trial"
|
214 |
msgstr ""
|
215 |
|
216 |
-
#: includes/i18n.php:
|
217 |
msgctxt "verb"
|
218 |
msgid "Purchase"
|
219 |
msgstr ""
|
220 |
|
221 |
-
#: includes/i18n.php:
|
222 |
msgid "Purchase License"
|
223 |
msgstr ""
|
224 |
|
225 |
-
#: includes/i18n.php:
|
226 |
msgctxt "verb"
|
227 |
msgid "Buy"
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: includes/i18n.php:
|
231 |
msgid "Buy License"
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: includes/i18n.php:
|
235 |
msgid "Single Site License"
|
236 |
msgstr ""
|
237 |
|
238 |
-
#: includes/i18n.php:
|
239 |
msgid "Unlimited Licenses"
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: includes/i18n.php:
|
243 |
msgid "Up to %s Sites"
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: includes/i18n.php:
|
247 |
msgid "%sRenew your license now%s to access version %s features and support."
|
248 |
msgstr ""
|
249 |
|
250 |
-
#: includes/i18n.php:
|
251 |
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: includes/i18n.php:
|
255 |
msgctxt "e.g. Professional Plan"
|
256 |
msgid "%s Plan"
|
257 |
msgstr ""
|
258 |
|
259 |
-
#: includes/i18n.php:
|
260 |
msgid "You are just one step away - %s"
|
261 |
msgstr ""
|
262 |
|
263 |
-
#: includes/i18n.php:
|
264 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
265 |
msgid "Complete \"%s\" Activation Now"
|
266 |
msgstr ""
|
267 |
|
268 |
-
#: includes/i18n.php:
|
269 |
msgid "We made a few tweaks to the plugin, %s"
|
270 |
msgstr ""
|
271 |
|
272 |
-
#: includes/i18n.php:
|
273 |
msgid "Opt-in to make \"%s\" Better!"
|
274 |
msgstr ""
|
275 |
|
276 |
-
#: includes/i18n.php:
|
277 |
msgid "Error"
|
278 |
msgstr ""
|
279 |
|
280 |
-
#: includes/i18n.php:
|
281 |
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
282 |
msgstr ""
|
283 |
|
284 |
-
#: includes/i18n.php:
|
285 |
msgctxt "as expiration date"
|
286 |
msgid "Expiration"
|
287 |
msgstr ""
|
288 |
|
289 |
-
#: includes/i18n.php:
|
290 |
msgctxt "as software license"
|
291 |
msgid "License"
|
292 |
msgstr ""
|
293 |
|
294 |
-
#: includes/i18n.php:
|
295 |
msgid "not verified"
|
296 |
msgstr ""
|
297 |
|
298 |
-
#: includes/i18n.php:
|
299 |
msgid "Verify Email"
|
300 |
msgstr ""
|
301 |
|
302 |
-
#: includes/i18n.php:
|
303 |
msgctxt "e.g. expires in 2 months"
|
304 |
msgid "Expires in %s"
|
305 |
msgstr ""
|
306 |
|
307 |
-
#: includes/i18n.php:
|
308 |
msgctxt "e.g. auto renews in 2 months"
|
309 |
msgid "Auto renews in %s"
|
310 |
msgstr ""
|
311 |
|
312 |
-
#: includes/i18n.php:
|
313 |
msgid "No expiration"
|
314 |
msgstr ""
|
315 |
|
316 |
-
#: includes/i18n.php:
|
317 |
msgid "Expired"
|
318 |
msgstr ""
|
319 |
|
320 |
-
#: includes/i18n.php:
|
321 |
msgid "Cancelled"
|
322 |
msgstr ""
|
323 |
|
324 |
-
#: includes/i18n.php:
|
325 |
msgctxt "e.g. In 2 hours"
|
326 |
msgid "In %s"
|
327 |
msgstr ""
|
328 |
|
329 |
-
#: includes/i18n.php:
|
330 |
msgctxt "e.g. 2 min ago"
|
331 |
msgid "%s ago"
|
332 |
msgstr ""
|
333 |
|
334 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
335 |
msgctxt "as plugin version"
|
336 |
msgid "Version"
|
337 |
msgstr ""
|
338 |
|
339 |
-
#: includes/i18n.php:
|
340 |
msgid "Name"
|
341 |
msgstr ""
|
342 |
|
343 |
-
#: includes/i18n.php:
|
344 |
msgid "Email"
|
345 |
msgstr ""
|
346 |
|
347 |
-
#: includes/i18n.php:
|
348 |
msgid "Email address"
|
349 |
msgstr ""
|
350 |
|
351 |
-
#: includes/i18n.php:
|
352 |
msgid "Verified"
|
353 |
msgstr ""
|
354 |
|
355 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
356 |
msgid "Plugin"
|
357 |
msgstr ""
|
358 |
|
359 |
-
#: includes/i18n.php:
|
360 |
msgid "Plugins"
|
361 |
msgstr ""
|
362 |
|
363 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
364 |
msgid "Themes"
|
365 |
msgstr ""
|
366 |
|
367 |
-
#: includes/i18n.php:
|
368 |
msgctxt "as file/folder path"
|
369 |
msgid "Path"
|
370 |
msgstr ""
|
371 |
|
372 |
-
#: includes/i18n.php:
|
373 |
msgid "Title"
|
374 |
msgstr ""
|
375 |
|
376 |
-
#: includes/i18n.php:
|
377 |
msgid "Free version"
|
378 |
msgstr ""
|
379 |
|
380 |
-
#: includes/i18n.php:
|
381 |
msgid "Premium version"
|
382 |
msgstr ""
|
383 |
|
384 |
-
#: includes/i18n.php:
|
385 |
msgctxt "as WP plugin slug"
|
386 |
msgid "Slug"
|
387 |
msgstr ""
|
388 |
|
389 |
-
#: includes/i18n.php:
|
390 |
msgid "ID"
|
391 |
msgstr ""
|
392 |
|
393 |
-
#: includes/i18n.php:
|
394 |
msgid "Users"
|
395 |
msgstr ""
|
396 |
|
397 |
-
#: includes/i18n.php:
|
398 |
msgid "Plugin Installs"
|
399 |
msgstr ""
|
400 |
|
401 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
402 |
msgctxt "like websites"
|
403 |
msgid "Sites"
|
404 |
msgstr ""
|
405 |
|
406 |
-
#: includes/i18n.php:
|
407 |
msgid "User ID"
|
408 |
msgstr ""
|
409 |
|
410 |
-
#: includes/i18n.php:
|
411 |
msgid "Site ID"
|
412 |
msgstr ""
|
413 |
|
414 |
-
#: includes/i18n.php:
|
415 |
msgid "Public Key"
|
416 |
msgstr ""
|
417 |
|
418 |
-
#: includes/i18n.php:
|
419 |
msgid "Secret Key"
|
420 |
msgstr ""
|
421 |
|
422 |
-
#: includes/i18n.php:
|
423 |
msgctxt "as secret encryption key missing"
|
424 |
msgid "No Secret"
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: includes/i18n.php:
|
428 |
msgid "No ID"
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: includes/i18n.php:
|
432 |
msgctxt "as synchronize license"
|
433 |
msgid "Sync License"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: includes/i18n.php:
|
437 |
msgctxt "as synchronize"
|
438 |
msgid "Sync"
|
439 |
msgstr ""
|
440 |
|
441 |
-
#: includes/i18n.php:
|
442 |
msgid "Activate License"
|
443 |
msgstr ""
|
444 |
|
445 |
-
#: includes/i18n.php:
|
446 |
msgid "Activate Free Version"
|
447 |
msgstr ""
|
448 |
|
449 |
-
#: includes/i18n.php:
|
450 |
msgid "Please enter the license key that you received in the email right after the purchase:"
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: includes/i18n.php:
|
454 |
msgid "Activating license..."
|
455 |
msgstr ""
|
456 |
|
457 |
-
#: includes/i18n.php:
|
458 |
msgid "Change License"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: includes/i18n.php:
|
462 |
msgid "Update License"
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: includes/i18n.php:
|
466 |
msgid "Deactivate License"
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: includes/i18n.php:
|
470 |
msgid "Activate"
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: includes/i18n.php:
|
474 |
msgid "Deactivate"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: includes/i18n.php:
|
478 |
msgid "Skip & Deactivate"
|
479 |
msgstr ""
|
480 |
|
481 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
482 |
msgid "No - just deactivate"
|
483 |
msgstr ""
|
484 |
|
485 |
-
#: includes/i18n.php:
|
486 |
msgid "Yes - do your thing"
|
487 |
msgstr ""
|
488 |
|
489 |
-
#: includes/i18n.php:
|
490 |
msgctxt "active mode"
|
491 |
msgid "Active"
|
492 |
msgstr ""
|
493 |
|
494 |
-
#: includes/i18n.php:
|
495 |
msgctxt "is active mode?"
|
496 |
msgid "Is Active"
|
497 |
msgstr ""
|
498 |
|
499 |
-
#: includes/i18n.php:
|
500 |
msgid "Install Now"
|
501 |
msgstr ""
|
502 |
|
503 |
-
#: includes/i18n.php:
|
504 |
msgid "Install Update Now"
|
505 |
msgstr ""
|
506 |
|
507 |
-
#: includes/i18n.php:
|
508 |
msgid "More information about %s"
|
509 |
msgstr ""
|
510 |
|
511 |
-
#: includes/i18n.php:
|
512 |
msgid "Localhost"
|
513 |
msgstr ""
|
514 |
|
515 |
-
#: includes/i18n.php:
|
516 |
msgctxt "as activate Professional plan"
|
517 |
msgid "Activate %s Plan"
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: includes/i18n.php:
|
521 |
msgctxt "as 5 licenses left"
|
522 |
msgid "%s left"
|
523 |
msgstr ""
|
524 |
|
525 |
-
#: includes/i18n.php:
|
526 |
msgid "Last license"
|
527 |
msgstr ""
|
528 |
|
529 |
-
#: includes/i18n.php:
|
530 |
msgid "What is your %s?"
|
531 |
msgstr ""
|
532 |
|
533 |
-
#: includes/i18n.php:
|
534 |
msgid "Activate this add-on"
|
535 |
msgstr ""
|
536 |
|
537 |
-
#: includes/i18n.php:
|
538 |
msgid "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
539 |
msgstr ""
|
540 |
|
541 |
-
#: includes/i18n.php:
|
542 |
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?"
|
543 |
msgstr ""
|
544 |
|
545 |
-
#: includes/i18n.php:
|
546 |
msgid "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: includes/i18n.php:
|
550 |
msgid "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
551 |
msgstr ""
|
552 |
|
553 |
-
#: includes/i18n.php:
|
554 |
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
555 |
msgstr ""
|
556 |
|
557 |
-
#: includes/i18n.php:
|
558 |
msgid "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
559 |
msgstr ""
|
560 |
|
561 |
-
#: includes/i18n.php:
|
562 |
-
msgid "Once your license
|
563 |
msgstr ""
|
564 |
|
565 |
-
#: includes/i18n.php:
|
566 |
msgid "Are you sure you want to proceed?"
|
567 |
msgstr ""
|
568 |
|
569 |
-
#: includes/i18n.php:
|
570 |
msgid "Add Ons for %s"
|
571 |
msgstr ""
|
572 |
|
573 |
-
#: includes/i18n.php:
|
574 |
msgid "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
575 |
msgstr ""
|
576 |
|
577 |
-
#: includes/i18n.php:
|
578 |
msgid "Anonymous feedback"
|
579 |
msgstr ""
|
580 |
|
581 |
-
#: includes/i18n.php:
|
582 |
msgid "Quick feedback"
|
583 |
msgstr ""
|
584 |
|
585 |
-
#: includes/i18n.php:
|
586 |
msgid "If you have a moment, please let us know why you are deactivating"
|
587 |
msgstr ""
|
588 |
|
589 |
-
#: includes/i18n.php:
|
590 |
msgid "Yes - Deactivate"
|
591 |
msgstr ""
|
592 |
|
593 |
-
#: includes/i18n.php:
|
594 |
msgid "Submit & Deactivate"
|
595 |
msgstr ""
|
596 |
|
597 |
-
#: includes/i18n.php:
|
598 |
msgid "Cancel"
|
599 |
msgstr ""
|
600 |
|
601 |
-
#: includes/i18n.php:
|
602 |
msgid "I no longer need the plugin"
|
603 |
msgstr ""
|
604 |
|
605 |
-
#: includes/i18n.php:
|
606 |
msgid "I found a better plugin"
|
607 |
msgstr ""
|
608 |
|
609 |
-
#: includes/i18n.php:
|
610 |
msgid "I only needed the plugin for a short period"
|
611 |
msgstr ""
|
612 |
|
613 |
-
#: includes/i18n.php:
|
614 |
msgid "The plugin broke my site"
|
615 |
msgstr ""
|
616 |
|
617 |
-
#: includes/i18n.php:
|
618 |
msgid "The plugin suddenly stopped working"
|
619 |
msgstr ""
|
620 |
|
621 |
-
#: includes/i18n.php:
|
622 |
msgid "I can't pay for it anymore"
|
623 |
msgstr ""
|
624 |
|
625 |
-
#: includes/i18n.php:
|
626 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
627 |
msgstr ""
|
628 |
|
629 |
-
#: includes/i18n.php:
|
630 |
msgctxt "the text of the \"other\" reason for deactivating the plugin that is shown in the modal box."
|
631 |
msgid "Other"
|
632 |
msgstr ""
|
633 |
|
634 |
-
#: includes/i18n.php:
|
635 |
msgid "Kindly tell us the reason so we can improve."
|
636 |
msgstr ""
|
637 |
|
638 |
-
#: includes/i18n.php:
|
639 |
msgid "What's the plugin's name?"
|
640 |
msgstr ""
|
641 |
|
642 |
-
#: includes/i18n.php:
|
643 |
msgid "What price would you feel comfortable paying?"
|
644 |
msgstr ""
|
645 |
|
646 |
-
#: includes/i18n.php:
|
647 |
msgid "I couldn't understand how to make it work"
|
648 |
msgstr ""
|
649 |
|
650 |
-
#: includes/i18n.php:
|
651 |
msgid "The plugin is great, but I need specific feature that you don't support"
|
652 |
msgstr ""
|
653 |
|
654 |
-
#: includes/i18n.php:
|
655 |
msgid "The plugin is not working"
|
656 |
msgstr ""
|
657 |
|
658 |
-
#: includes/i18n.php:
|
659 |
msgid "It's not what I was looking for"
|
660 |
msgstr ""
|
661 |
|
662 |
-
#: includes/i18n.php:
|
663 |
msgid "The plugin didn't work as expected"
|
664 |
msgstr ""
|
665 |
|
666 |
-
#: includes/i18n.php:
|
667 |
msgid "What feature?"
|
668 |
msgstr ""
|
669 |
|
670 |
-
#: includes/i18n.php:
|
671 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
672 |
msgstr ""
|
673 |
|
674 |
-
#: includes/i18n.php:
|
675 |
msgid "What you've been looking for?"
|
676 |
msgstr ""
|
677 |
|
678 |
-
#: includes/i18n.php:
|
679 |
msgid "What did you expect?"
|
680 |
msgstr ""
|
681 |
|
682 |
-
#: includes/i18n.php:
|
683 |
msgid "The plugin didn't work"
|
684 |
msgstr ""
|
685 |
|
686 |
-
#: includes/i18n.php:
|
687 |
msgid "I don't like to share my information with you"
|
688 |
msgstr ""
|
689 |
|
690 |
-
#: includes/i18n.php:
|
691 |
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
692 |
msgstr ""
|
693 |
|
694 |
-
#: includes/i18n.php:
|
695 |
msgctxt "greeting"
|
696 |
msgid "Hey %s,"
|
697 |
msgstr ""
|
698 |
|
699 |
-
#: includes/i18n.php:
|
700 |
msgctxt "a greeting. E.g. Thanks John!"
|
701 |
msgid "Thanks %s!"
|
702 |
msgstr ""
|
703 |
|
704 |
-
#: includes/i18n.php:
|
705 |
msgid "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
706 |
msgstr ""
|
707 |
|
708 |
-
#: includes/i18n.php:
|
709 |
msgid "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
710 |
msgstr ""
|
711 |
|
712 |
-
#: includes/i18n.php:
|
713 |
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."
|
714 |
msgstr ""
|
715 |
|
716 |
-
#: includes/i18n.php:
|
717 |
msgid "complete the install"
|
718 |
msgstr ""
|
719 |
|
720 |
-
#: includes/i18n.php:
|
721 |
msgid "start the trial"
|
722 |
msgstr ""
|
723 |
|
724 |
-
#: includes/i18n.php:
|
725 |
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
726 |
msgstr ""
|
727 |
|
728 |
-
#: includes/i18n.php:
|
729 |
msgid "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
730 |
msgstr ""
|
731 |
|
732 |
-
#: includes/i18n.php:
|
733 |
msgid "What permissions are being granted?"
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: includes/i18n.php:
|
737 |
msgid "Your Profile Overview"
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: includes/i18n.php:
|
741 |
msgid "Name and email address"
|
742 |
msgstr ""
|
743 |
|
744 |
-
#: includes/i18n.php:
|
745 |
msgid "Your Site Overview"
|
746 |
msgstr ""
|
747 |
|
748 |
-
#: includes/i18n.php:
|
749 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
750 |
msgstr ""
|
751 |
|
752 |
-
#: includes/i18n.php:
|
753 |
msgid "Current Plugin Events"
|
754 |
msgstr ""
|
755 |
|
756 |
-
#: includes/i18n.php:
|
757 |
msgid "Activation, deactivation and uninstall"
|
758 |
msgstr ""
|
759 |
|
760 |
-
#: includes/i18n.php:
|
761 |
msgid "Plugins & Themes"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: includes/i18n.php:
|
765 |
msgid "Titles, versions and state."
|
766 |
msgstr ""
|
767 |
|
768 |
-
#: includes/i18n.php:
|
769 |
msgid "Admin Notices"
|
770 |
msgstr ""
|
771 |
|
772 |
-
#: includes/i18n.php:
|
773 |
msgid "Newsletter"
|
774 |
msgstr ""
|
775 |
|
776 |
-
#: includes/i18n.php:
|
777 |
msgid "Updates, announcements, marketing, no spam"
|
778 |
msgstr ""
|
779 |
|
780 |
-
#: includes/i18n.php:
|
781 |
msgid "Privacy Policy"
|
782 |
msgstr ""
|
783 |
|
784 |
-
#: includes/i18n.php:
|
785 |
msgid "Terms of Service"
|
786 |
msgstr ""
|
787 |
|
788 |
-
#: includes/i18n.php:
|
789 |
msgctxt "as activating plugin"
|
790 |
msgid "Activating"
|
791 |
msgstr ""
|
792 |
|
793 |
-
#: includes/i18n.php:
|
794 |
msgctxt "as in the process of sending an email"
|
795 |
msgid "Sending email"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: includes/i18n.php:
|
799 |
msgctxt "button label"
|
800 |
msgid "Allow & Continue"
|
801 |
msgstr ""
|
802 |
|
803 |
-
#: includes/i18n.php:
|
804 |
msgctxt "button label"
|
805 |
msgid "Agree & Activate License"
|
806 |
msgstr ""
|
807 |
|
808 |
-
#: includes/i18n.php:
|
809 |
msgctxt "verb"
|
810 |
msgid "Skip"
|
811 |
msgstr ""
|
812 |
|
813 |
-
#: includes/i18n.php:
|
814 |
msgid "Click here to use the plugin anonymously"
|
815 |
msgstr ""
|
816 |
|
817 |
-
#: includes/i18n.php:
|
818 |
msgid "Re-send activation email"
|
819 |
msgstr ""
|
820 |
|
821 |
-
#: includes/i18n.php:
|
822 |
msgid "License key"
|
823 |
msgstr ""
|
824 |
|
825 |
-
#: includes/i18n.php:
|
826 |
msgid "Send License Key"
|
827 |
msgstr ""
|
828 |
|
829 |
-
#: includes/i18n.php:
|
830 |
msgid "Sending license key"
|
831 |
msgstr ""
|
832 |
|
833 |
-
#: includes/i18n.php:
|
834 |
msgid "Have a license key?"
|
835 |
msgstr ""
|
836 |
|
837 |
-
#: includes/i18n.php:
|
838 |
msgid "Don't have a license key?"
|
839 |
msgstr ""
|
840 |
|
841 |
-
#: includes/i18n.php:
|
842 |
msgid "Can't find your license key?"
|
843 |
msgstr ""
|
844 |
|
845 |
-
#: includes/i18n.php:
|
846 |
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
847 |
msgstr ""
|
848 |
|
849 |
-
#: includes/i18n.php:
|
850 |
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
851 |
msgstr ""
|
852 |
|
853 |
-
#: includes/i18n.php:
|
854 |
msgid "Opt In"
|
855 |
msgstr ""
|
856 |
|
857 |
-
#: includes/i18n.php:
|
858 |
msgid "Opt Out"
|
859 |
msgstr ""
|
860 |
|
861 |
-
#: includes/i18n.php:
|
862 |
msgid "On second thought - I want to continue helping"
|
863 |
msgstr ""
|
864 |
|
865 |
-
#: includes/i18n.php:
|
866 |
msgid "Opting out..."
|
867 |
msgstr ""
|
868 |
|
869 |
-
#: includes/i18n.php:
|
870 |
msgid "Opting in..."
|
871 |
msgstr ""
|
872 |
|
873 |
-
#: includes/i18n.php:
|
874 |
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
875 |
msgstr ""
|
876 |
|
877 |
-
#: includes/i18n.php:
|
878 |
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."
|
879 |
msgstr ""
|
880 |
|
881 |
-
#: includes/i18n.php:
|
882 |
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
883 |
msgstr ""
|
884 |
|
885 |
-
#: includes/i18n.php:
|
886 |
msgid "Screenshots"
|
887 |
msgstr ""
|
888 |
|
889 |
-
#: includes/i18n.php:
|
890 |
msgid "Click to view full-size screenshot %d"
|
891 |
msgstr ""
|
892 |
|
893 |
-
#: includes/i18n.php:
|
894 |
msgid "Freemius Debug"
|
895 |
msgstr ""
|
896 |
|
897 |
-
#: includes/i18n.php:
|
898 |
msgctxt "as turned on"
|
899 |
msgid "On"
|
900 |
msgstr ""
|
901 |
|
902 |
-
#: includes/i18n.php:
|
903 |
msgctxt "as turned off"
|
904 |
msgid "Off"
|
905 |
msgstr ""
|
906 |
|
907 |
-
#: includes/i18n.php:
|
908 |
msgctxt "as code debugging"
|
909 |
msgid "Debugging"
|
910 |
msgstr ""
|
911 |
|
912 |
-
#: includes/i18n.php:
|
913 |
msgid "Freemius State"
|
914 |
msgstr ""
|
915 |
|
916 |
-
#: includes/i18n.php:
|
917 |
msgctxt "as connection was successful"
|
918 |
msgid "Connected"
|
919 |
msgstr ""
|
920 |
|
921 |
-
#: includes/i18n.php:
|
922 |
msgctxt "as connection blocked"
|
923 |
msgid "Blocked"
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: includes/i18n.php:
|
927 |
msgctxt "as application program interface"
|
928 |
msgid "API"
|
929 |
msgstr ""
|
930 |
|
931 |
-
#: includes/i18n.php:
|
932 |
msgctxt "as software development kit versions"
|
933 |
msgid "SDK"
|
934 |
msgstr ""
|
935 |
|
936 |
-
#: includes/i18n.php:
|
937 |
msgctxt "as software development kit versions"
|
938 |
msgid "SDK Versions"
|
939 |
msgstr ""
|
940 |
|
941 |
-
#: includes/i18n.php:
|
942 |
msgctxt "as plugin folder path"
|
943 |
msgid "Plugin Path"
|
944 |
msgstr ""
|
945 |
|
946 |
-
#: includes/i18n.php:
|
947 |
msgctxt "as sdk path"
|
948 |
msgid "SDK Path"
|
949 |
msgstr ""
|
950 |
|
951 |
-
#: includes/i18n.php:
|
952 |
msgid "Add Ons of Plugin %s"
|
953 |
msgstr ""
|
954 |
|
955 |
-
#: includes/i18n.php:
|
956 |
msgid "Are you sure you want to delete all Freemius data?"
|
957 |
msgstr ""
|
958 |
|
959 |
-
#: includes/i18n.php:
|
960 |
msgid "Actions"
|
961 |
msgstr ""
|
962 |
|
963 |
-
#: includes/i18n.php:
|
964 |
msgid "Delete All Accounts"
|
965 |
msgstr ""
|
966 |
|
967 |
-
#: includes/i18n.php:
|
968 |
msgid "Start Fresh"
|
969 |
msgstr ""
|
970 |
|
971 |
-
#: includes/i18n.php:
|
972 |
msgid "Clear API Cache"
|
973 |
msgstr ""
|
974 |
|
975 |
-
#: includes/i18n.php:
|
976 |
msgid "Sync Data From Server"
|
977 |
msgstr ""
|
978 |
|
979 |
-
#: includes/i18n.php:
|
980 |
msgid "Scheduled Crons"
|
981 |
msgstr ""
|
982 |
|
983 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
984 |
msgid "Plugins & Themes Sync"
|
985 |
msgstr ""
|
986 |
|
987 |
-
#: includes/i18n.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
988 |
msgctxt "as congratulations"
|
989 |
msgid "Congrats"
|
990 |
msgstr ""
|
991 |
|
992 |
-
#: includes/i18n.php:
|
993 |
msgctxt "exclamation"
|
994 |
msgid "Oops"
|
995 |
msgstr ""
|
996 |
|
997 |
-
#: includes/i18n.php:
|
998 |
msgctxt "interjection expressing joy or exuberance"
|
999 |
msgid "Yee-haw"
|
1000 |
msgstr ""
|
1001 |
|
1002 |
-
#: includes/i18n.php:
|
1003 |
msgctxt "(especially in electronic communication) used to express elation, enthusiasm, or triumph."
|
1004 |
msgid "W00t"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
-
#: includes/i18n.php:
|
1008 |
msgctxt "a positive response"
|
1009 |
msgid "Right on"
|
1010 |
msgstr ""
|
1011 |
|
1012 |
-
#: includes/i18n.php:
|
1013 |
msgctxt "something somebody says when they are thinking about what you have just said. "
|
1014 |
msgid "Hmm"
|
1015 |
msgstr ""
|
1016 |
|
1017 |
-
#: includes/i18n.php:
|
1018 |
msgid "O.K"
|
1019 |
msgstr ""
|
1020 |
|
1021 |
-
#: includes/i18n.php:
|
1022 |
msgctxt "exclamation"
|
1023 |
msgid "Hey"
|
1024 |
msgstr ""
|
1025 |
|
1026 |
-
#: includes/i18n.php:
|
1027 |
msgctxt "advance notice of something that will need attention."
|
1028 |
msgid "Heads up"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: includes/i18n.php:
|
1032 |
msgid "Seems like you got the latest release."
|
1033 |
msgstr ""
|
1034 |
|
1035 |
-
#: includes/i18n.php:
|
1036 |
msgid "You are all good!"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
-
#: includes/i18n.php:
|
1040 |
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1041 |
msgstr ""
|
1042 |
|
1043 |
-
#: includes/i18n.php:
|
1044 |
msgid "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1045 |
msgstr ""
|
1046 |
|
1047 |
-
#: includes/i18n.php:
|
1048 |
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1049 |
msgstr ""
|
1050 |
|
1051 |
-
#: includes/i18n.php:
|
1052 |
msgid "Your name was successfully updated."
|
1053 |
msgstr ""
|
1054 |
|
1055 |
-
#: includes/i18n.php:
|
1056 |
msgid "You have successfully updated your %s."
|
1057 |
msgstr ""
|
1058 |
|
1059 |
-
#: includes/i18n.php:
|
1060 |
msgid "Please provide your full name."
|
1061 |
msgstr ""
|
1062 |
|
1063 |
-
#: includes/i18n.php:
|
1064 |
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1065 |
msgstr ""
|
1066 |
|
1067 |
-
#: includes/i18n.php:
|
1068 |
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1069 |
msgstr ""
|
1070 |
|
1071 |
-
#: includes/i18n.php:
|
1072 |
msgid "No credit card required"
|
1073 |
msgstr ""
|
1074 |
|
1075 |
-
#: includes/i18n.php:
|
1076 |
msgid "Premium plugin version was successfully activated."
|
1077 |
msgstr ""
|
1078 |
|
1079 |
-
#: includes/i18n.php:
|
1080 |
msgid "The upgrade of %s was successfully completed."
|
1081 |
msgstr ""
|
1082 |
|
1083 |
-
#: includes/i18n.php:
|
1084 |
msgid "Your account was successfully activated with the %s plan."
|
1085 |
msgstr ""
|
1086 |
|
1087 |
-
#: includes/i18n.php:
|
1088 |
msgid "Download the latest %s version now"
|
1089 |
msgstr ""
|
1090 |
|
1091 |
-
#: includes/i18n.php:
|
1092 |
msgid "Please follow these steps to complete the upgrade"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
-
#: includes/i18n.php:
|
1096 |
msgid "Download the latest %s version"
|
1097 |
msgstr ""
|
1098 |
|
1099 |
-
#: includes/i18n.php:
|
1100 |
msgid "Download the latest version"
|
1101 |
msgstr ""
|
1102 |
|
1103 |
-
#: includes/i18n.php:
|
1104 |
msgid "Deactivate the free version"
|
1105 |
msgstr ""
|
1106 |
|
1107 |
-
#: includes/i18n.php:
|
1108 |
msgid "Upload and activate the downloaded version"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
-
#: includes/i18n.php:
|
1112 |
msgid "How to upload and activate?"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
-
#: includes/i18n.php:
|
1116 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1117 |
msgid "%s Add-on was successfully purchased."
|
1118 |
msgstr ""
|
1119 |
|
1120 |
-
#: includes/i18n.php:
|
1121 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1122 |
msgstr ""
|
1123 |
|
1124 |
-
#: includes/i18n.php:
|
1125 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1126 |
msgstr ""
|
1127 |
|
1128 |
-
#: includes/i18n.php:
|
1129 |
msgid "Your plan was successfully upgraded."
|
1130 |
msgstr ""
|
1131 |
|
1132 |
-
#: includes/i18n.php:
|
1133 |
msgid "Your plan was successfully changed to %s."
|
1134 |
msgstr ""
|
1135 |
|
1136 |
-
#: includes/i18n.php:
|
1137 |
msgid "Your license has expired. You can still continue using the free plugin forever."
|
1138 |
msgstr ""
|
1139 |
|
1140 |
-
#: includes/i18n.php:
|
1141 |
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1142 |
msgstr ""
|
1143 |
|
1144 |
-
#: includes/i18n.php:
|
1145 |
msgid "Your trial has been successfully started."
|
1146 |
msgstr ""
|
1147 |
|
1148 |
-
#: includes/i18n.php:
|
1149 |
msgid "Your license was successfully activated."
|
1150 |
msgstr ""
|
1151 |
|
1152 |
-
#: includes/i18n.php:
|
1153 |
msgid "It looks like your site currently doesn't have an active license."
|
1154 |
msgstr ""
|
1155 |
|
1156 |
-
#: includes/i18n.php:
|
1157 |
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
1158 |
msgstr ""
|
1159 |
|
1160 |
-
#: includes/i18n.php:
|
1161 |
msgid "It looks like the license deactivation failed."
|
1162 |
msgstr ""
|
1163 |
|
1164 |
-
#: includes/i18n.php:
|
1165 |
msgid "It looks like the license could not be activated."
|
1166 |
msgstr ""
|
1167 |
|
1168 |
-
#: includes/i18n.php:
|
1169 |
msgid "Error received from the server:"
|
1170 |
msgstr ""
|
1171 |
|
1172 |
-
#: includes/i18n.php:
|
1173 |
msgid "Your trial has expired. You can still continue using all our free features."
|
1174 |
msgstr ""
|
1175 |
|
1176 |
-
#: includes/i18n.php:
|
1177 |
msgid "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1178 |
msgstr ""
|
1179 |
|
1180 |
-
#: includes/i18n.php:
|
1181 |
msgid "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1182 |
msgstr ""
|
1183 |
|
1184 |
-
#: includes/i18n.php:
|
1185 |
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1186 |
msgstr ""
|
1187 |
|
1188 |
-
#: includes/i18n.php:
|
1189 |
msgid "Your %s free trial was successfully cancelled."
|
1190 |
msgstr ""
|
1191 |
|
1192 |
-
#: includes/i18n.php:
|
1193 |
msgctxt "%s - numeric version number"
|
1194 |
msgid "Version %s was released."
|
1195 |
msgstr ""
|
1196 |
|
1197 |
-
#: includes/i18n.php:
|
1198 |
msgid "Please download %s."
|
1199 |
msgstr ""
|
1200 |
|
1201 |
-
#: includes/i18n.php:
|
1202 |
msgctxt "%s - plan name, as the latest professional version here"
|
1203 |
msgid "the latest %s version here"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
-
#: includes/i18n.php:
|
1207 |
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1208 |
msgstr ""
|
1209 |
|
1210 |
-
#: includes/i18n.php:
|
1211 |
msgctxt "call to action"
|
1212 |
msgid "Start free trial"
|
1213 |
msgstr ""
|
1214 |
|
1215 |
-
#: includes/i18n.php:
|
1216 |
msgid "Starting trial"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
-
#: includes/i18n.php:
|
1220 |
msgid "Please wait"
|
1221 |
msgstr ""
|
1222 |
|
1223 |
-
#: includes/i18n.php:
|
1224 |
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1225 |
msgstr ""
|
1226 |
|
1227 |
-
#: includes/i18n.php:
|
1228 |
msgid "You already utilized a trial before."
|
1229 |
msgstr ""
|
1230 |
|
1231 |
-
#: includes/i18n.php:
|
1232 |
msgid "You are already running the plugin in a trial mode."
|
1233 |
msgstr ""
|
1234 |
|
1235 |
-
#: includes/i18n.php:
|
1236 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1237 |
msgstr ""
|
1238 |
|
1239 |
-
#: includes/i18n.php:
|
1240 |
msgid "Plan %s does not support a trial period."
|
1241 |
msgstr ""
|
1242 |
|
1243 |
-
#: includes/i18n.php:
|
1244 |
msgid "None of the plugin's plans supports a trial period."
|
1245 |
msgstr ""
|
1246 |
|
1247 |
-
#: includes/i18n.php:
|
1248 |
msgid "Unexpected API error. Please contact the plugin's author with the following error."
|
1249 |
msgstr ""
|
1250 |
|
1251 |
-
#: includes/i18n.php:
|
1252 |
msgid "No commitment for %s days - cancel anytime!"
|
1253 |
msgstr ""
|
1254 |
|
1255 |
-
#: includes/i18n.php:
|
1256 |
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."
|
1257 |
msgstr ""
|
1258 |
|
1259 |
-
#: includes/i18n.php:
|
1260 |
msgid "Couldn't activate %s."
|
1261 |
msgstr ""
|
1262 |
|
1263 |
-
#: includes/i18n.php:
|
1264 |
msgid "Please contact us with the following message:"
|
1265 |
msgstr ""
|
1266 |
|
1267 |
-
#: includes/i18n.php:
|
1268 |
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."
|
1269 |
msgstr ""
|
1270 |
|
1271 |
-
#: includes/i18n.php:
|
1272 |
msgid "Please contact us here"
|
1273 |
msgstr ""
|
1274 |
|
1275 |
-
#: includes/i18n.php:
|
1276 |
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1277 |
msgstr ""
|
1278 |
|
1279 |
-
#: includes/i18n.php:
|
1280 |
msgid "From unknown reason, the API connectivity test failed."
|
1281 |
msgstr ""
|
1282 |
|
1283 |
-
#: includes/i18n.php:
|
1284 |
msgid "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1285 |
msgstr ""
|
1286 |
|
1287 |
-
#: includes/i18n.php:
|
1288 |
msgid "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1289 |
msgstr ""
|
1290 |
|
1291 |
-
#: includes/i18n.php:
|
1292 |
msgid "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1293 |
msgstr ""
|
1294 |
|
1295 |
-
#: includes/i18n.php:
|
1296 |
msgctxt "as pluginX requires an access to our API"
|
1297 |
msgid "%s requires an access to our API."
|
1298 |
msgstr ""
|
1299 |
|
1300 |
-
#: includes/i18n.php:
|
1301 |
msgid "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1302 |
msgstr ""
|
1303 |
|
1304 |
-
#: includes/i18n.php:
|
1305 |
msgid "I don't know what is Squid or ACL, help me!"
|
1306 |
msgstr ""
|
1307 |
|
1308 |
-
#: includes/i18n.php:
|
1309 |
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."
|
1310 |
msgstr ""
|
1311 |
|
1312 |
-
#: includes/i18n.php:
|
1313 |
msgid "I'm a system administrator"
|
1314 |
msgstr ""
|
1315 |
|
1316 |
-
#: includes/i18n.php:
|
1317 |
-
msgid "Great, please whitelist the following domains: %s. Once you done, deactivate the plugin and activate it again."
|
1318 |
msgstr ""
|
1319 |
|
1320 |
-
#: includes/i18n.php:
|
1321 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1322 |
msgstr ""
|
1323 |
|
1324 |
-
#: includes/i18n.php:
|
1325 |
msgid "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1326 |
msgstr ""
|
1327 |
|
1328 |
-
#: includes/i18n.php:
|
1329 |
msgid "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1330 |
msgstr ""
|
1331 |
|
1332 |
-
#: includes/i18n.php:
|
1333 |
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1334 |
msgstr ""
|
1335 |
|
1336 |
-
#: includes/i18n.php:
|
1337 |
msgid "Yes - I'm giving you a chance to fix it"
|
1338 |
msgstr ""
|
1339 |
|
1340 |
-
#: includes/i18n.php:
|
1341 |
msgid "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1342 |
msgstr ""
|
1343 |
|
1344 |
-
#: includes/i18n.php:
|
1345 |
msgid "Let's try your previous version"
|
1346 |
msgstr ""
|
1347 |
|
1348 |
-
#: includes/i18n.php:
|
1349 |
msgid "Uninstall this version and install the previous one."
|
1350 |
msgstr ""
|
1351 |
|
1352 |
-
#: includes/i18n.php:
|
1353 |
msgid "That's exhausting, please deactivate"
|
1354 |
msgstr ""
|
1355 |
|
1356 |
-
#: includes/i18n.php:
|
1357 |
msgid "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1358 |
msgstr ""
|
1359 |
|
1360 |
-
#: includes/i18n.php:
|
1361 |
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."
|
1362 |
msgstr ""
|
1363 |
|
1364 |
-
#: includes/i18n.php:
|
1365 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1366 |
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
-
#: includes/i18n.php:
|
1370 |
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1371 |
msgstr ""
|
1372 |
|
1373 |
-
#: includes/i18n.php:
|
1374 |
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."
|
1375 |
msgstr ""
|
1376 |
|
1377 |
-
#: includes/i18n.php:
|
1378 |
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1379 |
msgstr ""
|
1380 |
|
1381 |
-
#: includes/i18n.php:
|
1382 |
msgid "%s is the new owner of the account."
|
1383 |
msgstr ""
|
1384 |
|
1385 |
-
#: includes/i18n.php:
|
1386 |
msgctxt "addonX cannot run without pluginY"
|
1387 |
msgid "%s cannot run without %s."
|
1388 |
msgstr ""
|
1389 |
|
1390 |
-
#: includes/i18n.php:
|
1391 |
msgctxt "addonX cannot run..."
|
1392 |
msgid "%s cannot run without the plugin."
|
1393 |
msgstr ""
|
1394 |
|
1395 |
-
#: includes/i18n.php:
|
1396 |
msgctxt "pluginX activation was successfully..."
|
1397 |
msgid "%s activation was successfully completed."
|
1398 |
msgstr ""
|
1399 |
|
1400 |
-
#: includes/i18n.php:
|
1401 |
msgctxt "Plugin installer section title"
|
1402 |
msgid "Features & Pricing"
|
1403 |
msgstr ""
|
1404 |
|
1405 |
-
#: includes/i18n.php:
|
1406 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1407 |
msgstr ""
|
1408 |
|
1409 |
-
#: includes/i18n.php:
|
1410 |
msgid "Paid add-on must be deployed to Freemius."
|
1411 |
msgstr ""
|
1412 |
|
1413 |
-
#: includes/i18n.php:
|
1414 |
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1415 |
msgstr ""
|
1416 |
|
1417 |
-
#: includes/i18n.php:
|
1418 |
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."
|
1419 |
msgstr ""
|
1420 |
|
1421 |
-
#: includes/i18n.php:
|
1422 |
msgctxt "as every month"
|
1423 |
msgid "Monthly"
|
1424 |
msgstr ""
|
1425 |
|
1426 |
-
#: includes/i18n.php:
|
1427 |
msgctxt "as monthly period"
|
1428 |
msgid "mo"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
-
#: includes/i18n.php:
|
1432 |
msgctxt "as once a year"
|
1433 |
msgid "Annual"
|
1434 |
msgstr ""
|
1435 |
|
1436 |
-
#: includes/i18n.php:
|
1437 |
msgctxt "as once a year"
|
1438 |
msgid "Annually"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
-
#: includes/i18n.php:
|
1442 |
msgctxt "as once a year"
|
1443 |
msgid "Once"
|
1444 |
msgstr ""
|
1445 |
|
1446 |
-
#: includes/i18n.php:
|
1447 |
msgctxt "as annual period"
|
1448 |
msgid "year"
|
1449 |
msgstr ""
|
1450 |
|
1451 |
-
#: includes/i18n.php:
|
1452 |
msgid "Lifetime"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
-
#: includes/i18n.php:
|
1456 |
msgctxt "e.g. the best product"
|
1457 |
msgid "Best"
|
1458 |
msgstr ""
|
1459 |
|
1460 |
-
#: includes/i18n.php:
|
1461 |
msgctxt "e.g. billed monthly"
|
1462 |
msgid "Billed %s"
|
1463 |
msgstr ""
|
1464 |
|
1465 |
-
#: includes/i18n.php:
|
1466 |
msgctxt "as a discount of $5 or 10%"
|
1467 |
msgid "Save %s"
|
1468 |
msgstr ""
|
1469 |
|
1470 |
-
#: includes/i18n.php:
|
1471 |
msgid "View details"
|
1472 |
msgstr ""
|
1473 |
|
1474 |
-
#: includes/i18n.php:
|
1475 |
msgctxt "button label"
|
1476 |
msgid "Approve & Start Trial"
|
1477 |
msgstr ""
|
1478 |
|
1479 |
-
#: includes/i18n.php:
|
1480 |
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1481 |
msgstr ""
|
1482 |
|
1483 |
-
#: includes/i18n.php:
|
1484 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1485 |
msgstr ""
|
1486 |
|
1487 |
-
#: includes/i18n.php:
|
1488 |
msgid "Business name"
|
1489 |
msgstr ""
|
1490 |
|
1491 |
-
#: includes/i18n.php:
|
1492 |
msgid "Tax / VAT ID"
|
1493 |
msgstr ""
|
1494 |
|
1495 |
-
#: includes/i18n.php:
|
1496 |
msgid "Address Line %d"
|
1497 |
msgstr ""
|
1498 |
|
1499 |
-
#: includes/i18n.php:
|
1500 |
msgid "Country"
|
1501 |
msgstr ""
|
1502 |
|
1503 |
-
#: includes/i18n.php:
|
1504 |
msgid "Select Country"
|
1505 |
msgstr ""
|
1506 |
|
1507 |
-
#: includes/i18n.php:
|
1508 |
msgid "City"
|
1509 |
msgstr ""
|
1510 |
|
1511 |
-
#: includes/i18n.php:
|
1512 |
msgid "Town"
|
1513 |
msgstr ""
|
1514 |
|
1515 |
-
#: includes/i18n.php:
|
1516 |
msgid "State"
|
1517 |
msgstr ""
|
1518 |
|
1519 |
-
#: includes/i18n.php:
|
1520 |
msgid "Province"
|
1521 |
msgstr ""
|
1522 |
|
1523 |
-
#: includes/i18n.php:
|
1524 |
msgid "ZIP / Postal Code"
|
1525 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Copyright (C) 2017 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 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
|
|
|
|
9 |
"Language-Team: Freemius Team <admin@freemius.com>\n"
|
10 |
+
"Last-Translator: Vova Feldman <vova@freemius.com>\n"
|
11 |
+
"Report-Msgid-Bugs-To: https://github.com/Freemius/wordpress-sdk/issues\n"
|
12 |
"X-Poedit-Basepath: ..\n"
|
13 |
+
"X-Poedit-KeywordsList: _fs_text;_fs_echo;_fs_esc_attr;_fs_esc_attr_echo;_fs_esc_html;_fs_esc_html_echo;_fs_x:1,2c;_fs_ex:1,2c;_fs_esc_attr_x:1,2c;_fs_esc_html_x:1,2c;_fs_n:1,2;_fs_n_noop:1,2;_fs_nx:1,2,4c;_fs_nx_noop:1,2,3c\n"
|
|
|
14 |
"X-Poedit-SearchPath-0: .\n"
|
15 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
|
|
|
|
|
|
18 |
|
19 |
+
#: includes/i18n.php:37
|
|
|
|
|
|
|
|
|
20 |
msgid "Account"
|
21 |
msgstr ""
|
22 |
|
23 |
+
#: includes/i18n.php:38
|
24 |
msgid "Add On"
|
25 |
msgstr ""
|
26 |
|
27 |
+
#: includes/i18n.php:39
|
28 |
msgid "Contact Us"
|
29 |
msgstr ""
|
30 |
|
31 |
+
#: includes/i18n.php:40
|
32 |
msgid "Contact Support"
|
33 |
msgstr ""
|
34 |
|
35 |
+
#: includes/i18n.php:41
|
36 |
msgid "Change Ownership"
|
37 |
msgstr ""
|
38 |
|
39 |
+
#: includes/i18n.php:42
|
40 |
msgid "Support"
|
41 |
msgstr ""
|
42 |
|
43 |
+
#: includes/i18n.php:43
|
44 |
msgid "Support Forum"
|
45 |
msgstr ""
|
46 |
|
47 |
+
#: includes/i18n.php:44
|
48 |
msgid "Add Ons"
|
49 |
msgstr ""
|
50 |
|
51 |
+
#: includes/i18n.php:45
|
52 |
msgctxt "verb"
|
53 |
msgid "Upgrade"
|
54 |
msgstr ""
|
55 |
|
56 |
+
#: includes/i18n.php:46
|
57 |
msgid "Awesome"
|
58 |
msgstr ""
|
59 |
|
60 |
+
#: includes/i18n.php:47
|
61 |
msgctxt "noun"
|
62 |
msgid "Pricing"
|
63 |
msgstr ""
|
64 |
|
65 |
+
#: includes/i18n.php:48
|
66 |
msgctxt "noun"
|
67 |
msgid "Price"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: includes/i18n.php:49
|
71 |
msgid "Unlimited Updates"
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: includes/i18n.php:50
|
75 |
msgctxt "verb"
|
76 |
msgid "Downgrade"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: includes/i18n.php:51
|
80 |
msgid "Cancel Trial"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: includes/i18n.php:52
|
84 |
msgid "Free Trial"
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: includes/i18n.php:53
|
88 |
msgid "Start my free %s"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: includes/i18n.php:54
|
92 |
msgid "No commitment for %s - cancel anytime"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: includes/i18n.php:55
|
96 |
msgid "After your free %s, pay as little as %s"
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: includes/i18n.php:56
|
100 |
msgid "Details"
|
101 |
msgstr ""
|
102 |
|
103 |
+
#: includes/i18n.php:57
|
104 |
msgid "Account Details"
|
105 |
msgstr ""
|
106 |
|
107 |
+
#: includes/i18n.php:58
|
108 |
msgctxt "verb"
|
109 |
msgid "Delete"
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: includes/i18n.php:59
|
113 |
msgctxt "verb"
|
114 |
msgid "Show"
|
115 |
msgstr ""
|
116 |
|
117 |
+
#: includes/i18n.php:60
|
118 |
msgctxt "verb"
|
119 |
msgid "Hide"
|
120 |
msgstr ""
|
121 |
|
122 |
+
#: includes/i18n.php:61
|
123 |
msgctxt "verb"
|
124 |
msgid "Edit"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: includes/i18n.php:62
|
128 |
msgctxt "verb"
|
129 |
msgid "Update"
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: includes/i18n.php:63
|
133 |
msgid "Date"
|
134 |
msgstr ""
|
135 |
|
136 |
+
#: includes/i18n.php:64
|
137 |
msgid "Amount"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: includes/i18n.php:65
|
141 |
msgid "Invoice"
|
142 |
msgstr ""
|
143 |
|
144 |
+
#: includes/i18n.php:66
|
145 |
msgid "Billing"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: includes/i18n.php:67
|
149 |
msgid "Payments"
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: includes/i18n.php:68
|
153 |
msgid "Delete Account"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: includes/i18n.php:69
|
157 |
msgctxt "as close a window"
|
158 |
msgid "Dismiss"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: includes/i18n.php:70
|
162 |
msgctxt "as product pricing plan"
|
163 |
msgid "Plan"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: includes/i18n.php:71
|
167 |
msgid "Change Plan"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: includes/i18n.php:72
|
171 |
msgctxt "as download professional version"
|
172 |
msgid "Download %s Version"
|
173 |
msgstr ""
|
174 |
|
175 |
+
#: includes/i18n.php:73
|
176 |
msgctxt "as download professional version now"
|
177 |
msgid "Download %s version now"
|
178 |
msgstr ""
|
179 |
|
180 |
+
#: includes/i18n.php:74
|
181 |
msgctxt "as download latest version"
|
182 |
msgid "Download Latest"
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: includes/i18n.php:75
|
186 |
msgctxt "E.g. you have a professional license."
|
187 |
msgid "You have a %s license."
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: includes/i18n.php:76
|
191 |
msgid "New"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: includes/i18n.php:77
|
195 |
msgid "Free"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: includes/i18n.php:78
|
199 |
msgctxt "as trial plan"
|
200 |
msgid "Trial"
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: includes/i18n.php:79
|
204 |
msgctxt "as starting a trial plan"
|
205 |
msgid "Start Trial"
|
206 |
msgstr ""
|
207 |
|
208 |
+
#: includes/i18n.php:80
|
209 |
msgctxt "verb"
|
210 |
msgid "Purchase"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: includes/i18n.php:81
|
214 |
msgid "Purchase License"
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: includes/i18n.php:82
|
218 |
msgctxt "verb"
|
219 |
msgid "Buy"
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: includes/i18n.php:83
|
223 |
msgid "Buy License"
|
224 |
msgstr ""
|
225 |
|
226 |
+
#: includes/i18n.php:84
|
227 |
msgid "Single Site License"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: includes/i18n.php:85
|
231 |
msgid "Unlimited Licenses"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: includes/i18n.php:86
|
235 |
msgid "Up to %s Sites"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: includes/i18n.php:87
|
239 |
msgid "%sRenew your license now%s to access version %s features and support."
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: includes/i18n.php:88
|
243 |
msgid "Enter the email address you've used for the upgrade below and we will resend you the license key."
|
244 |
msgstr ""
|
245 |
|
246 |
+
#: includes/i18n.php:89
|
247 |
msgctxt "e.g. Professional Plan"
|
248 |
msgid "%s Plan"
|
249 |
msgstr ""
|
250 |
|
251 |
+
#: includes/i18n.php:90
|
252 |
msgid "You are just one step away - %s"
|
253 |
msgstr ""
|
254 |
|
255 |
+
#: includes/i18n.php:91
|
256 |
msgctxt "%s - plugin name. As complete \"Jetpack\" activation now"
|
257 |
msgid "Complete \"%s\" Activation Now"
|
258 |
msgstr ""
|
259 |
|
260 |
+
#: includes/i18n.php:93
|
261 |
msgid "We made a few tweaks to the plugin, %s"
|
262 |
msgstr ""
|
263 |
|
264 |
+
#: includes/i18n.php:94
|
265 |
msgid "Opt-in to make \"%s\" Better!"
|
266 |
msgstr ""
|
267 |
|
268 |
+
#: includes/i18n.php:95
|
269 |
msgid "Error"
|
270 |
msgstr ""
|
271 |
|
272 |
+
#: includes/i18n.php:96
|
273 |
msgid "Freemius SDK couldn't find the plugin's main file. Please contact sdk@freemius.com with the current error."
|
274 |
msgstr ""
|
275 |
|
276 |
+
#: includes/i18n.php:99
|
277 |
msgctxt "as expiration date"
|
278 |
msgid "Expiration"
|
279 |
msgstr ""
|
280 |
|
281 |
+
#: includes/i18n.php:100
|
282 |
msgctxt "as software license"
|
283 |
msgid "License"
|
284 |
msgstr ""
|
285 |
|
286 |
+
#: includes/i18n.php:101
|
287 |
msgid "not verified"
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: includes/i18n.php:102
|
291 |
msgid "Verify Email"
|
292 |
msgstr ""
|
293 |
|
294 |
+
#: includes/i18n.php:103
|
295 |
msgctxt "e.g. expires in 2 months"
|
296 |
msgid "Expires in %s"
|
297 |
msgstr ""
|
298 |
|
299 |
+
#: includes/i18n.php:104
|
300 |
msgctxt "e.g. auto renews in 2 months"
|
301 |
msgid "Auto renews in %s"
|
302 |
msgstr ""
|
303 |
|
304 |
+
#: includes/i18n.php:105
|
305 |
msgid "No expiration"
|
306 |
msgstr ""
|
307 |
|
308 |
+
#: includes/i18n.php:106
|
309 |
msgid "Expired"
|
310 |
msgstr ""
|
311 |
|
312 |
+
#: includes/i18n.php:107
|
313 |
msgid "Cancelled"
|
314 |
msgstr ""
|
315 |
|
316 |
+
#: includes/i18n.php:108
|
317 |
msgctxt "e.g. In 2 hours"
|
318 |
msgid "In %s"
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: includes/i18n.php:109
|
322 |
msgctxt "e.g. 2 min ago"
|
323 |
msgid "%s ago"
|
324 |
msgstr ""
|
325 |
|
326 |
+
#: includes/i18n.php:111
|
327 |
+
msgid "%s or higher"
|
328 |
+
msgstr ""
|
329 |
+
|
330 |
+
#: includes/i18n.php:112
|
331 |
msgctxt "as plugin version"
|
332 |
msgid "Version"
|
333 |
msgstr ""
|
334 |
|
335 |
+
#: includes/i18n.php:113
|
336 |
msgid "Name"
|
337 |
msgstr ""
|
338 |
|
339 |
+
#: includes/i18n.php:114
|
340 |
msgid "Email"
|
341 |
msgstr ""
|
342 |
|
343 |
+
#: includes/i18n.php:115
|
344 |
msgid "Email address"
|
345 |
msgstr ""
|
346 |
|
347 |
+
#: includes/i18n.php:116
|
348 |
msgid "Verified"
|
349 |
msgstr ""
|
350 |
|
351 |
+
#: includes/i18n.php:117
|
352 |
+
msgid "Module"
|
353 |
+
msgstr ""
|
354 |
+
|
355 |
+
#: includes/i18n.php:118
|
356 |
+
msgid "Module Type"
|
357 |
+
msgstr ""
|
358 |
+
|
359 |
+
#: includes/i18n.php:119
|
360 |
msgid "Plugin"
|
361 |
msgstr ""
|
362 |
|
363 |
+
#: includes/i18n.php:120
|
364 |
msgid "Plugins"
|
365 |
msgstr ""
|
366 |
|
367 |
+
#: includes/i18n.php:121
|
368 |
+
msgid "Theme"
|
369 |
+
msgstr ""
|
370 |
+
|
371 |
+
#: includes/i18n.php:122
|
372 |
msgid "Themes"
|
373 |
msgstr ""
|
374 |
|
375 |
+
#: includes/i18n.php:123
|
376 |
msgctxt "as file/folder path"
|
377 |
msgid "Path"
|
378 |
msgstr ""
|
379 |
|
380 |
+
#: includes/i18n.php:124
|
381 |
msgid "Title"
|
382 |
msgstr ""
|
383 |
|
384 |
+
#: includes/i18n.php:125
|
385 |
msgid "Free version"
|
386 |
msgstr ""
|
387 |
|
388 |
+
#: includes/i18n.php:126
|
389 |
msgid "Premium version"
|
390 |
msgstr ""
|
391 |
|
392 |
+
#: includes/i18n.php:127
|
393 |
msgctxt "as WP plugin slug"
|
394 |
msgid "Slug"
|
395 |
msgstr ""
|
396 |
|
397 |
+
#: includes/i18n.php:128
|
398 |
msgid "ID"
|
399 |
msgstr ""
|
400 |
|
401 |
+
#: includes/i18n.php:129
|
402 |
msgid "Users"
|
403 |
msgstr ""
|
404 |
|
405 |
+
#: includes/i18n.php:130
|
406 |
msgid "Plugin Installs"
|
407 |
msgstr ""
|
408 |
|
409 |
+
#: includes/i18n.php:131
|
410 |
+
msgid "%s Installs"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: includes/i18n.php:132
|
414 |
msgctxt "like websites"
|
415 |
msgid "Sites"
|
416 |
msgstr ""
|
417 |
|
418 |
+
#: includes/i18n.php:133
|
419 |
msgid "User ID"
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: includes/i18n.php:134
|
423 |
msgid "Site ID"
|
424 |
msgstr ""
|
425 |
|
426 |
+
#: includes/i18n.php:135
|
427 |
msgid "Public Key"
|
428 |
msgstr ""
|
429 |
|
430 |
+
#: includes/i18n.php:136
|
431 |
msgid "Secret Key"
|
432 |
msgstr ""
|
433 |
|
434 |
+
#: includes/i18n.php:137
|
435 |
msgctxt "as secret encryption key missing"
|
436 |
msgid "No Secret"
|
437 |
msgstr ""
|
438 |
|
439 |
+
#: includes/i18n.php:138
|
440 |
msgid "No ID"
|
441 |
msgstr ""
|
442 |
|
443 |
+
#: includes/i18n.php:139
|
444 |
msgctxt "as synchronize license"
|
445 |
msgid "Sync License"
|
446 |
msgstr ""
|
447 |
|
448 |
+
#: includes/i18n.php:140
|
449 |
msgctxt "as synchronize"
|
450 |
msgid "Sync"
|
451 |
msgstr ""
|
452 |
|
453 |
+
#: includes/i18n.php:141
|
454 |
msgid "Activate License"
|
455 |
msgstr ""
|
456 |
|
457 |
+
#: includes/i18n.php:142
|
458 |
msgid "Activate Free Version"
|
459 |
msgstr ""
|
460 |
|
461 |
+
#: includes/i18n.php:143
|
462 |
msgid "Please enter the license key that you received in the email right after the purchase:"
|
463 |
msgstr ""
|
464 |
|
465 |
+
#: includes/i18n.php:144
|
466 |
msgid "Activating license..."
|
467 |
msgstr ""
|
468 |
|
469 |
+
#: includes/i18n.php:145
|
470 |
msgid "Change License"
|
471 |
msgstr ""
|
472 |
|
473 |
+
#: includes/i18n.php:146
|
474 |
msgid "Update License"
|
475 |
msgstr ""
|
476 |
|
477 |
+
#: includes/i18n.php:147
|
478 |
msgid "Deactivate License"
|
479 |
msgstr ""
|
480 |
|
481 |
+
#: includes/i18n.php:148
|
482 |
msgid "Activate"
|
483 |
msgstr ""
|
484 |
|
485 |
+
#: includes/i18n.php:149
|
486 |
msgid "Deactivate"
|
487 |
msgstr ""
|
488 |
|
489 |
+
#: includes/i18n.php:150
|
490 |
msgid "Skip & Deactivate"
|
491 |
msgstr ""
|
492 |
|
493 |
+
#: includes/i18n.php:151
|
494 |
+
msgid "Skip & %s"
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: includes/i18n.php:152
|
498 |
msgid "No - just deactivate"
|
499 |
msgstr ""
|
500 |
|
501 |
+
#: includes/i18n.php:153
|
502 |
msgid "Yes - do your thing"
|
503 |
msgstr ""
|
504 |
|
505 |
+
#: includes/i18n.php:154
|
506 |
msgctxt "active mode"
|
507 |
msgid "Active"
|
508 |
msgstr ""
|
509 |
|
510 |
+
#: includes/i18n.php:155
|
511 |
msgctxt "is active mode?"
|
512 |
msgid "Is Active"
|
513 |
msgstr ""
|
514 |
|
515 |
+
#: includes/i18n.php:156
|
516 |
msgid "Install Now"
|
517 |
msgstr ""
|
518 |
|
519 |
+
#: includes/i18n.php:157
|
520 |
msgid "Install Update Now"
|
521 |
msgstr ""
|
522 |
|
523 |
+
#: includes/i18n.php:158
|
524 |
msgid "More information about %s"
|
525 |
msgstr ""
|
526 |
|
527 |
+
#: includes/i18n.php:159
|
528 |
msgid "Localhost"
|
529 |
msgstr ""
|
530 |
|
531 |
+
#: includes/i18n.php:160
|
532 |
msgctxt "as activate Professional plan"
|
533 |
msgid "Activate %s Plan"
|
534 |
msgstr ""
|
535 |
|
536 |
+
#: includes/i18n.php:161
|
537 |
msgctxt "as 5 licenses left"
|
538 |
msgid "%s left"
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: includes/i18n.php:162
|
542 |
msgid "Last license"
|
543 |
msgstr ""
|
544 |
|
545 |
+
#: includes/i18n.php:163
|
546 |
msgid "What is your %s?"
|
547 |
msgstr ""
|
548 |
|
549 |
+
#: includes/i18n.php:164
|
550 |
msgid "Activate this add-on"
|
551 |
msgstr ""
|
552 |
|
553 |
+
#: includes/i18n.php:165
|
554 |
msgid "Deactivating your license will block all premium features, but will enable you to activate the license on another site. Are you sure you want to proceed?"
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: includes/i18n.php:166
|
558 |
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?"
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: includes/i18n.php:167
|
562 |
msgid "Deletion is not temporary. Only delete if you no longer want to use this plugin anymore. Are you sure you would like to continue with the deletion?"
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: includes/i18n.php:168
|
566 |
msgid "Downgrading your plan will immediately stop all future recurring payments and your %s plan license will expire in %s."
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: includes/i18n.php:169
|
570 |
msgid "Cancelling the trial will immediately block access to all premium features. Are you sure?"
|
571 |
msgstr ""
|
572 |
|
573 |
+
#: includes/i18n.php:170
|
574 |
msgid "You can still enjoy all %s features but you will not have access to plugin updates and support."
|
575 |
msgstr ""
|
576 |
|
577 |
+
#: includes/i18n.php:171
|
578 |
+
msgid "Once your license expires you can still use the Free version but you will NOT have access to the %s features."
|
579 |
msgstr ""
|
580 |
|
581 |
+
#: includes/i18n.php:172
|
582 |
msgid "Are you sure you want to proceed?"
|
583 |
msgstr ""
|
584 |
|
585 |
+
#: includes/i18n.php:175
|
586 |
msgid "Add Ons for %s"
|
587 |
msgstr ""
|
588 |
|
589 |
+
#: includes/i18n.php:176
|
590 |
msgid "We could'nt load the add-ons list. It's probably an issue on our side, please try to come back in few minutes."
|
591 |
msgstr ""
|
592 |
|
593 |
+
#: includes/i18n.php:178
|
594 |
msgid "Anonymous feedback"
|
595 |
msgstr ""
|
596 |
|
597 |
+
#: includes/i18n.php:179
|
598 |
msgid "Quick feedback"
|
599 |
msgstr ""
|
600 |
|
601 |
+
#: includes/i18n.php:180
|
602 |
msgid "If you have a moment, please let us know why you are deactivating"
|
603 |
msgstr ""
|
604 |
|
605 |
+
#: includes/i18n.php:181
|
606 |
msgid "Yes - Deactivate"
|
607 |
msgstr ""
|
608 |
|
609 |
+
#: includes/i18n.php:182
|
610 |
msgid "Submit & Deactivate"
|
611 |
msgstr ""
|
612 |
|
613 |
+
#: includes/i18n.php:183
|
614 |
msgid "Cancel"
|
615 |
msgstr ""
|
616 |
|
617 |
+
#: includes/i18n.php:184
|
618 |
msgid "I no longer need the plugin"
|
619 |
msgstr ""
|
620 |
|
621 |
+
#: includes/i18n.php:185
|
622 |
msgid "I found a better plugin"
|
623 |
msgstr ""
|
624 |
|
625 |
+
#: includes/i18n.php:186
|
626 |
msgid "I only needed the plugin for a short period"
|
627 |
msgstr ""
|
628 |
|
629 |
+
#: includes/i18n.php:187
|
630 |
msgid "The plugin broke my site"
|
631 |
msgstr ""
|
632 |
|
633 |
+
#: includes/i18n.php:188
|
634 |
msgid "The plugin suddenly stopped working"
|
635 |
msgstr ""
|
636 |
|
637 |
+
#: includes/i18n.php:189
|
638 |
msgid "I can't pay for it anymore"
|
639 |
msgstr ""
|
640 |
|
641 |
+
#: includes/i18n.php:190
|
642 |
msgid "It's a temporary deactivation. I'm just debugging an issue."
|
643 |
msgstr ""
|
644 |
|
645 |
+
#: includes/i18n.php:191
|
646 |
msgctxt "the text of the \"other\" reason for deactivating the plugin that is shown in the modal box."
|
647 |
msgid "Other"
|
648 |
msgstr ""
|
649 |
|
650 |
+
#: includes/i18n.php:193
|
651 |
msgid "Kindly tell us the reason so we can improve."
|
652 |
msgstr ""
|
653 |
|
654 |
+
#: includes/i18n.php:194
|
655 |
msgid "What's the plugin's name?"
|
656 |
msgstr ""
|
657 |
|
658 |
+
#: includes/i18n.php:195
|
659 |
msgid "What price would you feel comfortable paying?"
|
660 |
msgstr ""
|
661 |
|
662 |
+
#: includes/i18n.php:196
|
663 |
msgid "I couldn't understand how to make it work"
|
664 |
msgstr ""
|
665 |
|
666 |
+
#: includes/i18n.php:197
|
667 |
msgid "The plugin is great, but I need specific feature that you don't support"
|
668 |
msgstr ""
|
669 |
|
670 |
+
#: includes/i18n.php:198
|
671 |
msgid "The plugin is not working"
|
672 |
msgstr ""
|
673 |
|
674 |
+
#: includes/i18n.php:199
|
675 |
msgid "It's not what I was looking for"
|
676 |
msgstr ""
|
677 |
|
678 |
+
#: includes/i18n.php:200
|
679 |
msgid "The plugin didn't work as expected"
|
680 |
msgstr ""
|
681 |
|
682 |
+
#: includes/i18n.php:201
|
683 |
msgid "What feature?"
|
684 |
msgstr ""
|
685 |
|
686 |
+
#: includes/i18n.php:202
|
687 |
msgid "Kindly share what didn't work so we can fix it for future users..."
|
688 |
msgstr ""
|
689 |
|
690 |
+
#: includes/i18n.php:203
|
691 |
msgid "What you've been looking for?"
|
692 |
msgstr ""
|
693 |
|
694 |
+
#: includes/i18n.php:204
|
695 |
msgid "What did you expect?"
|
696 |
msgstr ""
|
697 |
|
698 |
+
#: includes/i18n.php:205
|
699 |
msgid "The plugin didn't work"
|
700 |
msgstr ""
|
701 |
|
702 |
+
#: includes/i18n.php:206
|
703 |
msgid "I don't like to share my information with you"
|
704 |
msgstr ""
|
705 |
|
706 |
+
#: includes/i18n.php:207
|
707 |
msgid "You might have missed it, but you don't have to share any data and can just %s the opt-in."
|
708 |
msgstr ""
|
709 |
|
710 |
+
#: includes/i18n.php:211
|
711 |
msgctxt "greeting"
|
712 |
msgid "Hey %s,"
|
713 |
msgstr ""
|
714 |
|
715 |
+
#: includes/i18n.php:212
|
716 |
msgctxt "a greeting. E.g. Thanks John!"
|
717 |
msgid "Thanks %s!"
|
718 |
msgstr ""
|
719 |
|
720 |
+
#: includes/i18n.php:213
|
721 |
msgid "Never miss an important update - opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with %4$s."
|
722 |
msgstr ""
|
723 |
|
724 |
+
#: includes/i18n.php:214
|
725 |
msgid "Please help us improve %1$s! If you opt-in, some data about your usage of %1$s will be sent to %4$s. If you skip this, that's okay! %1$s will still work just fine."
|
726 |
msgstr ""
|
727 |
|
728 |
+
#: includes/i18n.php:215
|
729 |
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."
|
730 |
msgstr ""
|
731 |
|
732 |
+
#: includes/i18n.php:216
|
733 |
msgid "complete the install"
|
734 |
msgstr ""
|
735 |
|
736 |
+
#: includes/i18n.php:217
|
737 |
msgid "start the trial"
|
738 |
msgstr ""
|
739 |
|
740 |
+
#: includes/i18n.php:218
|
741 |
msgid "Thanks for purchasing %s! To get started, please enter your license key:"
|
742 |
msgstr ""
|
743 |
|
744 |
+
#: includes/i18n.php:219
|
745 |
msgid "The plugin will be periodically sending data to %s to check for plugin updates and verify the validity of your license."
|
746 |
msgstr ""
|
747 |
|
748 |
+
#: includes/i18n.php:220
|
749 |
msgid "What permissions are being granted?"
|
750 |
msgstr ""
|
751 |
|
752 |
+
#: includes/i18n.php:221
|
753 |
msgid "Your Profile Overview"
|
754 |
msgstr ""
|
755 |
|
756 |
+
#: includes/i18n.php:222
|
757 |
msgid "Name and email address"
|
758 |
msgstr ""
|
759 |
|
760 |
+
#: includes/i18n.php:223
|
761 |
msgid "Your Site Overview"
|
762 |
msgstr ""
|
763 |
|
764 |
+
#: includes/i18n.php:224
|
765 |
msgid "Site URL, WP version, PHP info, plugins & themes"
|
766 |
msgstr ""
|
767 |
|
768 |
+
#: includes/i18n.php:225
|
769 |
msgid "Current Plugin Events"
|
770 |
msgstr ""
|
771 |
|
772 |
+
#: includes/i18n.php:226
|
773 |
msgid "Activation, deactivation and uninstall"
|
774 |
msgstr ""
|
775 |
|
776 |
+
#: includes/i18n.php:227
|
777 |
msgid "Plugins & Themes"
|
778 |
msgstr ""
|
779 |
|
780 |
+
#: includes/i18n.php:228
|
781 |
msgid "Titles, versions and state."
|
782 |
msgstr ""
|
783 |
|
784 |
+
#: includes/i18n.php:229
|
785 |
msgid "Admin Notices"
|
786 |
msgstr ""
|
787 |
|
788 |
+
#: includes/i18n.php:230
|
789 |
msgid "Newsletter"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: includes/i18n.php:231
|
793 |
msgid "Updates, announcements, marketing, no spam"
|
794 |
msgstr ""
|
795 |
|
796 |
+
#: includes/i18n.php:232
|
797 |
msgid "Privacy Policy"
|
798 |
msgstr ""
|
799 |
|
800 |
+
#: includes/i18n.php:233
|
801 |
msgid "Terms of Service"
|
802 |
msgstr ""
|
803 |
|
804 |
+
#: includes/i18n.php:234
|
805 |
msgctxt "as activating plugin"
|
806 |
msgid "Activating"
|
807 |
msgstr ""
|
808 |
|
809 |
+
#: includes/i18n.php:235
|
810 |
msgctxt "as in the process of sending an email"
|
811 |
msgid "Sending email"
|
812 |
msgstr ""
|
813 |
|
814 |
+
#: includes/i18n.php:236
|
815 |
msgctxt "button label"
|
816 |
msgid "Allow & Continue"
|
817 |
msgstr ""
|
818 |
|
819 |
+
#: includes/i18n.php:237
|
820 |
msgctxt "button label"
|
821 |
msgid "Agree & Activate License"
|
822 |
msgstr ""
|
823 |
|
824 |
+
#: includes/i18n.php:238
|
825 |
msgctxt "verb"
|
826 |
msgid "Skip"
|
827 |
msgstr ""
|
828 |
|
829 |
+
#: includes/i18n.php:239
|
830 |
msgid "Click here to use the plugin anonymously"
|
831 |
msgstr ""
|
832 |
|
833 |
+
#: includes/i18n.php:240
|
834 |
msgid "Re-send activation email"
|
835 |
msgstr ""
|
836 |
|
837 |
+
#: includes/i18n.php:241
|
838 |
msgid "License key"
|
839 |
msgstr ""
|
840 |
|
841 |
+
#: includes/i18n.php:242
|
842 |
msgid "Send License Key"
|
843 |
msgstr ""
|
844 |
|
845 |
+
#: includes/i18n.php:243
|
846 |
msgid "Sending license key"
|
847 |
msgstr ""
|
848 |
|
849 |
+
#: includes/i18n.php:244
|
850 |
msgid "Have a license key?"
|
851 |
msgstr ""
|
852 |
|
853 |
+
#: includes/i18n.php:245
|
854 |
msgid "Don't have a license key?"
|
855 |
msgstr ""
|
856 |
|
857 |
+
#: includes/i18n.php:246
|
858 |
msgid "Can't find your license key?"
|
859 |
msgstr ""
|
860 |
|
861 |
+
#: includes/i18n.php:247
|
862 |
msgid "We couldn't find your email address in the system, are you sure it's the right address?"
|
863 |
msgstr ""
|
864 |
|
865 |
+
#: includes/i18n.php:248
|
866 |
msgid "We can't see any active licenses associated with that email address, are you sure it's the right address?"
|
867 |
msgstr ""
|
868 |
|
869 |
+
#: includes/i18n.php:249
|
870 |
msgid "Opt In"
|
871 |
msgstr ""
|
872 |
|
873 |
+
#: includes/i18n.php:250
|
874 |
msgid "Opt Out"
|
875 |
msgstr ""
|
876 |
|
877 |
+
#: includes/i18n.php:251
|
878 |
msgid "On second thought - I want to continue helping"
|
879 |
msgstr ""
|
880 |
|
881 |
+
#: includes/i18n.php:252
|
882 |
msgid "Opting out..."
|
883 |
msgstr ""
|
884 |
|
885 |
+
#: includes/i18n.php:253
|
886 |
msgid "Opting in..."
|
887 |
msgstr ""
|
888 |
|
889 |
+
#: includes/i18n.php:254
|
890 |
msgid "We appreciate your help in making the %s better by letting us track some usage data."
|
891 |
msgstr ""
|
892 |
|
893 |
+
#: includes/i18n.php:255
|
894 |
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."
|
895 |
msgstr ""
|
896 |
|
897 |
+
#: includes/i18n.php:256
|
898 |
msgid "By clicking \"Opt Out\", we will no longer be sending any data from %s to %s."
|
899 |
msgstr ""
|
900 |
|
901 |
+
#: includes/i18n.php:260
|
902 |
msgid "Screenshots"
|
903 |
msgstr ""
|
904 |
|
905 |
+
#: includes/i18n.php:261
|
906 |
msgid "Click to view full-size screenshot %d"
|
907 |
msgstr ""
|
908 |
|
909 |
+
#: includes/i18n.php:265
|
910 |
msgid "Freemius Debug"
|
911 |
msgstr ""
|
912 |
|
913 |
+
#: includes/i18n.php:266
|
914 |
msgctxt "as turned on"
|
915 |
msgid "On"
|
916 |
msgstr ""
|
917 |
|
918 |
+
#: includes/i18n.php:267
|
919 |
msgctxt "as turned off"
|
920 |
msgid "Off"
|
921 |
msgstr ""
|
922 |
|
923 |
+
#: includes/i18n.php:268
|
924 |
msgctxt "as code debugging"
|
925 |
msgid "Debugging"
|
926 |
msgstr ""
|
927 |
|
928 |
+
#: includes/i18n.php:269
|
929 |
msgid "Freemius State"
|
930 |
msgstr ""
|
931 |
|
932 |
+
#: includes/i18n.php:270
|
933 |
msgctxt "as connection was successful"
|
934 |
msgid "Connected"
|
935 |
msgstr ""
|
936 |
|
937 |
+
#: includes/i18n.php:271
|
938 |
msgctxt "as connection blocked"
|
939 |
msgid "Blocked"
|
940 |
msgstr ""
|
941 |
|
942 |
+
#: includes/i18n.php:272
|
943 |
msgctxt "as application program interface"
|
944 |
msgid "API"
|
945 |
msgstr ""
|
946 |
|
947 |
+
#: includes/i18n.php:273
|
948 |
msgctxt "as software development kit versions"
|
949 |
msgid "SDK"
|
950 |
msgstr ""
|
951 |
|
952 |
+
#: includes/i18n.php:274
|
953 |
msgctxt "as software development kit versions"
|
954 |
msgid "SDK Versions"
|
955 |
msgstr ""
|
956 |
|
957 |
+
#: includes/i18n.php:275
|
958 |
msgctxt "as plugin folder path"
|
959 |
msgid "Plugin Path"
|
960 |
msgstr ""
|
961 |
|
962 |
+
#: includes/i18n.php:276
|
963 |
msgctxt "as sdk path"
|
964 |
msgid "SDK Path"
|
965 |
msgstr ""
|
966 |
|
967 |
+
#: includes/i18n.php:277
|
968 |
msgid "Add Ons of Plugin %s"
|
969 |
msgstr ""
|
970 |
|
971 |
+
#: includes/i18n.php:278
|
972 |
msgid "Are you sure you want to delete all Freemius data?"
|
973 |
msgstr ""
|
974 |
|
975 |
+
#: includes/i18n.php:279
|
976 |
msgid "Actions"
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: includes/i18n.php:280
|
980 |
msgid "Delete All Accounts"
|
981 |
msgstr ""
|
982 |
|
983 |
+
#: includes/i18n.php:281
|
984 |
msgid "Start Fresh"
|
985 |
msgstr ""
|
986 |
|
987 |
+
#: includes/i18n.php:282
|
988 |
msgid "Clear API Cache"
|
989 |
msgstr ""
|
990 |
|
991 |
+
#: includes/i18n.php:283
|
992 |
msgid "Sync Data From Server"
|
993 |
msgstr ""
|
994 |
|
995 |
+
#: includes/i18n.php:284
|
996 |
msgid "Scheduled Crons"
|
997 |
msgstr ""
|
998 |
|
999 |
+
#: includes/i18n.php:285
|
1000 |
+
msgid "Cron Type"
|
1001 |
+
msgstr ""
|
1002 |
+
|
1003 |
+
#: includes/i18n.php:286
|
1004 |
msgid "Plugins & Themes Sync"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
+
#: includes/i18n.php:287
|
1008 |
+
msgid "Licenses"
|
1009 |
+
msgstr ""
|
1010 |
+
|
1011 |
+
#: includes/i18n.php:288
|
1012 |
+
msgid "Debug Log"
|
1013 |
+
msgstr ""
|
1014 |
+
|
1015 |
+
#: includes/i18n.php:289
|
1016 |
+
msgid "All"
|
1017 |
+
msgstr ""
|
1018 |
+
|
1019 |
+
#: includes/i18n.php:290
|
1020 |
+
msgid "File"
|
1021 |
+
msgstr ""
|
1022 |
+
|
1023 |
+
#: includes/i18n.php:291
|
1024 |
+
msgid "Function"
|
1025 |
+
msgstr ""
|
1026 |
+
|
1027 |
+
#: includes/i18n.php:292
|
1028 |
+
msgid "Process ID"
|
1029 |
+
msgstr ""
|
1030 |
+
|
1031 |
+
#: includes/i18n.php:293
|
1032 |
+
msgid "Logger"
|
1033 |
+
msgstr ""
|
1034 |
+
|
1035 |
+
#: includes/i18n.php:294
|
1036 |
+
msgid "Message"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
+
#: includes/i18n.php:295
|
1040 |
+
msgid "Download"
|
1041 |
+
msgstr ""
|
1042 |
+
|
1043 |
+
#: includes/i18n.php:296
|
1044 |
+
msgid "Filter"
|
1045 |
+
msgstr ""
|
1046 |
+
|
1047 |
+
#: includes/i18n.php:297
|
1048 |
+
msgid "Type"
|
1049 |
+
msgstr ""
|
1050 |
+
|
1051 |
+
#: includes/i18n.php:298
|
1052 |
+
msgid "All Types"
|
1053 |
+
msgstr ""
|
1054 |
+
|
1055 |
+
#: includes/i18n.php:299
|
1056 |
+
msgid "All Requests"
|
1057 |
+
msgstr ""
|
1058 |
+
|
1059 |
+
#: includes/i18n.php:303
|
1060 |
msgctxt "as congratulations"
|
1061 |
msgid "Congrats"
|
1062 |
msgstr ""
|
1063 |
|
1064 |
+
#: includes/i18n.php:304
|
1065 |
msgctxt "exclamation"
|
1066 |
msgid "Oops"
|
1067 |
msgstr ""
|
1068 |
|
1069 |
+
#: includes/i18n.php:305
|
1070 |
msgctxt "interjection expressing joy or exuberance"
|
1071 |
msgid "Yee-haw"
|
1072 |
msgstr ""
|
1073 |
|
1074 |
+
#: includes/i18n.php:306
|
1075 |
msgctxt "(especially in electronic communication) used to express elation, enthusiasm, or triumph."
|
1076 |
msgid "W00t"
|
1077 |
msgstr ""
|
1078 |
|
1079 |
+
#: includes/i18n.php:308
|
1080 |
msgctxt "a positive response"
|
1081 |
msgid "Right on"
|
1082 |
msgstr ""
|
1083 |
|
1084 |
+
#: includes/i18n.php:309
|
1085 |
msgctxt "something somebody says when they are thinking about what you have just said. "
|
1086 |
msgid "Hmm"
|
1087 |
msgstr ""
|
1088 |
|
1089 |
+
#: includes/i18n.php:311
|
1090 |
msgid "O.K"
|
1091 |
msgstr ""
|
1092 |
|
1093 |
+
#: includes/i18n.php:312
|
1094 |
msgctxt "exclamation"
|
1095 |
msgid "Hey"
|
1096 |
msgstr ""
|
1097 |
|
1098 |
+
#: includes/i18n.php:313
|
1099 |
msgctxt "advance notice of something that will need attention."
|
1100 |
msgid "Heads up"
|
1101 |
msgstr ""
|
1102 |
|
1103 |
+
#: includes/i18n.php:318
|
1104 |
msgid "Seems like you got the latest release."
|
1105 |
msgstr ""
|
1106 |
|
1107 |
+
#: includes/i18n.php:319
|
1108 |
msgid "You are all good!"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
+
#: includes/i18n.php:320
|
1112 |
msgid "Sorry, we could not complete the email update. Another user with the same email is already registered."
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: includes/i18n.php:321
|
1116 |
msgid "If you would like to give up the ownership of the plugin's account to %s click the Change Ownership button."
|
1117 |
msgstr ""
|
1118 |
|
1119 |
+
#: includes/i18n.php:322
|
1120 |
msgid "Your email was successfully updated. You should receive an email with confirmation instructions in few moments."
|
1121 |
msgstr ""
|
1122 |
|
1123 |
+
#: includes/i18n.php:323
|
1124 |
msgid "Your name was successfully updated."
|
1125 |
msgstr ""
|
1126 |
|
1127 |
+
#: includes/i18n.php:324
|
1128 |
msgid "You have successfully updated your %s."
|
1129 |
msgstr ""
|
1130 |
|
1131 |
+
#: includes/i18n.php:325
|
1132 |
msgid "Please provide your full name."
|
1133 |
msgstr ""
|
1134 |
|
1135 |
+
#: includes/i18n.php:326
|
1136 |
msgid "Verification mail was just sent to %s. If you can't find it after 5 min, please check your spam box."
|
1137 |
msgstr ""
|
1138 |
|
1139 |
+
#: includes/i18n.php:327
|
1140 |
msgid "Just letting you know that the add-ons information of %s is being pulled from an external server."
|
1141 |
msgstr ""
|
1142 |
|
1143 |
+
#: includes/i18n.php:328
|
1144 |
msgid "No credit card required"
|
1145 |
msgstr ""
|
1146 |
|
1147 |
+
#: includes/i18n.php:329
|
1148 |
msgid "Premium plugin version was successfully activated."
|
1149 |
msgstr ""
|
1150 |
|
1151 |
+
#: includes/i18n.php:330
|
1152 |
msgid "The upgrade of %s was successfully completed."
|
1153 |
msgstr ""
|
1154 |
|
1155 |
+
#: includes/i18n.php:331
|
1156 |
msgid "Your account was successfully activated with the %s plan."
|
1157 |
msgstr ""
|
1158 |
|
1159 |
+
#: includes/i18n.php:332
|
1160 |
msgid "Download the latest %s version now"
|
1161 |
msgstr ""
|
1162 |
|
1163 |
+
#: includes/i18n.php:333
|
1164 |
msgid "Please follow these steps to complete the upgrade"
|
1165 |
msgstr ""
|
1166 |
|
1167 |
+
#: includes/i18n.php:334
|
1168 |
msgid "Download the latest %s version"
|
1169 |
msgstr ""
|
1170 |
|
1171 |
+
#: includes/i18n.php:335
|
1172 |
msgid "Download the latest version"
|
1173 |
msgstr ""
|
1174 |
|
1175 |
+
#: includes/i18n.php:336
|
1176 |
msgid "Deactivate the free version"
|
1177 |
msgstr ""
|
1178 |
|
1179 |
+
#: includes/i18n.php:337
|
1180 |
msgid "Upload and activate the downloaded version"
|
1181 |
msgstr ""
|
1182 |
|
1183 |
+
#: includes/i18n.php:338
|
1184 |
msgid "How to upload and activate?"
|
1185 |
msgstr ""
|
1186 |
|
1187 |
+
#: includes/i18n.php:339
|
1188 |
msgctxt "%s - product name, e.g. Facebook add-on was successfully..."
|
1189 |
msgid "%s Add-on was successfully purchased."
|
1190 |
msgstr ""
|
1191 |
|
1192 |
+
#: includes/i18n.php:341
|
1193 |
msgid "Your %s Add-on plan was successfully upgraded."
|
1194 |
msgstr ""
|
1195 |
|
1196 |
+
#: includes/i18n.php:342
|
1197 |
msgid "Your email has been successfully verified - you are AWESOME!"
|
1198 |
msgstr ""
|
1199 |
|
1200 |
+
#: includes/i18n.php:343
|
1201 |
msgid "Your plan was successfully upgraded."
|
1202 |
msgstr ""
|
1203 |
|
1204 |
+
#: includes/i18n.php:344
|
1205 |
msgid "Your plan was successfully changed to %s."
|
1206 |
msgstr ""
|
1207 |
|
1208 |
+
#: includes/i18n.php:345
|
1209 |
msgid "Your license has expired. You can still continue using the free plugin forever."
|
1210 |
msgstr ""
|
1211 |
|
1212 |
+
#: includes/i18n.php:346
|
1213 |
msgid "Your license has been cancelled. If you think it's a mistake, please contact support."
|
1214 |
msgstr ""
|
1215 |
|
1216 |
+
#: includes/i18n.php:347
|
1217 |
msgid "Your trial has been successfully started."
|
1218 |
msgstr ""
|
1219 |
|
1220 |
+
#: includes/i18n.php:348
|
1221 |
msgid "Your license was successfully activated."
|
1222 |
msgstr ""
|
1223 |
|
1224 |
+
#: includes/i18n.php:349
|
1225 |
msgid "It looks like your site currently doesn't have an active license."
|
1226 |
msgstr ""
|
1227 |
|
1228 |
+
#: includes/i18n.php:350
|
1229 |
msgid "Your license was successfully deactivated, you are back to the %s plan."
|
1230 |
msgstr ""
|
1231 |
|
1232 |
+
#: includes/i18n.php:351
|
1233 |
msgid "It looks like the license deactivation failed."
|
1234 |
msgstr ""
|
1235 |
|
1236 |
+
#: includes/i18n.php:352
|
1237 |
msgid "It looks like the license could not be activated."
|
1238 |
msgstr ""
|
1239 |
|
1240 |
+
#: includes/i18n.php:353
|
1241 |
msgid "Error received from the server:"
|
1242 |
msgstr ""
|
1243 |
|
1244 |
+
#: includes/i18n.php:354
|
1245 |
msgid "Your trial has expired. You can still continue using all our free features."
|
1246 |
msgstr ""
|
1247 |
|
1248 |
+
#: includes/i18n.php:355
|
1249 |
msgid "Your plan was successfully downgraded. Your %s plan license will expire in %s."
|
1250 |
msgstr ""
|
1251 |
|
1252 |
+
#: includes/i18n.php:356
|
1253 |
msgid "Seems like we are having some temporary issue with your plan downgrade. Please try again in few minutes."
|
1254 |
msgstr ""
|
1255 |
|
1256 |
+
#: includes/i18n.php:357
|
1257 |
msgid "It looks like you are not in trial mode anymore so there's nothing to cancel :)"
|
1258 |
msgstr ""
|
1259 |
|
1260 |
+
#: includes/i18n.php:358
|
1261 |
msgid "Your %s free trial was successfully cancelled."
|
1262 |
msgstr ""
|
1263 |
|
1264 |
+
#: includes/i18n.php:359
|
1265 |
msgctxt "%s - numeric version number"
|
1266 |
msgid "Version %s was released."
|
1267 |
msgstr ""
|
1268 |
|
1269 |
+
#: includes/i18n.php:360
|
1270 |
msgid "Please download %s."
|
1271 |
msgstr ""
|
1272 |
|
1273 |
+
#: includes/i18n.php:361
|
1274 |
msgctxt "%s - plan name, as the latest professional version here"
|
1275 |
msgid "the latest %s version here"
|
1276 |
msgstr ""
|
1277 |
|
1278 |
+
#: includes/i18n.php:363
|
1279 |
msgid "How do you like %s so far? Test all our %s premium features with a %d-day free trial."
|
1280 |
msgstr ""
|
1281 |
|
1282 |
+
#: includes/i18n.php:364
|
1283 |
msgctxt "call to action"
|
1284 |
msgid "Start free trial"
|
1285 |
msgstr ""
|
1286 |
|
1287 |
+
#: includes/i18n.php:365
|
1288 |
msgid "Starting trial"
|
1289 |
msgstr ""
|
1290 |
|
1291 |
+
#: includes/i18n.php:366
|
1292 |
msgid "Please wait"
|
1293 |
msgstr ""
|
1294 |
|
1295 |
+
#: includes/i18n.php:367
|
1296 |
msgid "Seems like we are having some temporary issue with your trial cancellation. Please try again in few minutes."
|
1297 |
msgstr ""
|
1298 |
|
1299 |
+
#: includes/i18n.php:368
|
1300 |
msgid "You already utilized a trial before."
|
1301 |
msgstr ""
|
1302 |
|
1303 |
+
#: includes/i18n.php:369
|
1304 |
msgid "You are already running the plugin in a trial mode."
|
1305 |
msgstr ""
|
1306 |
|
1307 |
+
#: includes/i18n.php:370
|
1308 |
msgid "Plan %s do not exist, therefore, can't start a trial."
|
1309 |
msgstr ""
|
1310 |
|
1311 |
+
#: includes/i18n.php:371
|
1312 |
msgid "Plan %s does not support a trial period."
|
1313 |
msgstr ""
|
1314 |
|
1315 |
+
#: includes/i18n.php:372
|
1316 |
msgid "None of the plugin's plans supports a trial period."
|
1317 |
msgstr ""
|
1318 |
|
1319 |
+
#: includes/i18n.php:373
|
1320 |
msgid "Unexpected API error. Please contact the plugin's author with the following error."
|
1321 |
msgstr ""
|
1322 |
|
1323 |
+
#: includes/i18n.php:374
|
1324 |
msgid "No commitment for %s days - cancel anytime!"
|
1325 |
msgstr ""
|
1326 |
|
1327 |
+
#: includes/i18n.php:375
|
1328 |
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."
|
1329 |
msgstr ""
|
1330 |
|
1331 |
+
#: includes/i18n.php:376
|
1332 |
msgid "Couldn't activate %s."
|
1333 |
msgstr ""
|
1334 |
|
1335 |
+
#: includes/i18n.php:377
|
1336 |
msgid "Please contact us with the following message:"
|
1337 |
msgstr ""
|
1338 |
|
1339 |
+
#: includes/i18n.php:378
|
1340 |
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."
|
1341 |
msgstr ""
|
1342 |
|
1343 |
+
#: includes/i18n.php:379
|
1344 |
msgid "Please contact us here"
|
1345 |
msgstr ""
|
1346 |
|
1347 |
+
#: includes/i18n.php:380
|
1348 |
msgid "I have upgraded my account but when I try to Sync the License, the plan remains %s."
|
1349 |
msgstr ""
|
1350 |
|
1351 |
+
#: includes/i18n.php:383
|
1352 |
msgid "From unknown reason, the API connectivity test failed."
|
1353 |
msgstr ""
|
1354 |
|
1355 |
+
#: includes/i18n.php:384
|
1356 |
msgid "It's probably a temporary issue on our end. Just to be sure, with your permission, would it be o.k to run another connectivity test?"
|
1357 |
msgstr ""
|
1358 |
|
1359 |
+
#: includes/i18n.php:385
|
1360 |
msgid "We use PHP cURL library for the API calls, which is a very common library and usually installed out of the box. Unfortunately, cURL is not installed on your server."
|
1361 |
msgstr ""
|
1362 |
|
1363 |
+
#: includes/i18n.php:386
|
1364 |
msgid "From unknown reason, CloudFlare, the firewall we use, blocks the connection."
|
1365 |
msgstr ""
|
1366 |
|
1367 |
+
#: includes/i18n.php:387
|
1368 |
msgctxt "as pluginX requires an access to our API"
|
1369 |
msgid "%s requires an access to our API."
|
1370 |
msgstr ""
|
1371 |
|
1372 |
+
#: includes/i18n.php:389
|
1373 |
msgid "It looks like your server is using Squid ACL (access control lists), which blocks the connection."
|
1374 |
msgstr ""
|
1375 |
|
1376 |
+
#: includes/i18n.php:390
|
1377 |
msgid "I don't know what is Squid or ACL, help me!"
|
1378 |
msgstr ""
|
1379 |
|
1380 |
+
#: includes/i18n.php:391, includes/i18n.php:395
|
1381 |
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."
|
1382 |
msgstr ""
|
1383 |
|
1384 |
+
#: includes/i18n.php:392
|
1385 |
msgid "I'm a system administrator"
|
1386 |
msgstr ""
|
1387 |
|
1388 |
+
#: includes/i18n.php:393
|
1389 |
+
msgid "Great, please whitelist the following domains: %s. Once you are done, deactivate the plugin and activate it again."
|
1390 |
msgstr ""
|
1391 |
|
1392 |
+
#: includes/i18n.php:394
|
1393 |
msgid "I don't know what is cURL or how to install it, help me!"
|
1394 |
msgstr ""
|
1395 |
|
1396 |
+
#: includes/i18n.php:396
|
1397 |
msgid "Great, please install cURL and enable it in your php.ini file. To make sure it was successfully activated, use 'phpinfo()'. Once activated, deactivate the plugin and reactivate it back again."
|
1398 |
msgstr ""
|
1399 |
|
1400 |
+
#: includes/i18n.php:397
|
1401 |
msgid "We are sure it's an issue on our side and more than happy to resolve it for you ASAP if you give us a chance."
|
1402 |
msgstr ""
|
1403 |
|
1404 |
+
#: includes/i18n.php:398
|
1405 |
msgid "Sorry for the inconvenience and we are here to help if you give us a chance."
|
1406 |
msgstr ""
|
1407 |
|
1408 |
+
#: includes/i18n.php:399
|
1409 |
msgid "Yes - I'm giving you a chance to fix it"
|
1410 |
msgstr ""
|
1411 |
|
1412 |
+
#: includes/i18n.php:400
|
1413 |
msgid "We will do our best to whitelist your server and resolve this issue ASAP. You will get a follow-up email to %s once we have an update."
|
1414 |
msgstr ""
|
1415 |
|
1416 |
+
#: includes/i18n.php:401
|
1417 |
msgid "Let's try your previous version"
|
1418 |
msgstr ""
|
1419 |
|
1420 |
+
#: includes/i18n.php:402
|
1421 |
msgid "Uninstall this version and install the previous one."
|
1422 |
msgstr ""
|
1423 |
|
1424 |
+
#: includes/i18n.php:403
|
1425 |
msgid "That's exhausting, please deactivate"
|
1426 |
msgstr ""
|
1427 |
|
1428 |
+
#: includes/i18n.php:404
|
1429 |
msgid "We feel your frustration and sincerely apologize for the inconvenience. Hope to see you again in the future."
|
1430 |
msgstr ""
|
1431 |
|
1432 |
+
#: includes/i18n.php:405
|
1433 |
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."
|
1434 |
msgstr ""
|
1435 |
|
1436 |
+
#: includes/i18n.php:406
|
1437 |
msgctxt "%1s - plugin title, %2s - API domain"
|
1438 |
msgid "Your server is blocking the access to Freemius' API, which is crucial for %1s synchronization. Please contact your host to whitelist %2s"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
+
#: includes/i18n.php:408
|
1442 |
msgid "It seems like one of the authentication parameters is wrong. Update your Public Key, Secret Key & User ID, and try again."
|
1443 |
msgstr ""
|
1444 |
|
1445 |
+
#: includes/i18n.php:411
|
1446 |
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."
|
1447 |
msgstr ""
|
1448 |
|
1449 |
+
#: includes/i18n.php:412
|
1450 |
msgid "Thanks for confirming the ownership change. An email was just sent to %s for final approval."
|
1451 |
msgstr ""
|
1452 |
|
1453 |
+
#: includes/i18n.php:413
|
1454 |
msgid "%s is the new owner of the account."
|
1455 |
msgstr ""
|
1456 |
|
1457 |
+
#: includes/i18n.php:415
|
1458 |
msgctxt "addonX cannot run without pluginY"
|
1459 |
msgid "%s cannot run without %s."
|
1460 |
msgstr ""
|
1461 |
|
1462 |
+
#: includes/i18n.php:417
|
1463 |
msgctxt "addonX cannot run..."
|
1464 |
msgid "%s cannot run without the plugin."
|
1465 |
msgstr ""
|
1466 |
|
1467 |
+
#: includes/i18n.php:418
|
1468 |
msgctxt "pluginX activation was successfully..."
|
1469 |
msgid "%s activation was successfully completed."
|
1470 |
msgstr ""
|
1471 |
|
1472 |
+
#: includes/i18n.php:420
|
1473 |
msgctxt "Plugin installer section title"
|
1474 |
msgid "Features & Pricing"
|
1475 |
msgstr ""
|
1476 |
|
1477 |
+
#: includes/i18n.php:421
|
1478 |
msgid "Add-on must be deployed to WordPress.org or Freemius."
|
1479 |
msgstr ""
|
1480 |
|
1481 |
+
#: includes/i18n.php:422
|
1482 |
msgid "Paid add-on must be deployed to Freemius."
|
1483 |
msgstr ""
|
1484 |
|
1485 |
+
#: includes/i18n.php:426
|
1486 |
msgid "%s is a premium only add-on. You have to purchase a license first before activating the plugin."
|
1487 |
msgstr ""
|
1488 |
|
1489 |
+
#: includes/i18n.php:427
|
1490 |
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."
|
1491 |
msgstr ""
|
1492 |
|
1493 |
+
#: includes/i18n.php:432
|
1494 |
msgctxt "as every month"
|
1495 |
msgid "Monthly"
|
1496 |
msgstr ""
|
1497 |
|
1498 |
+
#: includes/i18n.php:433
|
1499 |
msgctxt "as monthly period"
|
1500 |
msgid "mo"
|
1501 |
msgstr ""
|
1502 |
|
1503 |
+
#: includes/i18n.php:434
|
1504 |
msgctxt "as once a year"
|
1505 |
msgid "Annual"
|
1506 |
msgstr ""
|
1507 |
|
1508 |
+
#: includes/i18n.php:435
|
1509 |
msgctxt "as once a year"
|
1510 |
msgid "Annually"
|
1511 |
msgstr ""
|
1512 |
|
1513 |
+
#: includes/i18n.php:436
|
1514 |
msgctxt "as once a year"
|
1515 |
msgid "Once"
|
1516 |
msgstr ""
|
1517 |
|
1518 |
+
#: includes/i18n.php:437
|
1519 |
msgctxt "as annual period"
|
1520 |
msgid "year"
|
1521 |
msgstr ""
|
1522 |
|
1523 |
+
#: includes/i18n.php:438
|
1524 |
msgid "Lifetime"
|
1525 |
msgstr ""
|
1526 |
|
1527 |
+
#: includes/i18n.php:439
|
1528 |
msgctxt "e.g. the best product"
|
1529 |
msgid "Best"
|
1530 |
msgstr ""
|
1531 |
|
1532 |
+
#: includes/i18n.php:440
|
1533 |
msgctxt "e.g. billed monthly"
|
1534 |
msgid "Billed %s"
|
1535 |
msgstr ""
|
1536 |
|
1537 |
+
#: includes/i18n.php:441
|
1538 |
msgctxt "as a discount of $5 or 10%"
|
1539 |
msgid "Save %s"
|
1540 |
msgstr ""
|
1541 |
|
1542 |
+
#: includes/i18n.php:443
|
1543 |
msgid "View details"
|
1544 |
msgstr ""
|
1545 |
|
1546 |
+
#: includes/i18n.php:447
|
1547 |
msgctxt "button label"
|
1548 |
msgid "Approve & Start Trial"
|
1549 |
msgstr ""
|
1550 |
|
1551 |
+
#: includes/i18n.php:449
|
1552 |
msgid "You are 1-click away from starting your %1$s-day free trial of the %2$s plan."
|
1553 |
msgstr ""
|
1554 |
|
1555 |
+
#: includes/i18n.php:451
|
1556 |
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 plugin to periodically send data to %s to check for version updates and to validate your trial."
|
1557 |
msgstr ""
|
1558 |
|
1559 |
+
#: includes/i18n.php:457
|
1560 |
msgid "Business name"
|
1561 |
msgstr ""
|
1562 |
|
1563 |
+
#: includes/i18n.php:458
|
1564 |
msgid "Tax / VAT ID"
|
1565 |
msgstr ""
|
1566 |
|
1567 |
+
#: includes/i18n.php:459
|
1568 |
msgid "Address Line %d"
|
1569 |
msgstr ""
|
1570 |
|
1571 |
+
#: includes/i18n.php:460
|
1572 |
msgid "Country"
|
1573 |
msgstr ""
|
1574 |
|
1575 |
+
#: includes/i18n.php:461
|
1576 |
msgid "Select Country"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
+
#: includes/i18n.php:462
|
1580 |
msgid "City"
|
1581 |
msgstr ""
|
1582 |
|
1583 |
+
#: includes/i18n.php:463
|
1584 |
msgid "Town"
|
1585 |
msgstr ""
|
1586 |
|
1587 |
+
#: includes/i18n.php:464
|
1588 |
msgid "State"
|
1589 |
msgstr ""
|
1590 |
|
1591 |
+
#: includes/i18n.php:465
|
1592 |
msgid "Province"
|
1593 |
msgstr ""
|
1594 |
|
1595 |
+
#: includes/i18n.php:466
|
1596 |
msgid "ZIP / Postal Code"
|
1597 |
msgstr ""
|
1598 |
+
|
1599 |
+
#: includes/i18n.php:481
|
1600 |
+
msgctxt "Plugin installer section title"
|
1601 |
+
msgid "Description"
|
1602 |
+
msgstr ""
|
1603 |
+
|
1604 |
+
#: includes/i18n.php:482
|
1605 |
+
msgctxt "Plugin installer section title"
|
1606 |
+
msgid "Installation"
|
1607 |
+
msgstr ""
|
1608 |
+
|
1609 |
+
#: includes/i18n.php:483
|
1610 |
+
msgctxt "Plugin installer section title"
|
1611 |
+
msgid "FAQ"
|
1612 |
+
msgstr ""
|
1613 |
+
|
1614 |
+
#: includes/i18n.php:484
|
1615 |
+
msgctxt "Plugin installer section title"
|
1616 |
+
msgid "Changelog"
|
1617 |
+
msgstr ""
|
1618 |
+
|
1619 |
+
#: includes/i18n.php:485
|
1620 |
+
msgctxt "Plugin installer section title"
|
1621 |
+
msgid "Reviews"
|
1622 |
+
msgstr ""
|
1623 |
+
|
1624 |
+
#: includes/i18n.php:486
|
1625 |
+
msgctxt "Plugin installer section title"
|
1626 |
+
msgid "Other Notes"
|
1627 |
+
msgstr ""
|
1628 |
+
|
1629 |
+
#: includes/i18n.php:488
|
1630 |
+
msgid "%s star"
|
1631 |
+
msgstr ""
|
1632 |
+
|
1633 |
+
#: includes/i18n.php:490
|
1634 |
+
msgid "%s stars"
|
1635 |
+
msgstr ""
|
1636 |
+
|
1637 |
+
#: includes/i18n.php:492
|
1638 |
+
msgid "%s rating"
|
1639 |
+
msgstr ""
|
1640 |
+
|
1641 |
+
#: includes/i18n.php:494
|
1642 |
+
msgid "%s ratings"
|
1643 |
+
msgstr ""
|
1644 |
+
|
1645 |
+
#: includes/i18n.php:496
|
1646 |
+
msgid "%s time"
|
1647 |
+
msgstr ""
|
1648 |
+
|
1649 |
+
#: includes/i18n.php:498
|
1650 |
+
msgid "%s times"
|
1651 |
+
msgstr ""
|
1652 |
+
|
1653 |
+
#: includes/i18n.php:500
|
1654 |
+
msgid "Click to see reviews that provided a rating of %s"
|
1655 |
+
msgstr ""
|
1656 |
+
|
1657 |
+
#: includes/i18n.php:501
|
1658 |
+
msgid "Last Updated"
|
1659 |
+
msgstr ""
|
1660 |
+
|
1661 |
+
#: includes/i18n.php:502
|
1662 |
+
msgid "Requires WordPress Version:"
|
1663 |
+
msgstr ""
|
1664 |
+
|
1665 |
+
#: includes/i18n.php:503
|
1666 |
+
msgctxt "as the plugin author"
|
1667 |
+
msgid "Author:"
|
1668 |
+
msgstr ""
|
1669 |
+
|
1670 |
+
#: includes/i18n.php:504
|
1671 |
+
msgid "Compatible up to:"
|
1672 |
+
msgstr ""
|
1673 |
+
|
1674 |
+
#: includes/i18n.php:505
|
1675 |
+
msgid "Downloaded:"
|
1676 |
+
msgstr ""
|
1677 |
+
|
1678 |
+
#: includes/i18n.php:506
|
1679 |
+
msgid "WordPress.org Plugin Page"
|
1680 |
+
msgstr ""
|
1681 |
+
|
1682 |
+
#: includes/i18n.php:507
|
1683 |
+
msgid "Plugin Homepage"
|
1684 |
+
msgstr ""
|
1685 |
+
|
1686 |
+
#: includes/i18n.php:508
|
1687 |
+
msgid "Donate to this plugin"
|
1688 |
+
msgstr ""
|
1689 |
+
|
1690 |
+
#: includes/i18n.php:509
|
1691 |
+
msgid "Average Rating"
|
1692 |
+
msgstr ""
|
1693 |
+
|
1694 |
+
#: includes/i18n.php:510
|
1695 |
+
msgid "based on %s"
|
1696 |
+
msgstr ""
|
1697 |
+
|
1698 |
+
#: includes/i18n.php:511
|
1699 |
+
msgid "Warning:"
|
1700 |
+
msgstr ""
|
1701 |
+
|
1702 |
+
#: includes/i18n.php:512
|
1703 |
+
msgid "Contributors"
|
1704 |
+
msgstr ""
|
1705 |
+
|
1706 |
+
#: includes/i18n.php:513
|
1707 |
+
msgid "Plugin Install"
|
1708 |
+
msgstr ""
|
1709 |
+
|
1710 |
+
#: includes/i18n.php:514
|
1711 |
+
msgid "This plugin has not been tested with your current version of WordPress."
|
1712 |
+
msgstr ""
|
1713 |
+
|
1714 |
+
#: includes/i18n.php:515
|
1715 |
+
msgid "This plugin has not been marked as compatible with your version of WordPress."
|
1716 |
+
msgstr ""
|
1717 |
+
|
1718 |
+
#: includes/i18n.php:516
|
1719 |
+
msgid "Newer Version (%s) Installed"
|
1720 |
+
msgstr ""
|
1721 |
+
|
1722 |
+
#: includes/i18n.php:517
|
1723 |
+
msgid "Latest Version Installed"
|
1724 |
+
msgstr ""
|
freemius/languages/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/package.json
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "freemius-wordpress-sdk",
|
3 |
+
"version": "1.0.0",
|
4 |
+
"description": "",
|
5 |
+
"main": "gulpfile.js",
|
6 |
+
"dependencies": {
|
7 |
+
"gulp": "^3.9.1",
|
8 |
+
"gulp-gettext": "^0.3.0",
|
9 |
+
"gulp-pofill": "^1.0.0",
|
10 |
+
"gulp-rename": "^1.2.2",
|
11 |
+
"gulp-sort": "^2.0.0",
|
12 |
+
"gulp-wp-pot": "^2.0.4"
|
13 |
+
},
|
14 |
+
"scripts": {
|
15 |
+
"test": "echo \"Error: no test specified\" && exit 1"
|
16 |
+
},
|
17 |
+
"repository": {
|
18 |
+
"type": "git",
|
19 |
+
"url": "git+https://github.com/Freemius/wordpress-sdk.git"
|
20 |
+
},
|
21 |
+
"author": "Vova Feldman",
|
22 |
+
"license": "GPL-2.0",
|
23 |
+
"homepage": "https://freemius.com",
|
24 |
+
"devDependencies": {
|
25 |
+
"gulp": "^3.9.1",
|
26 |
+
"gulp-gettext": "^0.3.0",
|
27 |
+
"gulp-pofill": "^1.0.0",
|
28 |
+
"gulp-rename": "^1.2.2",
|
29 |
+
"gulp-sort": "^2.0.0",
|
30 |
+
"gulp-wp-pot": "^2.0.4"
|
31 |
+
}
|
32 |
+
}
|
freemius/start.php
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
*
|
16 |
* @var string
|
17 |
*/
|
18 |
-
$this_sdk_version = '1.2.1.
|
19 |
|
20 |
#region SDK Selection Logic --------------------------------------------------------------------
|
21 |
|
@@ -88,7 +88,7 @@
|
|
88 |
}
|
89 |
} else {
|
90 |
if ( ! function_exists( 'get_plugins' ) ) {
|
91 |
-
require_once
|
92 |
}
|
93 |
|
94 |
$is_newest_sdk_plugin_activate = is_plugin_active( $fs_active_plugins->newest->plugin_path );
|
15 |
*
|
16 |
* @var string
|
17 |
*/
|
18 |
+
$this_sdk_version = '1.2.1.6.1';
|
19 |
|
20 |
#region SDK Selection Logic --------------------------------------------------------------------
|
21 |
|
88 |
}
|
89 |
} else {
|
90 |
if ( ! function_exists( 'get_plugins' ) ) {
|
91 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
92 |
}
|
93 |
|
94 |
$is_newest_sdk_plugin_activate = is_plugin_active( $fs_active_plugins->newest->plugin_path );
|
freemius/templates/account.php
CHANGED
@@ -35,7 +35,7 @@
|
|
35 |
$is_paid_trial = $fs->is_paid_trial();
|
36 |
$show_upgrade = ( $fs->has_paid_plan() && ! $is_paying && ! $is_paid_trial );
|
37 |
|
38 |
-
if ( $
|
39 |
$fs->_add_license_activation_dialog_box();
|
40 |
}
|
41 |
?>
|
@@ -144,6 +144,8 @@
|
|
144 |
<div class="inside">
|
145 |
<table id="fs_account_details" cellspacing="0" class="fs-key-value-table">
|
146 |
<?php
|
|
|
|
|
147 |
$profile = array();
|
148 |
$profile[] = array(
|
149 |
'id' => 'user_name',
|
@@ -215,11 +217,13 @@
|
|
215 |
);
|
216 |
|
217 |
if ( is_object( $license ) ) {
|
218 |
-
$
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
|
|
|
|
223 |
}
|
224 |
}
|
225 |
}
|
@@ -246,23 +250,23 @@
|
|
246 |
<code><?php echo htmlspecialchars( $p['value'] ) ?></code>
|
247 |
<?php endif ?>
|
248 |
<?php if ( 'email' === $p['id'] && ! $user->is_verified() ) : ?>
|
249 |
-
<label class="fs-tag fs-warn"><?php
|
250 |
<?php endif ?>
|
251 |
<?php if ( 'plan' === $p['id'] ) : ?>
|
252 |
<?php if ( $fs->is_trial() ) : ?>
|
253 |
-
<label class="fs-tag fs-success"><?php
|
254 |
<?php endif ?>
|
255 |
<?php if ( is_object( $license ) && ! $license->is_lifetime() ) : ?>
|
256 |
<?php if ( ! $is_active_subscription && ! $license->is_first_payment_pending() ) : ?>
|
257 |
<label
|
258 |
-
class="fs-tag fs-warn"><?php
|
259 |
<?php elseif ( $is_active_subscription && ! $subscription->is_first_payment_pending() ) : ?>
|
260 |
<label
|
261 |
-
class="fs-tag fs-success"><?php
|
262 |
<?php endif ?>
|
263 |
<?php elseif ( $fs->is_trial() ) : ?>
|
264 |
<label
|
265 |
-
class="fs-tag fs-warn"><?php
|
266 |
<?php endif ?>
|
267 |
<div class="button-group">
|
268 |
<?php $available_license = $fs->is_free_plan() ? $fs->_get_available_premium_license() : false ?>
|
@@ -274,7 +278,7 @@
|
|
274 |
<input type="hidden" name="license_id" value="<?php echo $available_license->id ?>">
|
275 |
<?php wp_nonce_field( 'activate_license' ) ?>
|
276 |
<input type="submit" class="button button-primary"
|
277 |
-
value="<?php
|
278 |
__fs( 'activate-x-plan', $slug ) . '%s',
|
279 |
$premium_plan->title,
|
280 |
( $site->is_localhost() && $available_license->is_free_localhost ) ?
|
@@ -285,16 +289,16 @@
|
|
285 |
sprintf( __fs( 'x-left', $slug ), $available_license->left() ) :
|
286 |
strtolower( __fs( 'last-license', $slug ) ) ) . ']'
|
287 |
)
|
288 |
-
) ?> ">
|
289 |
</form>
|
290 |
<?php else : ?>
|
291 |
<form action="<?php echo $fs->_get_admin_page_url( 'account' ) ?>"
|
292 |
method="POST" class="button-group">
|
293 |
<?php if ( $show_upgrade && $fs->is_premium() ) : ?>
|
294 |
-
<a class="button activate-license-trigger <?php echo $slug ?>" href="#"><?php
|
295 |
<?php endif ?>
|
296 |
<input type="submit" class="button"
|
297 |
-
value="<?php
|
298 |
<input type="hidden" name="fs_action"
|
299 |
value="<?php echo $slug ?>_sync_license">
|
300 |
<?php wp_nonce_field( $slug . '_sync_license' ) ?>
|
@@ -302,19 +306,18 @@
|
|
302 |
class="button<?php if ( $show_upgrade ) {
|
303 |
echo ' button-primary';
|
304 |
} ?> button-upgrade"><i
|
305 |
-
class="dashicons dashicons-cart"></i> <?php ( $show_upgrade )
|
306 |
-
_efs( 'upgrade', $slug ) :
|
307 |
-
_efs( 'change-plan', $slug )
|
308 |
-
?></a>
|
309 |
</form>
|
310 |
<?php endif ?>
|
311 |
</div>
|
312 |
<?php elseif ( 'version' === $p['id'] && $fs->has_paid_plan() ) : ?>
|
313 |
-
<?php if ( $fs->
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
|
|
|
|
318 |
<?php endif ?>
|
319 |
<?php endif ?>
|
320 |
</td>
|
@@ -325,10 +328,11 @@
|
|
325 |
<input type="hidden" name="fs_action" value="verify_email">
|
326 |
<?php wp_nonce_field( 'verify_email' ) ?>
|
327 |
<input type="submit" class="button button-small"
|
328 |
-
value="<?php
|
329 |
</form>
|
330 |
<?php endif ?>
|
331 |
<?php if ( 'version' === $p['id'] ) : ?>
|
|
|
332 |
<div class="button-group">
|
333 |
<?php if ( $is_paying || $fs->is_trial() ) : ?>
|
334 |
<?php if ( ! $fs->is_allowed_to_install() ) : ?>
|
@@ -336,13 +340,17 @@
|
|
336 |
href="<?php echo $fs->_get_latest_download_local_url() ?>"><?php echo sprintf( __fs( 'download-x-version', $slug ), ( $fs->is_trial() ? $trial_plan->title : $site->plan->title ) ) . ( is_object( $update ) ? ' [' . $update->version . ']' : '' ) ?></a>
|
337 |
<?php elseif ( is_object( $update ) ) : ?>
|
338 |
<a class="button button-primary"
|
339 |
-
href="<?php echo wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . $fs->get_plugin_basename() ), 'upgrade-plugin_' . $fs->get_plugin_basename() ) ?>"><?php echo
|
340 |
<?php endif ?>
|
341 |
<?php endif; ?>
|
342 |
</div>
|
|
|
343 |
<?php
|
344 |
elseif ( in_array( $p['id'], array( 'license_key', 'site_secret_key' ) ) ) : ?>
|
345 |
-
<button class="button button-small"><?php
|
|
|
|
|
|
|
346 |
<?php
|
347 |
elseif (/*in_array($p['id'], array('site_secret_key', 'site_id', 'site_public_key')) ||*/
|
348 |
( is_string( $user->secret_key ) && in_array( $p['id'], array(
|
@@ -357,7 +365,7 @@
|
|
357 |
value="">
|
358 |
<?php wp_nonce_field( 'update_' . $p['id'] ) ?>
|
359 |
<input type="submit" class="button button-small"
|
360 |
-
value="<?php
|
361 |
</form>
|
362 |
<?php endif ?>
|
363 |
</td>
|
@@ -370,7 +378,7 @@
|
|
370 |
</div>
|
371 |
<script type="text/javascript">
|
372 |
(function ($) {
|
373 |
-
$('.fs-
|
374 |
var
|
375 |
$this = $(this),
|
376 |
$parent = $this.closest('tr'),
|
@@ -380,13 +388,13 @@
|
|
380 |
$input.toggle();
|
381 |
|
382 |
if ($input.is(':visible')) {
|
383 |
-
$this.html(
|
384 |
setTimeout(function () {
|
385 |
$input.select().focus();
|
386 |
}, 100);
|
387 |
}
|
388 |
else {
|
389 |
-
$this.html(
|
390 |
}
|
391 |
});
|
392 |
}(jQuery));
|
@@ -415,11 +423,11 @@
|
|
415 |
<table id="fs_addons" class="widefat">
|
416 |
<thead>
|
417 |
<tr>
|
418 |
-
<th><h3><?php
|
419 |
-
<th><?php
|
420 |
-
<th><?php
|
421 |
-
<th><?php
|
422 |
-
<th><?php
|
423 |
<th></th>
|
424 |
<?php if ( defined( 'WP_FS__DEV_MODE' ) && WP_FS__DEV_MODE ) : ?>
|
425 |
<th></th>
|
@@ -605,21 +613,21 @@
|
|
605 |
if ( $fs->is_addon_installed( $addon->slug ) ) {
|
606 |
$addon_file = $fs->get_addon_basename( $addon->slug );
|
607 |
$buttons[] = sprintf(
|
608 |
-
'<a class="button button-primary" href="%s" title="%s"
|
609 |
wp_nonce_url( 'plugins.php?action=activate&plugin=' . $addon_file, 'activate-plugin_' . $addon_file ),
|
610 |
-
|
611 |
__fs( 'activate', $slug )
|
612 |
);
|
613 |
} else {
|
614 |
if ( $fs->is_allowed_to_install() ) {
|
615 |
$buttons[] = sprintf(
|
616 |
-
'<a class="button button-primary" href="%s"
|
617 |
wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=' . $addon->slug ), 'install-plugin_' . $addon->slug ),
|
618 |
__fs( 'install-now', $slug )
|
619 |
);
|
620 |
} else {
|
621 |
$buttons[] = sprintf(
|
622 |
-
'<a target="_blank" class="button button-primary" href="%s"
|
623 |
$fs->_get_latest_download_local_url( $addon_id ),
|
624 |
__fs( 'download-latest', $slug )
|
625 |
);
|
@@ -661,15 +669,15 @@
|
|
661 |
<?php $addon_file = $fs->get_addon_basename( $addon->slug ) ?>
|
662 |
<a class="button button-primary"
|
663 |
href="<?php echo wp_nonce_url( 'plugins.php?action=activate&plugin=' . $addon_file, 'activate-plugin_' . $addon_file ) ?>"
|
664 |
-
title="<?php
|
665 |
-
class="edit"><?php
|
666 |
<?php else : ?>
|
667 |
<?php if ( $fs->is_allowed_to_install() ) : ?>
|
668 |
<a class="button button-primary"
|
669 |
-
href="<?php echo wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=' . $addon->slug ), 'install-plugin_' . $addon->slug ) ?>"><?php
|
670 |
<?php else : ?>
|
671 |
<a target="_blank" class="button button-primary"
|
672 |
-
href="<?php echo $fs->_get_latest_download_local_url( $addon_id ) ?>"><?php
|
673 |
<?php endif ?>
|
674 |
<?php endif ?>
|
675 |
</td>
|
@@ -712,5 +720,4 @@
|
|
712 |
'module_slug' => $slug,
|
713 |
'module_version' => $fs->get_plugin_version(),
|
714 |
);
|
715 |
-
fs_require_template( 'powered-by.php', $params );
|
716 |
-
?>
|
35 |
$is_paid_trial = $fs->is_paid_trial();
|
36 |
$show_upgrade = ( $fs->has_paid_plan() && ! $is_paying && ! $is_paid_trial );
|
37 |
|
38 |
+
if ( $fs->has_paid_plan() ) {
|
39 |
$fs->_add_license_activation_dialog_box();
|
40 |
}
|
41 |
?>
|
144 |
<div class="inside">
|
145 |
<table id="fs_account_details" cellspacing="0" class="fs-key-value-table">
|
146 |
<?php
|
147 |
+
$hide_license_key = $fs->apply_filters( 'hide_license_key', false );
|
148 |
+
|
149 |
$profile = array();
|
150 |
$profile[] = array(
|
151 |
'id' => 'user_name',
|
217 |
);
|
218 |
|
219 |
if ( is_object( $license ) ) {
|
220 |
+
if ( ! $hide_license_key ) {
|
221 |
+
$profile[] = array(
|
222 |
+
'id' => 'license_key',
|
223 |
+
'title' => __fs( 'License Key', $slug ),
|
224 |
+
'value' => $license->secret_key,
|
225 |
+
);
|
226 |
+
}
|
227 |
}
|
228 |
}
|
229 |
}
|
250 |
<code><?php echo htmlspecialchars( $p['value'] ) ?></code>
|
251 |
<?php endif ?>
|
252 |
<?php if ( 'email' === $p['id'] && ! $user->is_verified() ) : ?>
|
253 |
+
<label class="fs-tag fs-warn"><?php fs_esc_html_echo( 'not-verified', $slug ) ?></label>
|
254 |
<?php endif ?>
|
255 |
<?php if ( 'plan' === $p['id'] ) : ?>
|
256 |
<?php if ( $fs->is_trial() ) : ?>
|
257 |
+
<label class="fs-tag fs-success"><?php fs_esc_html_echo( 'trial', $slug ) ?></label>
|
258 |
<?php endif ?>
|
259 |
<?php if ( is_object( $license ) && ! $license->is_lifetime() ) : ?>
|
260 |
<?php if ( ! $is_active_subscription && ! $license->is_first_payment_pending() ) : ?>
|
261 |
<label
|
262 |
+
class="fs-tag fs-warn"><?php echo esc_html( sprintf( __fs( 'expires-in', $slug ), human_time_diff( time(), strtotime( $license->expiration ) ) ) ) ?></label>
|
263 |
<?php elseif ( $is_active_subscription && ! $subscription->is_first_payment_pending() ) : ?>
|
264 |
<label
|
265 |
+
class="fs-tag fs-success"><?php echo esc_html( sprintf( __fs( 'renews-in', $slug ), human_time_diff( time(), strtotime( $subscription->next_payment ) ) ) ) ?></label>
|
266 |
<?php endif ?>
|
267 |
<?php elseif ( $fs->is_trial() ) : ?>
|
268 |
<label
|
269 |
+
class="fs-tag fs-warn"><?php echo esc_html( sprintf( __fs( 'expires-in', $slug ), human_time_diff( time(), strtotime( $site->trial_ends ) ) ) ) ?></label>
|
270 |
<?php endif ?>
|
271 |
<div class="button-group">
|
272 |
<?php $available_license = $fs->is_free_plan() ? $fs->_get_available_premium_license() : false ?>
|
278 |
<input type="hidden" name="license_id" value="<?php echo $available_license->id ?>">
|
279 |
<?php wp_nonce_field( 'activate_license' ) ?>
|
280 |
<input type="submit" class="button button-primary"
|
281 |
+
value="<?php echo esc_attr( sprintf(
|
282 |
__fs( 'activate-x-plan', $slug ) . '%s',
|
283 |
$premium_plan->title,
|
284 |
( $site->is_localhost() && $available_license->is_free_localhost ) ?
|
289 |
sprintf( __fs( 'x-left', $slug ), $available_license->left() ) :
|
290 |
strtolower( __fs( 'last-license', $slug ) ) ) . ']'
|
291 |
)
|
292 |
+
) ) ?> ">
|
293 |
</form>
|
294 |
<?php else : ?>
|
295 |
<form action="<?php echo $fs->_get_admin_page_url( 'account' ) ?>"
|
296 |
method="POST" class="button-group">
|
297 |
<?php if ( $show_upgrade && $fs->is_premium() ) : ?>
|
298 |
+
<a class="button activate-license-trigger <?php echo $slug ?>" href="#"><?php fs_esc_html_echo( 'activate-license', $slug ) ?></a>
|
299 |
<?php endif ?>
|
300 |
<input type="submit" class="button"
|
301 |
+
value="<?php fs_esc_attr_echo( 'sync-license', $slug ) ?>">
|
302 |
<input type="hidden" name="fs_action"
|
303 |
value="<?php echo $slug ?>_sync_license">
|
304 |
<?php wp_nonce_field( $slug . '_sync_license' ) ?>
|
306 |
class="button<?php if ( $show_upgrade ) {
|
307 |
echo ' button-primary';
|
308 |
} ?> button-upgrade"><i
|
309 |
+
class="dashicons dashicons-cart"></i> <?php fs_esc_html_echo( $show_upgrade ? 'upgrade' : 'change-plan', $slug ) ?></a>
|
|
|
|
|
|
|
310 |
</form>
|
311 |
<?php endif ?>
|
312 |
</div>
|
313 |
<?php elseif ( 'version' === $p['id'] && $fs->has_paid_plan() ) : ?>
|
314 |
+
<?php if ( $fs->has_premium_version() ) : ?>
|
315 |
+
<?php if ( $fs->is_premium() ) : ?>
|
316 |
+
<label
|
317 |
+
class="fs-tag fs-<?php echo $fs->can_use_premium_code() ? 'success' : 'warn' ?>"><?php fs_esc_html_echo( 'premium-version', $slug ) ?></label>
|
318 |
+
<?php elseif ( $fs->can_use_premium_code() ) : ?>
|
319 |
+
<label class="fs-tag fs-warn"><?php fs_esc_html_echo( 'free-version', $slug ) ?></label>
|
320 |
+
<?php endif ?>
|
321 |
<?php endif ?>
|
322 |
<?php endif ?>
|
323 |
</td>
|
328 |
<input type="hidden" name="fs_action" value="verify_email">
|
329 |
<?php wp_nonce_field( 'verify_email' ) ?>
|
330 |
<input type="submit" class="button button-small"
|
331 |
+
value="<?php fs_esc_attr_echo( 'verify-email', $slug ) ?>">
|
332 |
</form>
|
333 |
<?php endif ?>
|
334 |
<?php if ( 'version' === $p['id'] ) : ?>
|
335 |
+
<?php if ( $fs->has_release_on_freemius() ) : ?>
|
336 |
<div class="button-group">
|
337 |
<?php if ( $is_paying || $fs->is_trial() ) : ?>
|
338 |
<?php if ( ! $fs->is_allowed_to_install() ) : ?>
|
340 |
href="<?php echo $fs->_get_latest_download_local_url() ?>"><?php echo sprintf( __fs( 'download-x-version', $slug ), ( $fs->is_trial() ? $trial_plan->title : $site->plan->title ) ) . ( is_object( $update ) ? ' [' . $update->version . ']' : '' ) ?></a>
|
341 |
<?php elseif ( is_object( $update ) ) : ?>
|
342 |
<a class="button button-primary"
|
343 |
+
href="<?php echo wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . $fs->get_plugin_basename() ), 'upgrade-plugin_' . $fs->get_plugin_basename() ) ?>"><?php echo fs_esc_html( 'install-update-now', $slug ) . ' [' . $update->version . ']' ?></a>
|
344 |
<?php endif ?>
|
345 |
<?php endif; ?>
|
346 |
</div>
|
347 |
+
<?php endif ?>
|
348 |
<?php
|
349 |
elseif ( in_array( $p['id'], array( 'license_key', 'site_secret_key' ) ) ) : ?>
|
350 |
+
<button class="button button-small fs-toggle-visibility"><?php echo esc_html( __fs( 'show', $slug ) ) ?></button>
|
351 |
+
<?php if ('license_key' === $p['id']) : ?>
|
352 |
+
<button class="button button-small activate-license-trigger <?php echo $slug ?>"><?php echo esc_html( __fs( 'change-license', $slug ) ) ?></button>
|
353 |
+
<?php endif ?>
|
354 |
<?php
|
355 |
elseif (/*in_array($p['id'], array('site_secret_key', 'site_id', 'site_public_key')) ||*/
|
356 |
( is_string( $user->secret_key ) && in_array( $p['id'], array(
|
365 |
value="">
|
366 |
<?php wp_nonce_field( 'update_' . $p['id'] ) ?>
|
367 |
<input type="submit" class="button button-small"
|
368 |
+
value="<?php fs_esc_attr_echo( 'edit', $slug ) ?>">
|
369 |
</form>
|
370 |
<?php endif ?>
|
371 |
</td>
|
378 |
</div>
|
379 |
<script type="text/javascript">
|
380 |
(function ($) {
|
381 |
+
$('.fs-toggle-visibility').click(function () {
|
382 |
var
|
383 |
$this = $(this),
|
384 |
$parent = $this.closest('tr'),
|
388 |
$input.toggle();
|
389 |
|
390 |
if ($input.is(':visible')) {
|
391 |
+
$this.html(<?php fs_json_encode_echo( 'hide', $slug ) ?>);
|
392 |
setTimeout(function () {
|
393 |
$input.select().focus();
|
394 |
}, 100);
|
395 |
}
|
396 |
else {
|
397 |
+
$this.html(<?php fs_json_encode_echo( 'show', $slug ) ?>);
|
398 |
}
|
399 |
});
|
400 |
}(jQuery));
|
423 |
<table id="fs_addons" class="widefat">
|
424 |
<thead>
|
425 |
<tr>
|
426 |
+
<th><h3><?php fs_esc_html_echo( 'add-ons', $slug ) ?></h3></th>
|
427 |
+
<th><?php fs_esc_html_echo( 'id', $slug ) ?></th>
|
428 |
+
<th><?php fs_esc_html_echo( 'version', $slug ) ?></th>
|
429 |
+
<th><?php fs_esc_html_echo( 'plan', $slug ) ?></th>
|
430 |
+
<th><?php fs_esc_html_echo( 'license', $slug ) ?></th>
|
431 |
<th></th>
|
432 |
<?php if ( defined( 'WP_FS__DEV_MODE' ) && WP_FS__DEV_MODE ) : ?>
|
433 |
<th></th>
|
613 |
if ( $fs->is_addon_installed( $addon->slug ) ) {
|
614 |
$addon_file = $fs->get_addon_basename( $addon->slug );
|
615 |
$buttons[] = sprintf(
|
616 |
+
'<a class="button button-primary edit" href="%s" title="%s">%s</a>',
|
617 |
wp_nonce_url( 'plugins.php?action=activate&plugin=' . $addon_file, 'activate-plugin_' . $addon_file ),
|
618 |
+
fs_esc_attr( 'activate-this-addon', $slug ),
|
619 |
__fs( 'activate', $slug )
|
620 |
);
|
621 |
} else {
|
622 |
if ( $fs->is_allowed_to_install() ) {
|
623 |
$buttons[] = sprintf(
|
624 |
+
'<a class="button button-primary edit" href="%s">%s</a>',
|
625 |
wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=' . $addon->slug ), 'install-plugin_' . $addon->slug ),
|
626 |
__fs( 'install-now', $slug )
|
627 |
);
|
628 |
} else {
|
629 |
$buttons[] = sprintf(
|
630 |
+
'<a target="_blank" class="button button-primary edit" href="%s">%s</a>',
|
631 |
$fs->_get_latest_download_local_url( $addon_id ),
|
632 |
__fs( 'download-latest', $slug )
|
633 |
);
|
669 |
<?php $addon_file = $fs->get_addon_basename( $addon->slug ) ?>
|
670 |
<a class="button button-primary"
|
671 |
href="<?php echo wp_nonce_url( 'plugins.php?action=activate&plugin=' . $addon_file, 'activate-plugin_' . $addon_file ) ?>"
|
672 |
+
title="<?php fs_esc_attr_echo( 'activate-this-addon', $slug ) ?>"
|
673 |
+
class="edit"><?php fs_esc_html_echo( 'activate', $slug ) ?></a>
|
674 |
<?php else : ?>
|
675 |
<?php if ( $fs->is_allowed_to_install() ) : ?>
|
676 |
<a class="button button-primary"
|
677 |
+
href="<?php echo wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=' . $addon->slug ), 'install-plugin_' . $addon->slug ) ?>"><?php fs_esc_html_echo( 'install-now', $slug ) ?></a>
|
678 |
<?php else : ?>
|
679 |
<a target="_blank" class="button button-primary"
|
680 |
+
href="<?php echo $fs->_get_latest_download_local_url( $addon_id ) ?>"><?php fs_esc_html_echo( 'download-latest', $slug ) ?></a>
|
681 |
<?php endif ?>
|
682 |
<?php endif ?>
|
683 |
</td>
|
720 |
'module_slug' => $slug,
|
721 |
'module_version' => $fs->get_plugin_version(),
|
722 |
);
|
723 |
+
fs_require_template( 'powered-by.php', $params );
|
|
freemius/templates/add-ons.php
CHANGED
@@ -123,6 +123,17 @@
|
|
123 |
|
124 |
var interval = setInterval(function () {
|
125 |
// Open add-on information page.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
126 |
$('.fs-card[data-slug=<?php echo $open_addon_slug ?>] a').click();
|
127 |
if ($('#TB_iframeContent').length > 0) {
|
128 |
clearInterval(interval);
|
123 |
|
124 |
var interval = setInterval(function () {
|
125 |
// Open add-on information page.
|
126 |
+
<?php
|
127 |
+
/**
|
128 |
+
* @author Vova Feldman
|
129 |
+
*
|
130 |
+
* This code does NOT expose an XSS vulnerability because:
|
131 |
+
* 1. This page only renders for admins, so if an attacker manage to get
|
132 |
+
* admin access, they can do more harm.
|
133 |
+
* 2. This code won't be rendered unless $open_addon_slug matches any of
|
134 |
+
* the plugin's add-ons slugs.
|
135 |
+
*/
|
136 |
+
?>
|
137 |
$('.fs-card[data-slug=<?php echo $open_addon_slug ?>] a').click();
|
138 |
if ($('#TB_iframeContent').length > 0) {
|
139 |
clearInterval(interval);
|
freemius/templates/checkout-legacy.php
ADDED
@@ -0,0 +1,242 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @package Freemius
|
4 |
+
* @copyright Copyright (c) 2015, Freemius, Inc.
|
5 |
+
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
6 |
+
* @since 1.0.3
|
7 |
+
*/
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit;
|
11 |
+
}
|
12 |
+
|
13 |
+
wp_enqueue_script( 'jquery' );
|
14 |
+
wp_enqueue_script( 'json2' );
|
15 |
+
fs_enqueue_local_script( 'postmessage', 'nojquery.ba-postmessage.min.js' );
|
16 |
+
fs_enqueue_local_script( 'fs-postmessage', 'postmessage.js' );
|
17 |
+
fs_enqueue_local_style( 'fs_common', '/admin/common.css' );
|
18 |
+
|
19 |
+
/**
|
20 |
+
* @var array $VARS
|
21 |
+
*/
|
22 |
+
$slug = $VARS['slug'];
|
23 |
+
$fs = freemius( $slug );
|
24 |
+
|
25 |
+
$timestamp = time();
|
26 |
+
|
27 |
+
$context_params = array(
|
28 |
+
'plugin_id' => $fs->get_id(),
|
29 |
+
'plugin_public_key' => $fs->get_public_key(),
|
30 |
+
'plugin_version' => $fs->get_plugin_version(),
|
31 |
+
);
|
32 |
+
|
33 |
+
// Get site context secure params.
|
34 |
+
if ( $fs->is_registered() ) {
|
35 |
+
$site = $fs->get_site();
|
36 |
+
$plugin_id = fs_request_get( 'plugin_id', $fs->get_id() );
|
37 |
+
|
38 |
+
if ( $plugin_id != $fs->get_id() ) {
|
39 |
+
if ( $fs->is_addon_activated( $plugin_id ) ) {
|
40 |
+
$fs_addon = Freemius::get_instance_by_id( $plugin_id );
|
41 |
+
$site = $fs_addon->get_site();
|
42 |
+
}
|
43 |
+
}
|
44 |
+
|
45 |
+
$context_params = array_merge( $context_params, FS_Security::instance()->get_context_params(
|
46 |
+
$site,
|
47 |
+
$timestamp,
|
48 |
+
'checkout'
|
49 |
+
) );
|
50 |
+
} else {
|
51 |
+
$current_user = Freemius::_get_current_wp_user();
|
52 |
+
|
53 |
+
// Add site and user info to the request, this information
|
54 |
+
// is NOT being stored unless the user complete the purchase
|
55 |
+
// and agrees to the TOS.
|
56 |
+
$context_params = array_merge( $context_params, array(
|
57 |
+
'user_firstname' => $current_user->user_firstname,
|
58 |
+
'user_lastname' => $current_user->user_lastname,
|
59 |
+
'user_email' => $current_user->user_email,
|
60 |
+
'home_url' => home_url(),
|
61 |
+
) );
|
62 |
+
|
63 |
+
$fs_user = Freemius::_get_user_by_email( $current_user->user_email );
|
64 |
+
|
65 |
+
if ( is_object( $fs_user ) ) {
|
66 |
+
$context_params = array_merge( $context_params, FS_Security::instance()->get_context_params(
|
67 |
+
$fs_user,
|
68 |
+
$timestamp,
|
69 |
+
'checkout'
|
70 |
+
) );
|
71 |
+
}
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( $fs->is_payments_sandbox() ) {
|
75 |
+
// Append plugin secure token for sandbox mode authentication.
|
76 |
+
$context_params['sandbox'] = FS_Security::instance()->get_secure_token(
|
77 |
+
$fs->get_plugin(),
|
78 |
+
$timestamp,
|
79 |
+
'checkout'
|
80 |
+
);
|
81 |
+
|
82 |
+
/**
|
83 |
+
* @since 1.1.7.3 Add security timestamp for sandbox even for anonymous user.
|
84 |
+
*/
|
85 |
+
if ( empty( $context_params['s_ctx_ts'] ) ) {
|
86 |
+
$context_params['s_ctx_ts'] = $timestamp;
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
$return_url = $fs->_get_sync_license_url( isset( $_GET['plugin_id'] ) ? $_GET['plugin_id'] : $fs->get_id() );
|
91 |
+
|
92 |
+
$query_params = array_merge( $context_params, $_GET, array(
|
93 |
+
// Current plugin version.
|
94 |
+
'plugin_version' => $fs->get_plugin_version(),
|
95 |
+
'sdk_version' => WP_FS__SDK_VERSION,
|
96 |
+
'return_url' => $return_url,
|
97 |
+
// Admin CSS URL for style/design competability.
|
98 |
+
// 'wp_admin_css' => get_bloginfo('wpurl') . "/wp-admin/load-styles.php?c=1&load=buttons,wp-admin,dashicons",
|
99 |
+
) );
|
100 |
+
?>
|
101 |
+
<div id="fs_checkout" class="wrap" style="margin: 0 0 -65px -20px;">
|
102 |
+
<div id="iframe"></div>
|
103 |
+
<script type="text/javascript">
|
104 |
+
// http://stackoverflow.com/questions/4583703/jquery-post-request-not-ajax
|
105 |
+
jQuery(function ($) {
|
106 |
+
$.extend({
|
107 |
+
form: function (url, data, method) {
|
108 |
+
if (method == null) method = 'POST';
|
109 |
+
if (data == null) data = {};
|
110 |
+
|
111 |
+
var form = $('<form>').attr({
|
112 |
+
method: method,
|
113 |
+
action: url
|
114 |
+
}).css({
|
115 |
+
display: 'none'
|
116 |
+
});
|
117 |
+
|
118 |
+
var addData = function (name, data) {
|
119 |
+
if ($.isArray(data)) {
|
120 |
+
for (var i = 0; i < data.length; i++) {
|
121 |
+
var value = data[i];
|
122 |
+
addData(name + '[]', value);
|
123 |
+
}
|
124 |
+
} else if (typeof data === 'object') {
|
125 |
+
for (var key in data) {
|
126 |
+
if (data.hasOwnProperty(key)) {
|
127 |
+
addData(name + '[' + key + ']', data[key]);
|
128 |
+
}
|
129 |
+
}
|
130 |
+
} else if (data != null) {
|
131 |
+
form.append($('<input>').attr({
|
132 |
+
type : 'hidden',
|
133 |
+
name : String(name),
|
134 |
+
value: String(data)
|
135 |
+
}));
|
136 |
+
}
|
137 |
+
};
|
138 |
+
|
139 |
+
for (var key in data) {
|
140 |
+
if (data.hasOwnProperty(key)) {
|
141 |
+
addData(key, data[key]);
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
return form.appendTo('body');
|
146 |
+
}
|
147 |
+
});
|
148 |
+
});
|
149 |
+
|
150 |
+
(function ($) {
|
151 |
+
$(function () {
|
152 |
+
|
153 |
+
var
|
154 |
+
// Keep track of the iframe height.
|
155 |
+
iframe_height = 800,
|
156 |
+
base_url = '<?php echo WP_FS__ADDRESS ?>',
|
157 |
+
// Pass the parent page URL into the Iframe in a meaningful way (this URL could be
|
158 |
+
// passed via query string or hard coded into the child page, it depends on your needs).
|
159 |
+
src = base_url + '/checkout/?<?php echo ( isset( $_REQUEST['XDEBUG_SESSION'] ) ? 'XDEBUG_SESSION=' . $_REQUEST['XDEBUG_SESSION'] . '&' : '' ) . http_build_query( $query_params ) ?>#' + encodeURIComponent(document.location.href),
|
160 |
+
|
161 |
+
// Append the Iframe into the DOM.
|
162 |
+
iframe = $('<iframe " src="' + src + '" width="100%" height="' + iframe_height + 'px" scrolling="no" frameborder="0" style="background: transparent;"><\/iframe>')
|
163 |
+
.appendTo('#iframe');
|
164 |
+
|
165 |
+
FS.PostMessage.init(base_url, [iframe[0]]);
|
166 |
+
FS.PostMessage.receiveOnce('height', function (data) {
|
167 |
+
var h = data.height;
|
168 |
+
if (!isNaN(h) && h > 0 && h != iframe_height) {
|
169 |
+
iframe_height = h;
|
170 |
+
iframe.height(iframe_height + 'px');
|
171 |
+
|
172 |
+
FS.PostMessage.postScroll(iframe[0]);
|
173 |
+
}
|
174 |
+
});
|
175 |
+
|
176 |
+
FS.PostMessage.receiveOnce('install', function (data) {
|
177 |
+
// Post data to activation URL.
|
178 |
+
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
179 |
+
'fs_action' => $slug . '_activate_new',
|
180 |
+
'plugin_id' => isset( $_GET['plugin_id'] ) ? $_GET['plugin_id'] : $fs->get_id()
|
181 |
+
) ), $slug . '_activate_new' ) ?>', {
|
182 |
+
user_id : data.user.id,
|
183 |
+
user_secret_key : data.user.secret_key,
|
184 |
+
user_public_key : data.user.public_key,
|
185 |
+
install_id : data.install.id,
|
186 |
+
install_secret_key: data.install.secret_key,
|
187 |
+
install_public_key: data.install.public_key
|
188 |
+
}).submit();
|
189 |
+
});
|
190 |
+
|
191 |
+
FS.PostMessage.receiveOnce('pending_activation', function (data) {
|
192 |
+
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
193 |
+
'fs_action' => $slug . '_activate_new',
|
194 |
+
'plugin_id' => fs_request_get( 'plugin_id', $fs->get_id() ),
|
195 |
+
'pending_activation' => true,
|
196 |
+
) ), $slug . '_activate_new' ) ?>', {
|
197 |
+
user_email: data.user_email
|
198 |
+
}).submit();
|
199 |
+
});
|
200 |
+
|
201 |
+
FS.PostMessage.receiveOnce('get_context', function () {
|
202 |
+
console.debug('receiveOnce', 'get_context');
|
203 |
+
|
204 |
+
// If the user didn't connect his account with Freemius,
|
205 |
+
// once he accepts the Terms of Service and Privacy Policy,
|
206 |
+
// and then click the purchase button, the context information
|
207 |
+
// of the user will be shared with Freemius in order to complete the
|
208 |
+
// purchase workflow and activate the license for the right user.
|
209 |
+
<?php $install_data = array_merge( $fs->get_opt_in_params(),
|
210 |
+
array(
|
211 |
+
'activation_url' => fs_nonce_url( $fs->_get_admin_page_url( '',
|
212 |
+
array(
|
213 |
+
'fs_action' => $slug . '_activate_new',
|
214 |
+
'plugin_id' => fs_request_get( 'plugin_id', $fs->get_id() ),
|
215 |
+
|
216 |
+
) ),
|
217 |
+
$slug . '_activate_new' )
|
218 |
+
) ) ?>
|
219 |
+
FS.PostMessage.post('context', <?php echo json_encode( $install_data ) ?>, iframe[0]);
|
220 |
+
});
|
221 |
+
|
222 |
+
FS.PostMessage.receiveOnce('get_dimensions', function (data) {
|
223 |
+
console.debug('receiveOnce', 'get_dimensions');
|
224 |
+
|
225 |
+
FS.PostMessage.post('dimensions', {
|
226 |
+
height : $(document.body).height(),
|
227 |
+
scrollTop: $(document).scrollTop()
|
228 |
+
}, iframe[0]);
|
229 |
+
});
|
230 |
+
});
|
231 |
+
})(jQuery);
|
232 |
+
</script>
|
233 |
+
</div>
|
234 |
+
<?php
|
235 |
+
$params = array(
|
236 |
+
'page' => 'checkout',
|
237 |
+
'module_id' => $fs->get_id(),
|
238 |
+
'module_slug' => $slug,
|
239 |
+
'module_version' => $fs->get_plugin_version(),
|
240 |
+
);
|
241 |
+
fs_require_template( 'powered-by.php', $params );
|
242 |
+
?>
|
freemius/templates/checkout.php
CHANGED
@@ -15,6 +15,7 @@
|
|
15 |
fs_enqueue_local_script( 'postmessage', 'nojquery.ba-postmessage.min.js' );
|
16 |
fs_enqueue_local_script( 'fs-postmessage', 'postmessage.js' );
|
17 |
fs_enqueue_local_style( 'fs_common', '/admin/common.css' );
|
|
|
18 |
|
19 |
/**
|
20 |
* @var array $VARS
|
@@ -25,15 +26,31 @@
|
|
25 |
$timestamp = time();
|
26 |
|
27 |
$context_params = array(
|
28 |
-
'plugin_id'
|
29 |
-
'
|
30 |
-
|
|
|
|
|
31 |
);
|
32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
// Get site context secure params.
|
34 |
if ( $fs->is_registered() ) {
|
35 |
-
$site
|
36 |
-
$plugin_id = fs_request_get( 'plugin_id', $fs->get_id() );
|
37 |
|
38 |
if ( $plugin_id != $fs->get_id() ) {
|
39 |
if ( $fs->is_addon_activated( $plugin_id ) ) {
|
@@ -87,7 +104,7 @@
|
|
87 |
}
|
88 |
}
|
89 |
|
90 |
-
$return_url = $fs->_get_sync_license_url(
|
91 |
|
92 |
$query_params = array_merge( $context_params, $_GET, array(
|
93 |
// Current plugin version.
|
@@ -97,8 +114,13 @@
|
|
97 |
// Admin CSS URL for style/design competability.
|
98 |
// 'wp_admin_css' => get_bloginfo('wpurl') . "/wp-admin/load-styles.php?c=1&load=buttons,wp-admin,dashicons",
|
99 |
) );
|
|
|
|
|
|
|
|
|
|
|
100 |
?>
|
101 |
-
<div id="fs_checkout" class="wrap
|
102 |
<div id="iframe"></div>
|
103 |
<script type="text/javascript">
|
104 |
// http://stackoverflow.com/questions/4583703/jquery-post-request-not-ajax
|
@@ -153,10 +175,10 @@
|
|
153 |
var
|
154 |
// Keep track of the iframe height.
|
155 |
iframe_height = 800,
|
156 |
-
base_url = '<?php echo
|
157 |
// Pass the parent page URL into the Iframe in a meaningful way (this URL could be
|
158 |
// passed via query string or hard coded into the child page, it depends on your needs).
|
159 |
-
src = base_url + '
|
160 |
|
161 |
// Append the Iframe into the DOM.
|
162 |
iframe = $('<iframe " src="' + src + '" width="100%" height="' + iframe_height + 'px" scrolling="no" frameborder="0" style="background: transparent;"><\/iframe>')
|
@@ -177,7 +199,7 @@
|
|
177 |
// Post data to activation URL.
|
178 |
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
179 |
'fs_action' => $slug . '_activate_new',
|
180 |
-
'plugin_id' =>
|
181 |
) ), $slug . '_activate_new' ) ?>', {
|
182 |
user_id : data.user.id,
|
183 |
user_secret_key : data.user.secret_key,
|
@@ -191,7 +213,7 @@
|
|
191 |
FS.PostMessage.receiveOnce('pending_activation', function (data) {
|
192 |
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
193 |
'fs_action' => $slug . '_activate_new',
|
194 |
-
'plugin_id' =>
|
195 |
'pending_activation' => true,
|
196 |
) ), $slug . '_activate_new' ) ?>', {
|
197 |
user_email: data.user_email
|
@@ -211,7 +233,7 @@
|
|
211 |
'activation_url' => fs_nonce_url( $fs->_get_admin_page_url( '',
|
212 |
array(
|
213 |
'fs_action' => $slug . '_activate_new',
|
214 |
-
'plugin_id' =>
|
215 |
|
216 |
) ),
|
217 |
$slug . '_activate_new' )
|
@@ -220,23 +242,20 @@
|
|
220 |
});
|
221 |
|
222 |
FS.PostMessage.receiveOnce('get_dimensions', function (data) {
|
223 |
-
console.debug('receiveOnce', 'get_dimensions');
|
224 |
-
|
225 |
FS.PostMessage.post('dimensions', {
|
226 |
height : $(document.body).height(),
|
227 |
scrollTop: $(document).scrollTop()
|
228 |
}, iframe[0]);
|
229 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
230 |
});
|
231 |
})(jQuery);
|
232 |
</script>
|
233 |
-
</div>
|
234 |
-
<?php
|
235 |
-
$params = array(
|
236 |
-
'page' => 'checkout',
|
237 |
-
'module_id' => $fs->get_id(),
|
238 |
-
'module_slug' => $slug,
|
239 |
-
'module_version' => $fs->get_plugin_version(),
|
240 |
-
);
|
241 |
-
fs_require_template( 'powered-by.php', $params );
|
242 |
-
?>
|
15 |
fs_enqueue_local_script( 'postmessage', 'nojquery.ba-postmessage.min.js' );
|
16 |
fs_enqueue_local_script( 'fs-postmessage', 'postmessage.js' );
|
17 |
fs_enqueue_local_style( 'fs_common', '/admin/common.css' );
|
18 |
+
fs_enqueue_local_style( 'fs_checkout', '/admin/checkout.css' );
|
19 |
|
20 |
/**
|
21 |
* @var array $VARS
|
26 |
$timestamp = time();
|
27 |
|
28 |
$context_params = array(
|
29 |
+
'plugin_id' => $fs->get_id(),
|
30 |
+
'plugin_version' => $fs->get_plugin_version(),
|
31 |
+
'public_key' => $fs->get_public_key(),
|
32 |
+
'mode' => 'dashboard',
|
33 |
+
'trial' => fs_request_get_bool( 'trial' ),
|
34 |
);
|
35 |
|
36 |
+
$plan_id = fs_request_get( 'plan_id' );
|
37 |
+
if ( FS_Plugin_Plan::is_valid_id( $plan_id ) ) {
|
38 |
+
$context_params['plan_id'] = $plan_id;
|
39 |
+
}
|
40 |
+
|
41 |
+
$licenses = fs_request_get( 'licenses' );
|
42 |
+
if ( $licenses === strval( intval( $licenses ) ) && $licenses > 0 ) {
|
43 |
+
$context_params['licenses'] = $licenses;
|
44 |
+
}
|
45 |
+
|
46 |
+
$plugin_id = fs_request_get( 'plugin_id' );
|
47 |
+
if ( ! FS_Plugin::is_valid_id( $plugin_id ) ) {
|
48 |
+
$plugin_id = $fs->get_id();
|
49 |
+
}
|
50 |
+
|
51 |
// Get site context secure params.
|
52 |
if ( $fs->is_registered() ) {
|
53 |
+
$site = $fs->get_site();
|
|
|
54 |
|
55 |
if ( $plugin_id != $fs->get_id() ) {
|
56 |
if ( $fs->is_addon_activated( $plugin_id ) ) {
|
104 |
}
|
105 |
}
|
106 |
|
107 |
+
$return_url = $fs->_get_sync_license_url( $plugin_id );
|
108 |
|
109 |
$query_params = array_merge( $context_params, $_GET, array(
|
110 |
// Current plugin version.
|
114 |
// Admin CSS URL for style/design competability.
|
115 |
// 'wp_admin_css' => get_bloginfo('wpurl') . "/wp-admin/load-styles.php?c=1&load=buttons,wp-admin,dashicons",
|
116 |
) );
|
117 |
+
|
118 |
+
$xdebug_session = fs_request_get( 'XDEBUG_SESSION' );
|
119 |
+
if ( false !== $xdebug_session ) {
|
120 |
+
$query_params['XDEBUG_SESSION'] = $xdebug_session;
|
121 |
+
}
|
122 |
?>
|
123 |
+
<div id="fs_checkout" class="wrap fs-full-size-wrapper">
|
124 |
<div id="iframe"></div>
|
125 |
<script type="text/javascript">
|
126 |
// http://stackoverflow.com/questions/4583703/jquery-post-request-not-ajax
|
175 |
var
|
176 |
// Keep track of the iframe height.
|
177 |
iframe_height = 800,
|
178 |
+
base_url = '<?php echo FS_CHECKOUT__ADDRESS ?>',
|
179 |
// Pass the parent page URL into the Iframe in a meaningful way (this URL could be
|
180 |
// passed via query string or hard coded into the child page, it depends on your needs).
|
181 |
+
src = base_url + '/?<?php echo http_build_query( $query_params ) ?>#' + encodeURIComponent(document.location.href),
|
182 |
|
183 |
// Append the Iframe into the DOM.
|
184 |
iframe = $('<iframe " src="' + src + '" width="100%" height="' + iframe_height + 'px" scrolling="no" frameborder="0" style="background: transparent;"><\/iframe>')
|
199 |
// Post data to activation URL.
|
200 |
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
201 |
'fs_action' => $slug . '_activate_new',
|
202 |
+
'plugin_id' => $plugin_id
|
203 |
) ), $slug . '_activate_new' ) ?>', {
|
204 |
user_id : data.user.id,
|
205 |
user_secret_key : data.user.secret_key,
|
213 |
FS.PostMessage.receiveOnce('pending_activation', function (data) {
|
214 |
$.form('<?php echo fs_nonce_url( $fs->_get_admin_page_url( 'account', array(
|
215 |
'fs_action' => $slug . '_activate_new',
|
216 |
+
'plugin_id' => $plugin_id,
|
217 |
'pending_activation' => true,
|
218 |
) ), $slug . '_activate_new' ) ?>', {
|
219 |
user_email: data.user_email
|
233 |
'activation_url' => fs_nonce_url( $fs->_get_admin_page_url( '',
|
234 |
array(
|
235 |
'fs_action' => $slug . '_activate_new',
|
236 |
+
'plugin_id' => $plugin_id,
|
237 |
|
238 |
) ),
|
239 |
$slug . '_activate_new' )
|
242 |
});
|
243 |
|
244 |
FS.PostMessage.receiveOnce('get_dimensions', function (data) {
|
|
|
|
|
245 |
FS.PostMessage.post('dimensions', {
|
246 |
height : $(document.body).height(),
|
247 |
scrollTop: $(document).scrollTop()
|
248 |
}, iframe[0]);
|
249 |
});
|
250 |
+
|
251 |
+
var updateHeight = function(){
|
252 |
+
iframe.css('min-height', $('#wpwrap').height() + 'px');
|
253 |
+
};
|
254 |
+
|
255 |
+
$(document).ready(updateHeight);
|
256 |
+
|
257 |
+
$(window).resize(updateHeight)
|
258 |
});
|
259 |
})(jQuery);
|
260 |
</script>
|
261 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
freemius/templates/connect.php
CHANGED
@@ -36,10 +36,12 @@
|
|
36 |
$site_url = substr( $site_url, $protocol_pos + 3 );
|
37 |
}
|
38 |
|
39 |
-
$
|
40 |
-
|
|
|
|
|
41 |
// Insights platform information.
|
42 |
-
'
|
43 |
|
44 |
$freemius_site_url .= '?' . http_build_query( array(
|
45 |
'id' => $fs->get_id(),
|
@@ -80,7 +82,7 @@
|
|
80 |
</div>
|
81 |
<div class="fs-content">
|
82 |
<?php if ( ! empty( $error ) ) : ?>
|
83 |
-
<p class="fs-error"><?php echo $error ?></p>
|
84 |
<?php endif ?>
|
85 |
<p><?php
|
86 |
$button_label = 'opt-in-connect';
|
@@ -267,7 +269,7 @@
|
|
267 |
<a href="https://freemius.com/privacy/" target="_blank"
|
268 |
tabindex="1"><?php _efs( 'privacy-policy', $slug ) ?></a>
|
269 |
-
|
270 |
-
<a href="
|
271 |
</div>
|
272 |
</div>
|
273 |
<script type="text/javascript">
|
36 |
$site_url = substr( $site_url, $protocol_pos + 3 );
|
37 |
}
|
38 |
|
39 |
+
$freemius_site_www = 'https://freemius.com';
|
40 |
+
|
41 |
+
$freemius_site_url = $freemius_site_www . '/' . ($fs->has_paid_plan() ?
|
42 |
+
'wordpress/' :
|
43 |
// Insights platform information.
|
44 |
+
'wordpress/usage-tracking/');
|
45 |
|
46 |
$freemius_site_url .= '?' . http_build_query( array(
|
47 |
'id' => $fs->get_id(),
|
82 |
</div>
|
83 |
<div class="fs-content">
|
84 |
<?php if ( ! empty( $error ) ) : ?>
|
85 |
+
<p class="fs-error"><?php echo esc_html( $error ) ?></p>
|
86 |
<?php endif ?>
|
87 |
<p><?php
|
88 |
$button_label = 'opt-in-connect';
|
269 |
<a href="https://freemius.com/privacy/" target="_blank"
|
270 |
tabindex="1"><?php _efs( 'privacy-policy', $slug ) ?></a>
|
271 |
-
|
272 |
+
<a href="<?php echo $freemius_site_www ?>/terms/" target="_blank" tabindex="1"><?php _efs( 'tos', $slug ) ?></a>
|
273 |
</div>
|
274 |
</div>
|
275 |
<script type="text/javascript">
|
freemius/templates/debug.php
CHANGED
@@ -14,70 +14,70 @@
|
|
14 |
|
15 |
$fs_options = FS_Option_Manager::get_manager( WP_FS__ACCOUNTS_OPTION_NAME, true );
|
16 |
?>
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
});
|
46 |
});
|
47 |
});
|
48 |
-
}
|
49 |
-
|
50 |
-
</
|
51 |
-
|
52 |
-
|
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 |
<?php
|
82 |
if ( ! defined( 'FS_API__ADDRESS' ) ) {
|
83 |
define( 'FS_API__ADDRESS', '://api.freemius.com' );
|
@@ -109,51 +109,51 @@
|
|
109 |
),
|
110 |
)
|
111 |
?>
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
} ?>>
|
126 |
-
<td><?php echo $p['key'] ?></td>
|
127 |
-
<td><?php echo $p['val'] ?></td>
|
128 |
-
</tr>
|
129 |
-
<?php $alternate = ! $alternate ?>
|
130 |
-
<?php endforeach ?>
|
131 |
-
</tbody>
|
132 |
-
</table>
|
133 |
-
<h2><?php _efs( 'sdk-versions' ) ?></h2>
|
134 |
-
<table id="fs_sdks" class="widefat">
|
135 |
-
<thead>
|
136 |
-
<tr>
|
137 |
-
<th><?php _efs( 'version' ) ?></th>
|
138 |
-
<th><?php _efs( 'sdk-path' ) ?></th>
|
139 |
-
<th><?php _efs( 'plugin-path' ) ?></th>
|
140 |
-
<th><?php _efs( 'is-active' ) ?></th>
|
141 |
-
</tr>
|
142 |
-
</thead>
|
143 |
-
<tbody>
|
144 |
-
<?php foreach ( $fs_active_plugins->plugins as $sdk_path => &$data ) : ?>
|
145 |
-
<?php $is_active = ( WP_FS__SDK_VERSION == $data->version ) ?>
|
146 |
-
<tr<?php if ( $is_active ) {
|
147 |
-
echo ' style="background: #E6FFE6; font-weight: bold"';
|
148 |
} ?>>
|
149 |
-
<td><?php echo $
|
150 |
-
<td><?php echo $
|
151 |
-
<td><?php echo $data->plugin_path ?></td>
|
152 |
-
<td><?php echo ( $is_active ) ? 'Active' : 'Inactive' ?></td>
|
153 |
</tr>
|
|
|
154 |
<?php endforeach ?>
|
155 |
-
|
156 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
<?php $plugins = $fs_options->get_option( 'plugins' ) ?>
|
158 |
<?php if ( is_array( $plugins ) && 0 < count( $plugins ) ) : ?>
|
159 |
<h2><?php _efs( 'plugins' ) ?></h2>
|
@@ -176,9 +176,9 @@
|
|
176 |
<?php $is_active = is_plugin_active( $data->file ) ?>
|
177 |
<?php $fs = $is_active ? freemius( $slug ) : null ?>
|
178 |
<tr<?php if ( $is_active ) {
|
179 |
-
if ($fs->has_api_connectivity() && $fs->is_on()) {
|
180 |
echo ' style="background: #E6FFE6; font-weight: bold"';
|
181 |
-
}else{
|
182 |
echo ' style="background: #ffd0d0; font-weight: bold"';
|
183 |
}
|
184 |
} ?>>
|
@@ -203,13 +203,15 @@
|
|
203 |
<td><?php echo $data->file ?></td>
|
204 |
<td><?php echo $data->public_key ?></td>
|
205 |
<td>
|
206 |
-
<?php if ($is_active && $fs->has_trial_plan()) : ?>
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
|
212 |
-
|
|
|
|
|
213 |
<?php endif ?>
|
214 |
</td>
|
215 |
</tr>
|
@@ -320,6 +322,7 @@
|
|
320 |
</tbody>
|
321 |
</table>
|
322 |
<?php endif ?>
|
|
|
323 |
<?php
|
324 |
/**
|
325 |
* @var FS_Plugin_License[] $licenses
|
@@ -364,4 +367,177 @@
|
|
364 |
<?php endforeach ?>
|
365 |
</tbody>
|
366 |
</table>
|
367 |
-
<?php endif ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
|
15 |
$fs_options = FS_Option_Manager::get_manager( WP_FS__ACCOUNTS_OPTION_NAME, true );
|
16 |
?>
|
17 |
+
<h1><?php echo __fs( 'Freemius Debug' ) . ' - ' . __fs( 'SDK' ) . ' v.' . $fs_active_plugins->newest->version ?></h1>
|
18 |
+
<div>
|
19 |
+
<!-- Debugging Switch -->
|
20 |
+
<?php //$debug_mode = get_option( 'fs_debug_mode', null ) ?>
|
21 |
+
<span class="switch-label"><?php _efs( 'debugging' ) ?></span>
|
22 |
+
|
23 |
+
<div class="switch <?php echo WP_FS__DEBUG_SDK ? 'off' : 'on' ?>">
|
24 |
+
<div class="toggle"></div>
|
25 |
+
<span class="on"><?php _efs( 'on' ) ?></span>
|
26 |
+
<span class="off"><?php _efs( 'off' ) ?></span>
|
27 |
+
</div>
|
28 |
+
<script type="text/javascript">
|
29 |
+
(function ($) {
|
30 |
+
$(document).ready(function () {
|
31 |
+
// Switch toggle
|
32 |
+
$('.switch').click(function () {
|
33 |
+
$(this)
|
34 |
+
.toggleClass('on')
|
35 |
+
.toggleClass('off');
|
36 |
+
|
37 |
+
$.post(ajaxurl, {
|
38 |
+
action: 'fs_toggle_debug_mode',
|
39 |
+
is_on : ($(this).hasClass('off') ? 1 : 0)
|
40 |
+
}, function (response) {
|
41 |
+
if (1 == response) {
|
42 |
+
// Refresh page on success.
|
43 |
+
location.reload();
|
44 |
+
}
|
|
|
45 |
});
|
46 |
});
|
47 |
+
});
|
48 |
+
}(jQuery));
|
49 |
+
</script>
|
50 |
+
</div>
|
51 |
+
<h2><?php _efs( 'actions' ) ?></h2>
|
52 |
+
<table>
|
53 |
+
<tbody>
|
54 |
+
<tr>
|
55 |
+
<td>
|
56 |
+
<!-- Delete All Accounts -->
|
57 |
+
<form action="" method="POST">
|
58 |
+
<input type="hidden" name="fs_action" value="restart_freemius">
|
59 |
+
<?php wp_nonce_field( 'restart_freemius' ) ?>
|
60 |
+
<button class="button button-primary"
|
61 |
+
onclick="if (confirm('<?php _efs( 'delete-all-confirm' ) ?>')) this.parentNode.submit(); return false;"><?php _efs( 'delete-all-accounts' ) ?></button>
|
62 |
+
</form>
|
63 |
+
</td>
|
64 |
+
<td>
|
65 |
+
<!-- Clear API Cache -->
|
66 |
+
<form action="" method="POST">
|
67 |
+
<input type="hidden" name="fs_clear_api_cache" value="true">
|
68 |
+
<button class="button button-primary"><?php _efs( 'clear-api-cache' ) ?></button>
|
69 |
+
</form>
|
70 |
+
</td>
|
71 |
+
<td>
|
72 |
+
<!-- Sync Data with Server -->
|
73 |
+
<form action="" method="POST">
|
74 |
+
<input type="hidden" name="background_sync" value="true">
|
75 |
+
<button class="button button-primary"><?php _efs( 'sync-data-from-server' ) ?></button>
|
76 |
+
</form>
|
77 |
+
</td>
|
78 |
+
</tr>
|
79 |
+
</tbody>
|
80 |
+
</table>
|
81 |
<?php
|
82 |
if ( ! defined( 'FS_API__ADDRESS' ) ) {
|
83 |
define( 'FS_API__ADDRESS', '://api.freemius.com' );
|
109 |
),
|
110 |
)
|
111 |
?>
|
112 |
+
<br>
|
113 |
+
<table class="widefat">
|
114 |
+
<thead>
|
115 |
+
<tr>
|
116 |
+
<th><?php _efs( 'key' ) ?></th>
|
117 |
+
<th><?php _efs( 'value' ) ?></th>
|
118 |
+
</tr>
|
119 |
+
</thead>
|
120 |
+
<tbody>
|
121 |
+
<?php $alternate = false;
|
122 |
+
foreach ( $defines as $p ) : ?>
|
123 |
+
<tr<?php if ( $alternate ) {
|
124 |
+
echo ' class="alternate"';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
} ?>>
|
126 |
+
<td><?php echo $p['key'] ?></td>
|
127 |
+
<td><?php echo $p['val'] ?></td>
|
|
|
|
|
128 |
</tr>
|
129 |
+
<?php $alternate = ! $alternate ?>
|
130 |
<?php endforeach ?>
|
131 |
+
</tbody>
|
132 |
+
</table>
|
133 |
+
<h2><?php _efs( 'sdk-versions' ) ?></h2>
|
134 |
+
<table id="fs_sdks" class="widefat">
|
135 |
+
<thead>
|
136 |
+
<tr>
|
137 |
+
<th><?php _efs( 'version' ) ?></th>
|
138 |
+
<th><?php _efs( 'sdk-path' ) ?></th>
|
139 |
+
<th><?php _efs( 'plugin-path' ) ?></th>
|
140 |
+
<th><?php _efs( 'is-active' ) ?></th>
|
141 |
+
</tr>
|
142 |
+
</thead>
|
143 |
+
<tbody>
|
144 |
+
<?php foreach ( $fs_active_plugins->plugins as $sdk_path => &$data ) : ?>
|
145 |
+
<?php $is_active = ( WP_FS__SDK_VERSION == $data->version ) ?>
|
146 |
+
<tr<?php if ( $is_active ) {
|
147 |
+
echo ' style="background: #E6FFE6; font-weight: bold"';
|
148 |
+
} ?>>
|
149 |
+
<td><?php echo $data->version ?></td>
|
150 |
+
<td><?php echo $sdk_path ?></td>
|
151 |
+
<td><?php echo $data->plugin_path ?></td>
|
152 |
+
<td><?php echo ( $is_active ) ? 'Active' : 'Inactive' ?></td>
|
153 |
+
</tr>
|
154 |
+
<?php endforeach ?>
|
155 |
+
</tbody>
|
156 |
+
</table>
|
157 |
<?php $plugins = $fs_options->get_option( 'plugins' ) ?>
|
158 |
<?php if ( is_array( $plugins ) && 0 < count( $plugins ) ) : ?>
|
159 |
<h2><?php _efs( 'plugins' ) ?></h2>
|
176 |
<?php $is_active = is_plugin_active( $data->file ) ?>
|
177 |
<?php $fs = $is_active ? freemius( $slug ) : null ?>
|
178 |
<tr<?php if ( $is_active ) {
|
179 |
+
if ( $fs->has_api_connectivity() && $fs->is_on() ) {
|
180 |
echo ' style="background: #E6FFE6; font-weight: bold"';
|
181 |
+
} else {
|
182 |
echo ' style="background: #ffd0d0; font-weight: bold"';
|
183 |
}
|
184 |
} ?>>
|
203 |
<td><?php echo $data->file ?></td>
|
204 |
<td><?php echo $data->public_key ?></td>
|
205 |
<td>
|
206 |
+
<?php if ( $is_active && $fs->has_trial_plan() ) : ?>
|
207 |
+
<form action="" method="POST">
|
208 |
+
<input type="hidden" name="fs_action" value="simulate_trial">
|
209 |
+
<input type="hidden" name="slug" value="<?php echo $slug ?>">
|
210 |
+
<?php wp_nonce_field( 'simulate_trial' ) ?>
|
211 |
|
212 |
+
<button type="submit"
|
213 |
+
class="button button-primary simulate-trial"><?php _efs( 'Simulate Trial' ) ?></button>
|
214 |
+
</form>
|
215 |
<?php endif ?>
|
216 |
</td>
|
217 |
</tr>
|
322 |
</tbody>
|
323 |
</table>
|
324 |
<?php endif ?>
|
325 |
+
|
326 |
<?php
|
327 |
/**
|
328 |
* @var FS_Plugin_License[] $licenses
|
367 |
<?php endforeach ?>
|
368 |
</tbody>
|
369 |
</table>
|
370 |
+
<?php endif ?>
|
371 |
+
|
372 |
+
<?php if ( FS_Logger::is_storage_logging_on() ) : ?>
|
373 |
+
|
374 |
+
<h2><?php _efs( 'debug-log' ) ?></h2>
|
375 |
+
|
376 |
+
<div id="fs_debug_filters">
|
377 |
+
<select name="type">
|
378 |
+
<option value="" selected="selected"><?php _efs( 'all-types' ) ?></option>
|
379 |
+
<option value="warn_error">Warnings & Errors</option>
|
380 |
+
<option value="error">Errors</option>
|
381 |
+
<option value="warn">Warnings</option>
|
382 |
+
<option value="info">Info</option>
|
383 |
+
</select>
|
384 |
+
<select name="request_type">
|
385 |
+
<option value="" selected="selected"><?php _efs( 'all-requests' ) ?></option>
|
386 |
+
<option value="call">Sync</option>
|
387 |
+
<option value="ajax">AJAX</option>
|
388 |
+
<option value="cron">WP Cron</option>
|
389 |
+
</select>
|
390 |
+
<input name="file" type="text" placeholder="<?php _efs( 'file' ) ?>"/>
|
391 |
+
<input name="function" type="text" placeholder="<?php _efs( 'function' ) ?>"/>
|
392 |
+
<input name="process_id" type="text" placeholder="<?php _efs( 'process-id' ) ?>"/>
|
393 |
+
<input name="logger" type="text" placeholder="<?php _efs( 'logger' ) ?>"/>
|
394 |
+
<input name="message" type="text" placeholder="<?php _efs( 'message' ) ?>"/>
|
395 |
+
<div style="margin: 10px 0">
|
396 |
+
<button id="fs_filter" class="button" style="float: left"><i class="dashicons dashicons-filter"></i> <?php _efs( 'filter' ) ?>
|
397 |
+
</button>
|
398 |
+
|
399 |
+
<form action="" method="POST" style="float: left; margin-left: 10px;">
|
400 |
+
<input type="hidden" name="fs_action" value="download_logs">
|
401 |
+
<?php wp_nonce_field( 'download_logs' ) ?>
|
402 |
+
<div class="fs-filters"></div>
|
403 |
+
<button id="fs_download" class="button" type="submit"><i
|
404 |
+
class="dashicons dashicons-download"></i> <?php _efs( 'download' ) ?></button>
|
405 |
+
</form>
|
406 |
+
<div style="clear: both"></div>
|
407 |
+
</div>
|
408 |
+
</div>
|
409 |
+
|
410 |
+
<div id="fs_log_book" style="height: 300px; overflow: auto;">
|
411 |
+
<table class="widefat">
|
412 |
+
<thead>
|
413 |
+
<tr>
|
414 |
+
<th>#</th>
|
415 |
+
<th><?php _efs( 'type' ) ?></th>
|
416 |
+
<th><?php _efs( 'id' ) ?></th>
|
417 |
+
<th><?php _efs( 'function' ) ?></th>
|
418 |
+
<th><?php _efs( 'message' ) ?></th>
|
419 |
+
<th><?php _efs( 'file' ) ?></th>
|
420 |
+
<th><?php _efs( 'timestamp' ) ?></th>
|
421 |
+
</tr>
|
422 |
+
</thead>
|
423 |
+
<tbody>
|
424 |
+
<tr style="display: none">
|
425 |
+
<td>{$log.log_order}.</td>
|
426 |
+
<td class="fs-col--type">{$log.type}</td>
|
427 |
+
<td class="fs-col--logger">{$log.logger}</td>
|
428 |
+
<td class="fs-col--function">{$log.function}</td>
|
429 |
+
<td class="fs-col--message">
|
430 |
+
<a href="#" onclick="jQuery(this).parent().find('div').toggle(); return false;">
|
431 |
+
<nobr>{$log.message_short}</nobr>
|
432 |
+
</a>
|
433 |
+
<div style="display: none;">{$log.message}</div>
|
434 |
+
</td>
|
435 |
+
<td class="fs-col--file">{$log.file}:{$log.line}</td>
|
436 |
+
<td class="fs-col--timestamp">{$log.created}</td>
|
437 |
+
</tr>
|
438 |
+
|
439 |
+
</tbody>
|
440 |
+
</table>
|
441 |
+
</div>
|
442 |
+
<script type="text/javascript">
|
443 |
+
jQuery(document).ready(function ($) {
|
444 |
+
var filtersChanged = false,
|
445 |
+
offset = 0,
|
446 |
+
limit = 200,
|
447 |
+
prevFiltersSignature = null;
|
448 |
+
|
449 |
+
var getFilters = function () {
|
450 |
+
var filters = {},
|
451 |
+
signature = '';
|
452 |
+
|
453 |
+
$('#fs_debug_filters').find('select, input').each(function (i, e) {
|
454 |
+
var $element = $(e);
|
455 |
+
|
456 |
+
if ('hidden' === $element.attr('type'))
|
457 |
+
return;
|
458 |
+
|
459 |
+
var val = $element.val();
|
460 |
+
if ('' !== val.trim()) {
|
461 |
+
var name = $(e).attr('name');
|
462 |
+
filters[name] = val;
|
463 |
+
signature += name + '=' + val + '~';
|
464 |
+
}
|
465 |
+
});
|
466 |
+
|
467 |
+
if (signature != prevFiltersSignature) {
|
468 |
+
filtersChanged = true;
|
469 |
+
prevFiltersSignature = signature;
|
470 |
+
} else {
|
471 |
+
filtersChanged = false;
|
472 |
+
}
|
473 |
+
|
474 |
+
return filters;
|
475 |
+
};
|
476 |
+
|
477 |
+
$('#fs_download').parent().submit(function () {
|
478 |
+
var filters = getFilters(),
|
479 |
+
hiddenFields = '';
|
480 |
+
|
481 |
+
for (var f in filters) {
|
482 |
+
if (filters.hasOwnProperty(f)) {
|
483 |
+
hiddenFields += '<input type="hidden" name="filters[' + f + ']" value="' + filters[f] + '" />';
|
484 |
+
}
|
485 |
+
}
|
486 |
+
|
487 |
+
$(this).find('.fs-filters').html(hiddenFields);
|
488 |
+
});
|
489 |
+
|
490 |
+
var loadLogs = function () {
|
491 |
+
var $tbody = $('#fs_log_book tbody'),
|
492 |
+
template = $tbody.find('tr:first-child').html(),
|
493 |
+
filters = getFilters();
|
494 |
+
|
495 |
+
if (!filtersChanged) {
|
496 |
+
offset += limit;
|
497 |
+
} else {
|
498 |
+
// Cleanup table for new filter (only keep template row).
|
499 |
+
$tbody.find('tr').each(function(i, e){
|
500 |
+
if (0 == i)
|
501 |
+
return;
|
502 |
+
|
503 |
+
$(e).remove();
|
504 |
+
});
|
505 |
+
|
506 |
+
offset = 0;
|
507 |
+
}
|
508 |
+
|
509 |
+
$.post(ajaxurl, {
|
510 |
+
action : 'fs_get_debug_log',
|
511 |
+
filters: filters,
|
512 |
+
offset: offset,
|
513 |
+
limit: limit
|
514 |
+
}, function (response) {
|
515 |
+
|
516 |
+
for (var i = 0; i < response.data.length; i++) {
|
517 |
+
var templateCopy = template;
|
518 |
+
|
519 |
+
response.data[i].message_short = (response.data[i].message.length > 32) ?
|
520 |
+
response.data[i].message.substr(0, 32) + '...' :
|
521 |
+
response.data[i].message;
|
522 |
+
|
523 |
+
for (var p in response.data[i]) {
|
524 |
+
if (response.data[i].hasOwnProperty(p)) {
|
525 |
+
templateCopy = templateCopy.replace('{$log.' + p + '}', response.data[i][p]);
|
526 |
+
}
|
527 |
+
}
|
528 |
+
|
529 |
+
$tbody.append('<tr' + (i % 2 ? ' class="alternate"' : '') + '>' + templateCopy + '</tr>');
|
530 |
+
}
|
531 |
+
});
|
532 |
+
};
|
533 |
+
|
534 |
+
$('#fs_filter').click(function () {
|
535 |
+
loadLogs();
|
536 |
+
|
537 |
+
return false;
|
538 |
+
});
|
539 |
+
|
540 |
+
loadLogs();
|
541 |
+
});
|
542 |
+
</script>
|
543 |
+
<?php endif ?>
|
freemius/templates/debug/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/templates/debug/logger.php
CHANGED
@@ -41,8 +41,8 @@
|
|
41 |
} ?>>
|
42 |
<td><?php echo $log['cnt'] ?>.</td>
|
43 |
<td><?php echo $logger->get_id() ?></td>
|
44 |
-
<td><?php echo $log['
|
45 |
-
<td><b><code style="color: blue;"><?php echo $log['function'] ?></code></b></td>
|
46 |
<td>
|
47 |
<?php
|
48 |
printf(
|
@@ -56,7 +56,7 @@
|
|
56 |
</td>
|
57 |
<td><?php
|
58 |
if ( isset( $log['file'] ) ) {
|
59 |
-
echo substr( $log['file'], $logger->get_file() ) . ':' . $log['line']
|
60 |
}
|
61 |
?></td>
|
62 |
<td><?php echo number_format( 100 * ( $log['timestamp'] - WP_FS__SCRIPT_START_TIME ), 2 ) . ' ' . __fs( 'ms' ) ?></td>
|
41 |
} ?>>
|
42 |
<td><?php echo $log['cnt'] ?>.</td>
|
43 |
<td><?php echo $logger->get_id() ?></td>
|
44 |
+
<td><?php echo $log['log_type'] ?></td>
|
45 |
+
<td><b><code style="color: blue;"><?php echo ( ! empty( $log['class'] ) ? $log['class'] . $log['type'] : '' ) . $log['function'] ?></code></b></td>
|
46 |
<td>
|
47 |
<?php
|
48 |
printf(
|
56 |
</td>
|
57 |
<td><?php
|
58 |
if ( isset( $log['file'] ) ) {
|
59 |
+
echo substr( $log['file'], $logger->get_file() ) . ':' . $log['line'];
|
60 |
}
|
61 |
?></td>
|
62 |
<td><?php echo number_format( 100 * ( $log['timestamp'] - WP_FS__SCRIPT_START_TIME ), 2 ) . ' ' . __fs( 'ms' ) ?></td>
|
freemius/templates/email.php
CHANGED
@@ -20,7 +20,7 @@
|
|
20 |
foreach ( $sections as $section_id => $section ) {
|
21 |
?>
|
22 |
<thead>
|
23 |
-
<tr><th colspan="2" style="text-align: left; background: #333; color: #fff; padding: 5px;"><?php echo $section['title']
|
24 |
</thead>
|
25 |
<tbody>
|
26 |
<?php
|
@@ -30,10 +30,10 @@
|
|
30 |
<tr>
|
31 |
<?php
|
32 |
if ( 1 === $col_count ) { ?>
|
33 |
-
<td style="vertical-align: top;" colspan="2"><?php echo $row[0]
|
34 |
<?php
|
35 |
} else { ?>
|
36 |
-
<td style="vertical-align: top;"><b><?php echo $row[0]
|
37 |
<td><?php echo $row[1]; ?></td>
|
38 |
<?php
|
39 |
}
|
20 |
foreach ( $sections as $section_id => $section ) {
|
21 |
?>
|
22 |
<thead>
|
23 |
+
<tr><th colspan="2" style="text-align: left; background: #333; color: #fff; padding: 5px;"><?php echo esc_html($section['title']) ?></th></tr>
|
24 |
</thead>
|
25 |
<tbody>
|
26 |
<?php
|
30 |
<tr>
|
31 |
<?php
|
32 |
if ( 1 === $col_count ) { ?>
|
33 |
+
<td style="vertical-align: top;" colspan="2"><?php echo $row[0] ?></td>
|
34 |
<?php
|
35 |
} else { ?>
|
36 |
+
<td style="vertical-align: top;"><b><?php echo esc_html($row[0]) ?>:</b></td>
|
37 |
<td><?php echo $row[1]; ?></td>
|
38 |
<?php
|
39 |
}
|
freemius/templates/forms/deactivation/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/templates/forms/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/templates/forms/license-activation.php
CHANGED
@@ -63,15 +63,15 @@ HTML;
|
|
63 |
'<div class="fs-modal fs-modal-license-activation">'
|
64 |
+ ' <div class="fs-modal-dialog">'
|
65 |
+ ' <div class="fs-modal-header">'
|
66 |
-
+ ' <h4><?php echo $header_title ?></h4>'
|
67 |
-
+ ' <a href="!#" class="fs-close"><i class="dashicons dashicons-no" title="<?php
|
68 |
+ ' </div>'
|
69 |
+ ' <div class="fs-modal-body">'
|
70 |
+ ' <div class="fs-modal-panel active">' + modalContentHtml + '</div>'
|
71 |
+ ' </div>'
|
72 |
+ ' <div class="fs-modal-footer">'
|
73 |
-
+ ' <button class="button button-secondary button-close" tabindex="4"><?php
|
74 |
-
+ ' <button class="button button-primary button-activate-license" tabindex="3"><?php echo $activate_button_text
|
75 |
+ ' </div>'
|
76 |
+ ' </div>'
|
77 |
+ '</div>',
|
@@ -138,7 +138,7 @@ HTML;
|
|
138 |
license_key: licenseKey
|
139 |
},
|
140 |
beforeSend: function () {
|
141 |
-
$activateLicenseButton.text(
|
142 |
},
|
143 |
success: function( result ) {
|
144 |
var resultObj = $.parseJSON( result );
|
@@ -181,7 +181,7 @@ HTML;
|
|
181 |
|
182 |
function resetActivateLicenseButton() {
|
183 |
enableActivateLicenseButton();
|
184 |
-
$activateLicenseButton.text(
|
185 |
}
|
186 |
|
187 |
function resetModal() {
|
63 |
'<div class="fs-modal fs-modal-license-activation">'
|
64 |
+ ' <div class="fs-modal-dialog">'
|
65 |
+ ' <div class="fs-modal-header">'
|
66 |
+
+ ' <h4><?php echo esc_js($header_title) ?></h4>'
|
67 |
+
+ ' <a href="!#" class="fs-close"><i class="dashicons dashicons-no" title="<?php fs_esc_attr_echo( 'dismiss', $slug ) ?>"></i></a>'
|
68 |
+ ' </div>'
|
69 |
+ ' <div class="fs-modal-body">'
|
70 |
+ ' <div class="fs-modal-panel active">' + modalContentHtml + '</div>'
|
71 |
+ ' </div>'
|
72 |
+ ' <div class="fs-modal-footer">'
|
73 |
+
+ ' <button class="button button-secondary button-close" tabindex="4"><?php fs_esc_js_echo( 'cancel', $slug ) ?></button>'
|
74 |
+
+ ' <button class="button button-primary button-activate-license" tabindex="3"><?php echo esc_js( $activate_button_text ) ?></button>'
|
75 |
+ ' </div>'
|
76 |
+ ' </div>'
|
77 |
+ '</div>',
|
138 |
license_key: licenseKey
|
139 |
},
|
140 |
beforeSend: function () {
|
141 |
+
$activateLicenseButton.text( <?php fs_json_encode_echo( 'activating-license', $slug ) ?> );
|
142 |
},
|
143 |
success: function( result ) {
|
144 |
var resultObj = $.parseJSON( result );
|
181 |
|
182 |
function resetActivateLicenseButton() {
|
183 |
enableActivateLicenseButton();
|
184 |
+
$activateLicenseButton.text( <?php echo json_encode( $activate_button_text ) ?> );
|
185 |
}
|
186 |
|
187 |
function resetModal() {
|
freemius/templates/forms/optout.php
CHANGED
@@ -24,11 +24,16 @@
|
|
24 |
$opt_out_button_text = __fs( 'opt-out', $slug );
|
25 |
// @todo Change 'plugin' with module type when migrating with 1.2.2 (themes version).
|
26 |
$opt_out_message_appreciation = sprintf( __fs( 'opt-out-message-appreciation', $slug ), 'plugin' );
|
27 |
-
$opt_out_message_usage_tracking = sprintf( __fs( 'opt-out-message-usage-tracking', $slug ),
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
|
|
|
|
|
|
|
|
|
|
32 |
|
33 |
$admin_notice_params = array(
|
34 |
'id' => '',
|
@@ -59,14 +64,14 @@ HTML;
|
|
59 |
'<div class="fs-modal fs-modal-opt-out">'
|
60 |
+ ' <div class="fs-modal-dialog">'
|
61 |
+ ' <div class="fs-modal-header">'
|
62 |
-
+ ' <h4><?php echo $opt_out_button_text ?></h4>'
|
63 |
+ ' </div>'
|
64 |
+ ' <div class="fs-modal-body">'
|
65 |
+ ' <div class="fs-modal-panel active">' + modalContentHtml + '</div>'
|
66 |
+ ' </div>'
|
67 |
+ ' <div class="fs-modal-footer">'
|
68 |
-
+ ' <button class="button button-secondary button-opt-out" tabindex="1"><?php echo $opt_out_button_text ?></button>'
|
69 |
-
+ ' <button class="button button-primary button-close" tabindex="2"><?php
|
70 |
+ ' </div>'
|
71 |
+ ' </div>'
|
72 |
+ '</div>',
|
@@ -129,7 +134,7 @@ HTML;
|
|
129 |
|
130 |
function resetOptOutButton() {
|
131 |
enableOptOutButton();
|
132 |
-
$optOutButton.text(
|
133 |
}
|
134 |
|
135 |
function resetModal() {
|
@@ -155,20 +160,20 @@ HTML;
|
|
155 |
},
|
156 |
beforeSend: function() {
|
157 |
if ( 'opt-in' == action ) {
|
158 |
-
$actionLink.text(
|
159 |
} else {
|
160 |
-
$optOutButton.text(
|
161 |
}
|
162 |
},
|
163 |
success: function( resultObj ) {
|
164 |
if ( resultObj.success ) {
|
165 |
if ( 'allow_tracking' == action ) {
|
166 |
action = 'stop_tracking';
|
167 |
-
$actionLink.text(
|
168 |
showOptInAppreciationMessageAndScrollToTop();
|
169 |
} else {
|
170 |
action = 'allow_tracking';
|
171 |
-
$actionLink.text(
|
172 |
closeModal();
|
173 |
|
174 |
if ( $adminNotice.length > 0 ) {
|
24 |
$opt_out_button_text = __fs( 'opt-out', $slug );
|
25 |
// @todo Change 'plugin' with module type when migrating with 1.2.2 (themes version).
|
26 |
$opt_out_message_appreciation = sprintf( __fs( 'opt-out-message-appreciation', $slug ), 'plugin' );
|
27 |
+
$opt_out_message_usage_tracking = sprintf( __fs( 'opt-out-message-usage-tracking', $slug ), $plugin_title );
|
28 |
+
$opt_out_message_clicking_opt_out = sprintf(
|
29 |
+
__fs( 'opt-out-message-clicking-opt-out', $slug ),
|
30 |
+
$plugin_title,
|
31 |
+
sprintf(
|
32 |
+
'<a href="%s" target="_blank">%s</a>',
|
33 |
+
'https://freemius.com',
|
34 |
+
'freemius.com'
|
35 |
+
)
|
36 |
+
);
|
37 |
|
38 |
$admin_notice_params = array(
|
39 |
'id' => '',
|
64 |
'<div class="fs-modal fs-modal-opt-out">'
|
65 |
+ ' <div class="fs-modal-dialog">'
|
66 |
+ ' <div class="fs-modal-header">'
|
67 |
+
+ ' <h4><?php echo esc_js($opt_out_button_text) ?></h4>'
|
68 |
+ ' </div>'
|
69 |
+ ' <div class="fs-modal-body">'
|
70 |
+ ' <div class="fs-modal-panel active">' + modalContentHtml + '</div>'
|
71 |
+ ' </div>'
|
72 |
+ ' <div class="fs-modal-footer">'
|
73 |
+
+ ' <button class="button button-secondary button-opt-out" tabindex="1"><?php echo esc_js($opt_out_button_text) ?></button>'
|
74 |
+
+ ' <button class="button button-primary button-close" tabindex="2"><?php echo esc_js( __fs( 'opt-out-cancel', $slug ) ) ?></button>'
|
75 |
+ ' </div>'
|
76 |
+ ' </div>'
|
77 |
+ '</div>',
|
134 |
|
135 |
function resetOptOutButton() {
|
136 |
enableOptOutButton();
|
137 |
+
$optOutButton.text( <?php echo json_encode($opt_out_button_text) ?> );
|
138 |
}
|
139 |
|
140 |
function resetModal() {
|
160 |
},
|
161 |
beforeSend: function() {
|
162 |
if ( 'opt-in' == action ) {
|
163 |
+
$actionLink.text( <?php fs_json_encode_echo( 'opting-in', $slug ) ?> )
|
164 |
} else {
|
165 |
+
$optOutButton.text( <?php fs_json_encode_echo( 'opting-out', $slug ) ?> );
|
166 |
}
|
167 |
},
|
168 |
success: function( resultObj ) {
|
169 |
if ( resultObj.success ) {
|
170 |
if ( 'allow_tracking' == action ) {
|
171 |
action = 'stop_tracking';
|
172 |
+
$actionLink.text( <?php fs_json_encode_echo( 'opt-out', $slug ) ?> );
|
173 |
showOptInAppreciationMessageAndScrollToTop();
|
174 |
} else {
|
175 |
action = 'allow_tracking';
|
176 |
+
$actionLink.text( <?php fs_json_encode_echo( 'opt-in', $slug ) ?> );
|
177 |
closeModal();
|
178 |
|
179 |
if ( $adminNotice.length > 0 ) {
|
freemius/templates/forms/resend-key.php
CHANGED
@@ -16,21 +16,48 @@
|
|
16 |
$slug = $VARS['slug'];
|
17 |
$fs = freemius( $slug );
|
18 |
|
19 |
-
$message_above_input_field = __fs( 'ask-for-upgrade-email-address', $slug );
|
20 |
$send_button_text = __fs( 'send-license-key', $slug );
|
21 |
$cancel_button_text = __fs( 'cancel', $slug );
|
22 |
-
$email_address_placeholder =
|
|
|
23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
$modal_content_html = <<< HTML
|
25 |
<div class="notice notice-error inline license-resend-message"><p></p></div>
|
26 |
<p>{$message_above_input_field}</p>
|
27 |
<div class="input-container">
|
28 |
-
|
29 |
-
<a href="#" class="button button-primary button-send-license-key disabled" tabindex="2">{$send_button_text}</a>
|
30 |
-
</div>
|
31 |
-
<div class="email-address-container">
|
32 |
-
<input class="email-address" type="text" placeholder="{$email_address_placeholder}" tabindex="1">
|
33 |
-
</div>
|
34 |
</div>
|
35 |
HTML;
|
36 |
|
@@ -39,30 +66,30 @@ HTML;
|
|
39 |
<script type="text/javascript">
|
40 |
(function ($) {
|
41 |
$(document).ready(function () {
|
42 |
-
var
|
43 |
-
modalHtml
|
44 |
-
'<div class="fs-modal fs-modal-license-key-resend">'
|
45 |
+ ' <div class="fs-modal-dialog">'
|
46 |
+ ' <div class="fs-modal-header">'
|
47 |
-
+ ' <h4><?php echo $send_button_text ?></h4>'
|
48 |
-
+ ' <a href="#!" class="fs-close" tabindex="3" title="Close"><i class="dashicons dashicons-no" title="<?php
|
49 |
+ ' </div>'
|
50 |
+ ' <div class="fs-modal-body">'
|
51 |
-
+ ' <div class="fs-modal-panel active">' +
|
52 |
+ ' </div>'
|
53 |
+ ' </div>'
|
54 |
+ '</div>',
|
55 |
-
$modal
|
56 |
-
$
|
57 |
-
$
|
58 |
-
$
|
59 |
-
moduleSlug
|
60 |
-
|
|
|
|
|
61 |
|
62 |
$modal.appendTo($('body'));
|
63 |
|
64 |
-
registerEventHandlers();
|
65 |
-
|
66 |
function registerEventHandlers() {
|
67 |
$('a.show-license-resend-modal-' + moduleSlug).click(function (evt) {
|
68 |
evt.preventDefault();
|
@@ -70,30 +97,28 @@ HTML;
|
|
70 |
showModal();
|
71 |
});
|
72 |
|
73 |
-
|
|
|
|
|
|
|
74 |
|
75 |
-
|
|
|
|
|
76 |
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
});
|
84 |
|
85 |
$modal.on('blur', 'input.email-address', function () {
|
86 |
-
|
87 |
-
|
88 |
-
/**
|
89 |
-
* If email address is empty, disable the send license key button.
|
90 |
-
*/
|
91 |
-
if (0 === emailAddress.length) {
|
92 |
-
disableSendLicenseKeyButton();
|
93 |
-
}
|
94 |
});
|
95 |
|
96 |
-
$modal.on('click', '.fs-close', function (){
|
97 |
closeModal();
|
98 |
return false;
|
99 |
});
|
@@ -105,11 +130,11 @@ HTML;
|
|
105 |
return;
|
106 |
}
|
107 |
|
108 |
-
var
|
109 |
|
110 |
-
|
111 |
|
112 |
-
if (
|
113 |
return;
|
114 |
}
|
115 |
|
@@ -119,10 +144,10 @@ HTML;
|
|
119 |
data : {
|
120 |
action: '<?php echo $fs->get_action_tag( 'resend_license_key' ) ?>',
|
121 |
slug : moduleSlug,
|
122 |
-
email :
|
123 |
},
|
124 |
beforeSend: function () {
|
125 |
-
$
|
126 |
},
|
127 |
success : function (result) {
|
128 |
var resultObj = $.parseJSON(result);
|
@@ -130,19 +155,25 @@ HTML;
|
|
130 |
closeModal();
|
131 |
} else {
|
132 |
showError(resultObj.error);
|
133 |
-
|
134 |
}
|
135 |
}
|
136 |
});
|
137 |
});
|
138 |
}
|
139 |
|
|
|
|
|
|
|
|
|
140 |
function showModal() {
|
141 |
resetModal();
|
142 |
|
143 |
// Display the dialog box.
|
144 |
$modal.addClass('active');
|
145 |
-
|
|
|
|
|
146 |
|
147 |
var $body = $('body');
|
148 |
|
@@ -165,32 +196,51 @@ HTML;
|
|
165 |
$('body').removeClass('has-fs-modal');
|
166 |
}
|
167 |
|
168 |
-
function
|
169 |
-
|
170 |
-
$
|
171 |
}
|
172 |
|
173 |
function resetModal() {
|
174 |
hideError();
|
175 |
-
|
176 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
177 |
}
|
178 |
|
179 |
-
function
|
180 |
-
$
|
181 |
}
|
182 |
|
183 |
-
function
|
184 |
-
$
|
185 |
}
|
186 |
|
187 |
function hideError() {
|
188 |
-
$
|
189 |
}
|
190 |
|
191 |
function showError(msg) {
|
192 |
-
$
|
193 |
-
$
|
194 |
}
|
195 |
});
|
196 |
})(jQuery);
|
16 |
$slug = $VARS['slug'];
|
17 |
$fs = freemius( $slug );
|
18 |
|
|
|
19 |
$send_button_text = __fs( 'send-license-key', $slug );
|
20 |
$cancel_button_text = __fs( 'cancel', $slug );
|
21 |
+
$email_address_placeholder = fs_esc_attr( 'email-address', $slug );
|
22 |
+
$other_text = __fs( 'reason-other', $slug );
|
23 |
|
24 |
+
$is_freemium = $fs->is_freemium();
|
25 |
+
|
26 |
+
$send_button_text_html = esc_html($send_button_text);
|
27 |
+
|
28 |
+
$button_html = <<< HTML
|
29 |
+
<div class="button-container">
|
30 |
+
<a href="#" class="button button-primary button-send-license-key" tabindex="2">{$send_button_text_html}</a>
|
31 |
+
</div>
|
32 |
+
HTML;
|
33 |
+
|
34 |
+
if ( $is_freemium ) {
|
35 |
+
$current_user = Freemius::_get_current_wp_user();
|
36 |
+
$email = $current_user->user_email;
|
37 |
+
$esc_email = esc_attr( $email );
|
38 |
+
$form_html = <<< HTML
|
39 |
+
<div class="email-address-container">
|
40 |
+
<label><input name="email-address" type="radio" checked="checked" tabindex="1" value="{$esc_email}"> {$email}</label>
|
41 |
+
<label><input name="email-address" type="radio" tabindex="1" value="other">{$other_text}: <input class="email-address" type="text" placeholder="{$email_address_placeholder}"></label>
|
42 |
+
</div>
|
43 |
+
{$button_html}
|
44 |
+
HTML;
|
45 |
+
} else {
|
46 |
+
$email = '';
|
47 |
+
$form_html = <<< HTML
|
48 |
+
{$button_html}
|
49 |
+
<div class="email-address-container">
|
50 |
+
<input class="email-address" type="text" placeholder="{$email_address_placeholder}" tabindex="1">
|
51 |
+
</div>
|
52 |
+
HTML;
|
53 |
+
}
|
54 |
+
|
55 |
+
$message_above_input_field = esc_html( __fs( 'ask-for-upgrade-email-address', $slug ) );
|
56 |
$modal_content_html = <<< HTML
|
57 |
<div class="notice notice-error inline license-resend-message"><p></p></div>
|
58 |
<p>{$message_above_input_field}</p>
|
59 |
<div class="input-container">
|
60 |
+
{$form_html}
|
|
|
|
|
|
|
|
|
|
|
61 |
</div>
|
62 |
HTML;
|
63 |
|
66 |
<script type="text/javascript">
|
67 |
(function ($) {
|
68 |
$(document).ready(function () {
|
69 |
+
var contentHtml = <?php echo json_encode( $modal_content_html ); ?>,
|
70 |
+
modalHtml =
|
71 |
+
'<div class="fs-modal fs-modal-license-key-resend <?php echo $is_freemium ? 'fs-freemium' : 'fs-premium' ?>">'
|
72 |
+ ' <div class="fs-modal-dialog">'
|
73 |
+ ' <div class="fs-modal-header">'
|
74 |
+
+ ' <h4><?php echo esc_js( $send_button_text ) ?></h4>'
|
75 |
+
+ ' <a href="#!" class="fs-close" tabindex="3" title="Close"><i class="dashicons dashicons-no" title="<?php fs_esc_js_echo( 'dismiss', $slug ) ?>"></i></a>'
|
76 |
+ ' </div>'
|
77 |
+ ' <div class="fs-modal-body">'
|
78 |
+
+ ' <div class="fs-modal-panel active">' + contentHtml + '</div>'
|
79 |
+ ' </div>'
|
80 |
+ ' </div>'
|
81 |
+ '</div>',
|
82 |
+
$modal = $(modalHtml),
|
83 |
+
$sendButton = $modal.find('.button-send-license-key'),
|
84 |
+
$emailInput = $modal.find('input.email-address'),
|
85 |
+
$feedbackMessage = $modal.find('.license-resend-message'),
|
86 |
+
moduleSlug = '<?php echo $slug; ?>',
|
87 |
+
isFreemium = <?php echo json_encode( $is_freemium ) ?>,
|
88 |
+
userEmail =<?php echo json_encode( $email ) ?>,
|
89 |
+
isChild = false;
|
90 |
|
91 |
$modal.appendTo($('body'));
|
92 |
|
|
|
|
|
93 |
function registerEventHandlers() {
|
94 |
$('a.show-license-resend-modal-' + moduleSlug).click(function (evt) {
|
95 |
evt.preventDefault();
|
97 |
showModal();
|
98 |
});
|
99 |
|
100 |
+
if (isFreemium) {
|
101 |
+
$modal.on('change', 'input[type=radio][name=email-address]', function () {
|
102 |
+
updateButtonState();
|
103 |
+
});
|
104 |
|
105 |
+
$modal.on('focus', 'input.email-address', function () {
|
106 |
+
// Check custom email radio button on email input focus.
|
107 |
+
$($modal.find('input[type=radio]')[1]).prop('checked', true);
|
108 |
|
109 |
+
updateButtonState();
|
110 |
+
});
|
111 |
+
}
|
112 |
+
|
113 |
+
$modal.on('input propertychange', 'input.email-address', function () {
|
114 |
+
updateButtonState();
|
115 |
});
|
116 |
|
117 |
$modal.on('blur', 'input.email-address', function () {
|
118 |
+
updateButtonState();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
});
|
120 |
|
121 |
+
$modal.on('click', '.fs-close', function () {
|
122 |
closeModal();
|
123 |
return false;
|
124 |
});
|
130 |
return;
|
131 |
}
|
132 |
|
133 |
+
var email = getEmail();
|
134 |
|
135 |
+
disableButton();
|
136 |
|
137 |
+
if (!(-1 < email.indexOf('@'))) {
|
138 |
return;
|
139 |
}
|
140 |
|
144 |
data : {
|
145 |
action: '<?php echo $fs->get_action_tag( 'resend_license_key' ) ?>',
|
146 |
slug : moduleSlug,
|
147 |
+
email : email
|
148 |
},
|
149 |
beforeSend: function () {
|
150 |
+
$sendButton.text(<?php fs_json_encode_echo( 'sending-license-key', $slug ) ?> + '...');
|
151 |
},
|
152 |
success : function (result) {
|
153 |
var resultObj = $.parseJSON(result);
|
155 |
closeModal();
|
156 |
} else {
|
157 |
showError(resultObj.error);
|
158 |
+
resetButton();
|
159 |
}
|
160 |
}
|
161 |
});
|
162 |
});
|
163 |
}
|
164 |
|
165 |
+
registerEventHandlers();
|
166 |
+
|
167 |
+
resetButton();
|
168 |
+
|
169 |
function showModal() {
|
170 |
resetModal();
|
171 |
|
172 |
// Display the dialog box.
|
173 |
$modal.addClass('active');
|
174 |
+
|
175 |
+
if (!isFreemium)
|
176 |
+
$emailInput.focus();
|
177 |
|
178 |
var $body = $('body');
|
179 |
|
196 |
$('body').removeClass('has-fs-modal');
|
197 |
}
|
198 |
|
199 |
+
function resetButton() {
|
200 |
+
updateButtonState();
|
201 |
+
$sendButton.text(<?php echo json_encode($send_button_text) ?>);
|
202 |
}
|
203 |
|
204 |
function resetModal() {
|
205 |
hideError();
|
206 |
+
resetButton();
|
207 |
+
$emailInput.val('');
|
208 |
+
}
|
209 |
+
|
210 |
+
function getEmail() {
|
211 |
+
var email = $emailInput.val().trim();
|
212 |
+
|
213 |
+
if (isFreemium) {
|
214 |
+
if ('other' != $modal.find('input[type=radio][name=email-address]:checked').val()) {
|
215 |
+
email = userEmail;
|
216 |
+
}
|
217 |
+
}
|
218 |
+
|
219 |
+
return email;
|
220 |
+
}
|
221 |
+
|
222 |
+
function updateButtonState() {
|
223 |
+
/**
|
224 |
+
* If email address is not empty, enable the send license key button.
|
225 |
+
*/
|
226 |
+
$sendButton.toggleClass('disabled', !( -1 < getEmail().indexOf('@') ));
|
227 |
}
|
228 |
|
229 |
+
function enableButton() {
|
230 |
+
$sendButton.removeClass('disabled');
|
231 |
}
|
232 |
|
233 |
+
function disableButton() {
|
234 |
+
$sendButton.addClass('disabled');
|
235 |
}
|
236 |
|
237 |
function hideError() {
|
238 |
+
$feedbackMessage.hide();
|
239 |
}
|
240 |
|
241 |
function showError(msg) {
|
242 |
+
$feedbackMessage.find(' > p').html(msg);
|
243 |
+
$feedbackMessage.show();
|
244 |
}
|
245 |
});
|
246 |
})(jQuery);
|
freemius/templates/forms/trial-start.php
CHANGED
@@ -23,7 +23,11 @@
|
|
23 |
);
|
24 |
$message_content = sprintf(
|
25 |
__fs( 'start-trial-prompt-message', $slug ),
|
26 |
-
|
|
|
|
|
|
|
|
|
27 |
);
|
28 |
|
29 |
$modal_content_html = <<< HTML
|
@@ -42,12 +46,12 @@ HTML;
|
|
42 |
'<div class="fs-modal fs-modal-license-key-resend">'
|
43 |
+ ' <div class="fs-modal-dialog">'
|
44 |
+ ' <div class="fs-modal-header">'
|
45 |
-
+ ' <h4><?php
|
46 |
+ ' </div>'
|
47 |
+ ' <div class="fs-modal-body">' + modalContentHtml + '</div>'
|
48 |
+ ' <div class="fs-modal-footer">'
|
49 |
-
+ ' <button class="button button-secondary button-close">' + <?php
|
50 |
-
+ ' <button class="button button-primary button-connect">' + <?php
|
51 |
+ ' </div>'
|
52 |
+ ' </div>'
|
53 |
+ '</div>',
|
@@ -85,18 +89,18 @@ HTML;
|
|
85 |
// Disable all buttons during trial activation.
|
86 |
$modal.find('.button').prop('disabled', true);
|
87 |
|
88 |
-
$button.text(
|
89 |
|
90 |
setLoadingMode();
|
91 |
},
|
92 |
success : function (resultObj) {
|
93 |
if (resultObj.success) {
|
94 |
-
$button.text(
|
95 |
|
96 |
// Redirect to the "Account" page and sync the license.
|
97 |
window.location.href = resultObj.data.next_page;
|
98 |
} else {
|
99 |
-
$button.text(<?php
|
100 |
|
101 |
resetLoadingMode();
|
102 |
showError(resultObj.error);
|
23 |
);
|
24 |
$message_content = sprintf(
|
25 |
__fs( 'start-trial-prompt-message', $slug ),
|
26 |
+
sprintf(
|
27 |
+
'<a href="%s" target="_blank">%s</a>',
|
28 |
+
'https://freemius.com',
|
29 |
+
'freemius.com'
|
30 |
+
)
|
31 |
);
|
32 |
|
33 |
$modal_content_html = <<< HTML
|
46 |
'<div class="fs-modal fs-modal-license-key-resend">'
|
47 |
+ ' <div class="fs-modal-dialog">'
|
48 |
+ ' <div class="fs-modal-header">'
|
49 |
+
+ ' <h4><?php fs_esc_js_echo( 'start-free-trial', $slug ) ?></h4>'
|
50 |
+ ' </div>'
|
51 |
+ ' <div class="fs-modal-body">' + modalContentHtml + '</div>'
|
52 |
+ ' <div class="fs-modal-footer">'
|
53 |
+
+ ' <button class="button button-secondary button-close">' + <?php fs_json_encode_echo( 'cancel', $slug ) ?> +'</button>'
|
54 |
+
+ ' <button class="button button-primary button-connect">' + <?php fs_json_encode_echo( 'approve-start-trial', $slug ) ?> +'</button>'
|
55 |
+ ' </div>'
|
56 |
+ ' </div>'
|
57 |
+ '</div>',
|
89 |
// Disable all buttons during trial activation.
|
90 |
$modal.find('.button').prop('disabled', true);
|
91 |
|
92 |
+
$button.text(<?php fs_json_encode_echo( 'starting-trial', $slug ) ?> + '...');
|
93 |
|
94 |
setLoadingMode();
|
95 |
},
|
96 |
success : function (resultObj) {
|
97 |
if (resultObj.success) {
|
98 |
+
$button.text(<?php fs_json_encode_echo( 'please-wait', $slug ) ?> + '...');
|
99 |
|
100 |
// Redirect to the "Account" page and sync the license.
|
101 |
window.location.href = resultObj.data.next_page;
|
102 |
} else {
|
103 |
+
$button.text(<?php fs_json_encode_echo( 'approve-start-trial', $slug ) ?>);
|
104 |
|
105 |
resetLoadingMode();
|
106 |
showError(resultObj.error);
|
freemius/templates/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
freemius/templates/plugin-icon.php
CHANGED
@@ -60,7 +60,7 @@
|
|
60 |
* the repository.
|
61 |
*/
|
62 |
if ( ! function_exists( 'plugins_api' ) ) {
|
63 |
-
require_once
|
64 |
}
|
65 |
|
66 |
$plugin_information = plugins_api( 'plugin_information', array(
|
60 |
* the repository.
|
61 |
*/
|
62 |
if ( ! function_exists( 'plugins_api' ) ) {
|
63 |
+
require_once ABSPATH . 'wp-admin/includes/plugin-install.php';
|
64 |
}
|
65 |
|
66 |
$plugin_information = plugins_api( 'plugin_information', array(
|
freemius/templates/plugin-info/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
// Hide file structure from users on unprotected servers.
|
readme.txt
CHANGED
@@ -1,294 +1,165 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
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 |
-
<table id="info" summary="Revision info">
|
167 |
-
<tr>
|
168 |
-
<th>
|
169 |
-
<a href="/changeset/1557273/auto-terms-of-service-and-privacy-policy/trunk/readme.txt" title="View differences">Last change</a>
|
170 |
-
on this file was
|
171 |
-
<a href="/changeset/1557273/" title="View changeset 1557273">1557273</a>,
|
172 |
-
checked in by cliffpaulick, <a class="timeline" href="/timeline?from=2016-12-19T07%3A11%3A59Z&precision=second" title="See timeline at 12/19/16 07:11:59">5 months ago</a>
|
173 |
-
</th>
|
174 |
-
</tr>
|
175 |
-
<tr>
|
176 |
-
<td class="message searchable">
|
177 |
-
<p>
|
178 |
-
Version 1.8<br />
|
179 |
-
</p>
|
180 |
-
</td>
|
181 |
-
</tr>
|
182 |
-
<tr><td colspan="2">
|
183 |
-
<strong>File size:</strong>
|
184 |
-
<span title="10697 bytes">10.4 KB</span>
|
185 |
-
</td></tr>
|
186 |
-
</table>
|
187 |
-
<div id="preview" class="searchable">
|
188 |
-
|
189 |
-
<table class="code"><thead><tr><th class="lineno" title="Line numbers">Line</th><th class="content"> </th></tr></thead><tbody><tr><th id="L1"><a href="#L1">1</a></th><td>=== Auto Terms of Service and Privacy Policy ===</td></tr><tr><th id="L2"><a href="#L2">2</a></th><td>Contributors: cliffpaulick</td></tr><tr><th id="L3"><a href="#L3">3</a></th><td>Tags: AdSense privacy policy, AdWords privacy policy, agreement, business, conditions, Digital Millennium Copyright Act, disclaimer, DMCA, documents, Facebook privacy policy, FB privacy policy, Google, HTML5, law, lawyer, legal, policy, privacy, privacy policy, refund, SEM, SEO, SMM, statement, T&C, terms, terms and conditions, terms of use, visitor tracking policy</td></tr><tr><th id="L4"><a href="#L4">4</a></th><td>Requires at least: 3.1</td></tr><tr><th id="L5"><a href="#L5">5</a></th><td>Tested up to: 4.7</td></tr><tr><th id="L6"><a href="#L6">6</a></th><td>Stable tag: /trunk/</td></tr><tr><th id="L7"><a href="#L7">7</a></th><td>License: GPLv2 or later</td></tr><tr><th id="L8"><a href="#L8">8</a></th><td>License URI: http://www.gnu.org/licenses/gpl-2.0.html</td></tr><tr><th id="L9"><a href="#L9">9</a></th><td></td></tr><tr><th id="L10"><a href="#L10">10</a></th><td>Put your own details into a modified version of Automattic's "Terms of Service" and "Privacy Policy". 3 shortcodes available.</td></tr><tr><th id="L11"><a href="#L11">11</a></th><td></td></tr><tr><th id="L12"><a href="#L12">12</a></th><td>== Description ==</td></tr><tr><th id="L13"><a href="#L13">13</a></th><td></td></tr><tr><th id="L14"><a href="#L14">14</a></th><td>Puts your own information into a version of Automattic's <a href="http://en.wordpress.com/tos/">Terms of Service</a> and <a href="http://automattic.com/privacy/">Privacy Policy</a>, both available under the <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Sharealike</a> license, that have been modified to exclude specifics to Automattic (like mentions of "JetPack", "WordPress.com", and "VIP") and have more generic language that can apply to most any site or service provider, including single sites, subscription sites, blog networks, and others.</td></tr><tr><th id="L15"><a href="#L15">15</a></th><td></td></tr><tr><th id="L16"><a href="#L16">16</a></th><td><strong>Enter your organization's information in the plugin's settings page. Then you can add your own page and use one of the 3 available shortcodes: *[my_terms_of_service_and_privacy_policy]*, *[my_terms_of_service]*, and/or *[my_privacy_policy]*</strong></td></tr><tr><th id="L17"><a href="#L17">17</a></th><td></td></tr><tr><th id="L18"><a href="#L18">18</a></th><td>= Highlights =</td></tr><tr><th id="L19"><a href="#L19">19</a></th><td>* Quick and easy setup in *wp-admin -> Settings -> Auto TOS & PP*</td></tr><tr><th id="L20"><a href="#L20">20</a></th><td>* Just 3 simple shortcodes</td></tr><tr><th id="L21"><a href="#L21">21</a></th><td>* No WP_DEBUG messages</td></tr><tr><th id="L22"><a href="#L22">22</a></th><td>* Shortcode output is valid HTML 4.01 Strict and HTML 5 Experimental</td></tr><tr><th id="L23"><a href="#L23">23</a></th><td>* Responsive plugin developer</td></tr><tr><th id="L24"><a href="#L24">24</a></th><td></td></tr><tr><th id="L25"><a href="#L25">25</a></th><td>= Notes =</td></tr><tr><th id="L26"><a href="#L26">26</a></th><td>* This plugin generates output that is usable throughout your site via 3 shortcodes, such as in a Page that you manually create. It does NOT create this page for you and does not add any links to wherever you put one or more of these shortcodes (e.g. yoursite-dot-com/terms). Such functionality may be available in the future, possibly for a fee.</td></tr><tr><th id="L27"><a href="#L27">27</a></th><td>* This plugin's output is not translatable, as it is a legal document specific to the United States. However, if you want to create your own version, you may want to reference <a href="https://github.com/Automattic/legalmattic">Legalmattic on Github</a>.</td></tr><tr><th id="L28"><a href="#L28">28</a></th><td>* This plugin utilizes Freemius. All data collected via Freemius will be available to both Freemius and this plugin's author to be used in responsible ways. By opting-in to Freemius, you'll help us learn how I can make this plugin better and possibly communicate with you regarding the plugin's development.</td></tr><tr><th id="L29"><a href="#L29">29</a></th><td>* <strong>This plugin will eventually offer paid add-ons. I have some ideas of what I think you will want and benefit from, but I'd really love to hear your ideas!</strong> (If shared with me, they become all mine without attribution or compensation required, so thanks in advance!)</td></tr><tr><th id="L30"><a href="#L30">30</a></th><td>* This plugin and its author are not affiliated with or endorsed by Automattic Inc.</td></tr><tr><th id="L31"><a href="#L31">31</a></th><td></td></tr><tr><th id="L32"><a href="#L32">32</a></th><td>Disclaimer: <a href="http://wpautoterms.com/">Clifford Paulick of TourKick.com</a> is not an attorney. Additional disclaimer text within the plugin file(s).</td></tr><tr><th id="L33"><a href="#L33">33</a></th><td></td></tr><tr><th id="L34"><a href="#L34">34</a></th><td>If you are a coder, you are welcome to view the plugin's code and submit pull requests: https://github.com/cliffordp/Auto-Terms-of-Service-and-Privacy-Policy</td></tr><tr><th id="L35"><a href="#L35">35</a></th><td></td></tr><tr><th id="L36"><a href="#L36">36</a></th><td>== Installation ==</td></tr><tr><th id="L37"><a href="#L37">37</a></th><td></td></tr><tr><th id="L38"><a href="#L38">38</a></th><td>After automatically installing to wp-content/plugins/ or manually installing to wp-content/mu-plugins/ (Must Use, i.e. Always Active), enter your organization's information in the plugin's settings page.</td></tr><tr><th id="L39"><a href="#L39">39</a></th><td></td></tr><tr><th id="L40"><a href="#L40">40</a></th><td>== Frequently Asked Questions ==</td></tr><tr><th id="L41"><a href="#L41">41</a></th><td></td></tr><tr><th id="L42"><a href="#L42">42</a></th><td>Why?</td></tr><tr><th id="L43"><a href="#L43">43</a></th><td></td></tr><tr><th id="L44"><a href="#L44">44</a></th><td>Because Terms and Conditions and Privacy Policies are important to have and because some businesses don't understand their importance or are unable or unwilling to afford an attorney to draft custom T&C and Privacy Policy documents. This plugin allows you to create your own, based on Automattic's. Thanks to Automattic for telling us we can use and abuse theirs.</td></tr><tr><th id="L45"><a href="#L45">45</a></th><td></td></tr><tr><th id="L46"><a href="#L46">46</a></th><td>How?</td></tr><tr><th id="L47"><a href="#L47">47</a></th><td></td></tr><tr><th id="L48"><a href="#L48">48</a></th><td>Go to the plugin's Settings page and complete all required fields. Then change shortcode output setting from Off to On and the shortcodes will work.</td></tr><tr><th id="L49"><a href="#L49">49</a></th><td></td></tr><tr><th id="L50"><a href="#L50">50</a></th><td>Language other than English?</td></tr><tr><th id="L51"><a href="#L51">51</a></th><td></td></tr><tr><th id="L52"><a href="#L52">52</a></th><td>As this plugin generates Terms of Service and Privacy Policy documents, which is worded specifically for the United States of America, I'd say it's not smart to translate the output text into another language. If you have a legal document in another language that you want to use (and have permission to use), just put its full text in a WordPress page and link to it where needed (i.e. put your full text in a page instead of using this plugin).</td></tr><tr><th id="L53"><a href="#L53">53</a></th><td></td></tr><tr><th id="L54"><a href="#L54">54</a></th><td>MultiSite?</td></tr><tr><th id="L55"><a href="#L55">55</a></th><td></td></tr><tr><th id="L56"><a href="#L56">56</a></th><td>There aren't any multisite network settings. Must be activated and setup on each site individually.</td></tr><tr><th id="L57"><a href="#L57">57</a></th><td></td></tr><tr><th id="L58"><a href="#L58">58</a></th><td>How can I give back?</td></tr><tr><th id="L59"><a href="#L59">59</a></th><td></td></tr><tr><th id="L60"><a href="#L60">60</a></th><td>Please rate the plugin, Tweet about it (mention @TourKick if you'd like to give me warm fuzzies), contribute code enhancements, etc. I plan to release a premium version or add-ons. Once those become available, you can support this project by buying the ones useful to you.</td></tr><tr><th id="L61"><a href="#L61">61</a></th><td></td></tr><tr><th id="L62"><a href="#L62">62</a></th><td>How do I add a "to the top" link?</td></tr><tr><th id="L63"><a href="#L63">63</a></th><td></td></tr><tr><th id="L64"><a href="#L64">64</a></th><td>One of these <a href="https://wordpress.org/plugins/tags/to-top/" target="_blank">"To Top" Plugins</a> may work for you. They're site-wide plugins, not anything specific to this Auto TOS & PP plugin.</td></tr><tr><th id="L65"><a href="#L65">65</a></th><td></td></tr><tr><th id="L66"><a href="#L66">66</a></th><td>== Screenshots ==</td></tr><tr><th id="L67"><a href="#L67">67</a></th><td>1. Administrator-only view of shortcode output before plugin has been customized or if On/Off setting is Off. Screenshot shows output of [my_terms_of_service_and_privacy_policy], [my_terms_of_service], and [my_privacy_policy]</td></tr><tr><th id="L68"><a href="#L68">68</a></th><td></td></tr><tr><th id="L69"><a href="#L69">69</a></th><td>2. View of editing the plugin's settings</td></tr><tr><th id="L70"><a href="#L70">70</a></th><td></td></tr><tr><th id="L71"><a href="#L71">71</a></th><td>3. Page/Post Editor screen, using this plugin's shortcode: [my_terms_of_service]</td></tr><tr><th id="L72"><a href="#L72">72</a></th><td></td></tr><tr><th id="L73"><a href="#L73">73</a></th><td>4. Output of [my_terms_of_service] after customizing this plugin</td></tr><tr><th id="L74"><a href="#L74">74</a></th><td></td></tr><tr><th id="L75"><a href="#L75">75</a></th><td>5. Page/Post Editor screen, using this plugin's shortcode: [my_privacy_policy]</td></tr><tr><th id="L76"><a href="#L76">76</a></th><td></td></tr><tr><th id="L77"><a href="#L77">77</a></th><td>6. Output of [my_privacy_policy] after customizing this plugin</td></tr><tr><th id="L78"><a href="#L78">78</a></th><td></td></tr><tr><th id="L79"><a href="#L79">79</a></th><td>7. Page/Post Editor screen, using this plugin's shortcode: [my_terms_of_service_and_privacy_policy]</td></tr><tr><th id="L80"><a href="#L80">80</a></th><td></td></tr><tr><th id="L81"><a href="#L81">81</a></th><td>8. Output of [my_terms_of_service_and_privacy_policy]. Creates in-page links for quick access.</td></tr><tr><th id="L82"><a href="#L82">82</a></th><td></td></tr><tr><th id="L83"><a href="#L83">83</a></th><td>9. Scroll or Click to Privacy Policy when using [my_terms_of_service_and_privacy_policy] shortcode, further down the same page as the previous screenshot. Separated by horizontal line with class of "auto-tos-pp".</td></tr><tr><th id="L84"><a href="#L84">84</a></th><td></td></tr><tr><th id="L85"><a href="#L85">85</a></th><td>== Changelog ==</td></tr><tr><th id="L86"><a href="#L86">86</a></th><td>* Changelog DIFFs for all versions are available at <a href="http://plugins.trac.wordpress.org/browser/auto-terms-of-service-and-privacy-policy/trunk" target="_blank">WordPress SVN</a>.</td></tr><tr><th id="L87"><a href="#L87">87</a></th><td></td></tr><tr><th id="L88"><a href="#L88">88</a></th><td>= Version 1.8 =</td></tr><tr><th id="L89"><a href="#L89">89</a></th><td>* December 19, 2016</td></tr><tr><th id="L90"><a href="#L90">90</a></th><td>* Implemented Freemius integration (version 1.2.1.5)</td></tr><tr><th id="L91"><a href="#L91">91</a></th><td>* Updated plugin compatibility to WordPress 4.7</td></tr><tr><th id="L92"><a href="#L92">92</a></th><td></td></tr><tr><th id="L93"><a href="#L93">93</a></th><td>= Version 1.7 =</td></tr><tr><th id="L94"><a href="#L94">94</a></th><td>* September 30, 2015</td></tr><tr><th id="L95"><a href="#L95">95</a></th><td>* Now all plugin settings page fields can include apostrophes ('). Just don't use double-quotes (").</td></tr><tr><th id="L96"><a href="#L96">96</a></th><td>* Added Text Domain to plugin's header</td></tr><tr><th id="L97"><a href="#L97">97</a></th><td>* Updated plugin compatibility from WordPress 4.3 to 4.3.1</td></tr><tr><th id="L98"><a href="#L98">98</a></th><td></td></tr><tr><th id="L99"><a href="#L99">99</a></th><td>= No Version Update =</td></tr><tr><th id="L100"><a href="#L100">100</a></th><td>* September 14, 2015</td></tr><tr><th id="L101"><a href="#L101">101</a></th><td>* Moved screenshot files from trunk to assets so .zip is smaller (i.e. faster updates and no actual plugin changes).</td></tr><tr><th id="L102"><a href="#L102">102</a></th><td></td></tr><tr><th id="L103"><a href="#L103">103</a></th><td>= Version 1.6 =</td></tr><tr><th id="L104"><a href="#L104">104</a></th><td>* April 27, 2015</td></tr><tr><th id="L105"><a href="#L105">105</a></th><td>* Added filters: before and after TOS heading and PP heading; end of TOS and end of PP. Allows you to add custom text via Child Theme functions.php or a Functionality Plugin.</td></tr><tr><th id="L106"><a href="#L106">106</a></th><td>* Refactored code (more OOP / use of functions).</td></tr><tr><th id="L107"><a href="#L107">107</a></th><td>* Moved 'Back To Top' links to end of TOS and PP instead of immediately after each heading.</td></tr><tr><th id="L108"><a href="#L108">108</a></th><td>* Changed TOS and PP main headings from 'h3' to 'h2'.</td></tr><tr><th id="L109"><a href="#L109">109</a></th><td>* Replaced 'hr' with formatted 'div'. Override color and height of 1px black line by adding more specific CSS. For example, div.auto-tos-pp-separator{ border-bottom-color: green !important; border-bottom-width: 10px !important; }</td></tr><tr><th id="L110"><a href="#L110">110</a></th><td>* Added HTML comment with plugin version number and which shortcode is used to assist with potential support requests.</td></tr><tr><th id="L111"><a href="#L111">111</a></th><td>* Added protection from calling plugin PHP file directly.</td></tr><tr><th id="L112"><a href="#L112">112</a></th><td>* WordPress compatibility version bump. Tested with WordPress version 4.3-alpha-32297</td></tr><tr><th id="L113"><a href="#L113">113</a></th><td>* Added 'Upgrade Notice' section to plugin description.</td></tr><tr><th id="L114"><a href="#L114">114</a></th><td></td></tr><tr><th id="L115"><a href="#L115">115</a></th><td>= Version 1.5 =</td></tr><tr><th id="L116"><a href="#L116">116</a></th><td>* April 26, 2015</td></tr><tr><th id="L117"><a href="#L117">117</a></th><td>* Shortcode output is now valid for both HTML 4.01 Strict and HTML 5. Changed anchor links from 'a name' to 'h3 id' to validate as HTML 5.</td></tr><tr><th id="L118"><a href="#L118">118</a></th><td></td></tr><tr><th id="L119"><a href="#L119">119</a></th><td>= Version 1.4.4 =</td></tr><tr><th id="L120"><a href="#L120">120</a></th><td>* April 20, 2015</td></tr><tr><th id="L121"><a href="#L121">121</a></th><td>* WordPress compatibility version bump. Tested with WP version 4.2-RC1-32175.</td></tr><tr><th id="L122"><a href="#L122">122</a></th><td>* Added greeting box to top of wp-admin Settings page.</td></tr><tr><th id="L123"><a href="#L123">123</a></th><td>* Updated screenshot for the "coming soon" text.</td></tr><tr><th id="L124"><a href="#L124">124</a></th><td></td></tr><tr><th id="L125"><a href="#L125">125</a></th><td>= Version 1.4.3 =</td></tr><tr><th id="L126"><a href="#L126">126</a></th><td>* April 28, 2014</td></tr><tr><th id="L127"><a href="#L127">127</a></th><td>* Fix for "Possessive Name" not displaying accurately in settings page due to apostrophe. However, the value with the apostrophe was saved properly, and the Possessive Name was displayed properly for users on the front-end.</td></tr><tr><th id="L128"><a href="#L128">128</a></th><td>* Added direct link to Settings page from Plugins page</td></tr><tr><th id="L129"><a href="#L129">129</a></th><td></td></tr><tr><th id="L130"><a href="#L130">130</a></th><td>= Version 1.4.2 =</td></tr><tr><th id="L131"><a href="#L131">131</a></th><td>* February 13, 2014</td></tr><tr><th id="L132"><a href="#L132">132</a></th><td>* Added class='auto-tos-pp' (and additional classes) to main headings, horizontal lines, and Back to Top links -- could use .auto-tos-pp { display:none; } to not show things</td></tr><tr><th id="L133"><a href="#L133">133</a></th><td></td></tr><tr><th id="L134"><a href="#L134">134</a></th><td>= Version 1.4.1 =</td></tr><tr><th id="L135"><a href="#L135">135</a></th><td>* February 13, 2014</td></tr><tr><th id="L136"><a href="#L136">136</a></th><td>* Updated plugin's description</td></tr><tr><th id="L137"><a href="#L137">137</a></th><td>* Hyperlinked to plugin's settings page for shortcode output (when appropriate)</td></tr><tr><th id="L138"><a href="#L138">138</a></th><td></td></tr><tr><th id="L139"><a href="#L139">139</a></th><td>= Version 1.4 =</td></tr><tr><th id="L140"><a href="#L140">140</a></th><td>* February 12, 2014</td></tr><tr><th id="L141"><a href="#L141">141</a></th><td>* Added plugin settings page so you don't have to edit the plugin's actual code.</td></tr><tr><th id="L142"><a href="#L142">142</a></th><td>* Added link back to the table of contents (to the top) for the [my_terms_of_service_and_privacy_policy] shortcode.</td></tr><tr><th id="L143"><a href="#L143">143</a></th><td>* Privacy Policy edited in line with Automattic's --> September 18, 2013: Added that blog commenter email addresses are disclosed to administrators of the blog where the comment was left.</td></tr><tr><th id="L144"><a href="#L144">144</a></th><td></td></tr><tr><th id="L145"><a href="#L145">145</a></th><td>= Version: 1.3.2012.12.29 =</td></tr><tr><th id="L146"><a href="#L146">146</a></th><td>* Fixed 2 more hard-coded references to "WordPress" within that same paragraph. That should be all of them now.</td></tr><tr><th id="L147"><a href="#L147">147</a></th><td></td></tr><tr><th id="L148"><a href="#L148">148</a></th><td>= Version: 1.2.2012.12.29 =</td></tr><tr><th id="L149"><a href="#L149">149</a></th><td>* Fixed a <a href="http://wordpress.org/support/topic/update-required?replies=1#post-3439913" target="_blank">hard-coded reference to "WordPress"</a>, reported by kc22033. Thanks!</td></tr><tr><th id="L150"><a href="#L150">150</a></th><td>* Checked WordPress' Terms of Service and Privacy Policy for updates, and there weren't any changes since this plugin's creation.</td></tr><tr><th id="L151"><a href="#L151">151</a></th><td></td></tr><tr><th id="L152"><a href="#L152">152</a></th><td>= Version: 1.1.2012.12.28 =</td></tr><tr><th id="L153"><a href="#L153">153</a></th><td>* Changed shortcodes to return instead of echo, to fix the shortcode display issue. Thanks to <a href="http://profiles.wordpress.org/birgire" target="_blank">birgire</a>.</td></tr><tr><th id="L154"><a href="#L154">154</a></th><td>* Fixed link anchor text to use the name specified in the settings, to fix the issue of displaying hard coded "Terms of Use" and "Privacy Policy" anchor text in the table of contents for the [my_terms_of_service_and_privacy_policy] shortcode.</td></tr><tr><th id="L155"><a href="#L155">155</a></th><td></td></tr><tr><th id="L156"><a href="#L156">156</a></th><td>= Version: 1.0.2012.09.12 =</td></tr><tr><th id="L157"><a href="#L157">157</a></th><td>* Initial release.</td></tr><tr><th id="L158"><a href="#L158">158</a></th><td></td></tr><tr><th id="L159"><a href="#L159">159</a></th><td>== Upgrade Notice ==</td></tr><tr><th id="L160"><a href="#L160">160</a></th><td>* WARNING: All direct plugin file edits (required in versions prior to v1.4) will be lost and will need to be entered via the plugin's settings page. Make sure you backup your information BEFORE UPDATING to a new version.</td></tr></tbody></table>
|
190 |
-
|
191 |
-
</div>
|
192 |
-
<div id="anydiff">
|
193 |
-
<form action="/diff" method="get">
|
194 |
-
<div style="display:none;"><input type="text" name="sfp_email" value="" /><input type="hidden" name="sfph_mail" value="" /></div><div class="buttons">
|
195 |
-
<input type="hidden" name="new_path" value="/auto-terms-of-service-and-privacy-policy/trunk/readme.txt" />
|
196 |
-
<input type="hidden" name="old_path" value="/auto-terms-of-service-and-privacy-policy/trunk/readme.txt" />
|
197 |
-
<input type="hidden" name="new_rev" />
|
198 |
-
<input type="hidden" name="old_rev" />
|
199 |
-
<input type="submit" value="View changes..." title="Select paths and revs for Diff" />
|
200 |
-
</div>
|
201 |
-
</form>
|
202 |
-
</div>
|
203 |
-
<div id="help"><strong>Note:</strong> See <a href="/wiki/TracBrowser">TracBrowser</a>
|
204 |
-
for help on using the repository browser.</div>
|
205 |
-
</div>
|
206 |
-
<div id="altlinks">
|
207 |
-
<a class="preferences-link" href="/prefs">Trac UI Preferences</a>
|
208 |
-
<h3>Download in other formats:</h3>
|
209 |
-
<ul>
|
210 |
-
<li class="first">
|
211 |
-
<a rel="nofollow" href="/browser/auto-terms-of-service-and-privacy-policy/trunk/readme.txt?format=txt">Plain Text</a>
|
212 |
-
</li><li class="last">
|
213 |
-
<a rel="nofollow" href="/export/1658040/auto-terms-of-service-and-privacy-policy/trunk/readme.txt">Original Format</a>
|
214 |
-
</li>
|
215 |
-
</ul>
|
216 |
-
</div>
|
217 |
-
</div>
|
218 |
-
|
219 |
-
<div id="wporg-footer">
|
220 |
-
<div class="wrapper">
|
221 |
-
<ul>
|
222 |
-
<li><a href="//wordpress.org/about/" title="An introduction to the WordPress project">About</a></li>
|
223 |
-
<li><a href="//wordpress.org/news/" title="News and Updates">Blog</a></li>
|
224 |
-
<li><a href="//wordpress.org/hosting/" title="Recommended web hosting providers">Hosting</a></li>
|
225 |
-
<li><a href="http://jobs.wordpress.net/" title="Find or post WordPress jobs">Jobs</a></li>
|
226 |
-
</ul>
|
227 |
-
<ul>
|
228 |
-
<li><a href="//wordpress.org/support/" title="Forums, documentation, and other resources">Support</a></li>
|
229 |
-
<li><a href="//developer.wordpress.org" title="Resources for WordPress developers">Developers</a></li>
|
230 |
-
<li><a href="//make.wordpress.org/" title="Give back to WordPress through code, support, translation and more">Get Involved</a></li>
|
231 |
-
<li><a href="//learn.wordpress.org/" title="Workshops and training materials">Learn</a></li>
|
232 |
-
</ul>
|
233 |
-
<ul>
|
234 |
-
<li><a href="//wordpress.org/showcase/" title="Some of the best WordPress sites on the Web">Showcase</a></li>
|
235 |
-
<li><a href="//wordpress.org/plugins/" title="Add extra functionality to WordPress">Plugins</a></li>
|
236 |
-
<li><a href="//wordpress.org/themes/" title="Make your WordPress pretty">Themes</a></li>
|
237 |
-
<li><a href="//wordpress.org/ideas/" title="Share your ideas for improving WordPress">Ideas</a></li>
|
238 |
-
</ul>
|
239 |
-
<ul>
|
240 |
-
<li><a href="http://central.wordcamp.org/" title="Find a WordPress event near you">WordCamp</a></li>
|
241 |
-
<li><a href="http://wordpress.tv/" title="Videos, tutorials, and WordCamp sessions">WordPress.TV</a></li>
|
242 |
-
<li><a href="//buddypress.org/" title="A set of plugins to transform your WordPress into a social network">BuddyPress</a></li>
|
243 |
-
<li><a href="//bbpress.org/" title="Fast, slick forums built on WordPress">bbPress</a></li>
|
244 |
-
</ul>
|
245 |
-
<ul>
|
246 |
-
<li><a href="http://wordpress.com/?ref=wporg-footer" title="Hassle-free WordPress hosting">WordPress.com</a></li>
|
247 |
-
<li><a href="http://ma.tt/" title="Co-founder of WordPress, an example of what WordPress can do">Matt</a></li>
|
248 |
-
<li><a href="//wordpress.org/about/privacy/" title="WordPress.org Privacy Policy">Privacy</a></li>
|
249 |
-
<li><a href="//wordpress.org/about/license/" title="WordPress is open source software">License / GPLv2</a></li>
|
250 |
-
</ul>
|
251 |
-
</div>
|
252 |
-
<h6 class="aligncenter">Code is Poetry</h6>
|
253 |
-
</div>
|
254 |
-
<script type="text/javascript">
|
255 |
-
var _qevents = _qevents || [];
|
256 |
-
(function() {
|
257 |
-
var elem = document.createElement('script');
|
258 |
-
elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge")
|
259 |
-
+ ".quantserve.com/quant.js";
|
260 |
-
elem.async = true;
|
261 |
-
elem.type = "text/javascript";
|
262 |
-
var scpt = document.getElementsByTagName('script')[0];
|
263 |
-
scpt.parentNode.insertBefore(elem, scpt);
|
264 |
-
})();
|
265 |
-
</script>
|
266 |
-
<script type="text/javascript">_qevents.push( { qacct:"p-18-mFEk4J448M"} );</script>
|
267 |
-
<noscript><img src="//pixel.quantserve.com/pixel/p-18-mFEk4J448M.gif" style="display: none;" border="0" height="1" width="1" alt="" /></noscript>
|
268 |
-
|
269 |
-
<script src="//s.w.org/style/trac/wp-trac.js?39"></script>
|
270 |
-
<!--TRAC_WP_USER_IS_LOGGED_IN-->
|
271 |
-
<div id="wp-auth-check-wrap" class="hidden fallback">
|
272 |
-
<div id="wp-auth-check-bg"></div>
|
273 |
-
<div id="wp-auth-check">
|
274 |
-
<div class="wp-auth-check-close" tabindex="0" title="Close"></div>
|
275 |
-
<div class="wp-auth-fallback"><p><b class="wp-auth-fallback-expired" tabindex="0">Session expired</b></p><p><a href="//wordpress.org/support/bb-login.php" target="_blank">Please log in again.</a> The login page will open in a new window. After logging in you can close it and return to this page.</p>
|
276 |
-
</div>
|
277 |
-
</div>
|
278 |
-
</div>
|
279 |
-
<script>
|
280 |
-
function wp_trac_auth_check() {
|
281 |
-
$.ajax( '/' ).success( function( data ) {
|
282 |
-
var addClass = -1 !== data.indexOf( '<!--TRAC_WP_USER_IS_LOGGED_IN-->' );
|
283 |
-
$( '#wp-auth-check-wrap' ).toggleClass( 'hidden', addClass );
|
284 |
-
});
|
285 |
-
}
|
286 |
-
jQuery(document).ready(function( $ ) {
|
287 |
-
$('.wp-auth-check-close').click( function() {
|
288 |
-
$( '#wp-auth-check-wrap' ).addClass( 'hidden' );
|
289 |
-
});
|
290 |
-
window.setInterval( wp_trac_auth_check, 5 * 60 * 1000 );
|
291 |
-
});
|
292 |
-
</script>
|
293 |
-
</body>
|
294 |
-
</html>
|
1 |
+
=== Auto Terms of Service and Privacy Policy ===
|
2 |
+
Contributors: cliffpaulick, freemius
|
3 |
+
Tags: comments, legal, terms and conditions, privacy policy, Facebook, Google, cookies, compliance, affiliate
|
4 |
+
Requires at least: 3.1
|
5 |
+
Tested up to: 4.9.1
|
6 |
+
Stable tag: 1.8.1
|
7 |
+
License: GPL version 3 or any later version
|
8 |
+
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
+
|
10 |
+
Put your own details into a modified version of Automattic's "Terms of Service" and "Privacy Policy". 3 shortcodes available.
|
11 |
+
|
12 |
+
== Description ==
|
13 |
+
|
14 |
+
Puts your own information into a version of Automattic's <a href="http://en.wordpress.com/tos/">Terms of Service</a> and <a href="http://automattic.com/privacy/">Privacy Policy</a>, both available under the <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Sharealike</a> license, that have been modified to exclude specifics to Automattic (like mentions of "JetPack", "WordPress.com", and "VIP") and have more generic language that can apply to most any site or service provider, including single sites, subscription sites, blog networks, and others.
|
15 |
+
|
16 |
+
<strong>Enter your organization's information in the plugin's settings page. Then you can add your own page and use one of the 3 available shortcodes: *[my_terms_of_service_and_privacy_policy]*, *[my_terms_of_service]*, and/or *[my_privacy_policy]*</strong>
|
17 |
+
|
18 |
+
= Highlights =
|
19 |
+
* Quick and easy setup in *wp-admin -> Settings -> Auto TOS & PP*
|
20 |
+
* Just 3 simple shortcodes
|
21 |
+
* No WP_DEBUG messages
|
22 |
+
* Shortcode output is valid HTML 4.01 Strict and HTML 5 Experimental
|
23 |
+
* Responsive plugin developer
|
24 |
+
|
25 |
+
= Notes =
|
26 |
+
* This plugin generates output that is usable throughout your site via 3 shortcodes, such as in a Page that you manually create. It does NOT create this page for you and does not add any links to wherever you put one or more of these shortcodes (e.g. yoursite-dot-com/terms). Such functionality may be available in the future, possibly for a fee.
|
27 |
+
* This plugin's output is not translatable, as it is a legal document specific to the United States. However, if you want to create your own version, you may want to reference <a href="https://github.com/Automattic/legalmattic">Legalmattic on Github</a>.
|
28 |
+
* This plugin utilizes Freemius. All data collected via Freemius will be available to both Freemius and this plugin's author to be used in responsible ways. By opting-in to Freemius, you'll help us learn how I can make this plugin better and possibly communicate with you regarding the plugin's development.
|
29 |
+
* <strong>This plugin will eventually offer paid add-ons. I have some ideas of what I think you will want and benefit from, but I'd really love to hear your ideas!</strong> (If shared with me, they become all mine without attribution or compensation required, so thanks in advance!)
|
30 |
+
* This plugin and its author are not affiliated with or endorsed by Automattic Inc.
|
31 |
+
|
32 |
+
Disclaimer: <a href="http://wpautoterms.com/">Clifford Paulick of TourKick.com</a> is not an attorney. Additional disclaimer text within the plugin file(s).
|
33 |
+
|
34 |
+
If you are a coder, you are welcome to view the plugin's code and submit pull requests: <a href="https://github.com/cliffordp/Auto-Terms-of-Service-and-Privacy-Policy">https://github.com/cliffordp/Auto-Terms-of-Service-and-Privacy-Policy</a>
|
35 |
+
|
36 |
+
== Installation ==
|
37 |
+
|
38 |
+
After automatically installing to wp-content/plugins/ or manually installing to wp-content/mu-plugins/ (Must Use, i.e. Always Active), enter your organization's information in the plugin's settings page.
|
39 |
+
|
40 |
+
== Frequently Asked Questions ==
|
41 |
+
|
42 |
+
Why?
|
43 |
+
|
44 |
+
Because Terms and Conditions and Privacy Policies are important to have and because some businesses don't understand their importance or are unable or unwilling to afford an attorney to draft custom T&C and Privacy Policy documents. This plugin allows you to create your own, based on Automattic's. Thanks to Automattic for telling us we can use and abuse theirs.
|
45 |
+
|
46 |
+
How?
|
47 |
+
|
48 |
+
Go to the plugin's Settings page and complete all required fields. Then change shortcode output setting from Off to On and the shortcodes will work.
|
49 |
+
|
50 |
+
Language other than English?
|
51 |
+
|
52 |
+
As this plugin generates Terms of Service and Privacy Policy documents, which is worded specifically for the United States of America, I'd say it's not smart to translate the output text into another language. If you have a legal document in another language that you want to use (and have permission to use), just put its full text in a WordPress page and link to it where needed (i.e. put your full text in a page instead of using this plugin).
|
53 |
+
|
54 |
+
MultiSite?
|
55 |
+
|
56 |
+
There aren't any multisite network settings. Must be activated and setup on each site individually.
|
57 |
+
|
58 |
+
How can I give back?
|
59 |
+
|
60 |
+
Please rate the plugin, Tweet about it (mention @TourKick if you'd like to give me warm fuzzies), contribute code enhancements, etc. I plan to release a premium version or add-ons. Once those become available, you can support this project by buying the ones useful to you.
|
61 |
+
|
62 |
+
How do I add a "to the top" link?
|
63 |
+
|
64 |
+
One of these <a href="https://wordpress.org/plugins/tags/to-top/" target="_blank">"To Top" Plugins</a> may work for you. They're site-wide plugins, not anything specific to this Auto TOS & PP plugin.
|
65 |
+
|
66 |
+
== Screenshots ==
|
67 |
+
1. Administrator-only view of shortcode output before plugin has been customized or if On/Off setting is Off. Screenshot shows output of [my_terms_of_service_and_privacy_policy], [my_terms_of_service], and [my_privacy_policy]
|
68 |
+
|
69 |
+
2. View of editing the plugin's settings
|
70 |
+
|
71 |
+
3. Page/Post Editor screen, using this plugin's shortcode: [my_terms_of_service]
|
72 |
+
|
73 |
+
4. Output of [my_terms_of_service] after customizing this plugin
|
74 |
+
|
75 |
+
5. Page/Post Editor screen, using this plugin's shortcode: [my_privacy_policy]
|
76 |
+
|
77 |
+
6. Output of [my_privacy_policy] after customizing this plugin
|
78 |
+
|
79 |
+
7. Page/Post Editor screen, using this plugin's shortcode: [my_terms_of_service_and_privacy_policy]
|
80 |
+
|
81 |
+
8. Output of [my_terms_of_service_and_privacy_policy]. Creates in-page links for quick access.
|
82 |
+
|
83 |
+
9. Scroll or Click to Privacy Policy when using [my_terms_of_service_and_privacy_policy] shortcode, further down the same page as the previous screenshot. Separated by horizontal line with class of "auto-tos-pp".
|
84 |
+
|
85 |
+
== Changelog ==
|
86 |
+
* Changelog DIFFs for all versions are available at <a href="http://plugins.trac.wordpress.org/browser/auto-terms-of-service-and-privacy-policy/trunk" target="_blank">WordPress SVN</a>.
|
87 |
+
|
88 |
+
= Version 1.8.1 =
|
89 |
+
* May 15, 2017
|
90 |
+
* Update Freemius from version 1.2.1.5 to 1.2.1.6.1
|
91 |
+
* Changed license from "GPL version 2 or any later version" to "GPL version 3 or any later version". See <a href="https://www.gnu.org/licenses/rms-why-gplv3.html">GNU.org's Why Upgrade to GPLv3</a> and <a href="https://creativecommons.org/share-your-work/licensing-considerations/compatible-licenses/">Creative Commons' Compatible Licenses</a> for details.
|
92 |
+
|
93 |
+
= Version 1.8 =
|
94 |
+
* December 19, 2016
|
95 |
+
* Implemented Freemius integration (version 1.2.1.5)
|
96 |
+
* Updated plugin compatibility to WordPress 4.7
|
97 |
+
|
98 |
+
= Version 1.7 =
|
99 |
+
* September 30, 2015
|
100 |
+
* Now all plugin settings page fields can include apostrophes ('). Just don't use double-quotes (").
|
101 |
+
* Added Text Domain to plugin's header
|
102 |
+
* Updated plugin compatibility from WordPress 4.3 to 4.3.1
|
103 |
+
|
104 |
+
= No Version Update =
|
105 |
+
* September 14, 2015
|
106 |
+
* Moved screenshot files from trunk to assets so .zip is smaller (i.e. faster updates and no actual plugin changes).
|
107 |
+
|
108 |
+
= Version 1.6 =
|
109 |
+
* April 27, 2015
|
110 |
+
* Added filters: before and after TOS heading and PP heading; end of TOS and end of PP. Allows you to add custom text via Child Theme functions.php or a Functionality Plugin.
|
111 |
+
* Refactored code (more OOP / use of functions).
|
112 |
+
* Moved 'Back To Top' links to end of TOS and PP instead of immediately after each heading.
|
113 |
+
* Changed TOS and PP main headings from 'h3' to 'h2'.
|
114 |
+
* Replaced 'hr' with formatted 'div'. Override color and height of 1px black line by adding more specific CSS. For example, div.auto-tos-pp-separator{ border-bottom-color: green !important; border-bottom-width: 10px !important; }
|
115 |
+
* Added HTML comment with plugin version number and which shortcode is used to assist with potential support requests.
|
116 |
+
* Added protection from calling plugin PHP file directly.
|
117 |
+
* WordPress compatibility version bump. Tested with WordPress version 4.3-alpha-32297
|
118 |
+
* Added 'Upgrade Notice' section to plugin description.
|
119 |
+
|
120 |
+
= Version 1.5 =
|
121 |
+
* April 26, 2015
|
122 |
+
* Shortcode output is now valid for both HTML 4.01 Strict and HTML 5. Changed anchor links from 'a name' to 'h3 id' to validate as HTML 5.
|
123 |
+
|
124 |
+
= Version 1.4.4 =
|
125 |
+
* April 20, 2015
|
126 |
+
* WordPress compatibility version bump. Tested with WP version 4.2-RC1-32175.
|
127 |
+
* Added greeting box to top of wp-admin Settings page.
|
128 |
+
* Updated screenshot for the "coming soon" text.
|
129 |
+
|
130 |
+
= Version 1.4.3 =
|
131 |
+
* April 28, 2014
|
132 |
+
* Fix for "Possessive Name" not displaying accurately in settings page due to apostrophe. However, the value with the apostrophe was saved properly, and the Possessive Name was displayed properly for users on the front-end.
|
133 |
+
* Added direct link to Settings page from Plugins page
|
134 |
+
|
135 |
+
= Version 1.4.2 =
|
136 |
+
* February 13, 2014
|
137 |
+
* Added class='auto-tos-pp' (and additional classes) to main headings, horizontal lines, and Back to Top links -- could use .auto-tos-pp { display:none; } to not show things
|
138 |
+
|
139 |
+
= Version 1.4.1 =
|
140 |
+
* February 13, 2014
|
141 |
+
* Updated plugin's description
|
142 |
+
* Hyperlinked to plugin's settings page for shortcode output (when appropriate)
|
143 |
+
|
144 |
+
= Version 1.4 =
|
145 |
+
* February 12, 2014
|
146 |
+
* Added plugin settings page so you don't have to edit the plugin's actual code.
|
147 |
+
* Added link back to the table of contents (to the top) for the [my_terms_of_service_and_privacy_policy] shortcode.
|
148 |
+
* Privacy Policy edited in line with Automattic's --> September 18, 2013: Added that blog commenter email addresses are disclosed to administrators of the blog where the comment was left.
|
149 |
+
|
150 |
+
= Version: 1.3.2012.12.29 =
|
151 |
+
* Fixed 2 more hard-coded references to "WordPress" within that same paragraph. That should be all of them now.
|
152 |
+
|
153 |
+
= Version: 1.2.2012.12.29 =
|
154 |
+
* Fixed a <a href="http://wordpress.org/support/topic/update-required?replies=1#post-3439913" target="_blank">hard-coded reference to "WordPress"</a>, reported by kc22033. Thanks!
|
155 |
+
* Checked WordPress' Terms of Service and Privacy Policy for updates, and there weren't any changes since this plugin's creation.
|
156 |
+
|
157 |
+
= Version: 1.1.2012.12.28 =
|
158 |
+
* Changed shortcodes to return instead of echo, to fix the shortcode display issue. Thanks to <a href="http://profiles.wordpress.org/birgire" target="_blank">birgire</a>.
|
159 |
+
* Fixed link anchor text to use the name specified in the settings, to fix the issue of displaying hard coded "Terms of Use" and "Privacy Policy" anchor text in the table of contents for the [my_terms_of_service_and_privacy_policy] shortcode.
|
160 |
+
|
161 |
+
= Version: 1.0.2012.09.12 =
|
162 |
+
* Initial release.
|
163 |
+
|
164 |
+
== Upgrade Notice ==
|
165 |
+
* WARNING: All direct plugin file edits (required in versions prior to v1.4) will be lost and will need to be entered via the plugin's settings page. Make sure you backup your information BEFORE UPDATING to a new version.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|