Vikinguard - Version 1.2.0

Version Description

  • Sign up bug fixed.
Download this release

Release Info

Developer vikinguard
Plugin Icon 128x128 Vikinguard
Version 1.2.0
Comparing to
See all releases

Version 1.2.0

Files changed (10) hide show
  1. LICENSE.txt +58 -0
  2. heimdal.css +119 -0
  3. heimdal.js +232 -0
  4. heimdal.png +0 -0
  5. heimdalfullbody.jpg +0 -0
  6. i18n/Vikinguard-es_ES.mo +0 -0
  7. i18n/Vikinguard-es_ES.po +250 -0
  8. logo.png +0 -0
  9. readme.txt +57 -0
  10. vikinguard.php +300 -0
LICENSE.txt ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ End User License Agreement (EULA) for Heimdal APM Software
2
+
3
+ (you can find the lastest version of this agreement at http://heimdalapm.com/heimdal/EULA.html)
4
+
5
+ This End-User License Agreement (EULA) is a legal agreement between you (either an individual or a single entity) and the mentioned author (This Is Not Just A Software Company SL ? TINJASC SL) of the Heimdal APM software, which includes computer software and may include associated media, printed materials, and ?online? or electronic documentation (?SOFTWARE PRODUCT?).
6
+
7
+ By installing, copying, or otherwise using the SOFTWARE PRODUCT, you agree to be bounded by the terms of this EULA.
8
+
9
+ If you do not agree to the terms of this EULA, do not install or use the SOFTWARE PRODUCT. BY CLICKING "I AGREE", OR BY TAKING ANY STEP TO INSTALL OR USE THE SOFTWARE PRODUCT, YOU (1) REPRESENT THAT YOU ARE OF THE LEGAL AGE OF MAJORITY IN YOUR COUNTRY, STATE, PROVINCE JURISDICTION OF RESIDENCE AND, IF APPLICABLE, YOU ARE DULY AUTHORIZED BY YOUR EMPLOYER TO ENTER INTO THIS CONTRACT AND (2) YOU AGREE TO BE BOUND BY THE TERMS OF THIS EULA. IF YOU DO NOT ACCEPT THE EULA TERMS, DO NOT USE THE SOFTWARE PRODUCT.
10
+
11
+ 1. GRANT OF LICENSE.�The Software Product includes two types of computer software (1) that is owned by TINJASC SL (and may include associated media, and "online" or electronic documentation) (collectively the "Software Product") and (2) other software provided by third parties and used with the Software Product ("Third Party Software"). TINJASC SL grants you the following non-exclusive rights provided you agree to and comply with all terms and conditions of this EULA:
12
+
13
+ a. Use.�The Software Product is being distributed as Freeware for personal or commercial use. You are NOT allowed to make a charge for distributing this Software (either for profit or merely to recover your media and distribution costs) whether as a stand-alone product, or as part of a compilation or anthology. It may be distributed freely on any website or through any other distribution mechanism, as long as no part of it is changed in any way. You may install and use an unlimited number of copies of the SOFTWARE PRODUCT.
14
+
15
+ b. Reproduction and Distribution. You may reproduce and distribute an unlimited number of copies of the SOFTWARE PRODUCT; provided that each copy shall be a true and complete copy, including all copyright and trademark notices, and shall be accompanied by a copy of this EULA.
16
+
17
+ Copies of the SOFTWARE PRODUCT may be distributed as a standalone product. If you want to include it with your own products, you should get THIS IS NOT JUST A SOFTWARE COMPANY SL explicit approval first.
18
+
19
+ c. Reservation of Rights.�The Software Product is licensed, not sold, to you by TINJASC SL. TINJASC SL and its suppliers own all right, title and interest in and to the Software Product and reserve all rights not expressly granted to you in this EULA. You agree to refrain from any action that would diminish such rights or would call them into question.
20
+
21
+ d. Third Party Software.�Notwithstanding the terms and conditions of this EULA, all or any portion of the Software Product which constitutes Third Party Software, is licensed to you subject to the terms and conditions of the software license agreement accompanying such Third Party Software whether in the form of a discrete agreement, shrink wrap license or electronic license terms accepted at time of download. Use of the Third Party Software by you shall be governed entirely by the terms and conditions of such license.
22
+
23
+ e. Support.�Technical support for the Software Product will be free for the first thirty (30) days after the activation date. Support will be available via e-mail during regular business hours CET. After 30 days, Technical Support may be offered by TINJASC SL as a paid support service.
24
+
25
+ 2. UPGRADES.�To use a Software Product identified by TINJASC SL as an upgrade, you must first be licensed for the original Software Product identified by TINJASC SL as eligible for the upgrade. After upgrading, you may no longer use the original Software Product that formed the basis for your upgrade eligibility and the upgraded software shall be deemed the "Software Product". The SOFTWARE PRODUCT upgrades are FREE of charge.
26
+
27
+ 3. ADDITIONAL SOFTWARE.�This EULA applies to updates or supplements to the original Software Product provided by TINJASC SL unless TINJASC SL provides other terms along with the update or supplement. In case of a conflict between such terms, the other terms will prevail.
28
+
29
+ 4. TRANSFER.
30
+
31
+ a. Third Party.�The Software Product may only be transferred to another end user as part of a transfer of the computer(s) on which it is installed. Any transfer must include all component parts, media, printed materials and this EULA. Prior to the transfer, the end user receiving the transferred product must agree to all the EULA terms. Upon transfer of your computer(s), your license is automatically terminated and you are no longer permitted to use the Software Product.
32
+
33
+ b. Restrictions.�You may not rent, lease or lend the Software Product or use the Software Product for commercial timesharing or bureau use. You may not sublicense, assign or transfer the license or Software Product except as expressly provided in this EULA.
34
+
35
+ 5. PROPRIETARY RIGHTS.�All intellectual property rights in the Software Product and user documentation are owned by TINJASC SL or its suppliers and are protected by law, including but not limited to copyright, trade secret, and trademark law, as well as other applicable laws and international treaty provisions. The structure, organization and code of the Software Product are the valuable trade secrets and confidential information of TINJASC SL and its suppliers. You shall not remove any product identification, copyright notices or proprietary restrictions from the Software Product.
36
+
37
+ 6. LIMITATION ON REVERSE ENGINEERING.�Except to the extent that such restriction is not permitted under applicable law, you are not permitted (and you agree not to) reverse engineer, decompile, disassemble or create derivative works of or modify the Software Product. Nothing contained herein shall be construed, expressly or implicitly, as transferring any right, license or title to you other than those explicitly granted under this EULA. TINJASC SL reserves all rights in its intellectual property rights not expressly agreed to herein. Unauthorized copying of the Software Product or failure to comply with the restrictions in this EULA (or other breach of the license herein) will result in automatic termination of this Agreement and you agree that it will constitute immediate, irreparable harm to TINJASC SL for which monetary damages would be an inadequate remedy, and that injunctive relief will be an appropriate remedy for such breach.
38
+
39
+ 7. TERM.�This EULA is effective unless terminated or rejected. This EULA will also terminate immediately and without additional notice in the event you breach this EULA and/or fail to comply with any term or condition of this EULA.
40
+
41
+ 8. CONSENT TO USE OF DATA.�You agree that TINJASC SL and its affiliates or suppliers may collect and use statistics on your use of the Software Product, your website performance, end users experience and any other web-site information in relation to support services related to the Software Product. TINJASC SL and its suppliers agree not to use this information in a form that personally identifies you except to the extent necessary to provide such services.
42
+
43
+ 9. COOKIES. TINJASC SL may use cookies for the provision of measurement services when the User accesses the Website. Cookies are files sent to the browser from a web server to record the User?s activities on the Website. The cookies used by the Website are solely associated with an anonymous user and their computer, and do not provide any personal information regarding the User. Through the use of cookies, the server hosting the Website may recognize the browser used by the User in order to make web browsing simpler, allowing, for example, and if applicable, access for users who have previously registered to areas, services, promotions or competitions reserved exclusively for users without having to register every time they visit the Website. Cookies are also used to measure website audience and traffic parameters and to monitor the progress and number of visits. The User can also change the settings on their browser in order to receive a notice of the receipt of cookies and to prevent the installation of cookies on their device. Please refer to your web browser?s instructions for further information.
44
+
45
+ 10. DISCLAIMER OF WARRANTIES.
46
+
47
+ a. NO WARRANTIES: TINJASC SL expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided ?as is? without warranty of any kind, either express or implied, including, without limitation warranties of title and non-infringement, any implied warranties, duties or conditions of merchantability, of fitness for a particular purpose, and of lack of viruses all with regard to the software product and third party software. no oral or written information or advice given by sac or a sac authorized representative shall create a warranty. Some states/jurisdictions do not allow exclusion of implied warranties or limitations on the duration of implied warranties, so the above disclaimer may not apply to you in its entirety. To the extent applicable law requires SAC to provide warranties, you agree that the scope and duration of such warranty shall be to the minimum extent permitted under such applicable law.Computer software is inherently subject to bugs and potential incompatibility with other computer software and hardware. You should not use the Software Product for any applications in which failure could cause any significant damage or injury to persons or tangible or intangible property. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you.
48
+
49
+ b. NO LIABILITY FOR DAMAGES: In no event shall the author of this Software be liable for any special, consequential, incidental or indirect damages whatsoever (including, but not limited to, damages for loss of profits, for loss of data or other information, for business interruption, for personal injury, for loss of privacy or in any way related to the use of or inability to use the software product, third party software and/or third party hardware used with the software product, or otherwise in connection with any provision of this EULA) arising out of the use of or inability to use this product, even if the Author of this Software is aware of the possibility of such damages and known defects.
50
+
51
+
52
+ 11. INDEMNITY.�You agree to indemnify and hold TINJASC SL and its officers, directors, employees and licensors harmless from any claim or demand (including but not limited to reasonable legal fees) made by a third party due to or arising out of or related to your violation of the terms and conditions of this Agreement, your violation of any laws, regulations or third party rights or your negligent act, omission or willful misconduct.
53
+
54
+ 12. LAW GOVERNANCE.�The User acknowledges and accepts that this agreement shall be governed by Spanish law and any disputes will be resolved in the Courts of Madrid, with the exception of those cases in which a legal provision establishes another jurisdiction in favour of the User. If any of the clauses included in this agreement were declared fully or partially invalid or ineffective, such provision will be ineffective only to the extent of such invalidity or ineffectiveness, without invalidating the remainder of this agreement.
55
+
56
+ 13. ENTIRE AGREEMENT.�This EULA is the entire agreement between you and TINJASC SL relating to the Software Product and it supersedes all prior or contemporaneous oral or written communications, proposals and representations with respect to the Software Product or any other subject matter covered by this EULA. To the extent the terms of any TINJASC SL policies or programs for support services conflict with the terms of this EULA, the terms of this EULA shall control. In the event of a conflict between the English and any non-English versions of this EULA, the English version shall govern. If any provision of this EULA is held by a court of competent jurisdiction to be contrary to law, such provision will be changed and interpreted so as to best accomplish the objectives of the original provision to the fullest extent allowed by law and the remaining provision of the EULA will remain in force and effect.
57
+
58
+
heimdal.css ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .wrap {
2
+ margin: 40px 0 0 20px;
3
+ width: 500px;
4
+ }
5
+
6
+ .wrap h2 {
7
+ margin: 30px 0 0;
8
+ padding: 0;
9
+ }
10
+
11
+ .wrap p {
12
+ color: #333;
13
+ font-family: Helvetica;
14
+ font-size: 14px;
15
+ }
16
+
17
+ .wrap code {
18
+ font-size: 12px;
19
+ }
20
+
21
+ .heimdal-form {
22
+ background-color: #f7f7f7;
23
+ border: 1px solid #e6e6e6;
24
+ font-family: Helvetica, Arial, sans-serif;
25
+ font-size: 13px;
26
+ margin-top: 40px;
27
+ padding: 5px 20px;
28
+ }
29
+
30
+ .heimdal--form > h3 {
31
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
32
+ font-size: 18px;
33
+ font-weight: 300;
34
+ }
35
+
36
+ .heimdal--input {
37
+ float: left;
38
+ height: 40px;
39
+ line-height: 40px;
40
+ padding: 0 10px;
41
+ width: 320px;
42
+ }
43
+
44
+ .heimdal-inp{
45
+
46
+ float: right;
47
+ height: 40px;
48
+ line-height: 40px;
49
+ padding: 0 10px;
50
+ width: 320px;
51
+
52
+ }
53
+ .heimdal-inp-hed{
54
+ height: 40px;
55
+ line-height: 40px;
56
+ padding: 0 10px;
57
+ width: 180px;
58
+
59
+ }
60
+
61
+ .heimdal--input::-webkit-input-placeholder {
62
+ color: #999;
63
+ }
64
+ .heimdal--input::-moz-placeholder {
65
+ color: #999;
66
+ }
67
+ .heimdal--input:-moz-placeholder {
68
+ color: #999;
69
+ }
70
+
71
+ .heimdal--button {
72
+ background: #333;
73
+ -webkit-border-radius: 5px;
74
+ -moz-border-radius: 5px;
75
+ border-radius: 5px;
76
+ border: none;
77
+ color: white;
78
+ float: left;
79
+ font-size: 12px;
80
+ height: 40px;
81
+ line-height: 40px;
82
+ margin-left: 15px;
83
+ padding: 0 12px;
84
+ text-transform: uppercase;
85
+ }
86
+
87
+ p.heimdal-description {
88
+ clear: both;
89
+ color: #999;
90
+ font-style: italic;
91
+ padding: 1em 0 0;
92
+ }
93
+
94
+ .supportAdvise{
95
+
96
+ padding-left:20px;
97
+ padding-top:10px;
98
+ }
99
+
100
+ .warning-note{
101
+
102
+ font-size:9px;
103
+ }
104
+
105
+ .heimdal{
106
+ float:left;
107
+ padding-right:60px;
108
+ padding-top: 40px;
109
+ }
110
+ .steps{
111
+
112
+ padding-top:100px;
113
+ }
114
+
115
+ .fill {
116
+ width: 100%;
117
+ min-height: 100%;
118
+ height: 1200px;
119
+ }
heimdal.js ADDED
@@ -0,0 +1,232 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ function test() {
2
+ console.log("TEST");
3
+
4
+ }
5
+
6
+ function sendMail(advise, error) {
7
+
8
+ var email = document.getElementById("checkEmail").value;
9
+ var send = true;
10
+ var text = "";
11
+
12
+ if (!validateEmail(email)) {
13
+ text = text + advise;
14
+ send = false;
15
+ }
16
+
17
+ if (send) {
18
+
19
+ checkcallbackajax(
20
+ "https://vikinguard.com/heimdalapp/api/external/customer/exists/"
21
+ + email, error).done(function(data, statusCode) {
22
+ });
23
+ } else {
24
+ alert(text);
25
+ }
26
+ }
27
+
28
+ function validateEmail(email) {
29
+ var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
30
+ return re.test(email);
31
+ }
32
+
33
+ function checkcallbackajax(uri, data, error) {
34
+
35
+ var request = {
36
+ url : uri,
37
+ contentType : "application/json",
38
+ accepts : "application/json",
39
+ cache : false,
40
+ dataType : 'jsonp',
41
+ data : 'jsonp',
42
+ success : function(json) {
43
+ if (json.exists) {
44
+ var email = document.getElementById("checkEmail").value;
45
+
46
+ window.location.replace(window.location.href
47
+ + "&action=configuration&heimdalapm_email=" + email);
48
+ } else {
49
+ var email = document.getElementById("checkEmail").value;
50
+
51
+ window.location.replace(window.location.href
52
+ + "&action=signup&heimdalapm_email=" + email);
53
+ }
54
+ },
55
+ error : function(e) {
56
+ alert(error);
57
+
58
+ }
59
+ };
60
+
61
+ return jQuery.ajax(request);
62
+ };
63
+
64
+ function signupMail(check, error) {
65
+ var email = document.getElementById("signinEmail").value;
66
+ var password = document.getElementById("signinPassword").value;
67
+ remembercallbackajax(
68
+ "https://vikinguard.com/heimdalapp/api/external/user/credentials/?email="
69
+ + email + "&password=" + password + "", check, error)
70
+ .done();
71
+ }
72
+
73
+ function remembercallbackajax(uri, data, check, error) {
74
+
75
+ var request = {
76
+ url : uri,
77
+ contentType : "application/json",
78
+ accepts : "application/json",
79
+ cache : false,
80
+ dataType : 'jsonp',
81
+ data : 'jsonp',
82
+ success : function(json) {
83
+ if (typeof json.message != 'undefined') {
84
+ alert(check);
85
+ } else {
86
+
87
+ var email = document.getElementById("signinEmail").value;
88
+ var password = document.getElementById("signinPassword").value;
89
+
90
+ window.location.replace(window.location.href
91
+ + "&action=configured&heimdalapm_email=" + escape(email)
92
+ + "&heimdalapm_password=" + escape(password)
93
+ + "&heimdalapm_customer=" + escape(json.customerId)
94
+ + "&heimdalapm_shop=" + escape(json.shops[0].shopId));
95
+
96
+ }
97
+ },
98
+ error : function(e) {
99
+ alert(error);
100
+
101
+ }
102
+ };
103
+
104
+ return jQuery.ajax(request);
105
+ };
106
+
107
+ function reconfigured() {
108
+ window.location.replace(window.location.href + "&action=reconfigured");
109
+ }
110
+
111
+ var said = false;
112
+
113
+ function validateEmail(email) {
114
+ var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
115
+ return re.test(email);
116
+ }
117
+
118
+ function signup(heimdalapm_email, adviseShort, adviseStart, advisePassword,
119
+ adviseConfirm, adviseEmail, adviseTerms, adviseLocalhost, error, heimdalEmail) {
120
+
121
+ var customerName = document.getElementById("signupCustomer").value;
122
+ var email = heimdalapm_email;
123
+ var password = document.getElementById("signupPassword").value;
124
+ var shopURL = document.getElementById("signupShop").value;
125
+ var confirm = document.getElementById("signupConfirm").value;
126
+
127
+ var send = true;
128
+ var text = "";
129
+
130
+ if (customerName.length < 6) {
131
+ text = adviseShort;
132
+ send = false;
133
+
134
+ }
135
+
136
+ if (!strStartsWith(shopURL, 'http')) {
137
+ text = text + adviseStart;
138
+ send = false;
139
+
140
+ }
141
+
142
+ if (confirm.length < 6) {
143
+ text = text + advisePassword;
144
+ send = false;
145
+
146
+ }
147
+
148
+ if (confirm != password) {
149
+ text = text + adviseConfirm;
150
+ send = false;
151
+
152
+ }
153
+
154
+ if(!password.match(/^([a-zA-Z0-9]{6,})$/)){
155
+ text=text+" only passwords with letters and numbers are allowed\n";
156
+ send=false;
157
+
158
+ }
159
+
160
+ if (!validateEmail(email)) {
161
+ text = text + adviseEmail;
162
+ send = false;
163
+
164
+ }
165
+ if (!document.getElementById("signupTerms").checked) {
166
+ text = text + adviseTerms;
167
+ send = false;
168
+
169
+ }
170
+ if ((shopURL.indexOf("localhost") > -1)
171
+ || (shopURL.indexOf("127.0.0.1") > -1)) {
172
+
173
+ if (!said) {
174
+ text = aviseLocalhost;
175
+ send = false;
176
+ }
177
+ said = true;
178
+
179
+ }
180
+
181
+ if (send) {
182
+
183
+ signupcallbackajax(
184
+ "https://vikinguard.com/heimdalapp/api/external/customer?customerName="
185
+ + escape(customerName) + "&mail=" + escape(email) + "&password="
186
+ + escape(password) + "&shopName=" + escape(shopURL), error).done(
187
+ function(data, statusCode) {
188
+
189
+ });
190
+
191
+ } else {
192
+ alert(text);
193
+ }
194
+
195
+ }
196
+
197
+ function strStartsWith(str, prefix) {
198
+ return str.indexOf(prefix) === 0;
199
+ }
200
+
201
+ function signupcallbackajax(uri, data, error) {
202
+
203
+ var request = {
204
+ url : uri,
205
+ contentType : "application/json",
206
+ accepts : "application/json",
207
+ cache : false,
208
+ dataType : 'jsonp',
209
+ data : 'jsonp',
210
+ success : function(json) {
211
+ if (json.autocreation == false) {
212
+ alert(json.feedback);
213
+ } else {
214
+
215
+ var email = document.getElementById("signupEmail").innerHTML;
216
+ var password = document.getElementById("signupPassword").value;
217
+
218
+ window.location.replace(window.location.href
219
+ + "&action=configured&heimdalapm_email=" + escape(email)
220
+ + "&heimdalapm_password=" +escape(password)
221
+ + "&heimdalapm_customer=" + escape(json.customerId)
222
+ + "&heimdalapm_shop=" + escape(json.shops[0].shopId));
223
+ }
224
+ },
225
+ error : function(e) {
226
+ alert(error);
227
+
228
+ }
229
+ };
230
+
231
+ return jQuery.ajax(request);
232
+ };
heimdal.png ADDED
Binary file
heimdalfullbody.jpg ADDED
Binary file
i18n/Vikinguard-es_ES.mo ADDED
Binary file
i18n/Vikinguard-es_ES.po ADDED
@@ -0,0 +1,250 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Vikinguard\n"
4
+ "POT-Creation-Date: 2015-11-03 12:58+0100\n"
5
+ "PO-Revision-Date: 2015-11-03 13:03+0100\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "Language: es_ES\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.8.6\n"
13
+ "X-Poedit-Basepath: ..\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Poedit-SourceCharset: UTF-8\n"
16
+ "X-Poedit-KeywordsList: __;_e\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: vikinguard.php:75
20
+ msgid "You do not have sufficient permissions to manage options for this blog."
21
+ msgstr ""
22
+ "Usted no tiene permisos suficientes para gestionar las opciones para este "
23
+ "blog."
24
+
25
+ #: vikinguard.php:157
26
+ msgid "Please introduce your email to configure Vikinguard"
27
+ msgstr "Introduzca su correo electrónico para configurar Vikinguard"
28
+
29
+ #: vikinguard.php:160 vikinguard.php:262
30
+ msgid "Mail address"
31
+ msgstr "Dirección de correo"
32
+
33
+ #: vikinguard.php:161
34
+ msgid ""
35
+ "If you want to sign up, introduce your mail. If you are already registered, "
36
+ "use your mail to sign in."
37
+ msgstr ""
38
+ "Si desea registrarse, introduzca su correo. Si ya estás registrado, escriba "
39
+ "su correo igualmente para iniciar sesión."
40
+
41
+ #: vikinguard.php:164 vikinguard.php:453
42
+ msgid "Send it"
43
+ msgstr "Enviar"
44
+
45
+ #: vikinguard.php:165
46
+ msgid "Introduce your mail"
47
+ msgstr "Introduzca tu correo"
48
+
49
+ #: vikinguard.php:168
50
+ msgid "Do you have any problem? Please click here"
51
+ msgstr "¿Tienes algún problema? "
52
+
53
+ #: vikinguard.php:172
54
+ msgid "We are not going to spam you"
55
+ msgstr "No vamos a enviarle Spam"
56
+
57
+ #: vikinguard.php:172
58
+ msgid ""
59
+ "We are committed to keeping your e-mail address confidential. We do not "
60
+ "sell, rent, or lease our subscription lists to third parties, and we will "
61
+ "not provide your personal information to any third party individual, "
62
+ "government agency, or company at any time unless compelled to do so by law."
63
+ msgstr ""
64
+ "Estamos comprometidos a mantener su dirección de correo electrónico "
65
+ "confidencial. No vendemos, alquilamos, o alquilamos nuestras listas de "
66
+ "suscripción a terceros, y no vamos a proporcionar su información personal a "
67
+ "cualquier tercera persona a menos que obligados a hacerlo por ley."
68
+
69
+ #: vikinguard.php:189
70
+ msgid "Check your email"
71
+ msgstr "Consulte su correo electrónico"
72
+
73
+ #: vikinguard.php:232 vikinguard.php:580
74
+ msgid "Communication problem. Please try again later."
75
+ msgstr "Problema de comunicación. Por favor vuelva a intentarlo más tarde."
76
+
77
+ #: vikinguard.php:251
78
+ msgid "Introduce your password to reconfigure the module."
79
+ msgstr "Introduzca su password para reconfigurar el módulo"
80
+
81
+ #: vikinguard.php:260 vikinguard.php:400
82
+ msgid "Mail"
83
+ msgstr "Correo"
84
+
85
+ #: vikinguard.php:263
86
+ msgid "That email address is invalid"
87
+ msgstr "La dirección de correo es invalidad"
88
+
89
+ #: vikinguard.php:268 vikinguard.php:271 vikinguard.php:409
90
+ msgid "Password"
91
+ msgstr "Contraseña"
92
+
93
+ #: vikinguard.php:272 vikinguard.php:410
94
+ msgid "minimum 6 caracters"
95
+ msgstr "al menos 6 caracters"
96
+
97
+ #: vikinguard.php:276
98
+ msgid "Did you forget your password? Click"
99
+ msgstr "¿Ha olvidado su contraseña? Clique"
100
+
101
+ #: vikinguard.php:278
102
+ msgid " here"
103
+ msgstr "aquí"
104
+
105
+ #: vikinguard.php:282
106
+ msgid "Sign in"
107
+ msgstr "Acceder"
108
+
109
+ #: vikinguard.php:326
110
+ msgid "check your password"
111
+ msgstr "Consulte su correo electrónico"
112
+
113
+ #: vikinguard.php:338
114
+ msgid "Communication problem. Please try again later"
115
+ msgstr "Problema de comunicación. Por favor vuelva a intentarlo más tarde."
116
+
117
+ #: vikinguard.php:367
118
+ msgid "VIKINGUARD IS CONFIGURED"
119
+ msgstr "VIKINGUARD ESTA CONFIGURADO"
120
+
121
+ #: vikinguard.php:370
122
+ msgid "to reset the configuration"
123
+ msgstr "para reconfigurar"
124
+
125
+ #: vikinguard.php:394
126
+ msgid "1) Select a password:"
127
+ msgstr "1) Seleccione una contraseña"
128
+
129
+ #: vikinguard.php:407
130
+ msgid "Choose a Password"
131
+ msgstr "Elija una contraseña"
132
+
133
+ #: vikinguard.php:413
134
+ msgid "Confirm the Password"
135
+ msgstr "Confirma la contraseña"
136
+
137
+ #: vikinguard.php:416
138
+ msgid "Whoops, these don't match"
139
+ msgstr "Upps, No son iguales"
140
+
141
+ #: vikinguard.php:417
142
+ msgid "Confirm"
143
+ msgstr "Confirme"
144
+
145
+ #: vikinguard.php:423
146
+ msgid "2) Review/Modify:"
147
+ msgstr "2) Revise/Modifique"
148
+
149
+ #: vikinguard.php:427
150
+ msgid "This is just a name to refer to your shop."
151
+ msgstr "Es simplemente un nombre para referirnos a su tienda"
152
+
153
+ #: vikinguard.php:427
154
+ msgid "Your Shop Name"
155
+ msgstr "El nombre de tu tienda"
156
+
157
+ #: vikinguard.php:429
158
+ msgid "Customer name"
159
+ msgstr "El nombre de cliente"
160
+
161
+ #: vikinguard.php:434
162
+ msgid ""
163
+ "Vikinguard is going to use this address to monitor the uptime of your shop. "
164
+ "Please, check the http and https is correct configured. Do not use private "
165
+ "or localhost address, use your public ip or domain to allow Vikinguard to "
166
+ "access to your shop."
167
+ msgstr ""
168
+ "Vikinguard va a usar esta dirección para monitorizar la disponibilidad. Por "
169
+ "favor asegurate de que http o https está bien escrito. No uses direcciones "
170
+ "privadas o localhost. Usa direcciones publicas para permitir el acceso de "
171
+ "Vikinguard a tu tienda."
172
+
173
+ #: vikinguard.php:437
174
+ msgid "Shop URL"
175
+ msgstr "La dirección de la tienda"
176
+
177
+ #: vikinguard.php:446
178
+ msgid "you must accept Vikinguard's terms"
179
+ msgstr "debe aceptar los términos de uso de Vikinguard"
180
+
181
+ #: vikinguard.php:447
182
+ msgid "I agree to the "
183
+ msgstr "Estoy de acuerdo con "
184
+
185
+ #: vikinguard.php:448
186
+ msgid "Terms of Service."
187
+ msgstr "los Términos del Servicio"
188
+
189
+ #: vikinguard.php:491
190
+ msgid "Customer Name too short"
191
+ msgstr "El nombre del nombre de cliente es demasiado corto"
192
+
193
+ #: vikinguard.php:497
194
+ msgid "Short url must start by http:// or https://"
195
+ msgstr "La dirección debe empezar por http:// o https://"
196
+
197
+ #: vikinguard.php:503
198
+ msgid "Password too short"
199
+ msgstr "La contraseña es demasiado corta"
200
+
201
+ #: vikinguard.php:509
202
+ msgid "Whoops, these passwords don't match"
203
+ msgstr "Upps, No son iguales"
204
+
205
+ #: vikinguard.php:515
206
+ msgid "Check your email configuration"
207
+ msgstr "Consulte la dirección de correo electrónico"
208
+
209
+ #: vikinguard.php:520
210
+ msgid "You must accept the terms\\n"
211
+ msgstr "debes aceptar los terminos de Vikinguard"
212
+
213
+ #: vikinguard.php:527
214
+ msgid ""
215
+ "We have noticed that you configured Vikinguard to monitor a demo/test "
216
+ "environment (localhost or 127.0.0.1). Please note that without real traffic "
217
+ "and no public URL, you will not be able to monitor neither uptime neither "
218
+ "real user experience and you will lose some important functionalities of our "
219
+ "tool"
220
+ msgstr ""
221
+ "Nos hemos dado cuenta de que ha configurado Vikinguard para supervisar un "
222
+ "entorno de demostración / prueba (localhost o 127.0.0.1). Por favor, tenga "
223
+ "en cuenta que sin tráfico real y sin dirección URL pública, usted no será "
224
+ "capaz de controlar ni la experiencia ni el tiempo de actividad de usuario "
225
+ "real y usted perderá algunas funcionalidades importantes de nuestra "
226
+ "herramienta"
227
+
228
+ #: vikinguard.php:597
229
+ msgid "Vikinguard Settings"
230
+ msgstr "Configuración de Vikinguard"
231
+
232
+ #: vikinguard.php:598
233
+ msgid "Vikinguard Console"
234
+ msgstr "Consola de Vikinguard"
235
+
236
+ #~ msgid "you must accept Vikinguard\\’s terms"
237
+ #~ msgstr "debes aceptar los terminos de Vikinguard"
238
+
239
+ #~ msgid ""
240
+ #~ "We have noticed that you configured Vikinguard APM to monitor a demo/test "
241
+ #~ "environment (localhost or 127.0.0.1). Please note that without real "
242
+ #~ "traffic and no public URL, you will not be able to monitor neither uptime "
243
+ #~ "neither real user experience and you will lose some important "
244
+ #~ "functionalities of our tool"
245
+ #~ msgstr ""
246
+ #~ "Nos hemos dado cuenta de que ha configurado Vikinguard APM para "
247
+ #~ "supervisar un entorno de demostración / prueba. Por favor, tenga en "
248
+ #~ "cuenta que sin tráfico real y sin dirección URL pública, no será capaz de "
249
+ #~ "controlar ni la experiencia ni el tiempo de actividad de usuario real y "
250
+ #~ "perderá algunas funcionalidades importantes de nuestra herramienta"
logo.png ADDED
Binary file
readme.txt ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === Vikinguard ===
2
+ Contributors: vikinguard
3
+ Tags: vikinguard, real user monitoring, rum, web performance, user experience, availability, seo,uptime, availability
4
+ Requires at least: 2.1
5
+ Tested up to: 4.3.1
6
+ Stable tag: 1.2.0
7
+
8
+ With Vikinguard you'll know the real user experience of your site and you'll be notified when something is not performing as expected.
9
+
10
+ == Description ==
11
+
12
+ Vikinguard collects performance data from your site providing you with meaningful information about:
13
+
14
+
15
+ 1. Your site availability.Vikinguard tests your site constantly from many locations all around the world and notifies you when something goes wrong, like when your site is down or not performing properly.
16
+
17
+
18
+ 2. The real experience of your site's users. Real User Monitoring is the only way to understand the real experience of each single visitor navigating in your site. This is the best way to understand what should be done in order to improve your website's performance and answer questions like what is the user experience from a specific country, at what time you get the most of your users traffic, ...
19
+
20
+
21
+ 3. Your site performance/load time. It will provide you with visibility about what is the expected load time of your site before any user access your site, as well as when they are accessing. Vikinguard will provide you with some advices to improve your site performance (remember that SEO takes into account page load time...).
22
+
23
+
24
+ 4. Failures. Vikinguard will provide you with visibility of the failures that were experienced by your users and will notify you in advance is we detect any performance issue before any end user experiences it.
25
+
26
+
27
+ For more information: <a href="https://vikinguard.com" title="Vikinguard">vikinguard.com</a>. Please note that you need a Vikinguard account for this plugin. If you don't have one yet, don't worry, you can create one during the installation process.
28
+
29
+
30
+ == Installation ==
31
+
32
+ 1. From your WordPress administration interface, go to 'Plugins' > 'Add new'. Once there, search for "Vikinguard".
33
+
34
+ 2. Click 'Install Now' and follow the instructions. When asked for an account, add your mail (whether your new one if it a new account or the existent one if you already have an active Vikinguard account).
35
+
36
+ 3. That's all!
37
+
38
+ == Frequently Asked Questions ==
39
+
40
+ **How does Vikinguard collect the Real User Monitoring data?**
41
+
42
+ Vikinguard uses a JavaScript snippet to collect performance data from the users visiting your site. The snippet is added automatically to all pages under your site.The script is loaded asynchronously, so it does not affect the performance of your site.
43
+
44
+ == Screenshots ==
45
+ 1. vikinguard overview panel
46
+ 2. vikinguard fast audit
47
+
48
+
49
+ == Changelog ==
50
+
51
+ = 1.1.0 =
52
+ * Launch version
53
+
54
+ = 1.2.0 =
55
+ * Sign up bug fixed.
56
+
57
+
vikinguard.php ADDED
@@ -0,0 +1,300 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Plugin Name: Vikinguard for woocommerce
4
+ * Plugin URI: https://www.vikinguard.com
5
+ * Description: it checks your site uptime and real user experience. This module provides all the infomation about your site\'s perfomance.
6
+ * Author: Vikinguard. This is not just a software company.
7
+ * Version: 1.2.0
8
+ * Author URI: https://www.vikinguard.com
9
+ */
10
+ wp_enqueue_script ( 'heimdal', plugins_url ( 'heimdal.js', __FILE__ ) );
11
+
12
+ // Make sure we don't expose any info if called directly
13
+ if (! function_exists ( 'add_action' )) {
14
+ echo "Hi there! I'm just a plugin, not much I can do when called directly.";
15
+ exit ();
16
+ }
17
+
18
+ // For backwards compatibility, esc_attr_e was added in 2.8 and attribute_escape is from 2.8 marked as deprecated.
19
+ if (! function_exists ( 'esc_attr_e' )) {
20
+ function esc_attr_e($text) {
21
+ return attribute_escape ( $text );
22
+ }
23
+ }
24
+
25
+ // The html code that goes in to the header
26
+ function add_Vikinguard_header() {
27
+ $customer = ( string ) get_option ( 'HEIMDALAPM_CUSTOMER' );
28
+ $shop = ( string ) get_option ( 'HEIMDALAPM_SHOP' );
29
+
30
+ if (! is_admin () && strlen ( $customer ) > 0 && strlen ( $shop ) > 0) {
31
+ ?>
32
+
33
+ <script src="https://d27t6aik270las.cloudfront.net/boomerang.js"
34
+ type="text/javascript"></script>
35
+ <script type="text/javascript">
36
+ BOOMR.init({
37
+ beacon_url: "https://eum.vikinguard.com"
38
+
39
+ });
40
+ BOOMR.addVar("customer","<?php echo $customer; ?>");
41
+ BOOMR.addVar("shop","<?php echo $shop; ?>");
42
+ BOOMR.addVar("version","WC1.1.0");
43
+ </script>
44
+
45
+ <?php
46
+ }
47
+ }
48
+ function print_Vikinguard_console() {
49
+ wp_enqueue_style ( "heimdalapm", plugins_url ( 'heimdal.css', __FILE__ ) );
50
+ wp_enqueue_style ( "fill", plugins_url ( 'heimdal.css', __FILE__ ) );
51
+ ?>
52
+
53
+ <div class="row">
54
+ <div class="heimdal col-md-4">
55
+ <img src="<?php echo plugins_url( 'heimdalfullbody.jpg', __FILE__ );?>" alt=""></img>
56
+ </div>
57
+ <div class="steps col-md-8">
58
+ <div class="row"><?php esc_attr_e('to access, clik on:' , 'Vikinguard');?></div>
59
+ <div class="row buttonheimdal">
60
+ <h2><a href="https://vikinguard.com/heimdal/index.html?auto=true&email=<?php esc_attr_e( get_option( 'HEIMDALAPM_EMAIL' ));?>&password=<?php esc_attr_e(get_option( 'HEIMDALAPM_PASSWORD' ));?>&version=WC1.0.2" target="_blank">
61
+ Vikinguard Console</a>
62
+ </div></h2>
63
+ </div>
64
+
65
+ </div>
66
+ </div>
67
+
68
+
69
+
70
+
71
+
72
+ <?php
73
+ }
74
+
75
+ // Prints the admin menu where it is possible to add the tracking code
76
+ function print_Vikinguard_management() {
77
+ if (! current_user_can ( 'manage_options' )) {
78
+ wp_die ( __ ( 'You do not have sufficient permissions to manage options for this blog.' ) );
79
+ }
80
+
81
+ wp_enqueue_style ( "heimdalapm", plugins_url ( 'heimdal.css', __FILE__ ) );
82
+
83
+ // If we try to update the settings
84
+
85
+ $configurationEmail = get_option ( 'HEIMDALAPM_EMAIL' );
86
+ $configurationPassword = get_option ( 'HEIMDALAPM_PASSWORD' );
87
+ $customerid = ( string ) get_option ( 'HEIMDALAPM_CUSTOMER' );
88
+ $shopid = ( string ) get_option ( 'HEIMDALAPM_SHOP' );
89
+ $action = $_GET ['action'];
90
+
91
+ if ($action == "reconfigured") {
92
+
93
+ return mail_Vikinguard_Render ();
94
+ }
95
+
96
+ if ($action == "signup") {
97
+ update_option ( 'HEIMDALAPM_EMAIL_TMP', sanitize_email ( $_GET ['heimdalapm_email'] ) );
98
+ return signup_Vikinguard_Render ();
99
+ }
100
+ if ($action == "configuration") {
101
+ update_option ( 'HEIMDALAPM_EMAIL_TMP', sanitize_email ( $_GET ['heimdalapm_email'] ) );
102
+ return configuration_Vikinguard_Render ();
103
+ }
104
+
105
+ if ($action == "configured" || ($configurationEmail != null || $configurationEmail != "") && ($configurationPassword != null || $configurationPassword != "") && ($customerid != null || $customerid != "") && ($shopid != null || $shopid != "")) {
106
+ if ($action == "configured") {
107
+ if (function_exists ( 'wp_cache_clear_cache' )) {
108
+ wp_cache_clear_cache ();
109
+ }
110
+
111
+ if (is_email ( $_GET ['heimdalapm_email'] ) && is_numeric ( $_GET ['heimdalapm_customer'] ) && strlen ( $_GET ['heimdalapm_customer'] ) == 32 && is_numeric ( $_GET ['heimdalapm_shop'] ) && strlen ( $_GET ['heimdalapm_shop'] ) == 32 && strlen ( $_GET ['heimdalapm_password'] ) > 5) {
112
+ update_option ( 'HEIMDALAPM_EMAIL', sanitize_email ( $_GET ['heimdalapm_email'] ) );
113
+ update_option ( 'HEIMDALAPM_PASSWORD', $_GET ['heimdalapm_password'] );
114
+ update_option ( 'HEIMDALAPM_CUSTOMER', $_GET ['heimdalapm_customer'] );
115
+ update_option ( 'HEIMDALAPM_SHOP', $_GET ['heimdalapm_shop'] );
116
+ } else {
117
+
118
+ return mail_Vikinguard_Render ();
119
+ }
120
+ }
121
+
122
+ return configured_Vikinguard_Render ();
123
+ }
124
+
125
+ return mail_Vikinguard_Render ();
126
+ ?>
127
+
128
+
129
+ <?php
130
+ }
131
+ function mail_Vikinguard_Render() {
132
+ ?>
133
+
134
+ <div class="wrap">
135
+ <img src="<?php echo plugins_url( 'heimdal.png', __FILE__ ) ?>"
136
+ alt="Heimdal logo" width="300px" />
137
+ <h2>VIKINGUARD</h2>
138
+
139
+ <hr />
140
+ <div class="heimdal-form">
141
+ <h3 class="form-signin-heading"><?php esc_attr_e('Please introduce your email to configure Vikinguard', 'Vikinguard'); ?></h3>
142
+
143
+ <input type="email" id="checkEmail" class="heimdal--input"
144
+ placeholder="<?php esc_attr_e('Mail address'); ?>" required autofocus
145
+ required name="mail" value=""
146
+ title="<?php esc_attr_e('If you want to sign up, introduce your mail. If you are already registered, use your mail to sign in.', 'Vikinguard'); ?>"></input>
147
+ <input
148
+ onclick="sendMail('<?php esc_attr_e('Check your email' , 'Vikinguard');?>\n','<?php esc_attr_e('Communication problem. Please try again later.' , 'Vikinguard');?>')"
149
+ id="enviar" type="submit" name="submit" class="heimdal--button"
150
+ value="<?php esc_attr_e('Send it','Vikinguard' ) ?>"></input> <span
151
+ class="heimdal-description"><?php esc_attr_e('Introduce your mail', 'Vikinguard'); ?></span>
152
+ </div>
153
+
154
+ <a href="https://vikinguard.com/support/" class="supportAdvise"><?php esc_attr_e('Do you have any problem? Please click here' , 'Vikinguard');?>.</a>
155
+
156
+ <hr />
157
+ <div class="row warning-note">
158
+ <strong><?php esc_attr_e('We are not going to spam you' , 'Vikinguard');?>:</strong> <?php esc_attr_e('We are committed to keeping your e-mail address confidential. We do not sell, rent, or lease our subscription lists to third parties, and we will not provide your personal information to any third party individual, government agency, or company at any time unless compelled to do so by law.' , 'Vikinguard');?>
159
+ </div>
160
+
161
+
162
+ </div>
163
+ <?php
164
+ }
165
+ function configuration_Vikinguard_Render() {
166
+ ?>
167
+ <div class="wrap">
168
+ <img src="<?php echo plugins_url( 'heimdal.png', __FILE__ ); ?>"
169
+ alt="Heimdal logo" width="300px" />
170
+ <h2>VIKINGUARD</h2>
171
+
172
+ <hr />
173
+
174
+ <h3 class="form-signin-heading"><?php esc_attr_e('Introduce your password to reconfigure the module.' , 'Vikinguard');?></h3>
175
+
176
+
177
+ <div class="" id="sep">
178
+ <ul>
179
+ <li><span class="heimdal-inp-hed"><?php esc_attr_e('Mail' , 'Vikinguard');?></span>
180
+ <input type="email" id="signinEmail" class="heimdal-inp"
181
+ placeholder="<?php esc_attr_e('Mail address' , 'Vikinguard');?>"
182
+ required autofocus
183
+ data-error="<?php esc_attr_e('That email address is invalid' , 'Vikinguard');?>"
184
+ required name="mail"
185
+ value="<?php echo get_option( 'HEIMDALAPM_EMAIL_TMP' );?>"> </input>
186
+ </li>
187
+ <li><span class="heimdal-inp-hed"><?php esc_attr_e('Password' , 'Vikinguard');?>
188
+ </span> <input type="password" data-minlength="6"
189
+ class="heimdal-inp" id="signinPassword"
190
+ placeholder="<?php esc_attr_e('Password' , 'Vikinguard');?>"
191
+ required name="password"
192
+ data-error="<?php esc_attr_e('minimum 6 caracters' , 'Vikinguard');?>">
193
+ </input></li>
194
+ <li><span> <?php esc_attr_e('Did you forget your password? Click' , 'Vikinguard');?> <a
195
+ href="https://vikinguard.com/heimdal/index.html?action=forgot"
196
+ target="_blank"><?php esc_attr_e(' here' , 'Vikinguard');?>.</a></span>
197
+ </li>
198
+ <li><input id="enviar"
199
+ onclick='signupMail("<?php esc_attr_e('check your password' , 'Vikinguard');?>","<?php esc_attr_e('Communication problem. Please try again later' , 'Vikinguard');?>.")'
200
+ class="heimdal--button" type="submit"
201
+ value="<?php esc_attr_e('Sign in','Vikinguard' ) ?>"></input></li>
202
+ </ul>
203
+ </div>
204
+ </div>
205
+ <?php
206
+ }
207
+ function configured_Vikinguard_Render() {
208
+ ?>
209
+
210
+ <div class="wrap">
211
+ <img src="<?php echo plugins_url( 'heimdal.png', __FILE__ ); ?>"
212
+ alt="Heimdal logo" width="300px" />
213
+ <h2>VIKINGUARD</h2>
214
+
215
+ <hr />
216
+ <div>
217
+ <?php esc_attr_e('VIKINGUARD IS CONFIGURED' , 'Vikinguard');?>
218
+ </div>
219
+
220
+ <a onclick="reconfigured();"> <?php esc_attr_e('to reset the configuration' , 'Vikinguard');?></a>
221
+ </div>
222
+ <?php
223
+ }
224
+ function signup_Vikinguard_Render() {
225
+ ?>
226
+ <div class="wrap">
227
+ <img src="<?php echo plugins_url( 'heimdal.png', __FILE__ ); ?>"
228
+ alt="Heimdal logo" width="300px" />
229
+ <h2>VIKINGUARD</h2>
230
+ <hr />
231
+ <div id="register" class="form-signin">
232
+ <h3 class="form-signin-heading"><?php esc_attr_e('1) Select a password:', 'Vikinguard' );?></h3>
233
+ <ul>
234
+ <li><span class="heimdal-inp-hed"><?php esc_attr_e('Mail', 'Vikinguard' );?></span>
235
+ <span id="signupEmail"><?php echo get_option( 'HEIMDALAPM_EMAIL_TMP' );?></span>
236
+ </li>
237
+ <li><span class="heimdal-inp-hed"><?php esc_attr_e('Choose a Password', 'Vikinguard' );?></span>
238
+ <input type="password" data-minlength="6" class="heimdal-inp"
239
+ id="signupPassword"
240
+ placeholder="<?php esc_attr_e('Password', 'Vikinguard' );?>"
241
+ required name="password"
242
+ data-error="<?php esc_attr_e('minimum 6 caracters', 'Vikinguard' );?>">
243
+ </input></li>
244
+ <li><span class="heimdal-inp-hed"><?php esc_attr_e('Confirm the Password', 'Vikinguard' );?></span>
245
+ <input type="password" class="heimdal-inp" id="signupConfirm"
246
+ data-match="#signupPassword"
247
+ data-match-error="<?php esc_attr_e('Whoops, these don\'t match', 'Vikinguard' );?>"
248
+ placeholder="<?php esc_attr_e('Confirm', 'Vikinguard' );?>" required
249
+ name="confirm"></input></li>
250
+ </ul>
251
+ <h3 class="form-signin-heading"><?php esc_attr_e('2) Review/Modify:', 'Vikinguard' );?></h3>
252
+ <ul>
253
+
254
+ <li><span class="heimdal-inp-hed"
255
+ title="<?php esc_attr_e('This is just a name to refer to your shop.', 'Vikinguard' );?>"><?php esc_attr_e('Your Shop Name', 'Vikinguard' );?></span>
256
+ <input type="text" id="signupCustomer" class="heimdal-inp"
257
+ placeholder="<?php esc_attr_e('Customer name', 'Vikinguard' );?>"
258
+ required autofocus data-error="Customer" required name="customer"
259
+ value="<?php echo bloginfo( 'name' ); ?>"> </input></li>
260
+ <li><span class="heimdal-inp-hed"
261
+ title="<?php esc_attr_e('Vikinguard is going to use this address to monitor the uptime of your shop. Please, check the http and https is correct configured. Do not use private or localhost address, use your public ip or domain to allow Vikinguard to access to your shop.', 'Vikinguard' );?>">
262
+ Your Shop Address</span> <input type="url" id="signupShop"
263
+ class="heimdal-inp"
264
+ placeholder="<?php esc_attr_e('Shop URL', 'Vikinguard' );?>"
265
+ required autofocus data-error="Customer" required name="customer"
266
+ value="<?php echo bloginfo( 'url' ); ?>"> </input></li>
267
+ <li><input type="checkbox" id="signupTerms"
268
+ data-error="<?php esc_attr_e('you must accept Vikinguard\'s terms', 'Vikinguard' );?>"
269
+ required name="agree" class="heimdal-inp-hed" checked="checked"><?php esc_attr_e('I agree to the ', 'Vikinguard' );?> <a
270
+ href="https://vikinguard.com/heimdal/EULA.html"> <?php esc_attr_e('Terms of Service.', 'Vikinguard' );?></a>
271
+ </input></li>
272
+ <li><input id="enviar" class="heimdal--button"
273
+ onclick='signup("<?php echo get_option( 'HEIMDALAPM_EMAIL_TMP' );?>","<?php esc_attr_e('Customer Name too short' , 'Vikinguard');?>\n","<?php esc_attr_e('Short url must start by http:// or https://', 'Vikinguard' );?>\n","<?php esc_attr_e('Password too short', 'Vikinguard' );?>\n","<?php esc_attr_e('Whoops, these passwords do not match', 'Vikinguard' );?>\n","<?php esc_attr_e('Check your email configuration', 'Vikinguard' );?>\n","<?php esc_attr_e('You must accept the terms\n', 'Vikinguard' );?>","<?php esc_attr_e('We have noticed that you configured Vikinguard to monitor a demo/test environment (localhost or 127.0.0.1). Please note that without real traffic and no public URL, you will not be able to monitor neither uptime neither real user experience and you will lose some important functionalities of our tool', 'Vikinguard' );?>","<?php esc_attr_e('Communication problem. Please try again later.', 'Vikinguard' );?>","<?php echo get_option( 'HEIMDALAPM_EMAIL_TMP' );?>");'
274
+ type="submit" value="<?php esc_attr_e('Send it','Vikinguard' ) ?>"></input>
275
+ </li>
276
+ </ul>
277
+ </div>
278
+
279
+ <?php
280
+ }
281
+ function add_Vikinguard_admin_page() {
282
+ if (function_exists ( 'add_submenu_page' )) {
283
+ add_submenu_page ( 'plugins.php', __ ( 'Vikinguard Settings', 'Vikinguard' ), __ ( 'Vikinguard Settings' ), 'manage_options', 'vikinguard-config', 'print_Vikinguard_management' );
284
+ add_menu_page ( __ ( 'Vikinguard Console', 'Vikinguard' ), __ ( 'Vikinguard Console' ), 'manage_options', 'vikinguard-console', 'print_Vikinguard_console', null, 56.1 );
285
+ }
286
+ }
287
+ function add_Vikinguard_action_links($links) {
288
+ return array_merge ( array (
289
+ 'settings' => '<a href="' . get_bloginfo ( 'wpurl' ) . '/wp-admin/plugins.php?page=vikinguard-config">Settings</a>'
290
+ ), $links );
291
+ }
292
+
293
+ add_action ( 'wp_head', 'add_Vikinguard_header' );
294
+
295
+ if (is_admin ()) {
296
+ load_plugin_textdomain ( 'Vikinguard', false, dirname ( plugin_basename ( __FILE__ ) ) . '/i18n' );
297
+ add_action ( 'admin_menu', 'add_Vikinguard_admin_page' );
298
+ add_filter ( 'plugin_action_links_' . plugin_basename ( __FILE__ ), 'add_Vikinguard_action_links' );
299
+ }
300
+ ?>