Login With Ajax - Version 3.1

Version Description

  • fixed json_encode issue
  • overhaul of JS, now leaner and meaner
  • modified template structure to allow multiple login forms
  • added template selection to each widget
  • added title choice to widget
  • removed inclusion of wp-includes/registration.php during regsitration (not needed since WP 3.1)
  • added two new templates to choose in widgets
  • new light-weight modal using tweaked Reveal library - http://zurb.com/playground/reveal-modal-plugin
  • improved css
  • improved html structures in widget templates
  • added sainitization in widget templates
  • fixed CSRF vulnerability in admin settings page - thanks to Charlie Eriksen via Secunia SVCRP
  • moved WP Widget before/after and open/close tags out of templates and into the WP_Widget class
  • LoginWithAjax class is now completely static
  • added some MS fixes for registration, now works with BuddyPress
Download this release

Release Info

Developer netweblogic
Plugin Icon 128x128 Login With Ajax
Version 3.1
Comparing to
See all releases

Code changes from version 3.0.4.1 to 3.1

langs/login-with-ajax-ar_SA.mo ADDED
Binary file
langs/login-with-ajax-ar_SA.pot ADDED
@@ -0,0 +1,171 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Translation of the WordPress plugin Login With Ajax 2.0.4 by NetWebLogic.
2
+ # Copyright (C) 2010 NetWebLogic
3
+ # This file is distributed under the same license as the Login With Ajax package.
4
+ # Adel Madshel <mr.adelme@gmail.com>, 2011.
5
+ #
6
+ msgid ""
7
+ msgstr ""
8
+ "Project-Id-Version: Login With Ajax 2.0.4\n"
9
+ "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
10
+ "POT-Creation-Date: 2010-02-10 13:35+0000\n"
11
+ "PO-Revision-Date: 2011-02-10 17:30+0100\n"
12
+ "Last-Translator: Marcus Sykes <marcus@netweblogic.com>\n"
13
+ "Language-Team: \n"
14
+ "MIME-Version: 1.0\n"
15
+ "Content-Type: text/plain; charset=UTF-8\n"
16
+ "Content-Transfer-Encoding: 8bit\n"
17
+
18
+ #: login-with-ajax-admin.php:67
19
+ msgid "Changes saved."
20
+ msgstr "تم حفظ التغييرات."
21
+
22
+ #: login-with-ajax-admin.php:71
23
+ msgid "There were issues when saving your settings. Please try again."
24
+ msgstr "لم يتم الحفظ..الرجاء المحاولة مرة أخرى"
25
+
26
+ #: login-with-ajax-admin.php:99
27
+ msgid "Global Login Redirect"
28
+ msgstr "اعادة التوجية"
29
+
30
+ #: login-with-ajax-admin.php:103
31
+ msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
32
+ msgstr "اذا رغبت أن تعيد توجيه المستخدم الى رابط محدد بعد تسجيل الدخول ضعه هنا مثال :http://wordpress.org/ "
33
+
34
+ #: login-with-ajax-admin.php:108
35
+ msgid "Global Logout Redirect"
36
+ msgstr "اعادة التوجية"
37
+
38
+ #: login-with-ajax-admin.php:112
39
+ msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
40
+ msgstr "اذا رغبت أن اتوجيه المستخدم الى رابط محدد بعد تسجيل الخروج ضعه هنا مثال :http://wordpress.org/ "
41
+
42
+ #: login-with-ajax-admin.php:117
43
+ msgid "Role-Based Custom Login Redirects"
44
+ msgstr "اعادة توجيه مخصص"
45
+
46
+ #: login-with-ajax-admin.php:120
47
+ msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
48
+ msgstr "اذا رغبت في اعادة توجيه مستخدم معين الى رابط مخصص عند تسجيل الدخول ضعه هنا في حالة تركه فارغا سيتم تحويله الى اعادة التوجية الافتراضي"
49
+
50
+ #: login-with-ajax-admin.php:140
51
+ msgid "Role-Based Custom Logout Redirects"
52
+ msgstr "اعادة التوجيه الافتراضي عند تسجيل الخروج"
53
+
54
+ #: login-with-ajax-admin.php:143
55
+ msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
56
+ msgstr "اذا رغبت في اعادة توجيه مستخدم معين الى رابط مخصص عند تسجيل الخروج ضعه هنا في حالة تركه فارغا سيتم تحويله الى اعادة التوجية الافتراضي"
57
+
58
+ #: login-with-ajax-admin.php:167
59
+ msgid "Save Changes"
60
+ msgstr "تم حفظ التغييرات"
61
+
62
+ #: login-with-ajax-widget.php:5
63
+ msgid "Login widget with AJAX capabilities."
64
+ msgstr "امكانات تسجيل الدخول مع AJAX"
65
+
66
+ #: login-with-ajax-widget.php:25
67
+ msgid "Show profile link?"
68
+ msgstr "اظهر رابط ملف العضوية"
69
+
70
+ #: login-with-ajax.php:107
71
+ msgid "Login Successful, redirecting..."
72
+ msgstr "تم تسجيل الدخول بنجاح..جاري اعادة التوجيه"
73
+
74
+ #: login-with-ajax.php:126
75
+ #: login-with-ajax.php:148
76
+ msgid "An undefined error has ocurred"
77
+ msgstr "خطأ غير محدد"
78
+
79
+ #: login-with-ajax.php:138
80
+ msgid "We have sent you an email"
81
+ msgstr "تم ارسال البريد الالكتروني لك"
82
+
83
+ #: widget/widget_in.php:11
84
+ msgid "Hi"
85
+ msgstr "مرحبا"
86
+
87
+ #: widget/widget_in.php:34
88
+ msgid "Profile"
89
+ msgstr "العضوية"
90
+
91
+ #: widget/widget_in.php:40
92
+ #: widget/widget_in.php:44
93
+ msgid "Log Out"
94
+ msgstr "تسجيل الخروج"
95
+
96
+ #: widget/widget_in.php:51
97
+ msgid "blog admin"
98
+ msgstr "الادارة"
99
+
100
+ #: widget/widget_out.php:10
101
+ #: widget/widget_out.php:35
102
+ msgid "Log In"
103
+ msgstr "تسجيل الدخول"
104
+
105
+ #: widget/widget_out.php:19
106
+ msgid "Username"
107
+ msgstr "اسم المستخدم"
108
+
109
+ #: widget/widget_out.php:27
110
+ msgid "Password"
111
+ msgstr "كلمة السر"
112
+
113
+ #: widget/widget_out.php:41
114
+ msgid "Remember Me"
115
+ msgstr "تذكرني"
116
+
117
+ #: widget/widget_out.php:43
118
+ msgid "Password Lost and Found"
119
+ msgstr "تم فقد كلمة السر وايجادها"
120
+
121
+ #: widget/widget_out.php:43
122
+ msgid "Lost your password?"
123
+ msgstr "نسيت كلمة السر؟"
124
+
125
+ # Translated by WP
126
+ #: widget/widget_out.php:52
127
+ #: widget/widget_out.php:56
128
+ msgid "Register"
129
+ msgstr "تسجيل"
130
+
131
+ # Translated by WP
132
+ #: widget/widget_out.php:62
133
+ msgid "Sign Up"
134
+ msgstr "تسجيل الدخول"
135
+
136
+ #: widget/widget_out.php:74
137
+ msgid "Forgotten Password"
138
+ msgstr "نسيان كلمة السر"
139
+
140
+ #: widget/widget_out.php:79
141
+ msgid "Enter username or email"
142
+ msgstr "ضع اسم المستخدم او البريد الالكتروني"
143
+
144
+ #: widget/widget_out.php:85
145
+ msgid "Get New Password"
146
+ msgstr "احصل على كلمة سر جديدة"
147
+
148
+ #. Plugin Name of an extension
149
+ msgid "Login With Ajax"
150
+ msgstr "تسجيل الدخول مع AJAX"
151
+
152
+ #. Plugin URI of an extension
153
+ msgid "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
154
+ msgstr "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
155
+
156
+ #. Description of an extension
157
+ msgid "Ajax driven login widget. Customisable from within your template folder, and advanced settings from the admin area."
158
+ msgstr "اضافة تسجيل الدخول مع اجاكس..قابل للتخصيص من القلب..والاعدادات المتقدمة من منطقة الادارة"
159
+
160
+ #. Author of an extension
161
+ msgid "NetWebLogic"
162
+ msgstr "NetWebLogic"
163
+
164
+ #. Author URI of an extension
165
+ msgid "http://netweblogic.com/"
166
+ msgstr "http://netweblogic.com/"
167
+
168
+ #. Tags of an extension
169
+ msgid "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
170
+ msgstr "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
171
+
langs/login-with-ajax-de_DE.mo CHANGED
Binary file
langs/login-with-ajax-de_DE.po CHANGED
@@ -1,161 +1,312 @@
1
- # Translation of the WordPress plugin Login With Ajax 3.0a by NetWebLogic.
2
- # Copyright (C) 2010 NetWebLogic
3
  # This file is distributed under the same license as the Login With Ajax package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5
- #
6
  msgid ""
7
  msgstr ""
8
- "Project-Id-Version: Login With Ajax 3.0a\n"
9
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
10
- "POT-Creation-Date: 2010-06-04 16:10+0000\n"
11
- "PO-Revision-Date: 2010-06-05 14:43+0100\n"
12
- "Last-Translator: Linus Metzler <linus.metzler@limenet.ch>\n"
13
- "Language-Team: \n"
14
  "MIME-Version: 1.0\n"
15
  "Content-Type: text/plain; charset=UTF-8\n"
16
  "Content-Transfer-Encoding: 8bit\n"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
- #: login-with-ajax-admin.php:43
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  msgid "New features in Login With AJAX (including registration!), check out the settings and widget pages!"
20
  msgstr "Neue Features bei Login with AJAX (inklusive Registrierung!), schau dir die Einstellungs- und Widgetseiten an!"
21
 
22
- #: login-with-ajax-admin.php:45
23
  msgid "Dismiss"
24
  msgstr "Verwerfen"
25
 
26
  # Translated by WP
27
- #: login-with-ajax-admin.php:89
28
  msgid "Changes saved."
29
  msgstr "Änderungen gespeichert"
30
 
31
- #: login-with-ajax-admin.php:93
32
- msgid "There were issues when saving your settings. Please try again."
33
- msgstr "Es gab Probleme beim Speichern deiner Einstellungen. Bitte versuche es nochmals"
34
-
35
- #: login-with-ajax-admin.php:137
36
  msgid "General Settings"
37
  msgstr "Allgemeine Einstellungen"
38
 
39
- #: login-with-ajax-admin.php:142
40
  msgid "Default Template"
41
  msgstr "Standardvorlage"
42
 
43
- #: login-with-ajax-admin.php:151
44
  msgid "Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags."
45
  msgstr "Wähle die Standardvorlage aus, die du benutzen willst. Dies kann durch das Widget, sowie durch Shortcodes und Template Tags überschrieben werden."
46
 
47
- #: login-with-ajax-admin.php:152
48
  msgid "Further documentation for this feature coming soon..."
49
  msgstr "Weitere Dokumentation für dieses Feature folgt bald..."
50
 
51
- #: login-with-ajax-admin.php:157
52
  msgid "Disable refresh upon login?"
53
  msgstr "Aktualisierien bei Login deaktivieren?"
54
 
55
- #: login-with-ajax-admin.php:162
56
  msgid "If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed."
57
  msgstr "Wenn sich der User einloggt und du den Knopf oben aktiviert hast, wird sich nur das Widget und nicht die gesamte Seite aktualisieren. Keine gute Idee, falls deinen Seite anderen Inhalt anzeigt, falls der User eingeloggt ist, daher wäre somit ein neu laden nötig."
58
 
59
- #: login-with-ajax-admin.php:163
60
  msgid "<strong>Experimental and not fully tested!</strong> please test and report any bugs on our forum."
61
  msgstr "<strong>Experimentell und nicht vollständig getestet!</strong> Bitte teste und melde alle Bugs in unserem Forum."
62
 
63
- #: login-with-ajax-admin.php:168
64
  msgid "Redirection Settings"
65
  msgstr "Umleitungseinstellungen"
66
 
67
- #: login-with-ajax-admin.php:173
68
  msgid "Global Login Redirect"
69
  msgstr "Globale Login Umleitung"
70
 
71
- #: login-with-ajax-admin.php:177
72
  msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
73
  msgstr "Wenn du den User nach dem Login auf eine spezifische URL umleiten möchtest, gib diese hier an (z.B. http://wordpress.org)"
74
 
75
- #: login-with-ajax-admin.php:178
76
- #: login-with-ajax-admin.php:188
77
  msgid "New!"
78
  msgstr "Neu!"
79
 
80
- #: login-with-ajax-admin.php:178
81
  msgid "Use %USERNAME% and it will be replaced with the username of person logging in."
82
  msgstr "Benutze %USERNAME% und es wird mit dem Usernamen der einloggenden Person ersetzt."
83
 
84
- #: login-with-ajax-admin.php:183
 
 
 
 
 
85
  msgid "Global Logout Redirect"
86
  msgstr "Globale Logout Umleitung"
87
 
88
- #: login-with-ajax-admin.php:187
89
  msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
90
  msgstr "Wenn du den User nach dem Logout auf eine spezifische URL umleiten möchtest, gib diese hier an (z.B. http://wordpress.org)"
91
 
92
- #: login-with-ajax-admin.php:188
93
  msgid "Enter %LASTURL% to send the user back to the page they were previously on."
94
  msgstr "Gib %LASTURL% ein, um den User dorthin zurück zu schicken, wo er vorher war."
95
 
96
- #: login-with-ajax-admin.php:193
97
  msgid "Role-Based Custom Login Redirects"
98
  msgstr "Rolenbasierte Umleitungen nach dem Login"
99
 
100
- #: login-with-ajax-admin.php:196
101
  msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
102
  msgstr "Falls du eine bestimmte Benutzerrolle nach dem Login auf eine spezifische URL umleiten willst, gib diese hier ein (kein Wert benutzt die gloable Einstellung)"
103
 
104
- #: login-with-ajax-admin.php:216
105
  msgid "Role-Based Custom Logout Redirects"
106
  msgstr "Rolenbasierte Umleitungen nach dem Logout"
107
 
108
- #: login-with-ajax-admin.php:219
109
  msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
110
  msgstr "Falls du eine bestimmte Benutzerrolle nach dem Logout auf eine spezifische URL umleiten willst, gib diese hier ein (kein Wert benutzt die gloable Einstellung)"
111
 
112
- #: login-with-ajax-admin.php:239
113
  msgid "Notification Settings"
114
  msgstr "Benachrichtigungseinstellungen"
115
 
116
- #: login-with-ajax-admin.php:241
117
  msgid "If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message"
118
  msgstr "Falls du das Standard Mail, das User von Wordpress erhalten, sobald sie sich registriert haben, stelle sicher, dass du in der Box unten das Häckchen setzt und einen neuen Betreff und eine neue Nachricht für das Mail eingibst."
119
 
120
- #: login-with-ajax-admin.php:242
121
  msgid "If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU)."
122
  msgstr "Falls diese Funkion nicht funktioniert, stelle sicher, dass du kein anderes Plugin installiert hast, welches sich ebenfalls um die Registrierung von Usern kümmert (z.B. BuddyPress und MU)."
123
 
124
- #: login-with-ajax-admin.php:248
125
  msgid "Override Default Email?"
126
  msgstr "Standard E-Mail überschreiben?"
127
 
128
- #: login-with-ajax-admin.php:256
129
  msgid "Subject"
130
  msgstr "Betreff"
131
 
132
- #: login-with-ajax-admin.php:261
133
  msgid "Your registration at %BLOGNAME%"
134
  msgstr "Deine Registrierung bei %BLOGNAME%"
135
 
136
- #: login-with-ajax-admin.php:265
137
  msgid "<code>%USERNAME%</code> will be replaced with a username."
138
  msgstr "<code>%USERNAME%</code> wird durch einen Usernamen ersetzt."
139
 
140
- #: login-with-ajax-admin.php:266
141
  msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
142
  msgstr "<code>%PASSWORD%</code> wird durch das Passwort des Users ersetzt­."
143
 
144
- #: login-with-ajax-admin.php:267
145
- #: login-with-ajax-admin.php:291
146
  msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
147
  msgstr "<code>%BLOGNAME%</code> wird durch den Namen deines Blogs ersetzt."
148
 
149
- #: login-with-ajax-admin.php:268
150
- #: login-with-ajax-admin.php:292
151
  msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
152
  msgstr "<code>%BLOGURL%</code>wird durch die URL deines Blogs ersetzt."
153
 
154
- #: login-with-ajax-admin.php:273
155
  msgid "Message"
156
  msgstr "Nachricht"
157
 
158
- #: login-with-ajax-admin.php:278
159
  msgid ""
160
  "Thanks for signing up to our blog. \r\n"
161
  "\r\n"
@@ -180,225 +331,10 @@ msgstr ""
180
  "Das Team von %BLOGNAME%"
181
 
182
  # Translated by WP
183
- #: login-with-ajax-admin.php:301
184
  msgid "Save Changes"
185
  msgstr "Änderungen speichern"
186
 
187
- #: login-with-ajax-widget.php:5
188
- msgid "Login widget with AJAX capabilities."
189
- msgstr "Login Widget mit AJAX-Fähigkeiten"
190
-
191
- #: login-with-ajax-widget.php:28
192
- msgid "Show profile link?"
193
- msgstr "Näytä profiililinkki?"
194
-
195
- #: login-with-ajax-widget.php:32
196
- msgid "AJAX Registration?"
197
- msgstr "AJAX Registrierung"
198
-
199
- #: login-with-ajax-widget.php:36
200
- msgid "Template"
201
- msgstr "Vorlage"
202
-
203
- #: login-with-ajax.php:149
204
- msgid "Login Successful, redirecting..."
205
- msgstr "Login erfolgreich, umleiten..."
206
-
207
- #: login-with-ajax.php:161
208
- msgid "Login successful, updating..."
209
- msgstr "Login erfolgreich, umleiten..."
210
-
211
- #: login-with-ajax.php:171
212
- #: login-with-ajax.php:219
213
- msgid "An undefined error has ocurred"
214
- msgstr "Ein undefinierter Fehler trat auf!"
215
-
216
- #: login-with-ajax.php:190
217
- msgid "Registration complete. Please check your e-mail."
218
- msgstr "Registrierung komplett. Bitte überprüfe dein E-Mail."
219
-
220
- #: login-with-ajax.php:210
221
- msgid "We have sent you an email"
222
- msgstr "Wir haben dir eine E-Mail geschickt"
223
-
224
- #: pluggable.php:26
225
- #, php-format
226
- msgid "New user registration on your blog %s:"
227
- msgstr "Neuer User registriert auf deinem Blog %s:"
228
-
229
- # Translated by WP
230
- #: pluggable.php:27
231
- #: pluggable.php:41
232
- #, php-format
233
- msgid "Username: %s"
234
- msgstr "Username: %s"
235
-
236
- #: pluggable.php:28
237
- #, php-format
238
- msgid "E-mail: %s"
239
- msgstr "E-Mail: %s"
240
-
241
- #: pluggable.php:30
242
- #, php-format
243
- msgid "[%s] New User Registration"
244
- msgstr "[%s] Registrierung eines neuen Users"
245
-
246
- # Translated by WP
247
- #: pluggable.php:42
248
- #, php-format
249
- msgid "Password: %s"
250
- msgstr "Passwort: %s"
251
-
252
- #: pluggable.php:45
253
- #, php-format
254
- msgid "[%s] Your username and password"
255
- msgstr "[%s] Dein Username und Passwort"
256
-
257
- #: widget/default/register.php:9
258
- #: widget/ie7-friendly/widget_out.php:88
259
- #: widget/inline-registration/widget_out.php:94
260
- msgid "Register For This Site"
261
- msgstr "Für diese Site registrieren"
262
-
263
- # Translated by WP
264
- #: widget/default/register.php:12
265
- #: widget/default/widget_out.php:19
266
- #: widget/ie7-friendly/widget_out.php:17
267
- #: widget/ie7-friendly/widget_out.php:93
268
- #: widget/inline-registration/widget_out.php:19
269
- #: widget/inline-registration/widget_out.php:99
270
- #: widget/widget_out.php:19
271
- msgid "Username"
272
- msgstr "Benutzername"
273
-
274
- #: widget/default/register.php:16
275
- #: widget/ie7-friendly/widget_out.php:99
276
- #: widget/inline-registration/widget_out.php:105
277
- msgid "E-mail"
278
- msgstr "E-Mail"
279
-
280
- #: widget/default/register.php:20
281
- #: widget/ie7-friendly/widget_out.php:113
282
- #: widget/inline-registration/widget_out.php:119
283
- msgid "A password will be e-mailed to you."
284
- msgstr "Ein Passwort wird per E-Mail an dich geschickt"
285
-
286
- # Translated by WP
287
- #: widget/default/register.php:21
288
- #: widget/default/widget_out.php:56
289
- #: widget/ie7-friendly/widget_out.php:53
290
- #: widget/ie7-friendly/widget_out.php:114
291
- #: widget/inline-registration/widget_out.php:55
292
- #: widget/inline-registration/widget_out.php:120
293
- #: widget/widget_out.php:56
294
- msgid "Register"
295
- msgstr "Registrieren"
296
-
297
- #: widget/default/widget_in.php:11
298
- #: widget/default/widget_in.php:14
299
- #: widget/ie7-friendly/widget_in.php:11
300
- #: widget/ie7-friendly/widget_in.php:14
301
- #: widget/inline-registration/widget_in.php:11
302
- #: widget/inline-registration/widget_in.php:14
303
- #: widget/widget_in.php:11
304
- #: widget/widget_in.php:14
305
- msgid "Hi"
306
- msgstr "Hi "
307
-
308
- # Translated by WP
309
- #: widget/default/widget_in.php:33
310
- #: widget/ie7-friendly/widget_in.php:34
311
- #: widget/inline-registration/widget_in.php:33
312
- #: widget/widget_in.php:33
313
- msgid "Profile"
314
- msgstr "Profil"
315
-
316
- # Translated by WP
317
- #: widget/default/widget_in.php:38
318
- #: widget/ie7-friendly/widget_in.php:40
319
- #: widget/ie7-friendly/widget_in.php:44
320
- #: widget/inline-registration/widget_in.php:38
321
- #: widget/widget_in.php:38
322
- msgid "Log Out"
323
- msgstr "Logout"
324
-
325
- #: widget/default/widget_in.php:43
326
- #: widget/inline-registration/widget_in.php:43
327
- #: widget/widget_in.php:43
328
- msgid "blog admin"
329
- msgstr "Blog Admin"
330
-
331
- # Translated by WP
332
- #: widget/default/widget_out.php:10
333
- #: widget/default/widget_out.php:35
334
- #: widget/ie7-friendly/widget_out.php:10
335
- #: widget/ie7-friendly/widget_out.php:32
336
- #: widget/inline-registration/widget_out.php:10
337
- #: widget/inline-registration/widget_out.php:35
338
- #: widget/widget_out.php:10
339
- #: widget/widget_out.php:35
340
- msgid "Log In"
341
- msgstr "Login"
342
-
343
- # Translated by WP
344
- #: widget/default/widget_out.php:27
345
- #: widget/ie7-friendly/widget_out.php:25
346
- #: widget/inline-registration/widget_out.php:27
347
- #: widget/widget_out.php:27
348
- msgid "Password"
349
- msgstr "Passwort"
350
-
351
- # Translated by WP
352
- #: widget/default/widget_out.php:41
353
- #: widget/ie7-friendly/widget_out.php:38
354
- #: widget/inline-registration/widget_out.php:40
355
- #: widget/widget_out.php:41
356
- msgid "Remember Me"
357
- msgstr "Erinnere dich an mich"
358
-
359
- #: widget/default/widget_out.php:43
360
- #: widget/ie7-friendly/widget_out.php:40
361
- #: widget/inline-registration/widget_out.php:42
362
- #: widget/widget_out.php:43
363
- msgid "Password Lost and Found"
364
- msgstr "Passwort vergessen und wiederherstellen"
365
-
366
- #: widget/default/widget_out.php:43
367
- #: widget/ie7-friendly/widget_out.php:40
368
- #: widget/inline-registration/widget_out.php:42
369
- #: widget/widget_out.php:43
370
- msgid "Lost your password?"
371
- msgstr "Dein Passwort vergessen?"
372
-
373
- #: widget/default/widget_out.php:68
374
- #: widget/ie7-friendly/widget_out.php:63
375
- #: widget/inline-registration/widget_out.php:67
376
- #: widget/widget_out.php:68
377
- msgid "Forgotten Password"
378
- msgstr "Vergessenes Passwort"
379
-
380
- #: widget/default/widget_out.php:73
381
- #: widget/ie7-friendly/widget_out.php:67
382
- #: widget/inline-registration/widget_out.php:72
383
- #: widget/widget_out.php:73
384
- msgid "Enter username or email"
385
- msgstr "Gib den Butzernamen oder die E-Mail Adresse an"
386
-
387
- #: widget/default/widget_out.php:79
388
- #: widget/ie7-friendly/widget_out.php:72
389
- #: widget/inline-registration/widget_out.php:78
390
- #: widget/widget_out.php:79
391
- msgid "Get New Password"
392
- msgstr "Neues Passwort bekommen"
393
-
394
- #: widget/default/widget_out.php:80
395
- #: widget/ie7-friendly/widget_out.php:115
396
- #: widget/inline-registration/widget_out.php:79
397
- #: widget/inline-registration/widget_out.php:121
398
- #: widget/widget_out.php:80
399
- msgid "Cancel"
400
- msgstr "Abbrechen"
401
-
402
  #. Plugin Name of the plugin/theme
403
  msgid "Login With Ajax"
404
  msgstr "Login mit Ajax"
@@ -423,5 +359,10 @@ msgstr "http://netweblogic.com/"
423
  msgid "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
424
  msgstr "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
425
 
 
 
 
 
 
426
  #~ msgid "default"
427
  #~ msgstr "Standard"
1
+ # Copyright (C) 2010 Login With Ajax
 
2
  # This file is distributed under the same license as the Login With Ajax package.
 
 
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Login With Ajax 3.0.4\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
7
+ "POT-Creation-Date: 2011-03-18 10:13:16+00:00\n"
 
 
 
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2011-03-25 18:10+0100\n"
12
+ "Last-Translator: Marcus Sykes <marcus@netweblogic.com>\n"
13
+ "Language-Team: \n"
14
+
15
+ #: login-with-ajax-widget.php:5
16
+ msgid "Login widget with AJAX capabilities."
17
+ msgstr "Login Widget mit AJAX-Fähigkeiten"
18
+
19
+ #: login-with-ajax-widget.php:28
20
+ msgid "Show profile link?"
21
+ msgstr "Näytä profiililinkki?"
22
+
23
+ #: login-with-ajax-widget.php:32
24
+ msgid "AJAX Registration?"
25
+ msgstr "AJAX Registrierung"
26
+
27
+ #: login-with-ajax-widget.php:37
28
+ msgid "Template"
29
+ msgstr "Vorlage"
30
+
31
+ # Translated by WP
32
+ #: widget/default/widget_out.php:10
33
+ #: widget/default/widget_out.php:36
34
+ msgid "Log In"
35
+ msgstr "Login"
36
+
37
+ # Translated by WP
38
+ #: widget/default/widget_out.php:19
39
+ #: widget/default/widget_out.php:94
40
+ msgid "Username"
41
+ msgstr "Benutzername"
42
+
43
+ # Translated by WP
44
+ #: widget/default/widget_out.php:27
45
+ msgid "Password"
46
+ msgstr "Passwort"
47
 
48
+ # Translated by WP
49
+ #: widget/default/widget_out.php:42
50
+ msgid "Remember Me"
51
+ msgstr "Erinnere dich an mich"
52
+
53
+ #: widget/default/widget_out.php:44
54
+ msgid "Password Lost and Found"
55
+ msgstr "Passwort vergessen und wiederherstellen"
56
+
57
+ #: widget/default/widget_out.php:44
58
+ msgid "Lost your password?"
59
+ msgstr "Dein Passwort vergessen?"
60
+
61
+ # Translated by WP
62
+ #: widget/default/widget_out.php:57
63
+ #: widget/default/widget_out.php:103
64
+ msgid "Register"
65
+ msgstr "Registrieren"
66
+
67
+ #: widget/default/widget_out.php:69
68
+ msgid "Forgotten Password"
69
+ msgstr "Vergessenes Passwort"
70
+
71
+ #: widget/default/widget_out.php:74
72
+ msgid "Enter username or email"
73
+ msgstr "Gib den Butzernamen oder die E-Mail Adresse an"
74
+
75
+ #: widget/default/widget_out.php:80
76
+ msgid "Get New Password"
77
+ msgstr "Neues Passwort bekommen"
78
+
79
+ #: widget/default/widget_out.php:81
80
+ msgid "Cancel"
81
+ msgstr "Abbrechen"
82
+
83
+ #: widget/default/widget_out.php:91
84
+ msgid "Register For This Site"
85
+ msgstr "Für diese Site registrieren"
86
+
87
+ #: widget/default/widget_out.php:98
88
+ msgid "E-mail"
89
+ msgstr "E-Mail"
90
+
91
+ #: widget/default/widget_out.php:102
92
+ msgid "A password will be e-mailed to you."
93
+ msgstr "Ein Passwort wird per E-Mail an dich geschickt"
94
+
95
+ #: widget/default/widget_in.php:11
96
+ #: widget/default/widget_in.php:14
97
+ msgid "Hi"
98
+ msgstr "Hi "
99
+
100
+ # Translated by WP
101
+ #: widget/default/widget_in.php:35
102
+ #: widget/default/widget_in.php:39
103
+ msgid "Profile"
104
+ msgstr "Profil"
105
+
106
+ # Translated by WP
107
+ #: widget/default/widget_in.php:45
108
+ msgid "Log Out"
109
+ msgstr "Logout"
110
+
111
+ #: widget/default/widget_in.php:50
112
+ msgid "blog admin"
113
+ msgstr "Blog Admin"
114
+
115
+ #: pluggable.php:25
116
+ msgid "New user registration on your blog %s:"
117
+ msgstr "Neuer User registriert auf deinem Blog %s:"
118
+
119
+ # Translated by WP
120
+ #: pluggable.php:26
121
+ #: pluggable.php:40
122
+ msgid "Username: %s"
123
+ msgstr "Username: %s"
124
+
125
+ #: pluggable.php:27
126
+ msgid "E-mail: %s"
127
+ msgstr "E-Mail: %s"
128
+
129
+ #: pluggable.php:29
130
+ msgid "[%s] New User Registration"
131
+ msgstr "[%s] Registrierung eines neuen Users"
132
+
133
+ # Translated by WP
134
+ #: pluggable.php:41
135
+ msgid "Password: %s"
136
+ msgstr "Passwort: %s"
137
+
138
+ #: pluggable.php:44
139
+ msgid "[%s] Your username and password"
140
+ msgstr "[%s] Dein Username und Passwort"
141
+
142
+ #: login-with-ajax.php:177
143
+ msgid "Login Successful, redirecting..."
144
+ msgstr "Login erfolgreich, umleiten..."
145
+
146
+ #: login-with-ajax.php:189
147
+ msgid "Login successful, updating..."
148
+ msgstr "Login erfolgreich, umleiten..."
149
+
150
+ #: login-with-ajax.php:199
151
+ #: login-with-ajax.php:251
152
+ msgid "An undefined error has ocurred"
153
+ msgstr "Ein undefinierter Fehler trat auf!"
154
+
155
+ #: login-with-ajax.php:203
156
+ #, fuzzy
157
+ msgid "Please supply your username and password."
158
+ msgstr "[%s] Dein Username und Passwort"
159
+
160
+ #: login-with-ajax.php:222
161
+ msgid "Registration complete. Please check your e-mail."
162
+ msgstr "Registrierung komplett. Bitte überprüfe dein E-Mail."
163
+
164
+ #: login-with-ajax.php:242
165
+ msgid "We have sent you an email"
166
+ msgstr "Wir haben dir eine E-Mail geschickt"
167
+
168
+ #: login-with-ajax-admin.php:44
169
  msgid "New features in Login With AJAX (including registration!), check out the settings and widget pages!"
170
  msgstr "Neue Features bei Login with AJAX (inklusive Registrierung!), schau dir die Einstellungs- und Widgetseiten an!"
171
 
172
+ #: login-with-ajax-admin.php:46
173
  msgid "Dismiss"
174
  msgstr "Verwerfen"
175
 
176
  # Translated by WP
177
+ #: login-with-ajax-admin.php:92
178
  msgid "Changes saved."
179
  msgstr "Änderungen gespeichert"
180
 
181
+ #: login-with-ajax-admin.php:139
 
 
 
 
182
  msgid "General Settings"
183
  msgstr "Allgemeine Einstellungen"
184
 
185
+ #: login-with-ajax-admin.php:145
186
  msgid "Default Template"
187
  msgstr "Standardvorlage"
188
 
189
+ #: login-with-ajax-admin.php:154
190
  msgid "Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags."
191
  msgstr "Wähle die Standardvorlage aus, die du benutzen willst. Dies kann durch das Widget, sowie durch Shortcodes und Template Tags überschrieben werden."
192
 
193
+ #: login-with-ajax-admin.php:155
194
  msgid "Further documentation for this feature coming soon..."
195
  msgstr "Weitere Dokumentation für dieses Feature folgt bald..."
196
 
197
+ #: login-with-ajax-admin.php:161
198
  msgid "Disable refresh upon login?"
199
  msgstr "Aktualisierien bei Login deaktivieren?"
200
 
201
+ #: login-with-ajax-admin.php:166
202
  msgid "If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed."
203
  msgstr "Wenn sich der User einloggt und du den Knopf oben aktiviert hast, wird sich nur das Widget und nicht die gesamte Seite aktualisieren. Keine gute Idee, falls deinen Seite anderen Inhalt anzeigt, falls der User eingeloggt ist, daher wäre somit ein neu laden nötig."
204
 
205
+ #: login-with-ajax-admin.php:167
206
  msgid "<strong>Experimental and not fully tested!</strong> please test and report any bugs on our forum."
207
  msgstr "<strong>Experimentell und nicht vollständig getestet!</strong> Bitte teste und melde alle Bugs in unserem Forum."
208
 
209
+ #: login-with-ajax-admin.php:172
210
  msgid "Redirection Settings"
211
  msgstr "Umleitungseinstellungen"
212
 
213
+ #: login-with-ajax-admin.php:177
214
  msgid "Global Login Redirect"
215
  msgstr "Globale Login Umleitung"
216
 
217
+ #: login-with-ajax-admin.php:181
218
  msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
219
  msgstr "Wenn du den User nach dem Login auf eine spezifische URL umleiten möchtest, gib diese hier an (z.B. http://wordpress.org)"
220
 
221
+ #: login-with-ajax-admin.php:182
222
+ #: login-with-ajax-admin.php:220
223
  msgid "New!"
224
  msgstr "Neu!"
225
 
226
+ #: login-with-ajax-admin.php:182
227
  msgid "Use %USERNAME% and it will be replaced with the username of person logging in."
228
  msgstr "Benutze %USERNAME% und es wird mit dem Usernamen der einloggenden Person ersetzt."
229
 
230
+ #: login-with-ajax-admin.php:204
231
+ #: login-with-ajax-admin.php:256
232
+ msgid "With WPML enabled you can provide different redirection destinations based on language too."
233
+ msgstr ""
234
+
235
+ #: login-with-ajax-admin.php:215
236
  msgid "Global Logout Redirect"
237
  msgstr "Globale Logout Umleitung"
238
 
239
+ #: login-with-ajax-admin.php:219
240
  msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
241
  msgstr "Wenn du den User nach dem Logout auf eine spezifische URL umleiten möchtest, gib diese hier an (z.B. http://wordpress.org)"
242
 
243
+ #: login-with-ajax-admin.php:220
244
  msgid "Enter %LASTURL% to send the user back to the page they were previously on."
245
  msgstr "Gib %LASTURL% ein, um den User dorthin zurück zu schicken, wo er vorher war."
246
 
247
+ #: login-with-ajax-admin.php:228
248
  msgid "Role-Based Custom Login Redirects"
249
  msgstr "Rolenbasierte Umleitungen nach dem Login"
250
 
251
+ #: login-with-ajax-admin.php:231
252
  msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
253
  msgstr "Falls du eine bestimmte Benutzerrolle nach dem Login auf eine spezifische URL umleiten willst, gib diese hier ein (kein Wert benutzt die gloable Einstellung)"
254
 
255
+ #: login-with-ajax-admin.php:281
256
  msgid "Role-Based Custom Logout Redirects"
257
  msgstr "Rolenbasierte Umleitungen nach dem Logout"
258
 
259
+ #: login-with-ajax-admin.php:284
260
  msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
261
  msgstr "Falls du eine bestimmte Benutzerrolle nach dem Logout auf eine spezifische URL umleiten willst, gib diese hier ein (kein Wert benutzt die gloable Einstellung)"
262
 
263
+ #: login-with-ajax-admin.php:307
264
  msgid "Notification Settings"
265
  msgstr "Benachrichtigungseinstellungen"
266
 
267
+ #: login-with-ajax-admin.php:309
268
  msgid "If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message"
269
  msgstr "Falls du das Standard Mail, das User von Wordpress erhalten, sobald sie sich registriert haben, stelle sicher, dass du in der Box unten das Häckchen setzt und einen neuen Betreff und eine neue Nachricht für das Mail eingibst."
270
 
271
+ #: login-with-ajax-admin.php:310
272
  msgid "If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU)."
273
  msgstr "Falls diese Funkion nicht funktioniert, stelle sicher, dass du kein anderes Plugin installiert hast, welches sich ebenfalls um die Registrierung von Usern kümmert (z.B. BuddyPress und MU)."
274
 
275
+ #: login-with-ajax-admin.php:316
276
  msgid "Override Default Email?"
277
  msgstr "Standard E-Mail überschreiben?"
278
 
279
+ #: login-with-ajax-admin.php:324
280
  msgid "Subject"
281
  msgstr "Betreff"
282
 
283
+ #: login-with-ajax-admin.php:329
284
  msgid "Your registration at %BLOGNAME%"
285
  msgstr "Deine Registrierung bei %BLOGNAME%"
286
 
287
+ #: login-with-ajax-admin.php:333
288
  msgid "<code>%USERNAME%</code> will be replaced with a username."
289
  msgstr "<code>%USERNAME%</code> wird durch einen Usernamen ersetzt."
290
 
291
+ #: login-with-ajax-admin.php:334
292
  msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
293
  msgstr "<code>%PASSWORD%</code> wird durch das Passwort des Users ersetzt­."
294
 
295
+ #: login-with-ajax-admin.php:335
296
+ #: login-with-ajax-admin.php:359
297
  msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
298
  msgstr "<code>%BLOGNAME%</code> wird durch den Namen deines Blogs ersetzt."
299
 
300
+ #: login-with-ajax-admin.php:336
301
+ #: login-with-ajax-admin.php:360
302
  msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
303
  msgstr "<code>%BLOGURL%</code>wird durch die URL deines Blogs ersetzt."
304
 
305
+ #: login-with-ajax-admin.php:341
306
  msgid "Message"
307
  msgstr "Nachricht"
308
 
309
+ #: login-with-ajax-admin.php:346
310
  msgid ""
311
  "Thanks for signing up to our blog. \r\n"
312
  "\r\n"
331
  "Das Team von %BLOGNAME%"
332
 
333
  # Translated by WP
334
+ #: login-with-ajax-admin.php:369
335
  msgid "Save Changes"
336
  msgstr "Änderungen speichern"
337
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
338
  #. Plugin Name of the plugin/theme
339
  msgid "Login With Ajax"
340
  msgstr "Login mit Ajax"
359
  msgid "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
360
  msgstr "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
361
 
362
+ #~ msgid "There were issues when saving your settings. Please try again."
363
+ #~ msgstr ""
364
+ #~ "Es gab Probleme beim Speichern deiner Einstellungen. Bitte versuche es "
365
+ #~ "nochmals"
366
+
367
  #~ msgid "default"
368
  #~ msgstr "Standard"
langs/login-with-ajax-es_ES.mo CHANGED
Binary file
langs/login-with-ajax-es_ES.pot CHANGED
@@ -1,171 +1,346 @@
1
- # Translation of the WordPress plugin Login With Ajax 2.0.4 by NetWebLogic.
2
- # Copyright (C) 2010 NetWebLogic
3
  # This file is distributed under the same license as the Login With Ajax package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5
- #
6
  msgid ""
7
  msgstr ""
8
- "Project-Id-Version: Login With Ajax 2.0.4\n"
9
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
10
- "POT-Creation-Date: 2010-02-10 13:35+0000\n"
11
- "PO-Revision-Date: 2011-01-06 10:55+0100\n"
12
- "Last-Translator: Daniel Ramos <daniel.ramos@emesa.nl>\n"
13
- "Language-Team: \n"
14
  "MIME-Version: 1.0\n"
15
  "Content-Type: text/plain; charset=UTF-8\n"
16
  "Content-Transfer-Encoding: 8bit\n"
 
 
 
17
 
18
- #: login-with-ajax-admin.php:67
19
- msgid "Changes saved."
20
- msgstr "Cambios guardados."
21
 
22
- #: login-with-ajax-admin.php:71
23
- msgid "There were issues when saving your settings. Please try again."
24
- msgstr "Hubo problemas guardando sus preferencias. Inténtelo de nuevo, por favor."
25
 
26
- #: login-with-ajax-admin.php:99
27
- msgid "Global Login Redirect"
28
- msgstr "Redirección global de entrada"
29
 
30
- #: login-with-ajax-admin.php:103
31
- msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
32
- msgstr "Si desea redireccionar al usuario a una URL determinada al iniciar la sesión, digítela aquí (p.e. http://wordpress.org)"
33
 
34
- #: login-with-ajax-admin.php:108
35
- msgid "Global Logout Redirect"
36
- msgstr "Redirección global de salida"
 
37
 
38
- #: login-with-ajax-admin.php:112
39
- msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
40
- msgstr "Si desea redireccionar al usuario a una URL determinada al salir, digítela aquí (p.e. http://wordpress.org)"
 
41
 
42
- #: login-with-ajax-admin.php:117
43
- msgid "Role-Based Custom Login Redirects"
44
- msgstr "Redirección de entrada según el tipo de usuario"
45
 
46
- #: login-with-ajax-admin.php:120
47
- msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
48
- msgstr "Para redireccionar cada tipo de usuario a una página determinada al entrar, digítela aquí (si deja el campo vacío, se utilizará la configuración global)"
49
 
50
- #: login-with-ajax-admin.php:140
51
- msgid "Role-Based Custom Logout Redirects"
52
- msgstr "Redirección de salida según tipo de usuario"
53
 
54
- #: login-with-ajax-admin.php:143
55
- msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
56
- msgstr "Para redireccionar cada tipo de usuario a una página determinada al cerrar la sesión, digítela aquí (si deja el campo vacío, se utilizará la configuración global)"
57
 
58
- #: login-with-ajax-admin.php:167
59
- msgid "Save Changes"
60
- msgstr "Guardar cambios"
 
 
61
 
62
- #: login-with-ajax-widget.php:5
63
- msgid "Login widget with AJAX capabilities."
64
- msgstr "Widget de ingreso con funcionalidad de AJAX"
65
 
66
- #: login-with-ajax-widget.php:25
67
- msgid "Show profile link?"
68
- msgstr "¿Mostrar enlace para acceso al perfil de usuario?"
69
 
70
- #: login-with-ajax.php:107
71
- msgid "Login Successful, redirecting..."
72
- msgstr "Contraseña correcta, iniciando sesión..."
73
 
74
- #: login-with-ajax.php:126
75
- #: login-with-ajax.php:148
76
- msgid "An undefined error has ocurred"
77
- msgstr "Ha ocurrido un error indeterminado"
78
 
79
- #: login-with-ajax.php:138
80
- msgid "We have sent you an email"
81
- msgstr "Acabamos de enviarle un correo electrónico"
82
 
83
- #: widget/widget_in.php:11
 
 
 
 
 
 
 
 
 
84
  msgid "Hi"
85
  msgstr "Hola"
86
 
87
- #: widget/widget_in.php:34
 
88
  msgid "Profile"
89
  msgstr "Perfil"
90
 
91
- #: widget/widget_in.php:40
92
- #: widget/widget_in.php:44
93
  msgid "Log Out"
94
  msgstr "Salir"
95
 
96
- #: widget/widget_in.php:51
97
  msgid "blog admin"
98
  msgstr "Gestión del Blog"
99
 
100
- #: widget/widget_out.php:10
101
- #: widget/widget_out.php:35
102
- msgid "Log In"
103
- msgstr "Entrar"
104
 
105
- #: widget/widget_out.php:19
106
- msgid "Username"
 
 
107
  msgstr "Usuario"
108
 
109
- #: widget/widget_out.php:27
110
- msgid "Password"
 
 
 
 
 
 
 
 
 
111
  msgstr "Contraseña"
112
 
113
- #: widget/widget_out.php:41
114
- msgid "Remember Me"
115
- msgstr "Recuerdar mis datos"
116
 
117
- #: widget/widget_out.php:43
118
- msgid "Password Lost and Found"
119
- msgstr "Contraseña perdida y encontrada"
120
 
121
- #: widget/widget_out.php:43
122
- msgid "Lost your password?"
123
- msgstr "¿Olvidó la contraseña?"
 
124
 
125
- # Translated by WP
126
- #: widget/widget_out.php:52
127
- #: widget/widget_out.php:56
128
- msgid "Register"
129
- msgstr "Registrarse"
130
 
131
- # Translated by WP
132
- #: widget/widget_out.php:62
133
- msgid "Sign Up"
134
- msgstr "Inscribirse"
135
 
136
- #: widget/widget_out.php:74
137
- msgid "Forgotten Password"
138
- msgstr "Recordatorio de contraseña"
139
 
140
- #: widget/widget_out.php:79
141
- msgid "Enter username or email"
142
- msgstr "Digite su nombre de usuario o correo electrónico"
143
 
144
- #: widget/widget_out.php:85
145
- msgid "Get New Password"
146
- msgstr "Obtener nueva contraseña"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
147
 
148
- #. Plugin Name of an extension
149
  msgid "Login With Ajax"
150
  msgstr "Login with Ajax"
151
 
152
- #. Plugin URI of an extension
153
  msgid "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
154
  msgstr "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
155
 
156
- #. Description of an extension
157
  msgid "Ajax driven login widget. Customisable from within your template folder, and advanced settings from the admin area."
158
  msgstr "Widget para entrar con AJAX. Se puede modificar dentro de la carpeta del tema y configurar opciones avanzadas en el área de gestión."
159
 
160
- #. Author of an extension
161
  msgid "NetWebLogic"
162
  msgstr "NetWebLogic"
163
 
164
- #. Author URI of an extension
165
  msgid "http://netweblogic.com/"
166
  msgstr "http://netweblogic.com/"
167
 
168
- #. Tags of an extension
169
  msgid "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
170
  msgstr "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
171
 
 
 
 
1
+ # Copyright (C) 2010 Login With Ajax
 
2
  # This file is distributed under the same license as the Login With Ajax package.
 
 
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Login With Ajax 3.0.4\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
7
+ "POT-Creation-Date: 2011-03-18 10:13:16+00:00\n"
 
 
 
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2011-03-18 12:02+0100\n"
12
+ "Last-Translator: Marcus Sykes <marcus@netweblogic.com>\n"
13
+ "Language-Team: \n"
14
 
15
+ #: login-with-ajax-widget.php:5
16
+ msgid "Login widget with AJAX capabilities."
17
+ msgstr "Widget de ingreso con funcionalidad de AJAX"
18
 
19
+ #: login-with-ajax-widget.php:28
20
+ msgid "Show profile link?"
21
+ msgstr "¿Mostrar enlace para acceso al perfil de usuario?"
22
 
23
+ #: login-with-ajax-widget.php:32
24
+ msgid "AJAX Registration?"
25
+ msgstr ""
26
 
27
+ #: login-with-ajax-widget.php:37
28
+ msgid "Template"
29
+ msgstr ""
30
 
31
+ #: widget/default/widget_out.php:10
32
+ #: widget/default/widget_out.php:36
33
+ msgid "Log In"
34
+ msgstr "Entrar"
35
 
36
+ #: widget/default/widget_out.php:19
37
+ #: widget/default/widget_out.php:94
38
+ msgid "Username"
39
+ msgstr "Usuario"
40
 
41
+ #: widget/default/widget_out.php:27
42
+ msgid "Password"
43
+ msgstr "Contraseña"
44
 
45
+ #: widget/default/widget_out.php:42
46
+ msgid "Remember Me"
47
+ msgstr "Recuerdar mis datos"
48
 
49
+ #: widget/default/widget_out.php:44
50
+ msgid "Password Lost and Found"
51
+ msgstr "Contraseña perdida y encontrada"
52
 
53
+ #: widget/default/widget_out.php:44
54
+ msgid "Lost your password?"
55
+ msgstr "¿Olvidó la contraseña?"
56
 
57
+ # Translated by WP
58
+ #: widget/default/widget_out.php:57
59
+ #: widget/default/widget_out.php:103
60
+ msgid "Register"
61
+ msgstr "Registrarse"
62
 
63
+ #: widget/default/widget_out.php:69
64
+ msgid "Forgotten Password"
65
+ msgstr "Recordatorio de contraseña"
66
 
67
+ #: widget/default/widget_out.php:74
68
+ msgid "Enter username or email"
69
+ msgstr "Digite su nombre de usuario o correo electrónico"
70
 
71
+ #: widget/default/widget_out.php:80
72
+ msgid "Get New Password"
73
+ msgstr "Obtener nueva contraseña"
74
 
75
+ #: widget/default/widget_out.php:81
76
+ msgid "Cancel"
77
+ msgstr ""
 
78
 
79
+ #: widget/default/widget_out.php:91
80
+ msgid "Register For This Site"
81
+ msgstr ""
82
 
83
+ #: widget/default/widget_out.php:98
84
+ msgid "E-mail"
85
+ msgstr ""
86
+
87
+ #: widget/default/widget_out.php:102
88
+ msgid "A password will be e-mailed to you."
89
+ msgstr ""
90
+
91
+ #: widget/default/widget_in.php:11
92
+ #: widget/default/widget_in.php:14
93
  msgid "Hi"
94
  msgstr "Hola"
95
 
96
+ #: widget/default/widget_in.php:35
97
+ #: widget/default/widget_in.php:39
98
  msgid "Profile"
99
  msgstr "Perfil"
100
 
101
+ #: widget/default/widget_in.php:45
 
102
  msgid "Log Out"
103
  msgstr "Salir"
104
 
105
+ #: widget/default/widget_in.php:50
106
  msgid "blog admin"
107
  msgstr "Gestión del Blog"
108
 
109
+ #: pluggable.php:25
110
+ msgid "New user registration on your blog %s:"
111
+ msgstr ""
 
112
 
113
+ #: pluggable.php:26
114
+ #: pluggable.php:40
115
+ #, fuzzy
116
+ msgid "Username: %s"
117
  msgstr "Usuario"
118
 
119
+ #: pluggable.php:27
120
+ msgid "E-mail: %s"
121
+ msgstr ""
122
+
123
+ #: pluggable.php:29
124
+ msgid "[%s] New User Registration"
125
+ msgstr ""
126
+
127
+ #: pluggable.php:41
128
+ #, fuzzy
129
+ msgid "Password: %s"
130
  msgstr "Contraseña"
131
 
132
+ #: pluggable.php:44
133
+ msgid "[%s] Your username and password"
134
+ msgstr ""
135
 
136
+ #: login-with-ajax.php:177
137
+ msgid "Login Successful, redirecting..."
138
+ msgstr "Contraseña correcta, iniciando sesión..."
139
 
140
+ #: login-with-ajax.php:189
141
+ #, fuzzy
142
+ msgid "Login successful, updating..."
143
+ msgstr "Contraseña correcta, iniciando sesión..."
144
 
145
+ #: login-with-ajax.php:199
146
+ #: login-with-ajax.php:251
147
+ msgid "An undefined error has ocurred"
148
+ msgstr "Ha ocurrido un error indeterminado"
 
149
 
150
+ #: login-with-ajax.php:203
151
+ msgid "Please supply your username and password."
152
+ msgstr ""
 
153
 
154
+ #: login-with-ajax.php:222
155
+ msgid "Registration complete. Please check your e-mail."
156
+ msgstr ""
157
 
158
+ #: login-with-ajax.php:242
159
+ msgid "We have sent you an email"
160
+ msgstr "Acabamos de enviarle un correo electrónico"
161
 
162
+ #: login-with-ajax-admin.php:44
163
+ msgid "New features in Login With AJAX (including registration!), check out the settings and widget pages!"
164
+ msgstr ""
165
+
166
+ #: login-with-ajax-admin.php:46
167
+ msgid "Dismiss"
168
+ msgstr ""
169
+
170
+ #: login-with-ajax-admin.php:92
171
+ msgid "Changes saved."
172
+ msgstr "Cambios guardados."
173
+
174
+ #: login-with-ajax-admin.php:139
175
+ msgid "General Settings"
176
+ msgstr ""
177
+
178
+ #: login-with-ajax-admin.php:145
179
+ msgid "Default Template"
180
+ msgstr ""
181
+
182
+ #: login-with-ajax-admin.php:154
183
+ msgid "Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags."
184
+ msgstr ""
185
+
186
+ #: login-with-ajax-admin.php:155
187
+ msgid "Further documentation for this feature coming soon..."
188
+ msgstr ""
189
+
190
+ #: login-with-ajax-admin.php:161
191
+ msgid "Disable refresh upon login?"
192
+ msgstr ""
193
+
194
+ #: login-with-ajax-admin.php:166
195
+ msgid "If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed."
196
+ msgstr ""
197
+
198
+ #: login-with-ajax-admin.php:167
199
+ msgid "<strong>Experimental and not fully tested!</strong> please test and report any bugs on our forum."
200
+ msgstr ""
201
+
202
+ #: login-with-ajax-admin.php:172
203
+ msgid "Redirection Settings"
204
+ msgstr ""
205
+
206
+ #: login-with-ajax-admin.php:177
207
+ msgid "Global Login Redirect"
208
+ msgstr "Redirección global de entrada"
209
+
210
+ #: login-with-ajax-admin.php:181
211
+ msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
212
+ msgstr "Si desea redireccionar al usuario a una URL determinada al iniciar la sesión, digítela aquí (p.e. http://wordpress.org)"
213
+
214
+ #: login-with-ajax-admin.php:182
215
+ #: login-with-ajax-admin.php:220
216
+ msgid "New!"
217
+ msgstr ""
218
+
219
+ #: login-with-ajax-admin.php:182
220
+ msgid "Use %USERNAME% and it will be replaced with the username of person logging in."
221
+ msgstr ""
222
+
223
+ #: login-with-ajax-admin.php:204
224
+ #: login-with-ajax-admin.php:256
225
+ msgid "With WPML enabled you can provide different redirection destinations based on language too."
226
+ msgstr ""
227
+
228
+ #: login-with-ajax-admin.php:215
229
+ msgid "Global Logout Redirect"
230
+ msgstr "Redirección global de salida"
231
+
232
+ #: login-with-ajax-admin.php:219
233
+ msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
234
+ msgstr "Si desea redireccionar al usuario a una URL determinada al salir, digítela aquí (p.e. http://wordpress.org)"
235
+
236
+ #: login-with-ajax-admin.php:220
237
+ msgid "Enter %LASTURL% to send the user back to the page they were previously on."
238
+ msgstr ""
239
+
240
+ #: login-with-ajax-admin.php:228
241
+ msgid "Role-Based Custom Login Redirects"
242
+ msgstr "Redirección de entrada según el tipo de usuario"
243
+
244
+ #: login-with-ajax-admin.php:231
245
+ msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
246
+ msgstr "Para redireccionar cada tipo de usuario a una página determinada al entrar, digítela aquí (si deja el campo vacío, se utilizará la configuración global)"
247
+
248
+ #: login-with-ajax-admin.php:281
249
+ msgid "Role-Based Custom Logout Redirects"
250
+ msgstr "Redirección de salida según tipo de usuario"
251
+
252
+ #: login-with-ajax-admin.php:284
253
+ msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
254
+ msgstr "Para redireccionar cada tipo de usuario a una página determinada al cerrar la sesión, digítela aquí (si deja el campo vacío, se utilizará la configuración global)"
255
+
256
+ #: login-with-ajax-admin.php:307
257
+ msgid "Notification Settings"
258
+ msgstr ""
259
+
260
+ #: login-with-ajax-admin.php:309
261
+ msgid "If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message"
262
+ msgstr ""
263
+
264
+ #: login-with-ajax-admin.php:310
265
+ msgid "If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU)."
266
+ msgstr ""
267
+
268
+ #: login-with-ajax-admin.php:316
269
+ msgid "Override Default Email?"
270
+ msgstr ""
271
+
272
+ #: login-with-ajax-admin.php:324
273
+ msgid "Subject"
274
+ msgstr ""
275
+
276
+ #: login-with-ajax-admin.php:329
277
+ msgid "Your registration at %BLOGNAME%"
278
+ msgstr ""
279
+
280
+ #: login-with-ajax-admin.php:333
281
+ msgid "<code>%USERNAME%</code> will be replaced with a username."
282
+ msgstr ""
283
+
284
+ #: login-with-ajax-admin.php:334
285
+ msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
286
+ msgstr ""
287
+
288
+ #: login-with-ajax-admin.php:335
289
+ #: login-with-ajax-admin.php:359
290
+ msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
291
+ msgstr ""
292
+
293
+ #: login-with-ajax-admin.php:336
294
+ #: login-with-ajax-admin.php:360
295
+ msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
296
+ msgstr ""
297
+
298
+ #: login-with-ajax-admin.php:341
299
+ msgid "Message"
300
+ msgstr ""
301
+
302
+ #: login-with-ajax-admin.php:346
303
+ msgid ""
304
+ "Thanks for signing up to our blog. \r\n"
305
+ "\r\n"
306
+ "You can login with the following credentials by visiting %BLOGURL%\r\n"
307
+ "\r\n"
308
+ "Username : %USERNAME%\r\n"
309
+ "Password : %PASSWORD%\r\n"
310
+ "\r\n"
311
+ "We look forward to your next visit!\r\n"
312
+ "\r\n"
313
+ "The team at %BLOGNAME%"
314
+ msgstr ""
315
+
316
+ #: login-with-ajax-admin.php:369
317
+ msgid "Save Changes"
318
+ msgstr "Guardar cambios"
319
 
320
+ #. Plugin Name of the plugin/theme
321
  msgid "Login With Ajax"
322
  msgstr "Login with Ajax"
323
 
324
+ #. Plugin URI of the plugin/theme
325
  msgid "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
326
  msgstr "http://netweblogic.com/wordpress/plugins/login-with-ajax/"
327
 
328
+ #. Description of the plugin/theme
329
  msgid "Ajax driven login widget. Customisable from within your template folder, and advanced settings from the admin area."
330
  msgstr "Widget para entrar con AJAX. Se puede modificar dentro de la carpeta del tema y configurar opciones avanzadas en el área de gestión."
331
 
332
+ #. Author of the plugin/theme
333
  msgid "NetWebLogic"
334
  msgstr "NetWebLogic"
335
 
336
+ #. Author URI of the plugin/theme
337
  msgid "http://netweblogic.com/"
338
  msgstr "http://netweblogic.com/"
339
 
340
+ #. Tags of the plugin/theme
341
  msgid "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
342
  msgstr "Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget"
343
 
344
+ #~ msgid "There were issues when saving your settings. Please try again."
345
+ #~ msgstr ""
346
+ #~ "Hubo problemas guardando sus preferencias. Inténtelo de nuevo, por favor."
langs/login-with-ajax-hi_IN_hi.mo ADDED
Binary file
langs/login-with-ajax-hi_IN_hi.po ADDED
@@ -0,0 +1,458 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Danish by Wall wall.clan-zone.dk\n"
4
+ "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
5
+ "POT-Creation-Date: 2010-06-04 16:10+0000\n"
6
+ "PO-Revision-Date: 2012-05-28 09:39+0100\n"
7
+ "Last-Translator: Marcus Sykes <noreply@wp-events-plugin.com>\n"
8
+ "Language-Team: Team Outshine <ash.pr@outshinesolutions.com>\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Poedit-Language: Hindi\n"
13
+ "X-Poedit-Country: INDIA\n"
14
+ "X-Poedit-SourceCharset: utf-8\n"
15
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
16
+ "X-Textdomain-Support: yes\n"
17
+ "X-Poedit-Basepath: .\n"
18
+ "X-Poedit-SearchPath-0: .\n"
19
+
20
+ #@ login-with-ajax
21
+ #: login-with-ajax-admin.php:43
22
+ msgid "New features in Login With AJAX (including registration!), check out the settings and widget pages!"
23
+ msgstr "AJAX के साथ लॉगइन (पंजीकरण सहित) नई सुविधाएँ, सेटिंग्स और विजेट पृष्ठों जाँच !"
24
+
25
+ #@ login-with-ajax
26
+ #: login-with-ajax-admin.php:45
27
+ msgid "Dismiss"
28
+ msgstr "खारिज करना"
29
+
30
+ # Translated by WP
31
+ #: login-with-ajax-admin.php:89
32
+ msgid "Changes saved."
33
+ msgstr "परिवर्तन सहेजा."
34
+
35
+ #@ login-with-ajax
36
+ #: login-with-ajax-admin.php:93
37
+ msgid "There were issues when saving your settings. Please try again."
38
+ msgstr "मुद्दों जब अपनी सेटिंग्स बचाने गए थे. कृपया पुन: प्रयास करें.."
39
+
40
+ #@ login-with-ajax
41
+ #: login-with-ajax-admin.php:137
42
+ msgid "General Settings"
43
+ msgstr "सामान्य सेटिंग्स"
44
+
45
+ #@ login-with-ajax
46
+ #: login-with-ajax-admin.php:142
47
+ msgid "Default Template"
48
+ msgstr "डिफ़ॉल्ट टेम्पलेट"
49
+
50
+ #@ login-with-ajax
51
+ #: login-with-ajax-admin.php:151
52
+ msgid "Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags."
53
+ msgstr "डिफ़ॉल्ट विषयवस्तु आप उपयोग करना चाहते हैं चुनें.यह विजेट shortcode, और टेम्पलेट टैग अध्यारोहित किया जा सकता है."
54
+
55
+ #@ login-with-ajax
56
+ #: login-with-ajax-admin.php:152
57
+ msgid "Further documentation for this feature coming soon..."
58
+ msgstr "इस सुविधा के लिए आगे प्रलेखन जल्द ही आ रहा है ..."
59
+
60
+ #@ login-with-ajax
61
+ #: login-with-ajax-admin.php:157
62
+ msgid "Disable refresh upon login?"
63
+ msgstr "लॉगिन आग्रह रीफ्रेश करें?"
64
+
65
+ #@ login-with-ajax
66
+ #: login-with-ajax-admin.php:162
67
+ msgid "If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed."
68
+ msgstr "यदि उपयोगकर्ता लॉग करता है और आप बटन से ऊपर की जाँच करें, केवल लॉगिन विजेट ही पृष्ठ ताज़ा बिना अद्यतन करेगा. एक अच्छा विचार नहीं आपकी साइट के एक बार लॉग इन उपयोगकर्ताओं के लिए अलग सामग्री पता अगर, के रूप में एक ताज़ा की जरूरत होगी."
69
+
70
+ #@ login-with-ajax
71
+ #: login-with-ajax-admin.php:163
72
+ msgid "<strong>Experimental and not fully tested!</strong> please test and report any bugs on our forum."
73
+ msgstr "<strong> प्रायोगिक और परीक्षण पूरी तरह से नहीं </strong>! परीक्षण और हमारे मंच पर किसी भी कीड़े रिपोर्ट कृपया."
74
+
75
+ #@ login-with-ajax
76
+ #: login-with-ajax-admin.php:168
77
+ msgid "Redirection Settings"
78
+ msgstr "पुनर्निर्देशन सेटिंग्स"
79
+
80
+ #@ login-with-ajax
81
+ #: login-with-ajax-admin.php:173
82
+ msgid "Global Login Redirect"
83
+ msgstr "ग्लोबल लॉगइन पुनर्निर्देशन"
84
+
85
+ #@ login-with-ajax
86
+ #: login-with-ajax-admin.php:177
87
+ msgid "If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)"
88
+ msgstr "यदि आप प्रवेश के बाद एक विशिष्ट यूआरएल के लिए उपयोगकर्ता भेजना चाहते हैं, यह यहाँ दर्ज करें(f.eks http://wordpress.org/)"
89
+
90
+ #@ login-with-ajax
91
+ #: login-with-ajax-admin.php:178
92
+ #: login-with-ajax-admin.php:188
93
+ msgid "New!"
94
+ msgstr "नया!"
95
+
96
+ #@ login-with-ajax
97
+ #: login-with-ajax-admin.php:178
98
+ #, php-format
99
+ msgid "Use %USERNAME% and it will be replaced with the username of person logging in."
100
+ msgstr "%USERNAME %का उपयोग करें और यह व्यक्ति के उपयोक्ता नाम के अंदर प्रवेश करने के साथ प्रतिस्थापित किया जाएगा"
101
+
102
+ #@ login-with-ajax
103
+ #: login-with-ajax-admin.php:183
104
+ msgid "Global Logout Redirect"
105
+ msgstr "ग्लोबल लॉगआउट पुनर्निर्देशन"
106
+
107
+ #@ login-with-ajax
108
+ #: login-with-ajax-admin.php:187
109
+ msgid "If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)"
110
+ msgstr "यदि आप एक विशिष्ट यूआरएल के लिए उपयोगकर्ता भेजने के बाद लॉग आउट करना चाहते हैं,यहाँ दर्ज करें (f.eks http://wordpress.org/)"
111
+
112
+ #@ login-with-ajax
113
+ #: login-with-ajax-admin.php:188
114
+ #, php-format
115
+ msgid "Enter %LASTURL% to send the user back to the page they were previously on."
116
+ msgstr "पृष्ठ पर है कि वे पहले से गए थे दर्ज के लिए उपयोगकर्ता वापस भेजने%LASTURL%"
117
+
118
+ #@ login-with-ajax
119
+ #: login-with-ajax-admin.php:193
120
+ msgid "Role-Based Custom Login Redirects"
121
+ msgstr "भूमिका के आधार पर कस्टम लॉगइन पुनर्निर्देश"
122
+
123
+ #@ login-with-ajax
124
+ #: login-with-ajax-admin.php:196
125
+ msgid "If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)"
126
+ msgstr "यदि आप एक विशिष्ट उपयोगकर्ता भूमिका लॉगिन आग्रह एक कस्टम यूआरएल पर पुनर्निर्देशित करना चाहते हैं, यह यहाँ जगह (रिक्त अनुप्रेषित वैश्विक मूल्य लागू हो जाएगी)"
127
+
128
+ #@ login-with-ajax
129
+ #: login-with-ajax-admin.php:216
130
+ msgid "Role-Based Custom Logout Redirects"
131
+ msgstr "भूमिका - आधारित कस्टम पुनर्निर्देश लॉगआउट"
132
+
133
+ #@ login-with-ajax
134
+ #: login-with-ajax-admin.php:219
135
+ msgid "If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)"
136
+ msgstr "यदि आप एक विशिष्ट उपयोगकर्ता भूमिका चाहते एक कस्टम यूआरएल पर पुनर्निर्देशित किया आग्रह लॉगआउट, यह यहाँ जगह (रिक्त अनुप्रेषित वैश्विक मूल्य लागू हो जाएगी)"
137
+
138
+ #@ login-with-ajax
139
+ #: login-with-ajax-admin.php:239
140
+ msgid "Notification Settings"
141
+ msgstr "अधिसूचना सेटिंग्स"
142
+
143
+ #@ login-with-ajax
144
+ #: login-with-ajax-admin.php:241
145
+ msgid "If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message"
146
+ msgstr "यदि आप ओवरराइड डिफ़ॉल्ट WordPress के ईमेल उपयोगकर्ताओं के एक बार पंजीकृत प्राप्त करना चाहते हैं, सुनिश्चित आप नीचे दिए गए बॉक्स की जाँच करें और एक नया ईमेल विषय और संदेश दर्ज करें"
147
+
148
+ #@ login-with-ajax
149
+ #: login-with-ajax-admin.php:242
150
+ msgid "If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU)."
151
+ msgstr "यदि यह सुविधा काम नहीं करता, कृपया सुनिश्चित कि आप जो भी उपयोगकर्ता पंजीकरण (जैसे BuddyPress और यू) प्रबंधन एक और प्लगइन स्थापित नहीं है."
152
+
153
+ #@ login-with-ajax
154
+ #: login-with-ajax-admin.php:248
155
+ msgid "Override Default Email?"
156
+ msgstr "डिफ़ॉल्ट ईमेल ओवरराइड करें?"
157
+
158
+ #@ login-with-ajax
159
+ #: login-with-ajax-admin.php:256
160
+ msgid "Subject"
161
+ msgstr "विषय"
162
+
163
+ #@ login-with-ajax
164
+ #: login-with-ajax-admin.php:261
165
+ #, php-format
166
+ msgid "Your registration at %BLOGNAME%"
167
+ msgstr "आपके पंजीकरण %BLOGNAME% "
168
+
169
+ #@ login-with-ajax
170
+ #: login-with-ajax-admin.php:265
171
+ #, php-format
172
+ msgid "<code>%USERNAME%</code> will be replaced with a username."
173
+ msgstr "<code>%USERNAME%</code> एक उपयोगकर्ता नाम के साथ प्रतिस्थापित किया जाएगा."
174
+
175
+ #@ login-with-ajax
176
+ #: login-with-ajax-admin.php:266
177
+ #, php-format
178
+ msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
179
+ msgstr "<code>%PASSWORD%</code> उपयोगकर्ता पासवर्ड के साथ प्रतिस्थापित किया जाएगा."
180
+
181
+ #@ login-with-ajax
182
+ #: login-with-ajax-admin.php:267
183
+ #: login-with-ajax-admin.php:291
184
+ #, php-format
185
+ msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
186
+ msgstr "<code>%BLOGNAME%</code> अपने ब्लॉग के नाम साथ प्रतिस्थापित किया जाएगा"
187
+
188
+ #@ login-with-ajax
189
+ #: login-with-ajax-admin.php:268
190
+ #: login-with-ajax-admin.php:292
191
+ #, php-format
192
+ msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
193
+ msgstr "<code>%BLOGURL%</code> अपने ब्लॉग के यूआरएल के साथ प्रतिस्थापित किया जाएगा."
194
+
195
+ #@ login-with-ajax
196
+ #: login-with-ajax-admin.php:273
197
+ msgid "Message"
198
+ msgstr "संदेश"
199
+
200
+ # Translated by WP
201
+ #: login-with-ajax-admin.php:301
202
+ msgid "Save Changes"
203
+ msgstr "परिवर्तन सहेजें"
204
+
205
+ #@ login-with-ajax
206
+ #: login-with-ajax-widget.php:5
207
+ msgid "Login widget with AJAX capabilities."
208
+ msgstr "लॉगिन विजेट AJAX क्षमताओं के साथ."
209
+
210
+ #@ login-with-ajax
211
+ #: login-with-ajax-widget.php:28
212
+ msgid "Show profile link?"
213
+ msgstr "प्रोफ़ाइल का लिंक ?"
214
+
215
+ #@ login-with-ajax
216
+ #: login-with-ajax-widget.php:32
217
+ msgid "AJAX Registration?"
218
+ msgstr "AJAX पंजीकरण?"
219
+
220
+ #@ login-with-ajax
221
+ #: login-with-ajax-widget.php:36
222
+ msgid "Template"
223
+ msgstr "टेम्पलेट"
224
+
225
+ #@ login-with-ajax
226
+ #: login-with-ajax.php:149
227
+ msgid "Login Successful, redirecting..."
228
+ msgstr "सफल लॉगिन, पुनः निर्देशित कर ..."
229
+
230
+ #@ login-with-ajax
231
+ #: login-with-ajax.php:161
232
+ msgid "Login successful, updating..."
233
+ msgstr "सफल लॉगिन, अद्यतन ..."
234
+
235
+ #@ login-with-ajax
236
+ #: login-with-ajax.php:171
237
+ #: login-with-ajax.php:219
238
+ msgid "An undefined error has ocurred"
239
+ msgstr "एक अपरिभाषित त्रुटि आई है"
240
+
241
+ #: login-with-ajax.php:190
242
+ msgid "Registration complete. Please check your e-mail."
243
+ msgstr "पंजीकरण पूरा. अपने ई - मेल की जाँच करें."
244
+
245
+ #@ login-with-ajax
246
+ #: login-with-ajax.php:210
247
+ msgid "We have sent you an email"
248
+ msgstr "हम आपको एक ईमेल भेजा है"
249
+
250
+ #: pluggable.php:26
251
+ #, php-format
252
+ msgid "New user registration on your blog %s:"
253
+ msgstr "अपने ब्लॉग पर नई उपयोगकर्ता पंजीकरण%s:"
254
+
255
+ # Translated by WP
256
+ #: pluggable.php:27
257
+ #: pluggable.php:41
258
+ #, php-format
259
+ msgid "Username: %s"
260
+ msgstr "उपयोगकर्ता नाम: %s"
261
+
262
+ #: pluggable.php:28
263
+ #, php-format
264
+ msgid "E-mail: %s"
265
+ msgstr "ई - मेल %s"
266
+
267
+ #: pluggable.php:30
268
+ #, php-format
269
+ msgid "[%s] New User Registration"
270
+ msgstr "[%s] नये उपयोगकर्ता का पंजीकरण"
271
+
272
+ # Translated by WP
273
+ #: pluggable.php:42
274
+ #, php-format
275
+ msgid "Password: %s"
276
+ msgstr "पासवर्ड: %s"
277
+
278
+ #: pluggable.php:45
279
+ #, php-format
280
+ msgid "[%s] Your username and password"
281
+ msgstr "[%s] उपयोगकर्ता नाम तथा पासवर्ड"
282
+
283
+ #: widget/default/register.php:9
284
+ #: widget/ie7-friendly/widget_out.php:88
285
+ #: widget/inline-registration/widget_out.php:94
286
+ msgid "Register For This Site"
287
+ msgstr "इस साइट के लिए रजिस्टर करें"
288
+
289
+ # Translated by WP
290
+ #: widget/default/register.php:12
291
+ #: widget/default/widget_out.php:19
292
+ #: widget/ie7-friendly/widget_out.php:17
293
+ #: widget/ie7-friendly/widget_out.php:93
294
+ #: widget/inline-registration/widget_out.php:19
295
+ #: widget/inline-registration/widget_out.php:99
296
+ #: widget/widget_out.php:19
297
+ msgid "Username"
298
+ msgstr "उपयोगकर्ता नाम"
299
+
300
+ #: widget/default/register.php:16
301
+ #: widget/ie7-friendly/widget_out.php:99
302
+ #: widget/inline-registration/widget_out.php:105
303
+ msgid "E-mail"
304
+ msgstr "ई - मेल"
305
+
306
+ #: widget/default/register.php:20
307
+ #: widget/ie7-friendly/widget_out.php:113
308
+ #: widget/inline-registration/widget_out.php:119
309
+ msgid "A password will be e-mailed to you."
310
+ msgstr "पासवर्ड आपको ईमेल के दुआरा भेज दिया जायेगा "
311
+
312
+ # Translated by WP
313
+ #: widget/default/register.php:21
314
+ #: widget/default/widget_out.php:56
315
+ #: widget/ie7-friendly/widget_out.php:53
316
+ #: widget/ie7-friendly/widget_out.php:114
317
+ #: widget/inline-registration/widget_out.php:55
318
+ #: widget/inline-registration/widget_out.php:120
319
+ #: widget/widget_out.php:56
320
+ msgid "Register"
321
+ msgstr "रजिस्टर करें"
322
+
323
+ #@ login-with-ajax
324
+ #: widget/default/widget_in.php:11
325
+ #: widget/default/widget_in.php:14
326
+ #: widget/ie7-friendly/widget_in.php:11
327
+ #: widget/ie7-friendly/widget_in.php:14
328
+ #: widget/inline-registration/widget_in.php:11
329
+ #: widget/inline-registration/widget_in.php:14
330
+ #: widget/widget_in.php:11
331
+ #: widget/widget_in.php:14
332
+ msgid "Hi"
333
+ msgstr "Hi"
334
+
335
+ # Translated by WP
336
+ #: widget/default/widget_in.php:33
337
+ #: widget/ie7-friendly/widget_in.php:34
338
+ #: widget/inline-registration/widget_in.php:33
339
+ #: widget/widget_in.php:33
340
+ msgid "Profile"
341
+ msgstr "प्रोफ़ाइल"
342
+
343
+ # Translated by WP
344
+ #: widget/default/widget_in.php:38
345
+ #: widget/ie7-friendly/widget_in.php:40
346
+ #: widget/ie7-friendly/widget_in.php:44
347
+ #: widget/inline-registration/widget_in.php:38
348
+ #: widget/widget_in.php:38
349
+ msgid "Log Out"
350
+ msgstr "लॉग आउट"
351
+
352
+ #@ loginwithajax
353
+ #: widget/default/widget_in.php:43
354
+ #: widget/inline-registration/widget_in.php:43
355
+ #: widget/widget_in.php:43
356
+ msgid "blog admin"
357
+ msgstr "ब्लॉग व्यवस्थापक"
358
+
359
+ # Translated by WP
360
+ #: widget/default/widget_out.php:10
361
+ #: widget/default/widget_out.php:35
362
+ #: widget/ie7-friendly/widget_out.php:10
363
+ #: widget/ie7-friendly/widget_out.php:32
364
+ #: widget/inline-registration/widget_out.php:10
365
+ #: widget/inline-registration/widget_out.php:35
366
+ #: widget/widget_out.php:10
367
+ #: widget/widget_out.php:35
368
+ msgid "Log In"
369
+ msgstr "लॉगिन"
370
+
371
+ # Translated by WP
372
+ #: widget/default/widget_out.php:27
373
+ #: widget/ie7-friendly/widget_out.php:25
374
+ #: widget/inline-registration/widget_out.php:27
375
+ #: widget/widget_out.php:27
376
+ msgid "Password"
377
+ msgstr "पासवर्ड"
378
+
379
+ # Translated by WP
380
+ #: widget/default/widget_out.php:41
381
+ #: widget/ie7-friendly/widget_out.php:38
382
+ #: widget/inline-registration/widget_out.php:40
383
+ #: widget/widget_out.php:41
384
+ msgid "Remember Me"
385
+ msgstr "याद रखॅ"
386
+
387
+ #: widget/default/widget_out.php:43
388
+ #: widget/ie7-friendly/widget_out.php:40
389
+ #: widget/inline-registration/widget_out.php:42
390
+ #: widget/widget_out.php:43
391
+ msgid "Password Lost and Found"
392
+ msgstr "पासवर्ड खोया और पाया"
393
+
394
+ #: widget/default/widget_out.php:43
395
+ #: widget/ie7-friendly/widget_out.php:40
396
+ #: widget/inline-registration/widget_out.php:42
397
+ #: widget/widget_out.php:43
398
+ msgid "Lost your password?"
399
+ msgstr "कूटशब्द भूल गये हैं?"
400
+
401
+ #@ login-with-ajax
402
+ #: widget/default/widget_out.php:68
403
+ #: widget/ie7-friendly/widget_out.php:63
404
+ #: widget/inline-registration/widget_out.php:67
405
+ #: widget/widget_out.php:68
406
+ msgid "Forgotten Password"
407
+ msgstr "पासवर्ड भूल गए हैं"
408
+
409
+ #@ login-with-ajax
410
+ #: widget/default/widget_out.php:73
411
+ #: widget/ie7-friendly/widget_out.php:67
412
+ #: widget/inline-registration/widget_out.php:72
413
+ #: widget/widget_out.php:73
414
+ msgid "Enter username or email"
415
+ msgstr "उपयोगकर्ता नाम या ईमेल दर्ज करें"
416
+
417
+ #@ login-with-ajax
418
+ #: widget/default/widget_out.php:79
419
+ #: widget/ie7-friendly/widget_out.php:72
420
+ #: widget/inline-registration/widget_out.php:78
421
+ #: widget/widget_out.php:79
422
+ msgid "Get New Password"
423
+ msgstr "नया पासवर्ड प्राप्त करें"
424
+
425
+ #: widget/default/widget_out.php:80
426
+ #: widget/ie7-friendly/widget_out.php:115
427
+ #: widget/inline-registration/widget_out.php:79
428
+ #: widget/inline-registration/widget_out.php:121
429
+ #: widget/widget_out.php:80
430
+ msgid "Cancel"
431
+ msgstr "रद्द करना"
432
+
433
+ #@ login-with-ajax
434
+ #: login-with-ajax-admin.php:278
435
+ #, php-format
436
+ msgid ""
437
+ "Thanks for signing up to our blog. \n"
438
+ "\n"
439
+ "You can login with the following credentials by visiting %BLOGURL%\n"
440
+ "\n"
441
+ "Username : %USERNAME%\n"
442
+ "Password : %PASSWORD%\n"
443
+ "\n"
444
+ "We look forward to your next visit!\n"
445
+ "\n"
446
+ "The team at %BLOGNAME%"
447
+ msgstr ""
448
+ "हमारे ब्लॉग के लिए साइन अप करने लिए धन्यवाद..\n"
449
+ "\n"
450
+ "आप निम्नलिखित क्रेडेंशियल्स के साथ जाकर प्रवेश कर सकते हैं %BLOGURL%\n"
451
+ "\n"
452
+ " उपयोगकर्ता नाम: %USERNAME%\n"
453
+ "पासवर्ड: %PASSWORD%\n"
454
+ "\n"
455
+ "हम अपनी अगली यात्रा के लिए तत्पर हैं!\n"
456
+ "\n"
457
+ "टीम पर%BLOGNAME%"
458
+
langs/login-with-ajax.pot CHANGED
@@ -1,20 +1,152 @@
1
- # Translation of the WordPress plugin Login With Ajax 3.0.2 by NetWebLogic.
2
- # Copyright (C) 2010 NetWebLogic
3
  # This file is distributed under the same license as the Login With Ajax package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5
- #
6
- #, fuzzy
7
  msgid ""
8
  msgstr ""
9
- "Project-Id-Version: Login With Ajax 3.0.2\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
11
- "POT-Creation-Date: 2010-11-29 14:04+0000\n"
 
 
 
12
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
15
- "MIME-Version: 1.0\n"
16
- "Content-Type: text/plain; charset=utf-8\n"
17
- "Content-Transfer-Encoding: 8bit\n"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
  #: login-with-ajax-admin.php:44
20
  msgid ""
@@ -30,29 +162,29 @@ msgstr ""
30
  msgid "Changes saved."
31
  msgstr ""
32
 
33
- #: login-with-ajax-admin.php:135
34
  msgid "General Settings"
35
  msgstr ""
36
 
37
- #: login-with-ajax-admin.php:141
38
  msgid "Default Template"
39
  msgstr ""
40
 
41
- #: login-with-ajax-admin.php:150
42
  msgid ""
43
  "Choose the default theme you'd like to use. This can be overriden in the "
44
  "widget, shortcode and template tags."
45
  msgstr ""
46
 
47
- #: login-with-ajax-admin.php:151
48
  msgid "Further documentation for this feature coming soon..."
49
  msgstr ""
50
 
51
- #: login-with-ajax-admin.php:157
52
  msgid "Disable refresh upon login?"
53
  msgstr ""
54
 
55
- #: login-with-ajax-admin.php:162
56
  msgid ""
57
  "If the user logs in and you check the button above, only the login widget "
58
  "will update itself without refreshing the page. Not a good idea if your site "
@@ -60,122 +192,128 @@ msgid ""
60
  "needed."
61
  msgstr ""
62
 
63
- #: login-with-ajax-admin.php:163
64
  msgid ""
65
  "<strong>Experimental and not fully tested!</strong> please test and report "
66
  "any bugs on our forum."
67
  msgstr ""
68
 
69
- #: login-with-ajax-admin.php:168
70
  msgid "Redirection Settings"
71
  msgstr ""
72
 
73
- #: login-with-ajax-admin.php:173
74
  msgid "Global Login Redirect"
75
  msgstr ""
76
 
77
- #: login-with-ajax-admin.php:177
78
  msgid ""
79
  "If you'd like to send the user to a specific URL after login, enter it here "
80
  "(e.g. http://wordpress.org/)"
81
  msgstr ""
82
 
83
- #: login-with-ajax-admin.php:178 login-with-ajax-admin.php:188
84
  msgid "New!"
85
  msgstr ""
86
 
87
- #: login-with-ajax-admin.php:178
88
  msgid ""
89
  "Use %USERNAME% and it will be replaced with the username of person logging "
90
  "in."
91
  msgstr ""
92
 
93
- #: login-with-ajax-admin.php:183
 
 
 
 
 
 
94
  msgid "Global Logout Redirect"
95
  msgstr ""
96
 
97
- #: login-with-ajax-admin.php:187
98
  msgid ""
99
  "If you'd like to send the user to a specific URL after logout, enter it here "
100
  "(e.g. http://wordpress.org/)"
101
  msgstr ""
102
 
103
- #: login-with-ajax-admin.php:188
104
  msgid ""
105
  "Enter %LASTURL% to send the user back to the page they were previously on."
106
  msgstr ""
107
 
108
- #: login-with-ajax-admin.php:193
109
  msgid "Role-Based Custom Login Redirects"
110
  msgstr ""
111
 
112
- #: login-with-ajax-admin.php:196
113
  msgid ""
114
  "If you would like a specific user role to be redirected to a custom URL upon "
115
  "login, place it here (blank value will default to the global redirect)"
116
  msgstr ""
117
 
118
- #: login-with-ajax-admin.php:216
119
  msgid "Role-Based Custom Logout Redirects"
120
  msgstr ""
121
 
122
- #: login-with-ajax-admin.php:219
123
  msgid ""
124
  "If you would like a specific user role to be redirected to a custom URL upon "
125
  "logout, place it here (blank value will default to the global redirect)"
126
  msgstr ""
127
 
128
- #: login-with-ajax-admin.php:239
129
  msgid "Notification Settings"
130
  msgstr ""
131
 
132
- #: login-with-ajax-admin.php:241
133
  msgid ""
134
  "If you'd like to override the default Wordpress email users receive once "
135
  "registered, make sure you check the box below and enter a new email subject "
136
  "and message"
137
  msgstr ""
138
 
139
- #: login-with-ajax-admin.php:242
140
  msgid ""
141
  "If this feature doesn't work, please make sure that you don't have another "
142
  "plugin installed which also manages user registrations (e.g. BuddyPress and "
143
  "MU)."
144
  msgstr ""
145
 
146
- #: login-with-ajax-admin.php:248
147
  msgid "Override Default Email?"
148
  msgstr ""
149
 
150
- #: login-with-ajax-admin.php:256
151
  msgid "Subject"
152
  msgstr ""
153
 
154
- #: login-with-ajax-admin.php:261
155
  msgid "Your registration at %BLOGNAME%"
156
  msgstr ""
157
 
158
- #: login-with-ajax-admin.php:265
159
  msgid "<code>%USERNAME%</code> will be replaced with a username."
160
  msgstr ""
161
 
162
- #: login-with-ajax-admin.php:266
163
  msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
164
  msgstr ""
165
 
166
- #: login-with-ajax-admin.php:267 login-with-ajax-admin.php:291
167
  msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
168
  msgstr ""
169
 
170
- #: login-with-ajax-admin.php:268 login-with-ajax-admin.php:292
171
  msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
172
  msgstr ""
173
 
174
- #: login-with-ajax-admin.php:273
175
  msgid "Message"
176
  msgstr ""
177
 
178
- #: login-with-ajax-admin.php:278
179
  msgid ""
180
  "Thanks for signing up to our blog. \r\n"
181
  "\r\n"
@@ -189,152 +327,10 @@ msgid ""
189
  "The team at %BLOGNAME%"
190
  msgstr ""
191
 
192
- #: login-with-ajax-admin.php:301
193
  msgid "Save Changes"
194
  msgstr ""
195
 
196
- #: login-with-ajax-widget.php:5
197
- msgid "Login widget with AJAX capabilities."
198
- msgstr ""
199
-
200
- #: login-with-ajax-widget.php:28
201
- msgid "Show profile link?"
202
- msgstr ""
203
-
204
- #: login-with-ajax-widget.php:32
205
- msgid "AJAX Registration?"
206
- msgstr ""
207
-
208
- #: login-with-ajax-widget.php:37
209
- msgid "Template"
210
- msgstr ""
211
-
212
- #: login-with-ajax.php:177
213
- msgid "Login Successful, redirecting..."
214
- msgstr ""
215
-
216
- #: login-with-ajax.php:189
217
- msgid "Login successful, updating..."
218
- msgstr ""
219
-
220
- #: login-with-ajax.php:199 login-with-ajax.php:251
221
- msgid "An undefined error has ocurred"
222
- msgstr ""
223
-
224
- #: login-with-ajax.php:203
225
- msgid "Please supply your username and password."
226
- msgstr ""
227
-
228
- #: login-with-ajax.php:222
229
- msgid "Registration complete. Please check your e-mail."
230
- msgstr ""
231
-
232
- #: login-with-ajax.php:242
233
- msgid "We have sent you an email"
234
- msgstr ""
235
-
236
- #: pluggable.php:25
237
- #, php-format
238
- msgid "New user registration on your blog %s:"
239
- msgstr ""
240
-
241
- #: pluggable.php:26 pluggable.php:40
242
- #, php-format
243
- msgid "Username: %s"
244
- msgstr ""
245
-
246
- #: pluggable.php:27
247
- #, php-format
248
- msgid "E-mail: %s"
249
- msgstr ""
250
-
251
- #: pluggable.php:29
252
- #, php-format
253
- msgid "[%s] New User Registration"
254
- msgstr ""
255
-
256
- #: pluggable.php:41
257
- #, php-format
258
- msgid "Password: %s"
259
- msgstr ""
260
-
261
- #: pluggable.php:44
262
- #, php-format
263
- msgid "[%s] Your username and password"
264
- msgstr ""
265
-
266
- #: widget/default/widget_in.php:11 widget/default/widget_in.php:14
267
- msgid "Hi"
268
- msgstr ""
269
-
270
- #: widget/default/widget_in.php:35 widget/default/widget_in.php:39
271
- msgid "Profile"
272
- msgstr ""
273
-
274
- #: widget/default/widget_in.php:45
275
- msgid "Log Out"
276
- msgstr ""
277
-
278
- #: widget/default/widget_in.php:50
279
- msgid "blog admin"
280
- msgstr ""
281
-
282
- #: widget/default/widget_out.php:10 widget/default/widget_out.php:35
283
- msgid "Log In"
284
- msgstr ""
285
-
286
- #: widget/default/widget_out.php:19 widget/default/widget_out.php:93
287
- msgid "Username"
288
- msgstr ""
289
-
290
- #: widget/default/widget_out.php:27
291
- msgid "Password"
292
- msgstr ""
293
-
294
- #: widget/default/widget_out.php:41
295
- msgid "Remember Me"
296
- msgstr ""
297
-
298
- #: widget/default/widget_out.php:43
299
- msgid "Password Lost and Found"
300
- msgstr ""
301
-
302
- #: widget/default/widget_out.php:43
303
- msgid "Lost your password?"
304
- msgstr ""
305
-
306
- #: widget/default/widget_out.php:56 widget/default/widget_out.php:102
307
- msgid "Register"
308
- msgstr ""
309
-
310
- #: widget/default/widget_out.php:68
311
- msgid "Forgotten Password"
312
- msgstr ""
313
-
314
- #: widget/default/widget_out.php:73
315
- msgid "Enter username or email"
316
- msgstr ""
317
-
318
- #: widget/default/widget_out.php:79
319
- msgid "Get New Password"
320
- msgstr ""
321
-
322
- #: widget/default/widget_out.php:80
323
- msgid "Cancel"
324
- msgstr ""
325
-
326
- #: widget/default/widget_out.php:90
327
- msgid "Register For This Site"
328
- msgstr ""
329
-
330
- #: widget/default/widget_out.php:97
331
- msgid "E-mail"
332
- msgstr ""
333
-
334
- #: widget/default/widget_out.php:101
335
- msgid "A password will be e-mailed to you."
336
- msgstr ""
337
-
338
  #. Plugin Name of the plugin/theme
339
  msgid "Login With Ajax"
340
  msgstr ""
1
+ # Copyright (C) 2010 Login With Ajax
 
2
  # This file is distributed under the same license as the Login With Ajax package.
 
 
 
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Login With Ajax 3.0.4\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/login-with-ajax\n"
7
+ "POT-Creation-Date: 2011-03-18 10:13:16+00:00\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
+
15
+ #: login-with-ajax-widget.php:5
16
+ msgid "Login widget with AJAX capabilities."
17
+ msgstr ""
18
+
19
+ #: login-with-ajax-widget.php:28
20
+ msgid "Show profile link?"
21
+ msgstr ""
22
+
23
+ #: login-with-ajax-widget.php:32
24
+ msgid "AJAX Registration?"
25
+ msgstr ""
26
+
27
+ #: login-with-ajax-widget.php:37
28
+ msgid "Template"
29
+ msgstr ""
30
+
31
+ #: widget/default/widget_out.php:10 widget/default/widget_out.php:36
32
+ msgid "Log In"
33
+ msgstr ""
34
+
35
+ #: widget/default/widget_out.php:19 widget/default/widget_out.php:94
36
+ msgid "Username"
37
+ msgstr ""
38
+
39
+ #: widget/default/widget_out.php:27
40
+ msgid "Password"
41
+ msgstr ""
42
+
43
+ #: widget/default/widget_out.php:42
44
+ msgid "Remember Me"
45
+ msgstr ""
46
+
47
+ #: widget/default/widget_out.php:44
48
+ msgid "Password Lost and Found"
49
+ msgstr ""
50
+
51
+ #: widget/default/widget_out.php:44
52
+ msgid "Lost your password?"
53
+ msgstr ""
54
+
55
+ #: widget/default/widget_out.php:57 widget/default/widget_out.php:103
56
+ msgid "Register"
57
+ msgstr ""
58
+
59
+ #: widget/default/widget_out.php:69
60
+ msgid "Forgotten Password"
61
+ msgstr ""
62
+
63
+ #: widget/default/widget_out.php:74
64
+ msgid "Enter username or email"
65
+ msgstr ""
66
+
67
+ #: widget/default/widget_out.php:80
68
+ msgid "Get New Password"
69
+ msgstr ""
70
+
71
+ #: widget/default/widget_out.php:81
72
+ msgid "Cancel"
73
+ msgstr ""
74
+
75
+ #: widget/default/widget_out.php:91
76
+ msgid "Register For This Site"
77
+ msgstr ""
78
+
79
+ #: widget/default/widget_out.php:98
80
+ msgid "E-mail"
81
+ msgstr ""
82
+
83
+ #: widget/default/widget_out.php:102
84
+ msgid "A password will be e-mailed to you."
85
+ msgstr ""
86
+
87
+ #: widget/default/widget_in.php:11 widget/default/widget_in.php:14
88
+ msgid "Hi"
89
+ msgstr ""
90
+
91
+ #: widget/default/widget_in.php:35 widget/default/widget_in.php:39
92
+ msgid "Profile"
93
+ msgstr ""
94
+
95
+ #: widget/default/widget_in.php:45
96
+ msgid "Log Out"
97
+ msgstr ""
98
+
99
+ #: widget/default/widget_in.php:50
100
+ msgid "blog admin"
101
+ msgstr ""
102
+
103
+ #: pluggable.php:25
104
+ msgid "New user registration on your blog %s:"
105
+ msgstr ""
106
+
107
+ #: pluggable.php:26 pluggable.php:40
108
+ msgid "Username: %s"
109
+ msgstr ""
110
+
111
+ #: pluggable.php:27
112
+ msgid "E-mail: %s"
113
+ msgstr ""
114
+
115
+ #: pluggable.php:29
116
+ msgid "[%s] New User Registration"
117
+ msgstr ""
118
+
119
+ #: pluggable.php:41
120
+ msgid "Password: %s"
121
+ msgstr ""
122
+
123
+ #: pluggable.php:44
124
+ msgid "[%s] Your username and password"
125
+ msgstr ""
126
+
127
+ #: login-with-ajax.php:177
128
+ msgid "Login Successful, redirecting..."
129
+ msgstr ""
130
+
131
+ #: login-with-ajax.php:189
132
+ msgid "Login successful, updating..."
133
+ msgstr ""
134
+
135
+ #: login-with-ajax.php:199 login-with-ajax.php:251
136
+ msgid "An undefined error has ocurred"
137
+ msgstr ""
138
+
139
+ #: login-with-ajax.php:203
140
+ msgid "Please supply your username and password."
141
+ msgstr ""
142
+
143
+ #: login-with-ajax.php:222
144
+ msgid "Registration complete. Please check your e-mail."
145
+ msgstr ""
146
+
147
+ #: login-with-ajax.php:242
148
+ msgid "We have sent you an email"
149
+ msgstr ""
150
 
151
  #: login-with-ajax-admin.php:44
152
  msgid ""
162
  msgid "Changes saved."
163
  msgstr ""
164
 
165
+ #: login-with-ajax-admin.php:139
166
  msgid "General Settings"
167
  msgstr ""
168
 
169
+ #: login-with-ajax-admin.php:145
170
  msgid "Default Template"
171
  msgstr ""
172
 
173
+ #: login-with-ajax-admin.php:154
174
  msgid ""
175
  "Choose the default theme you'd like to use. This can be overriden in the "
176
  "widget, shortcode and template tags."
177
  msgstr ""
178
 
179
+ #: login-with-ajax-admin.php:155
180
  msgid "Further documentation for this feature coming soon..."
181
  msgstr ""
182
 
183
+ #: login-with-ajax-admin.php:161
184
  msgid "Disable refresh upon login?"
185
  msgstr ""
186
 
187
+ #: login-with-ajax-admin.php:166
188
  msgid ""
189
  "If the user logs in and you check the button above, only the login widget "
190
  "will update itself without refreshing the page. Not a good idea if your site "
192
  "needed."
193
  msgstr ""
194
 
195
+ #: login-with-ajax-admin.php:167
196
  msgid ""
197
  "<strong>Experimental and not fully tested!</strong> please test and report "
198
  "any bugs on our forum."
199
  msgstr ""
200
 
201
+ #: login-with-ajax-admin.php:172
202
  msgid "Redirection Settings"
203
  msgstr ""
204
 
205
+ #: login-with-ajax-admin.php:177
206
  msgid "Global Login Redirect"
207
  msgstr ""
208
 
209
+ #: login-with-ajax-admin.php:181
210
  msgid ""
211
  "If you'd like to send the user to a specific URL after login, enter it here "
212
  "(e.g. http://wordpress.org/)"
213
  msgstr ""
214
 
215
+ #: login-with-ajax-admin.php:182 login-with-ajax-admin.php:220
216
  msgid "New!"
217
  msgstr ""
218
 
219
+ #: login-with-ajax-admin.php:182
220
  msgid ""
221
  "Use %USERNAME% and it will be replaced with the username of person logging "
222
  "in."
223
  msgstr ""
224
 
225
+ #: login-with-ajax-admin.php:204 login-with-ajax-admin.php:256
226
+ msgid ""
227
+ "With WPML enabled you can provide different redirection destinations based "
228
+ "on language too."
229
+ msgstr ""
230
+
231
+ #: login-with-ajax-admin.php:215
232
  msgid "Global Logout Redirect"
233
  msgstr ""
234
 
235
+ #: login-with-ajax-admin.php:219
236
  msgid ""
237
  "If you'd like to send the user to a specific URL after logout, enter it here "
238
  "(e.g. http://wordpress.org/)"
239
  msgstr ""
240
 
241
+ #: login-with-ajax-admin.php:220
242
  msgid ""
243
  "Enter %LASTURL% to send the user back to the page they were previously on."
244
  msgstr ""
245
 
246
+ #: login-with-ajax-admin.php:228
247
  msgid "Role-Based Custom Login Redirects"
248
  msgstr ""
249
 
250
+ #: login-with-ajax-admin.php:231
251
  msgid ""
252
  "If you would like a specific user role to be redirected to a custom URL upon "
253
  "login, place it here (blank value will default to the global redirect)"
254
  msgstr ""
255
 
256
+ #: login-with-ajax-admin.php:281
257
  msgid "Role-Based Custom Logout Redirects"
258
  msgstr ""
259
 
260
+ #: login-with-ajax-admin.php:284
261
  msgid ""
262
  "If you would like a specific user role to be redirected to a custom URL upon "
263
  "logout, place it here (blank value will default to the global redirect)"
264
  msgstr ""
265
 
266
+ #: login-with-ajax-admin.php:307
267
  msgid "Notification Settings"
268
  msgstr ""
269
 
270
+ #: login-with-ajax-admin.php:309
271
  msgid ""
272
  "If you'd like to override the default Wordpress email users receive once "
273
  "registered, make sure you check the box below and enter a new email subject "
274
  "and message"
275
  msgstr ""
276
 
277
+ #: login-with-ajax-admin.php:310
278
  msgid ""
279
  "If this feature doesn't work, please make sure that you don't have another "
280
  "plugin installed which also manages user registrations (e.g. BuddyPress and "
281
  "MU)."
282
  msgstr ""
283
 
284
+ #: login-with-ajax-admin.php:316
285
  msgid "Override Default Email?"
286
  msgstr ""
287
 
288
+ #: login-with-ajax-admin.php:324
289
  msgid "Subject"
290
  msgstr ""
291
 
292
+ #: login-with-ajax-admin.php:329
293
  msgid "Your registration at %BLOGNAME%"
294
  msgstr ""
295
 
296
+ #: login-with-ajax-admin.php:333
297
  msgid "<code>%USERNAME%</code> will be replaced with a username."
298
  msgstr ""
299
 
300
+ #: login-with-ajax-admin.php:334
301
  msgid "<code>%PASSWORD%</code> will be replaced with the user's password."
302
  msgstr ""
303
 
304
+ #: login-with-ajax-admin.php:335 login-with-ajax-admin.php:359
305
  msgid "<code>%BLOGNAME%</code> will be replaced with the name of your blog."
306
  msgstr ""
307
 
308
+ #: login-with-ajax-admin.php:336 login-with-ajax-admin.php:360
309
  msgid "<code>%BLOGURL%</code> will be replaced with the url of your blog."
310
  msgstr ""
311
 
312
+ #: login-with-ajax-admin.php:341
313
  msgid "Message"
314
  msgstr ""
315
 
316
+ #: login-with-ajax-admin.php:346
317
  msgid ""
318
  "Thanks for signing up to our blog. \r\n"
319
  "\r\n"
327
  "The team at %BLOGNAME%"
328
  msgstr ""
329
 
330
+ #: login-with-ajax-admin.php:369
331
  msgid "Save Changes"
332
  msgstr ""
333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
334
  #. Plugin Name of the plugin/theme
335
  msgid "Login With Ajax"
336
  msgstr ""
login-with-ajax-admin.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /*
3
- Copyr</td>ight (C) 2009 NetWebLogic LLC
4
 
5
  This program is free software; you can redistribute it and/or modify
6
  it under the terms of the GNU General Public License as published by
@@ -65,7 +65,7 @@ class LoginWithAjaxAdmin{
65
  add_option('lwa_data');
66
  $lwa_data = array();
67
 
68
- if( is_admin() && !empty($_POST['lwasubmitted']) ){
69
  //Build the array of options here
70
  foreach ($_POST as $postKey => $postValue){
71
  if( $postValue != '' && preg_match('/lwa_role_log(in|out)_/', $postKey) ){
@@ -99,181 +99,242 @@ class LoginWithAjaxAdmin{
99
  <h2>Login With Ajax</h2>
100
  <div id="poststuff" class="metabox-holder has-right-sidebar">
101
  <div id="side-info-column" class="inner-sidebar">
102
- <div id="categorydiv" class="postbox ">
 
 
 
 
 
 
 
 
 
 
 
 
103
  <div class="handlediv" title="Click to toggle"></div>
104
- <h3 class="hndle">Donations</h3>
105
  <div class="inside">
106
- <em>Plugins don't grow on trees.</em> Please remember that this plugin is provided to you free of charge, yet it takes many hours of work to maintain and improve!
107
- <div style="text-align:center;">
108
- <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
109
- <input type="hidden" name="cmd" value="_s-xclick">
110
- <input type="hidden" name="hosted_button_id" value="8H9R5FVER3SWW">
111
- <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
112
- <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
113
- </form>
114
- </div>
115
  </div>
116
  </div>
117
  <div id="categorydiv" class="postbox ">
118
  <div class="handlediv" title="Click to toggle"></div>
119
- <h3 class="hndle">Plugin Information</h3>
120
  <div class="inside">
121
- <p>This plugin was developed by <a href="http://twitter.com/marcussykes">Marcus Sykes</a> @ <a href="http://netweblogic.com">NetWebLogic</a></p>
122
- <p>Please visit <a href="http://netweblogic.com/forums/">our forum</a> for plugin support.</p>
123
- <p>If you'd like to translate this plugin, the language files are in the langs folder. Please email any translations to wp.plugins@netweblogic.com and we'll incorporate it into the plugin.</p>
124
  </div>
125
  </div>
126
  </div>
127
  <div id="post-body">
128
  <div id="post-body-content">
129
- <p>If you have any suggestions, come over to our plugin page and leave a comment. It may just happen!</p>
130
  <form method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI']); ?>">
 
131
  <table class="form-table">
132
- <tbody id="lwa-body">
133
- <tr valign="top">
134
- <td colspan="2">
135
- <h3><?php _e("General Settings", 'login-with-ajax'); ?></h3>
136
- </td>
137
- </tr>
138
- <?php if( count($LoginWithAjax->templates) > 1 ) : ?>
139
- <tr valign="top">
140
- <td scope="row">
141
- <label><?php _e("Default Template", 'login-with-ajax'); ?></label>
142
- </td>
143
- <td>
144
- <select name="lwa_template" style="margin:0px; padding:0px; width:auto;">
145
- <?php foreach( array_keys($LoginWithAjax->templates) as $template ): ?>
146
- <option <?php echo (!empty($lwa_data['template']) && $lwa_data['template'] == $template) ? 'selected="selected"':""; ?>><?php echo $template ?></option>
147
- <?php endforeach; ?>
148
- </select>
149
- <br />
150
- <i><?php _e("Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags.", 'login-with-ajax'); ?></i>
151
- <i><?php _e("Further documentation for this feature coming soon...", 'login-with-ajax'); ?></i>
152
- </td>
153
- </tr>
154
- <?php endif; ?>
155
- <tr valign="top">
156
- <td scope="row">
157
- <label><?php _e("Disable refresh upon login?", 'login-with-ajax'); ?></label>
158
- </td>
159
- <td>
160
- <input style="margin:0px; padding:0px; width:auto;" type="checkbox" name="lwa_no_login_refresh" value='1' class='wide' <?php echo ( !empty($lwa_data['no_login_refresh']) && $lwa_data['no_login_refresh'] == '1' ) ? 'checked="checked"':''; ?> />
161
- <br />
162
- <i><?php _e("If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed.", 'login-with-ajax'); ?></i>
163
- <i><?php _e("<strong>Experimental and not fully tested!</strong> please test and report any bugs on our forum.", 'login-with-ajax'); ?></i>
164
- </td>
165
- </tr>
166
- <tr valign="top">
167
- <td colspan="2">
168
- <h3><?php _e("Redirection Settings", 'login-with-ajax'); ?></h3>
169
- </td>
170
- </tr>
171
- <tr valign="top">
172
- <td scope="row">
173
- <label><?php _e("Global Login Redirect", 'login-with-ajax'); ?></label>
174
- </td>
175
- <td>
176
- <input type="text" name="lwa_login_redirect" value='<?php echo (!empty($lwa_data['login_redirect'])) ? $lwa_data['login_redirect']:''; ?>' class='wide' />
177
- <i><?php _e("If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)", 'login-with-ajax'); ?></i>
178
- <br/><i><strong><?php _e("New!", 'login-with-ajax'); ?></strong> <?php _e("Use %USERNAME% and it will be replaced with the username of person logging in.", 'login-with-ajax'); ?></i>
179
- </td>
180
- </tr>
181
- <tr valign="top">
182
- <td scope="row">
183
- <label><?php _e("Global Logout Redirect", 'login-with-ajax'); ?></label>
184
- </td>
185
- <td>
186
- <input type="text" name="lwa_logout_redirect" value='<?php echo (!empty($lwa_data['logout_redirect'])) ? $lwa_data['logout_redirect']:''; ?>' class='wide' />
187
- <i><?php _e("If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)", 'login-with-ajax'); ?></i>
188
- <br /><i><strong><?php _e("New!", 'login-with-ajax'); ?></strong> <?php _e("Enter %LASTURL% to send the user back to the page they were previously on.", 'login-with-ajax'); ?></i>
189
- </td>
190
- </tr>
191
- <tr valign="top">
192
- <td scope="row">
193
- <label><?php _e("Role-Based Custom Login Redirects", 'login-with-ajax'); ?></label>
194
- </td>
195
- <td>
196
- <i><?php _e("If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)", 'login-with-ajax'); ?></i>
197
- <table>
198
- <?php
199
- //Taken from /wp-admin/includes/template.php Line 2715
200
- $editable_roles = get_editable_roles();
201
- foreach( $editable_roles as $role => $details ) {
202
- $role_login = ( !empty($lwa_data['role_login']) && is_array($lwa_data['role_login']) && array_key_exists($role, $lwa_data['role_login']) ) ? $lwa_data['role_login'][$role]:''
203
- ?>
204
- <tr>
205
- <td class="col"><?php echo translate_user_role($details['name']) ?></td>
206
- <td><input type='text' class='wide' name='lwa_role_login_<?php echo esc_attr($role) ?>' value="<?php echo $role_login ?>" /></td>
207
- </tr>
208
- <?php
209
  }
210
- ?>
211
- </table>
212
- </td>
213
- </tr>
214
- <tr valign="top">
215
- <td scope="row">
216
- <label><?php _e("Role-Based Custom Logout Redirects", 'login-with-ajax'); ?></label>
217
- </td>
218
- <td>
219
- <i><?php _e("If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)", 'login-with-ajax'); ?></i>
220
- <table>
221
- <?php
222
- //Taken from /wp-admin/includes/template.php Line 2715
223
- $editable_roles = get_editable_roles();
224
- foreach( $editable_roles as $role => $details ) {
225
- $role_logout = ( !empty($lwa_data['role_logout']) && is_array($lwa_data['role_logout']) && array_key_exists($role, $lwa_data['role_logout']) ) ? $lwa_data['role_logout'][$role]:''
226
- ?>
227
- <tr>
228
- <td class='col'><?php echo translate_user_role($details['name']) ?></td>
229
- <td><input type='text' class='wide' name='lwa_role_logout_<?php echo esc_attr($role) ?>' value="<?php echo $role_logout ?>" /></td>
230
- </tr>
231
- <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
232
  }
 
 
 
233
  ?>
234
- </table>
235
- </td>
236
- </tr>
237
- <tr valign="top">
238
- <td colspan="2">
239
- <h3><?php _e("Notification Settings", 'login-with-ajax'); ?></h3>
240
- <p>
241
- <i><?php _e("If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message", 'login-with-ajax'); ?></i><br />
242
- <i><?php _e("If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU).", 'login-with-ajax'); ?></i>
243
- </p>
244
- </td>
245
- </tr>
246
- <tr valign="top">
247
- <td>
248
- <label><?php _e("Override Default Email?", 'login-with-ajax'); ?></label>
249
- </td>
250
- <td>
251
- <input style="margin:0px; padding:0px; width:auto;" type="checkbox" name="lwa_notification_override" value='1' class='wide' <?php echo ( !empty($lwa_data['notification_override']) && $lwa_data['notification_override'] == '1' ) ? 'checked="checked"':''; ?> />
252
- </td>
253
- </tr>
254
- <tr valign="top">
255
- <td>
256
- <label><?php _e("Subject", 'login-with-ajax'); ?></label>
257
- </td>
258
- <td>
259
- <?php
260
- if(empty($lwa_data['notification_subject'])){
261
- $lwa_data['notification_subject'] = __('Your registration at %BLOGNAME%', 'login-with-ajax');
262
- }
263
  ?>
264
- <input type="text" name="lwa_notification_subject" value='<?php echo (!empty($lwa_data['notification_subject'])) ? $lwa_data['notification_subject'] : ''; ?>' class='wide' />
265
- <i><?php _e("<code>%USERNAME%</code> will be replaced with a username.", 'login-with-ajax'); ?></i><br />
266
- <i><?php _e("<code>%PASSWORD%</code> will be replaced with the user's password.", 'login-with-ajax'); ?></i><br />
267
- <i><?php _e("<code>%BLOGNAME%</code> will be replaced with the name of your blog.", 'login-with-ajax'); ?></i>
268
- <i><?php _e("<code>%BLOGURL%</code> will be replaced with the url of your blog.", 'login-with-ajax'); ?></i>
269
- </td>
270
- </tr>
271
- <tr valign="top">
272
- <td>
273
- <label><?php _e("Message", 'login-with-ajax'); ?></label>
274
- </td>
275
- <td>
276
- <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  if( empty($lwa_data['notification_message']) ){
278
  $lwa_data['notification_message'] = __('Thanks for signing up to our blog.
279
 
@@ -287,23 +348,19 @@ We look forward to your next visit!
287
  The team at %BLOGNAME%', 'login-with-ajax');
288
  }
289
  ?>
290
- <textarea name="lwa_notification_message" class='wide' style="width:100%; height:250px;"><?php echo $lwa_data['notification_message'] ?></textarea>
291
- <i><?php _e("<code>%BLOGNAME%</code> will be replaced with the name of your blog.", 'login-with-ajax'); ?></i>
292
- <i><?php _e("<code>%BLOGURL%</code> will be replaced with the url of your blog.", 'login-with-ajax'); ?></i>
293
- </td>
294
- </tr>
295
- </tbody>
296
- <tfoot>
297
- <tr valign="top">
298
- <td colspan="2">
299
- <input type="hidden" name="lwasubmitted" value="1" />
300
- <p class="submit">
301
- <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
302
- </p>
303
- </td>
304
- </tr>
305
- </tfoot>
306
  </table>
 
 
 
 
 
 
 
307
  </form>
308
  </div>
309
  </div>
1
  <?php
2
  /*
3
+ Copyright (C) 2009 NetWebLogic LLC
4
 
5
  This program is free software; you can redistribute it and/or modify
6
  it under the terms of the GNU General Public License as published by
65
  add_option('lwa_data');
66
  $lwa_data = array();
67
 
68
+ if( !empty($_POST['lwasubmitted']) && current_user_can('list_users') && wp_verify_nonce($_POST['_nonce'], 'login-with-ajax-admin'.get_current_user_id()) ){
69
  //Build the array of options here
70
  foreach ($_POST as $postKey => $postValue){
71
  if( $postValue != '' && preg_match('/lwa_role_log(in|out)_/', $postKey) ){
99
  <h2>Login With Ajax</h2>
100
  <div id="poststuff" class="metabox-holder has-right-sidebar">
101
  <div id="side-info-column" class="inner-sidebar">
102
+ <div id="categorydiv" class="postbox ">
103
+ <div class="handlediv" title="Click to toggle"></div>
104
+ <h3 class="hndle" style="color:green;">** Support this plugin! **</h3>
105
+ <div class="inside">
106
+ <p>This plugin was developed by <a href="http://msyk.es/" target="_blank">Marcus Sykes</a>, sponsored by proceeds from <a href="http://netweblogic.com" target="_blank">NetWebLogic</a></p>
107
+ <p>We're not asking for donations, but we'd appreciate a 5* rating and/or a link to our plugin page!</p>
108
+ <ul>
109
+ <li><a href="http://wordpress.org/support/view/plugin-reviews/login-with-ajax" target="_blank" >Give us 5 Stars on WordPress.org</a></li>
110
+ <li><a href="http://wordpress.org/extend/plugins/login-with-ajax/" target="_blank" >Link to our plugin page.</a></li>
111
+ </ul>
112
+ </div>
113
+ </div>
114
+ <div id="categorydiv" class="postbox ">
115
  <div class="handlediv" title="Click to toggle"></div>
116
+ <h3 class="hndle">Getting Help</h3>
117
  <div class="inside">
118
+ <p>Before asking for help, check the readme files or the plugin pages for answers to common issues.</p>
119
+ <p>If you're still stuck, try the <a href="http://wordpress.org/support/plugin/login-with-ajax/">community forums</a>.</p>
120
+ <p>If you have any suggestions, come over to the forums and leave a comment. It may just happen!</p>
 
 
 
 
 
 
121
  </div>
122
  </div>
123
  <div id="categorydiv" class="postbox ">
124
  <div class="handlediv" title="Click to toggle"></div>
125
+ <h3 class="hndle">Translating</h3>
126
  <div class="inside">
127
+ <p>If you'd like to translate this plugin, the language files are in the langs folder.</p>
128
+ <p>Please email any translations to wp.plugins@netweblogic.com and we'll incorporate it into the plugin.</p>
 
129
  </div>
130
  </div>
131
  </div>
132
  <div id="post-body">
133
  <div id="post-body-content">
 
134
  <form method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI']); ?>">
135
+ <h2><?php _e("General Settings", 'login-with-ajax'); ?></h2>
136
  <table class="form-table">
137
+ <?php if( count(LoginWithAjax::$templates) > 1 ) : ?>
138
+ <tr valign="top">
139
+ <td scope="row">
140
+ <label><?php _e("Default Template", 'login-with-ajax'); ?></label>
141
+ </td>
142
+ <td>
143
+ <select name="lwa_template" style="margin:0px; padding:0px; width:auto;">
144
+ <?php foreach( array_keys(LoginWithAjax::$templates) as $template ): ?>
145
+ <option <?php echo (!empty($lwa_data['template']) && $lwa_data['template'] == $template) ? 'selected="selected"':""; ?>><?php echo $template ?></option>
146
+ <?php endforeach; ?>
147
+ </select>
148
+ <br />
149
+ <em><?php _e("Choose the default theme you'd like to use. This can be overriden in the widget, shortcode and template tags.", 'login-with-ajax'); ?></em>
150
+ <em><?php _e("Further documentation for this feature coming soon...", 'login-with-ajax'); ?></em>
151
+ </td>
152
+ </tr>
153
+ <?php endif; ?>
154
+ <tr valign="top">
155
+ <td scope="row">
156
+ <label><?php _e("Disable refresh upon login?", 'login-with-ajax'); ?></label>
157
+ </td>
158
+ <td>
159
+ <input style="margin:0px; padding:0px; width:auto;" type="checkbox" name="lwa_no_login_refresh" value='1' class='wide' <?php echo ( !empty($lwa_data['no_login_refresh']) && $lwa_data['no_login_refresh'] == '1' ) ? 'checked="checked"':''; ?> />
160
+ <br />
161
+ <em><?php _e("If the user logs in and you check the button above, only the login widget will update itself without refreshing the page. Not a good idea if your site shows different content to users once logged in, as a refresh would be needed.", 'login-with-ajax'); ?></em>
162
+ </td>
163
+ </tr>
164
+ </table>
165
+
166
+
167
+ <h2><?php _e("Redirection Settings", 'login-with-ajax'); ?></h2>
168
+ <table class="form-table">
169
+ <tr valign="top">
170
+ <td scope="row">
171
+ <label><?php _e("Global Login Redirect", 'login-with-ajax'); ?></label>
172
+ </td>
173
+ <td>
174
+ <input type="text" name="lwa_login_redirect" value='<?php echo (!empty($lwa_data['login_redirect'])) ? $lwa_data['login_redirect']:''; ?>' class='wide' />
175
+ <em><?php _e("If you'd like to send the user to a specific URL after login, enter it here (e.g. http://wordpress.org/)", 'login-with-ajax'); ?></em>
176
+ <br/><em><?php _e("Use %USERNAME% and it will be replaced with the username of person logging in.", 'login-with-ajax'); ?></em>
177
+ <?php
178
+ //WMPL itegrations
179
+ function lwa_icl_inputs( $name, $lwa_data ){
180
+ if( function_exists('icl_get_languages') ){
181
+ $langs = icl_get_languages();
182
+ if( count($langs) > 1 ){
183
+ ?>
184
+ <table id="lwa_<?php echo $name; ?>_langs">
185
+ <?php
186
+ foreach($langs as $lang){
187
+ if( substr(get_locale(),0,2) != $lang['language_code'] ){
188
+ ?>
189
+ <tr>
190
+ <td style="width:100px;"><?php echo $lang['translated_name']?>: </td>
191
+ <td><input type="text" name="lwa_<?php echo $name; ?>_<?php echo $lang['language_code']; ?>" value='<?php echo ( !empty($lwa_data[$name.'_'.$lang['language_code']]) ) ? $lwa_data[$name.'_'.$lang['language_code']]:''; ?>' class="wide" /></td>
192
+ </tr>
193
+ <?php
194
+ }
195
+ }
196
+ ?>
197
+ </table>
198
+ <em><?php _e('With WPML enabled you can provide different redirection destinations based on language too.','login-with-ajax'); ?></em>
199
+ <?php
200
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
201
  }
202
+ }
203
+ lwa_icl_inputs('login_redirect', $lwa_data);
204
+ ?>
205
+ </td>
206
+ </tr>
207
+ <tr valign="top">
208
+ <td scope="row">
209
+ <label><?php _e("Global Logout Redirect", 'login-with-ajax'); ?></label>
210
+ </td>
211
+ <td>
212
+ <input type="text" name="lwa_logout_redirect" value='<?php echo (!empty($lwa_data['logout_redirect'])) ? $lwa_data['logout_redirect']:''; ?>' class='wide' />
213
+ <em><?php _e("If you'd like to send the user to a specific URL after logout, enter it here (e.g. http://wordpress.org/)", 'login-with-ajax'); ?></em>
214
+ <br /><em><?php _e("Enter %LASTURL% to send the user back to the page they were previously on.", 'login-with-ajax'); ?></em>
215
+ <?php
216
+ lwa_icl_inputs('logout_redirect', $lwa_data);
217
+ ?>
218
+ </td>
219
+ </tr>
220
+ <tr valign="top">
221
+ <td scope="row">
222
+ <label><?php _e("Role-Based Custom Login Redirects", 'login-with-ajax'); ?></label>
223
+ </td>
224
+ <td>
225
+ <em><?php _e("If you would like a specific user role to be redirected to a custom URL upon login, place it here (blank value will default to the global redirect)", 'login-with-ajax'); ?></em>
226
+ <table>
227
+ <?php
228
+ //Taken from /wp-admin/includes/template.php Line 2715
229
+ $editable_roles = get_editable_roles();
230
+ //WMPL integration
231
+ function lwa_icl_inputs_roles( $name, $lwa_data, $role ){
232
+ if( function_exists('icl_get_languages') ){
233
+ $langs = icl_get_languages();
234
+ if( count($langs) > 1 ){
235
+ ?>
236
+ <table id="lwa_<?php echo $name; ?>_langs">
237
+ <?php
238
+ foreach($langs as $lang){
239
+ if( substr(get_locale(),0,2) != $lang['language_code'] ){
240
+ ?>
241
+ <tr>
242
+ <td style="width:100px;"><?php echo $lang['translated_name']?>: </td>
243
+ <td><input type="text" name="lwa_<?php echo $name; ?>_<?php echo $role ?>_<?php echo $lang['language_code']; ?>" value='<?php echo ( !empty($lwa_data[$name][$role.'_'.$lang['language_code']]) ) ? $lwa_data[$name][$role.'_'.$lang['language_code']]:''; ?>' class="wide" /></td>
244
+ </tr>
245
+ <?php
246
+ }
247
+ }
248
+ ?>
249
+ </table>
250
+ <em><?php _e('With WPML enabled you can provide different redirection destinations based on language too.','login-with-ajax'); ?></em>
251
+ <?php
252
+ }
253
  }
254
+ }
255
+ foreach( $editable_roles as $role => $details ) {
256
+ $role_login = ( !empty($lwa_data['role_login']) && is_array($lwa_data['role_login']) && array_key_exists($role, $lwa_data['role_login']) ) ? $lwa_data['role_login'][$role]:''
257
  ?>
258
+ <tr>
259
+ <td class="col"><?php echo translate_user_role($details['name']) ?></td>
260
+ <td>
261
+ <input type='text' class='wide' name='lwa_role_login_<?php echo esc_attr($role) ?>' value="<?php echo $role_login ?>" />
262
+ <?php
263
+ lwa_icl_inputs_roles('role_login', $lwa_data, esc_attr($role));
264
+ ?>
265
+ </td>
266
+ </tr>
267
+ <?php
268
+ }
269
+ ?>
270
+ </table>
271
+ </td>
272
+ </tr>
273
+ <tr valign="top">
274
+ <td scope="row">
275
+ <label><?php _e("Role-Based Custom Logout Redirects", 'login-with-ajax'); ?></label>
276
+ </td>
277
+ <td>
278
+ <em><?php _e("If you would like a specific user role to be redirected to a custom URL upon logout, place it here (blank value will default to the global redirect)", 'login-with-ajax'); ?></em>
279
+ <table>
280
+ <?php
281
+ //Taken from /wp-admin/includes/template.php Line 2715
282
+ $editable_roles = get_editable_roles();
283
+ foreach( $editable_roles as $role => $details ) {
284
+ $role_logout = ( !empty($lwa_data['role_logout']) && is_array($lwa_data['role_logout']) && array_key_exists($role, $lwa_data['role_logout']) ) ? $lwa_data['role_logout'][$role]:''
 
 
285
  ?>
286
+ <tr>
287
+ <td class='col'><?php echo translate_user_role($details['name']) ?></td>
288
+ <td>
289
+ <input type='text' class='wide' name='lwa_role_logout_<?php echo esc_attr($role) ?>' value="<?php echo $role_logout ?>" />
290
+ <?php lwa_icl_inputs_roles('role_logout', $lwa_data, $role); ?>
291
+ </td>
292
+ </tr>
293
+ <?php
294
+ }
295
+ ?>
296
+ </table>
297
+ </td>
298
+ </tr>
299
+ </table>
300
+
301
+ <h2><?php _e("Notification Settings", 'login-with-ajax'); ?></h2>
302
+ <p>
303
+ <em><?php _e("If you'd like to override the default Wordpress email users receive once registered, make sure you check the box below and enter a new email subject and message.", 'login-with-ajax'); ?></em><br />
304
+ <em><?php _e("If this feature doesn't work, please make sure that you don't have another plugin installed which also manages user registrations (e.g. BuddyPress and MU).", 'login-with-ajax'); ?></em>
305
+ </p>
306
+ <table class="form-table">
307
+ <tr valign="top">
308
+ <td>
309
+ <label><?php _e("Override Default Email?", 'login-with-ajax'); ?></label>
310
+ </td>
311
+ <td>
312
+ <input style="margin:0px; padding:0px; width:auto;" type="checkbox" name="lwa_notification_override" value='1' class='wide' <?php echo ( !empty($lwa_data['notification_override']) && $lwa_data['notification_override'] == '1' ) ? 'checked="checked"':''; ?> />
313
+ </td>
314
+ </tr>
315
+ <tr valign="top">
316
+ <td>
317
+ <label><?php _e("Subject", 'login-with-ajax'); ?></label>
318
+ </td>
319
+ <td>
320
+ <?php
321
+ if(empty($lwa_data['notification_subject'])){
322
+ $lwa_data['notification_subject'] = __('Your registration at %BLOGNAME%', 'login-with-ajax');
323
+ }
324
+ ?>
325
+ <input type="text" name="lwa_notification_subject" value='<?php echo (!empty($lwa_data['notification_subject'])) ? $lwa_data['notification_subject'] : ''; ?>' class='wide' />
326
+ <em><?php _e("<code>%USERNAME%</code> will be replaced with a username.", 'login-with-ajax'); ?></em><br />
327
+ <em><?php _e("<code>%PASSWORD%</code> will be replaced with the user's password.", 'login-with-ajax'); ?></em><br />
328
+ <em><?php _e("<code>%BLOGNAME%</code> will be replaced with the name of your blog.", 'login-with-ajax'); ?></em>
329
+ <em><?php _e("<code>%BLOGURL%</code> will be replaced with the url of your blog.", 'login-with-ajax'); ?></em>
330
+ </td>
331
+ </tr>
332
+ <tr valign="top">
333
+ <td>
334
+ <label><?php _e("Message", 'login-with-ajax'); ?></label>
335
+ </td>
336
+ <td>
337
+ <?php
338
  if( empty($lwa_data['notification_message']) ){
339
  $lwa_data['notification_message'] = __('Thanks for signing up to our blog.
340
 
348
  The team at %BLOGNAME%', 'login-with-ajax');
349
  }
350
  ?>
351
+ <textarea name="lwa_notification_message" class='wide' style="width:100%; height:250px;"><?php echo $lwa_data['notification_message'] ?></textarea>
352
+ <em><?php _e("<code>%BLOGNAME%</code> will be replaced with the name of your blog.", 'login-with-ajax'); ?></em>
353
+ <em><?php _e("<code>%BLOGURL%</code> will be replaced with the url of your blog.", 'login-with-ajax'); ?></em>
354
+ </td>
355
+ </tr>
 
 
 
 
 
 
 
 
 
 
 
356
  </table>
357
+ <div>
358
+ <input type="hidden" name="lwasubmitted" value="1" />
359
+ <input type="hidden" name="_nonce" value="<?php echo wp_create_nonce('login-with-ajax-admin'.get_current_user_id()); ?>" />
360
+ <p class="submit">
361
+ <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
362
+ </p>
363
+ </div>
364
  </form>
365
  </div>
366
  </div>
login-with-ajax-widget.php CHANGED
@@ -1,42 +1,64 @@
1
  <?php
2
  class LoginWithAjaxWidget extends WP_Widget {
 
 
3
  /** constructor */
4
  function LoginWithAjaxWidget() {
 
 
 
 
 
 
5
  $widget_ops = array('description' => __( "Login widget with AJAX capabilities.", 'login-with-ajax') );
6
  parent::WP_Widget(false, $name = 'Login With Ajax', $widget_ops);
7
  }
8
 
9
  /** @see WP_Widget::widget */
10
  function widget($args, $instance) {
11
- global $LoginWithAjax;
12
- $LoginWithAjax->widget($args, $instance);
 
 
 
 
 
 
 
 
13
  }
14
 
15
  /** @see WP_Widget::update */
16
- function update($new_instance, $old_instance) {
17
- if($new_instance['template'] == ''){
18
- unset($new_instance['template']);
19
- }
 
 
20
  return $new_instance;
21
  }
22
 
23
  /** @see WP_Widget::form */
24
  function form($instance) {
25
- global $LoginWithAjax;
26
  ?>
 
 
 
 
27
  <p>
28
  <label for="<?php echo $this->get_field_id('profile_link'); ?>"><?php _e('Show profile link?', 'login-with-ajax'); ?> </label>
29
- <input id="<?php echo $this->get_field_id('profile_link'); ?>" name="<?php echo $this->get_field_name('profile_link'); ?>" type="checkbox" value="1" <?php echo ($instance['profile_link']) ? 'checked="checked"':""; ?> />
30
  </p>
31
  <p>
32
  <label for="<?php echo $this->get_field_id('registration'); ?>"><?php _e('AJAX Registration?', 'login-with-ajax'); ?> </label>
33
- <input id="<?php echo $this->get_field_id('registration'); ?>" name="<?php echo $this->get_field_name('registration'); ?>" type="checkbox" value="1" <?php echo ($instance['registration']) ? 'checked="checked"':""; ?> />
34
  </p>
35
- <?php if( count($LoginWithAjax->templates) > 1 ): ?>
36
  <p>
37
  <label for="<?php echo $this->get_field_id('template'); ?>"><?php _e('Template', 'login-with-ajax'); ?> </label>
38
  <select id="<?php echo $this->get_field_id('template'); ?>" name="<?php echo $this->get_field_name('template'); ?>" >
39
- <?php foreach( array_keys($LoginWithAjax->templates) as $template ): ?>
40
  <option <?php echo ($instance['template'] == $template) ? 'selected="selected"':""; ?>><?php echo $template ?></option>
41
  <?php endforeach; ?>
42
  </select>
1
  <?php
2
  class LoginWithAjaxWidget extends WP_Widget {
3
+ public $defaults;
4
+
5
  /** constructor */
6
  function LoginWithAjaxWidget() {
7
+ $this->defaults = array(
8
+ 'title' => __('Log In','login-with-ajax'),
9
+ 'template' => 'default',
10
+ 'profile_link' => 1,
11
+ 'registration' => 1,
12
+ );
13
  $widget_ops = array('description' => __( "Login widget with AJAX capabilities.", 'login-with-ajax') );
14
  parent::WP_Widget(false, $name = 'Login With Ajax', $widget_ops);
15
  }
16
 
17
  /** @see WP_Widget::widget */
18
  function widget($args, $instance) {
19
+ echo $args['before_widget'];
20
+ if( !empty($instance['title']) ){
21
+ echo $args['before_title'];
22
+ echo '<span class="lwa-title">';
23
+ echo apply_filters('widget_title',$instance['title'], $instance, $this->id_base);
24
+ echo '</span>';
25
+ echo $args['after_title'];
26
+ }
27
+ LoginWithAjax::widget($instance);
28
+ echo $args['after_widget'];
29
  }
30
 
31
  /** @see WP_Widget::update */
32
+ function update($new_instance, $old_instance) {
33
+ foreach($this->defaults as $key => $value){
34
+ if( !isset($new_instance[$key]) ){
35
+ $new_instance[$key] = $value;
36
+ }
37
+ }
38
  return $new_instance;
39
  }
40
 
41
  /** @see WP_Widget::form */
42
  function form($instance) {
43
+ $instance = array_merge($this->defaults, $instance);
44
  ?>
45
+ <p>
46
+ <label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title', 'dbem'); ?>: </label>
47
+ <input type="text" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo esc_attr($instance['title']); ?>" />
48
+ </p>
49
  <p>
50
  <label for="<?php echo $this->get_field_id('profile_link'); ?>"><?php _e('Show profile link?', 'login-with-ajax'); ?> </label>
51
+ <input id="<?php echo $this->get_field_id('profile_link'); ?>" name="<?php echo $this->get_field_name('profile_link'); ?>" type="checkbox" value="1" <?php echo !empty($instance['profile_link']) ? 'checked="checked"':""; ?> />
52
  </p>
53
  <p>
54
  <label for="<?php echo $this->get_field_id('registration'); ?>"><?php _e('AJAX Registration?', 'login-with-ajax'); ?> </label>
55
+ <input id="<?php echo $this->get_field_id('registration'); ?>" name="<?php echo $this->get_field_name('registration'); ?>" type="checkbox" value="1" <?php echo !empty($instance['registration']) ? 'checked="checked"':""; ?> />
56
  </p>
57
+ <?php if( count(LoginWithAjax::$templates) > 1 ): ?>
58
  <p>
59
  <label for="<?php echo $this->get_field_id('template'); ?>"><?php _e('Template', 'login-with-ajax'); ?> </label>
60
  <select id="<?php echo $this->get_field_id('template'); ?>" name="<?php echo $this->get_field_name('template'); ?>" >
61
+ <?php foreach( array_keys(LoginWithAjax::$templates) as $template ): ?>
62
  <option <?php echo ($instance['template'] == $template) ? 'selected="selected"':""; ?>><?php echo $template ?></option>
63
  <?php endforeach; ?>
64
  </select>
login-with-ajax.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: Login With Ajax
4
- Plugin URI: http://netweblogic.com/wordpress/plugins/login-with-ajax/
5
  Description: Ajax driven login widget. Customisable from within your template folder, and advanced settings from the admin area.
6
- Author: NetWebLogic
7
- Version: 3.0.4.1
8
- Author URI: http://netweblogic.com/
9
  Tags: Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget
10
 
11
  Copyright (C) 2009 NetWebLogic LLC
@@ -29,116 +29,93 @@ class LoginWithAjax {
29
  * If logged in upon instantiation, it is a user object.
30
  * @var WP_User
31
  */
32
- var $current_user;
33
  /**
34
  * List of templates available in the plugin dir and theme (populated in init())
35
  * @var array
36
  */
37
- var $templates = array();
38
  /**
39
  * Name of selected template (if selected)
40
  * @var string
41
  */
42
- var $template;
43
  /**
44
  * lwa_data option
45
  * @var array
46
  */
47
- var $data;
48
  /**
49
  * Location of footer file if one is found when generating a widget, for use in loading template footers.
50
  * @var string
51
  */
52
- var $footer_loc;
53
  /**
54
  * URL for the AJAX Login procedure in templates (including callback and template parameters)
55
  * @var string
56
  */
57
- var $url_login;
58
  /**
59
  * URL for the AJAX Remember Password procedure in templates (including callback and template parameters)
60
  * @var string
61
  */
62
- var $url_remember;
63
  /**
64
  * URL for the AJAX Registration procedure in templates (including callback and template parameters)
65
  * @var string
66
  */
67
- var $url_register;
68
-
69
-
70
-
71
- // Class initialization
72
- function LoginWithAjax() {
73
- //Set when to run the plugin
74
- add_action( 'widgets_init', array(&$this,'init') );
75
- }
76
 
77
  // Actions to take upon initial action hook
78
- function init(){
79
  //Load LWA options
80
- $this->data = get_option('lwa_data');
81
  //Remember the current user, in case there is a logout
82
- $this->current_user = wp_get_current_user();
83
 
84
  //Get Templates from theme and default by checking for folders - we assume a template works if a folder exists!
85
  //Note that duplicate template names are overwritten in this order of precedence (highest to lowest) - Child Theme > Parent Theme > Plugin Defaults
86
  //First are the defaults in the plugin directory
87
- $this->find_templates( path_join( WP_PLUGIN_DIR , basename( dirname( __FILE__ ) ). "/widget/") );
88
  //Now, the parent theme (if exists)
89
  if( get_stylesheet_directory() != get_template_directory() ){
90
- $this->find_templates( get_template_directory().'/plugins/login-with-ajax/' );
91
  }
92
  //Finally, the child theme
93
- $this->find_templates( get_stylesheet_directory().'/plugins/login-with-ajax/' );
94
 
95
  //Generate URLs for login, remember, and register
96
- $this->url_login = $this->template_link(site_url('wp-login.php', 'login_post'));
97
- $this->url_register = $this->template_link(site_url('wp-login.php?action=register', 'login_post'));
98
- $this->url_remember = $this->template_link(site_url('wp-login.php?action=lostpassword', 'login_post'));
99
 
100
  //Make decision on what to display
101
- if ( isset($_REQUEST["login-with-ajax"]) ) { //AJAX Request
102
- $this->ajax();
 
103
  }elseif ( isset($_REQUEST["login-with-ajax-widget"]) ) { //Widget Request via AJAX
104
  $instance = ( !empty($_REQUEST["template"]) ) ? array('template' => $_REQUEST["template"]) : array();
105
  $instance['is_widget'] = false;
106
  $instance['profile_link'] = ( !empty($_REQUEST["lwa_profile_link"]) ) ? $_REQUEST['lwa_profile_link']:0;
107
- $this->widget( array(), $instance );
108
  exit();
109
  }elseif ( function_exists('register_widget') ){ //WP < 2.8 safety check
110
  $plugin_url = path_join(WP_PLUGIN_URL, basename( dirname( __FILE__ ) ));
111
  //Enqueue scripts - Only one script enqueued here.... theme JS takes priority, then default JS
112
  if( !is_admin() ) {
113
- if( file_exists(get_stylesheet_directory().'/plugins/login-with-ajax/login-with-ajax.js') ){ //Child Theme (or just theme)
114
- wp_enqueue_script( "login-with-ajax", get_stylesheet_directory_uri()."/plugins/login-with-ajax/login-with-ajax.js", array( 'jquery' ) );
115
- }else if( file_exists(get_template_directory().'/plugins/login-with-ajax/login-with-ajax.js') ){ //Parent Theme (if parent exists)
116
- wp_enqueue_script( "login-with-ajax", get_template_directory_uri()."/plugins/login-with-ajax/login-with-ajax.js", array( 'jquery' ) );
117
- }else{ //Default file in plugin folder
118
- wp_enqueue_script( "login-with-ajax", $plugin_url."/widget/login-with-ajax.js", array( 'jquery' ) );
119
- }
120
-
121
- //Enqueue stylesheets - Only one style enqueued here.... theme CSS takes priority, then default CSS
122
- //The concept here is one stylesheet is loaded which will work for multiple templates.
123
- if( file_exists(get_stylesheet_directory().'/plugins/login-with-ajax/widget.css') ){ //Child Theme (or just theme)
124
- wp_enqueue_style( "login-with-ajax", get_stylesheet_directory_uri().'/plugins/login-with-ajax/widget.css' );
125
- }else if( file_exists(get_template_directory().'/plugins/login-with-ajax/widget.css') ){ //Parent Theme (if parent exists)
126
- wp_enqueue_style( "login-with-ajax", get_template_directory_uri().'/plugins/login-with-ajax/widget.css' );
127
- }else{ //Default file in plugin folder
128
- wp_enqueue_style( "login-with-ajax", $plugin_url."/widget/widget.css" );
129
- }
130
  }
131
 
132
  //Register widget
133
  register_widget("LoginWithAjaxWidget");
134
 
135
  //Add logout/in redirection
136
- add_action('login_form_register', array(&$this, 'register'));
137
- add_action('wp_logout', array(&$this, 'logoutRedirect'));
138
- add_action('login_redirect', array(&$this, 'loginRedirect'), 1, 3);
139
- add_shortcode('login-with-ajax', array(&$this, 'shortcode'));
140
- add_shortcode('lwa', array(&$this, 'shortcode'));
141
-
142
  }
143
  }
144
 
@@ -147,41 +124,42 @@ class LoginWithAjax {
147
  */
148
 
149
  // Decides what action to take from the ajax request
150
- function ajax(){
 
151
  switch ( $_REQUEST["login-with-ajax"] ) {
152
  case 'login': //A login has been requested
153
- $return = $this->json_encode($this->login());
154
  break;
155
  case 'remember': //Remember the password
156
- $return = $this->json_encode($this->remember());
157
- break;
158
- default: //Don't know
159
- $return = $this->json_encode(array('result'=>0, 'error'=>'Unknown command requested'));
160
  break;
 
 
 
161
  }
162
- echo $return;
163
  exit();
164
  }
165
 
166
  // Reads ajax login creds via POSt, calls the login script and interprets the result
167
- function login(){
168
  $return = array(); //What we send back
169
  if( !empty($_REQUEST['log']) && !empty($_REQUEST['pwd']) && trim($_REQUEST['log']) != '' && trim($_REQUEST['pwd'] != '') ){
170
  $loginResult = wp_signon();
171
  $user_role = 'null';
172
  if ( strtolower(get_class($loginResult)) == 'wp_user' ) {
173
  //User login successful
174
- $this->current_user = $loginResult;
175
  /* @var $loginResult WP_User */
176
  $return['result'] = true;
177
  $return['message'] = __("Login Successful, redirecting...",'login-with-ajax');
178
  //Do a redirect if necessary
179
- $redirect = $this->getLoginRedirect($this->current_user);
180
  if( $redirect != '' ){
181
  $return['redirect'] = $redirect;
182
  }
183
  //If the widget should just update with ajax, then supply the URL here.
184
- if( !empty($this->data['no_login_refresh']) && $this->data['no_login_refresh'] == 1 ){
185
  //Is this coming from a template?
186
  $query_vars = ($_GET['template'] != '') ? "&template={$_GET['template']}" : '';
187
  $query_vars .= ($_REQUEST['lwa_profile_link'] == '1') ? "&lwa_profile_link=1" : '';
@@ -202,40 +180,42 @@ class LoginWithAjax {
202
  $return['result'] = false;
203
  $return['error'] = __('Please supply your username and password.', 'login-with-ajax');
204
  }
 
205
  //Return the result array with errors etc.
206
  return $return;
207
  }
208
 
209
  /**
210
- * Checks post data and registers user
211
  * @return string
212
  */
213
- function register(){
214
- if( !empty($_REQUEST['lwa']) ) {
215
- $return = array();
216
- if ('POST' == $_SERVER['REQUEST_METHOD']) {
217
- require_once( ABSPATH . WPINC . '/registration.php');
218
- $errors = register_new_user($_POST['user_login'], $_POST['user_email']);
219
- if ( !is_wp_error($errors) ) {
220
- //Success
221
- $return['result'] = true;
222
- $return['message'] = __('Registration complete. Please check your e-mail.');
223
- }else{
224
- //Something's wrong
225
- $return['result'] = false;
226
- $return['error'] = $errors->get_error_message();
227
- }
228
  }
229
- echo $this->json_encode($return);
230
- exit();
 
 
231
  }
 
 
232
  }
233
 
234
  // Reads ajax login creds via POSt, calls the login script and interprets the result
235
- function remember(){
236
  $return = array(); //What we send back
237
  $result = retrieve_password();
238
-
239
  if ( $result === true ) {
240
  //Password correctly remembered
241
  $return['result'] = true;
@@ -250,43 +230,88 @@ class LoginWithAjax {
250
  $return['result'] = false;
251
  $return['error'] = __('An undefined error has ocurred', 'login-with-ajax');
252
  }
 
253
  //Return the result array with errors etc.
254
  return $return;
255
  }
256
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
257
  /*
258
  * Redirect Functions
259
  */
260
 
261
- function logoutRedirect(){
262
- $redirect = $this->getLogoutRedirect();
263
  if($redirect != ''){
264
  wp_redirect($redirect);
265
  exit();
266
  }
267
  }
268
 
269
- function getLogoutRedirect(){
270
- $data = $this->data;
 
 
271
  if( !empty($data['logout_redirect']) ){
272
  $redirect = $data['logout_redirect'];
273
  }
274
- if( strtolower(get_class($this->current_user)) == "wp_user" ){
 
 
 
 
 
 
 
 
275
  //Do a redirect if necessary
276
- $data = $this->data;
277
- $user_role = array_shift($this->current_user->roles); //Checking for role-based redirects
278
  if( !empty($data["role_logout"]) && is_array($data["role_logout"]) && isset($data["role_logout"][$user_role]) ){
279
  $redirect = $data["role_logout"][$user_role];
280
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
281
  }
282
- $redirect = str_replace("%LASTURL%", $_SERVER['HTTP_REFERER'], $redirect);
283
  return $redirect;
284
  }
285
 
286
- function loginRedirect( $redirect, $redirect_notsurewhatthisis, $user ){
287
- $data = $this->data;
288
  if(is_user_logged_in()){
289
- $lwa_redirect = $this->getLoginRedirect($user);
290
  if( $lwa_redirect != '' ){
291
  wp_redirect($lwa_redirect);
292
  exit();
@@ -295,20 +320,39 @@ class LoginWithAjax {
295
  return $redirect;
296
  }
297
 
298
- function getLoginRedirect($user){
299
- $data = $this->data;
300
- if($data['login_redirect'] != ''){
 
 
301
  $redirect = $data["login_redirect"];
302
  }
 
 
 
 
 
 
 
 
303
  if( strtolower(get_class($user)) == "wp_user" ){
304
  $user_role = array_shift($user->roles); //Checking for role-based redirects
305
  if( isset($data["role_login"][$user_role]) ){
306
  $redirect = $data["role_login"][$user_role];
307
  }
 
 
 
 
 
 
308
  }
309
  //Do string replacements
310
  $redirect = str_replace('%USERNAME%', $user->user_login, $redirect);
311
  $redirect = str_replace("%LASTURL%", $_SERVER['HTTP_REFERER'], $redirect);
 
 
 
312
  return $redirect;
313
  }
314
 
@@ -316,50 +360,46 @@ class LoginWithAjax {
316
  * WIDGET OPERATIONS
317
  */
318
 
319
- function widget($args, $instance = array() ){
320
  //Extract widget arguments
321
- extract($args);
322
  //Merge instance options with global default options
323
- $lwa_data = $this->data;
324
- $lwa_data = wp_parse_args($instance, $lwa_data);
325
  //Deal with specific variables
326
- $lwa_data['profile_link'] = ( $lwa_data['profile_link'] != false && $lwa_data['profile_link'] != "false" );
327
- $is_widget = ( isset($lwa_data['is_widget']) ) ? ($lwa_data['is_widget'] != false && $lwa_data['is_widget'] != "false") : true ;
328
  //Add template logic
329
- $this->template = ( !empty($lwa_data['template']) && array_key_exists($lwa_data['template'], $this->templates) ) ? $lwa_data['template']:'default';
330
  //Choose the widget content to display.
331
  if(is_user_logged_in()){
332
  //Firstly check for template in theme with no template folder (legacy)
333
  $template_loc = locate_template( array('plugins/login-with-ajax/widget_in.php') );
334
  //Then check for custom templates or theme template default
335
- $template_loc = ($template_loc == '' && $this->template) ? $this->templates[$this->template].'/widget_in.php':$template_loc;
336
- include ( $template_loc != '' ) ? $template_loc : 'widget/default/widget_in.php';
337
  }else{
338
  //Firstly check for template in theme with no template folder (legacy)
339
  $template_loc = locate_template( array('plugins/login-with-ajax/widget_out.php') );
340
  //First check for custom templates or theme template default
341
- $template_loc = ($template_loc == '' && $this->template) ? $this->templates[$this->template].'/widget_out.php' : $template_loc;
342
- include ( $template_loc != '' ) ? $template_loc : 'widget/default/widget_out.php';
343
  }
344
  }
345
 
346
- function shortcode($atts){
347
- $defaults = array( 'is_widget' => false, 'profile_link' => false, 'registration' => 1 );
348
- $atts = shortcode_atts($defaults, $atts);
349
  ob_start();
350
- $this->widget(array(), $atts );
351
  return ob_get_clean();
352
  }
353
 
354
- function new_user_notification($user_login, $plaintext_pass, $user_email, $blogname){
355
  //Copied out of /wp-includes/pluggable.php
356
- $message = $this->data['notification_message'];
357
  $message = str_replace('%USERNAME%', $user_login, $message);
358
  $message = str_replace('%PASSWORD%', $plaintext_pass, $message);
359
  $message = str_replace('%BLOGNAME%', $blogname, $message);
360
  $message = str_replace('%BLOGURL%', get_bloginfo('wpurl'), $message);
361
 
362
- $subject = $this->data['notification_subject'];
363
  $subject = str_replace('%BLOGNAME%', $blogname, $subject);
364
  $subject = str_replace('%BLOGURL%', get_bloginfo('wpurl'), $subject);
365
 
@@ -369,94 +409,75 @@ class LoginWithAjax {
369
  /*
370
  * Auxillary Functions
371
  */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
372
 
373
  //Checks a directory for folders and populates the template file
374
- function find_templates($dir){
375
  if (is_dir($dir)) {
376
  if ($dh = opendir($dir)) {
377
  while (($file = readdir($dh)) !== false) {
378
  if(is_dir($dir . $file) && $file != '.' && $file != '..' && $file != '.svn'){
379
  //Template dir found, add it to the template array
380
- $this->templates[$file] = path_join($dir, $file);
381
  }
382
  }
383
  closedir($dh);
384
  }
385
  }
386
  }
387
-
388
- //Add template link and JSON callback var to the URL
389
- function template_link( $content ){
390
- if(strstr($content, '?')){
391
- $content .= '&amp;callback=?&amp;template='.$this->template;
392
- }else{
393
- $content .= '?callback=?&amp;template='.$this->template;
394
- }
395
- return $content;
396
  }
397
-
398
- //PHP4 Safe JSON encoding
399
- function json_encode($array){
400
- if( !function_exists("json_encode") ){
401
- $return = json_encode($array);
402
- }else{
403
- $return = $this->array_to_json($array);
404
- }
405
  if( isset($_REQUEST['callback']) && preg_match("/^jQuery[_a-zA-Z0-9]+$/", $_REQUEST['callback']) ){
406
- $return = $_GET['callback']."($return)";
407
  }
408
  return $return;
409
- }
410
- //PHP4 Compatible json encoder function
411
- function array_to_json($array){
412
- //PHP4 Comapatability - This encodes the array into JSON. Thanks go to Andy - http://www.php.net/manual/en/function.json-encode.php#89908
413
- if( !is_array( $array ) ){
414
- return false;
415
- }
416
- $associative = count( array_diff( array_keys($array), array_keys( array_keys( $array )) ));
417
- if( $associative ){
418
- $construct = array();
419
- foreach( $array as $key => $value ){
420
- // We first copy each key/value pair into a staging array,
421
- // formatting each key and value properly as we go.
422
- // Format the key:
423
- if( is_numeric($key) ){
424
- $key = "key_$key";
425
- }
426
- $key = "'".addslashes($key)."'";
427
- // Format the value:
428
- if( is_array( $value )){
429
- $value = $this->array_to_json( $value );
430
- }else if( is_bool($value) ) {
431
- $value = ($value) ? "true" : "false";
432
- }else if( !is_numeric( $value ) || is_string( $value ) ){
433
- $value = "'".addslashes($value)."'";
434
- }
435
- // Add to staging array:
436
- $construct[] = "$key: $value";
437
- }
438
- // Then we collapse the staging array into the JSON form:
439
- $result = "{ " . implode( ", ", $construct ) . " }";
440
- } else { // If the array is a vector (not associative):
441
- $construct = array();
442
- foreach( $array as $value ){
443
- // Format the value:
444
- if( is_array( $value )){
445
- $value = $this->array_to_json( $value );
446
- } else if( !is_numeric( $value ) || is_string( $value ) ){
447
- $value = "'".addslashes($value)."'";
448
- }
449
- // Add to staging array:
450
- $construct[] = $value;
451
- }
452
- // Then we collapse the staging array into the JSON form:
453
- $result = "[ " . implode( ", ", $construct ) . " ]";
454
- }
455
- return $result;
456
- }
457
  }
 
 
 
458
  //Add translation
459
- load_plugin_textdomain('login-with-ajax', false, "login-with-ajax/langs");
 
 
 
460
 
461
  //Include admin file if needed
462
  if(is_admin()){
@@ -473,13 +494,7 @@ if( !empty($lwa_data['notification_override']) && $lwa_data['notification_overri
473
 
474
  //Template Tag
475
  function login_with_ajax($atts = ''){
476
- global $LoginWithAjax;
477
  $atts = shortcode_parse_atts($atts);
478
- echo $LoginWithAjax->shortcode($atts);
479
  }
480
-
481
- // Start plugin
482
- global $LoginWithAjax;
483
- $LoginWithAjax = new LoginWithAjax();
484
-
485
  ?>
1
  <?php
2
  /*
3
  Plugin Name: Login With Ajax
4
+ Plugin URI: http://wordpress.org/extend/plugins/login-with-ajax/
5
  Description: Ajax driven login widget. Customisable from within your template folder, and advanced settings from the admin area.
6
+ Author: Marcus Sykes
7
+ Version: 3.1
8
+ Author URI: http://msyk.es
9
  Tags: Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget
10
 
11
  Copyright (C) 2009 NetWebLogic LLC
29
  * If logged in upon instantiation, it is a user object.
30
  * @var WP_User
31
  */
32
+ public static $current_user;
33
  /**
34
  * List of templates available in the plugin dir and theme (populated in init())
35
  * @var array
36
  */
37
+ public static $templates = array();
38
  /**
39
  * Name of selected template (if selected)
40
  * @var string
41
  */
42
+ public static $template;
43
  /**
44
  * lwa_data option
45
  * @var array
46
  */
47
+ public static $data;
48
  /**
49
  * Location of footer file if one is found when generating a widget, for use in loading template footers.
50
  * @var string
51
  */
52
+ public static $footer_loc;
53
  /**
54
  * URL for the AJAX Login procedure in templates (including callback and template parameters)
55
  * @var string
56
  */
57
+ public static $url_login;
58
  /**
59
  * URL for the AJAX Remember Password procedure in templates (including callback and template parameters)
60
  * @var string
61
  */
62
+ public static $url_remember;
63
  /**
64
  * URL for the AJAX Registration procedure in templates (including callback and template parameters)
65
  * @var string
66
  */
67
+ public static $url_register;
 
 
 
 
 
 
 
 
68
 
69
  // Actions to take upon initial action hook
70
+ public static function init(){
71
  //Load LWA options
72
+ self::$data = get_option('lwa_data');
73
  //Remember the current user, in case there is a logout
74
+ self::$current_user = wp_get_current_user();
75
 
76
  //Get Templates from theme and default by checking for folders - we assume a template works if a folder exists!
77
  //Note that duplicate template names are overwritten in this order of precedence (highest to lowest) - Child Theme > Parent Theme > Plugin Defaults
78
  //First are the defaults in the plugin directory
79
+ self::find_templates( path_join( WP_PLUGIN_DIR , basename( dirname( __FILE__ ) ). "/widget/") );
80
  //Now, the parent theme (if exists)
81
  if( get_stylesheet_directory() != get_template_directory() ){
82
+ self::find_templates( get_template_directory().'/plugins/login-with-ajax/' );
83
  }
84
  //Finally, the child theme
85
+ self::find_templates( get_stylesheet_directory().'/plugins/login-with-ajax/' );
86
 
87
  //Generate URLs for login, remember, and register
88
+ self::$url_login = self::template_link(site_url('wp-login.php', 'login_post'));
89
+ self::$url_register = self::template_link(self::getRegisterLink());
90
+ self::$url_remember = self::template_link(site_url('wp-login.php?action=lostpassword', 'login_post'));
91
 
92
  //Make decision on what to display
93
+ if ( !empty($_REQUEST["login-with-ajax"]) || !empty($_REQUEST["lwa"]) ) { //AJAX Request
94
+ $_REQUEST["login-with-ajax"] = !empty($_REQUEST["login-with-ajax"]) ? $_REQUEST["login-with-ajax"]:'register'; //backward compat for previously lwa = register
95
+ self::ajax();
96
  }elseif ( isset($_REQUEST["login-with-ajax-widget"]) ) { //Widget Request via AJAX
97
  $instance = ( !empty($_REQUEST["template"]) ) ? array('template' => $_REQUEST["template"]) : array();
98
  $instance['is_widget'] = false;
99
  $instance['profile_link'] = ( !empty($_REQUEST["lwa_profile_link"]) ) ? $_REQUEST['lwa_profile_link']:0;
100
+ self::widget( $instance );
101
  exit();
102
  }elseif ( function_exists('register_widget') ){ //WP < 2.8 safety check
103
  $plugin_url = path_join(WP_PLUGIN_URL, basename( dirname( __FILE__ ) ));
104
  //Enqueue scripts - Only one script enqueued here.... theme JS takes priority, then default JS
105
  if( !is_admin() ) {
106
+ wp_enqueue_script( "login-with-ajax", self::locate_template_url('login-with-ajax.js'), array( 'jquery' ) );
107
+ wp_enqueue_style( "login-with-ajax", self::locate_template_url('widget.css') );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
108
  }
109
 
110
  //Register widget
111
  register_widget("LoginWithAjaxWidget");
112
 
113
  //Add logout/in redirection
114
+ add_action('wp_logout', 'LoginWithAjax::logoutRedirect');
115
+ add_action('logout_url', 'LoginWithAjax::logoutUrl');
116
+ add_action('login_redirect', 'LoginWithAjax::loginRedirect', 1, 3);
117
+ add_shortcode('login-with-ajax', 'LoginWithAjax::shortcode');
118
+ add_shortcode('lwa', 'LoginWithAjax::shortcode');
 
119
  }
120
  }
121
 
124
  */
125
 
126
  // Decides what action to take from the ajax request
127
+ public static function ajax(){
128
+ $return = array('result'=>false, 'error'=>'Unknown command requested');
129
  switch ( $_REQUEST["login-with-ajax"] ) {
130
  case 'login': //A login has been requested
131
+ $return = self::login();
132
  break;
133
  case 'remember': //Remember the password
134
+ $return = self::remember();
 
 
 
135
  break;
136
+ case 'register': //Remember the password
137
+ $return = self::register();
138
+ break;
139
  }
140
+ echo self::json_encode(apply_filters('lwa_ajax_'.$_REQUEST["login-with-ajax"], $return));
141
  exit();
142
  }
143
 
144
  // Reads ajax login creds via POSt, calls the login script and interprets the result
145
+ public static function login(){
146
  $return = array(); //What we send back
147
  if( !empty($_REQUEST['log']) && !empty($_REQUEST['pwd']) && trim($_REQUEST['log']) != '' && trim($_REQUEST['pwd'] != '') ){
148
  $loginResult = wp_signon();
149
  $user_role = 'null';
150
  if ( strtolower(get_class($loginResult)) == 'wp_user' ) {
151
  //User login successful
152
+ self::$current_user = $loginResult;
153
  /* @var $loginResult WP_User */
154
  $return['result'] = true;
155
  $return['message'] = __("Login Successful, redirecting...",'login-with-ajax');
156
  //Do a redirect if necessary
157
+ $redirect = self::getLoginRedirect(self::$current_user);
158
  if( $redirect != '' ){
159
  $return['redirect'] = $redirect;
160
  }
161
  //If the widget should just update with ajax, then supply the URL here.
162
+ if( !empty(self::$data['no_login_refresh']) && self::$data['no_login_refresh'] == 1 ){
163
  //Is this coming from a template?
164
  $query_vars = ($_GET['template'] != '') ? "&template={$_GET['template']}" : '';
165
  $query_vars .= ($_REQUEST['lwa_profile_link'] == '1') ? "&lwa_profile_link=1" : '';
180
  $return['result'] = false;
181
  $return['error'] = __('Please supply your username and password.', 'login-with-ajax');
182
  }
183
+ $return['action'] = 'login';
184
  //Return the result array with errors etc.
185
  return $return;
186
  }
187
 
188
  /**
189
+ * Checks post data and registers user, then exits
190
  * @return string
191
  */
192
+ public static function register(){
193
+ $return = array();
194
+ if( !function_exists('register_new_user') ){
195
+ include_once('registration.php'); //in ajax we don't have access to this function, so include our own copy of the function
196
+ }
197
+ $errors = register_new_user($_POST['user_login'], $_POST['user_email']);
198
+ if ( !is_wp_error($errors) ) {
199
+ //Success
200
+ $return['result'] = true;
201
+ $return['message'] = __('Registration complete. Please check your e-mail.','login-with-ajax');
202
+ //add user to blog if multisite
203
+ if( is_multisite() ){
204
+ add_user_to_blog(get_current_blog_id(), $errors, 'subscriber');
 
 
205
  }
206
+ }else{
207
+ //Something's wrong
208
+ $return['result'] = false;
209
+ $return['error'] = $errors->get_error_message();
210
  }
211
+ $return['action'] = 'register';
212
+ return $return;
213
  }
214
 
215
  // Reads ajax login creds via POSt, calls the login script and interprets the result
216
+ public static function remember(){
217
  $return = array(); //What we send back
218
  $result = retrieve_password();
 
219
  if ( $result === true ) {
220
  //Password correctly remembered
221
  $return['result'] = true;
230
  $return['result'] = false;
231
  $return['error'] = __('An undefined error has ocurred', 'login-with-ajax');
232
  }
233
+ $return['action'] = 'remember';
234
  //Return the result array with errors etc.
235
  return $return;
236
  }
237
 
238
+ //Added fix for
239
+ public static function logoutUrl( $logout_url ){
240
+ //Add ICL if necessary
241
+ if( defined('ICL_LANGUAGE_CODE') ){
242
+ $logout_url .= ( strstr($logout_url,'?') !== false ) ? '&amp;':'?';
243
+ $logout_url .= 'icl_language_code='.ICL_LANGUAGE_CODE;
244
+ }
245
+ return $logout_url;
246
+ }
247
+
248
+ public static function getRegisterLink(){
249
+ $register_link = false;
250
+ if ( function_exists('bp_get_signup_page') ) { //Buddypress
251
+ $register_link = bp_get_signup_page();
252
+ }elseif ( is_multisite() ) { //MS
253
+ $register_link = site_url('wp-signup.php', 'login');
254
+ } else {
255
+ $register_link = site_url('wp-login.php?action=register', 'login');
256
+ }
257
+ return $register_link;
258
+ }
259
+
260
  /*
261
  * Redirect Functions
262
  */
263
 
264
+ public static function logoutRedirect(){
265
+ $redirect = self::getLogoutRedirect();
266
  if($redirect != ''){
267
  wp_redirect($redirect);
268
  exit();
269
  }
270
  }
271
 
272
+ public static function getLogoutRedirect(){
273
+ $data = self::$data;
274
+ //Global redirect
275
+ $redirect = '';
276
  if( !empty($data['logout_redirect']) ){
277
  $redirect = $data['logout_redirect'];
278
  }
279
+ //WPML global redirect
280
+ if( !empty($_REQUEST['icl_language_code']) ){
281
+ $code = $_REQUEST['icl_language_code'];
282
+ if( isset($data["logout_redirect_".$code]) ){
283
+ $redirect = $data["logout_redirect_".$code];
284
+ }
285
+ }
286
+ //Role based redirect
287
+ if( strtolower(get_class(self::$current_user)) == "wp_user" ){
288
  //Do a redirect if necessary
289
+ $data = self::$data;
290
+ $user_role = array_shift(self::$current_user->roles); //Checking for role-based redirects
291
  if( !empty($data["role_logout"]) && is_array($data["role_logout"]) && isset($data["role_logout"][$user_role]) ){
292
  $redirect = $data["role_logout"][$user_role];
293
  }
294
+ //Check for language redirects based on roles
295
+ if( !empty($_REQUEST['icl_language_code']) ){
296
+ if( isset($data["role_logout"][$user_role."_".$code]) ){
297
+ $redirect = $data["role_logout"][$user_role."_".$code];
298
+ }
299
+ }
300
+ }
301
+ //final replaces
302
+ if( !empty($redirect) ){
303
+ $redirect = str_replace("%LASTURL%", $_SERVER['HTTP_REFERER'], $redirect);
304
+ if( !empty($_REQUEST['icl_language_code']) ){
305
+ $redirect = str_replace("%LANG%", $code.'/', $redirect);
306
+ }
307
  }
 
308
  return $redirect;
309
  }
310
 
311
+ public static function loginRedirect( $redirect, $redirect_notsurewhatthisis, $user ){
312
+ $data = self::$data;
313
  if(is_user_logged_in()){
314
+ $lwa_redirect = self::getLoginRedirect($user);
315
  if( $lwa_redirect != '' ){
316
  wp_redirect($lwa_redirect);
317
  exit();
320
  return $redirect;
321
  }
322
 
323
+ public static function getLoginRedirect($user){
324
+ $data = self::$data;
325
+ //Global redirect
326
+ $redirect = false;
327
+ if( !empty($data['login_redirect']) ){
328
  $redirect = $data["login_redirect"];
329
  }
330
+ //WPML global redirect
331
+ if( !empty($_REQUEST['icl_language_code']) ){
332
+ $code = $_REQUEST['icl_language_code'];
333
+ if( isset($data["login_redirect_".$code]) ){
334
+ $redirect = $data["login_redirect_".$code];
335
+ }
336
+ }
337
+ //Role based redirects
338
  if( strtolower(get_class($user)) == "wp_user" ){
339
  $user_role = array_shift($user->roles); //Checking for role-based redirects
340
  if( isset($data["role_login"][$user_role]) ){
341
  $redirect = $data["role_login"][$user_role];
342
  }
343
+ //Check for language redirects based on roles
344
+ if( !empty($_REQUEST['icl_language_code']) ){
345
+ if( isset($data["role_login"][$user_role."_".$code]) ){
346
+ $redirect = $data["role_login"][$user_role."_".$code];
347
+ }
348
+ }
349
  }
350
  //Do string replacements
351
  $redirect = str_replace('%USERNAME%', $user->user_login, $redirect);
352
  $redirect = str_replace("%LASTURL%", $_SERVER['HTTP_REFERER'], $redirect);
353
+ if( !empty($_REQUEST['icl_language_code']) ){
354
+ $redirect = str_replace("%LANG%", $code.'/', $redirect);
355
+ }
356
  return $redirect;
357
  }
358
 
360
  * WIDGET OPERATIONS
361
  */
362
 
363
+ public static function widget($instance = array() ){
364
  //Extract widget arguments
 
365
  //Merge instance options with global default options
366
+ $lwa_data = wp_parse_args($instance, self::$data);
 
367
  //Deal with specific variables
368
+ $is_widget = false; //backwards-comatibility for overriden themes, this is now done within the WP_Widget class
369
+ $lwa_data['profile_link'] = ( !empty($lwa_data['profile_link']) && $lwa_data['profile_link'] != "false" );
370
  //Add template logic
371
+ self::$template = ( !empty($lwa_data['template']) && array_key_exists($lwa_data['template'], self::$templates) ) ? $lwa_data['template']:'default';
372
  //Choose the widget content to display.
373
  if(is_user_logged_in()){
374
  //Firstly check for template in theme with no template folder (legacy)
375
  $template_loc = locate_template( array('plugins/login-with-ajax/widget_in.php') );
376
  //Then check for custom templates or theme template default
377
+ $template_loc = ($template_loc == '' && self::$template) ? self::$templates[self::$template].'/widget_in.php':$template_loc;
378
+ include ( $template_loc != '' && file_exists($template_loc) ) ? $template_loc : 'widget/default/widget_in.php';
379
  }else{
380
  //Firstly check for template in theme with no template folder (legacy)
381
  $template_loc = locate_template( array('plugins/login-with-ajax/widget_out.php') );
382
  //First check for custom templates or theme template default
383
+ $template_loc = ($template_loc == '' && self::$template) ? self::$templates[self::$template].'/widget_out.php' : $template_loc;
384
+ include ( $template_loc != '' && file_exists($template_loc) ) ? $template_loc : 'widget/default/widget_out.php';
385
  }
386
  }
387
 
388
+ public static function shortcode($atts){
 
 
389
  ob_start();
390
+ self::widget(shortcode_atts($atts));
391
  return ob_get_clean();
392
  }
393
 
394
+ public static function new_user_notification($user_login, $plaintext_pass, $user_email, $blogname){
395
  //Copied out of /wp-includes/pluggable.php
396
+ $message = self::$data['notification_message'];
397
  $message = str_replace('%USERNAME%', $user_login, $message);
398
  $message = str_replace('%PASSWORD%', $plaintext_pass, $message);
399
  $message = str_replace('%BLOGNAME%', $blogname, $message);
400
  $message = str_replace('%BLOGURL%', get_bloginfo('wpurl'), $message);
401
 
402
+ $subject = self::$data['notification_subject'];
403
  $subject = str_replace('%BLOGNAME%', $blogname, $subject);
404
  $subject = str_replace('%BLOGURL%', get_bloginfo('wpurl'), $subject);
405
 
409
  /*
410
  * Auxillary Functions
411
  */
412
+
413
+ /**
414
+ * Returns the URL for a relative filepath which would be located in either a child, parent or plugin folder in order of priority.
415
+ *
416
+ * This would search for $template_path within:
417
+ * /wp-content/themes/your-child-theme/plugins/login-with-ajax/...
418
+ * /wp-content/themes/your-parent-theme/plugins/login-with-ajax/...
419
+ * /wp-content/plugins/login-with-ajax/widget/...
420
+ *
421
+ * It is assumed that the file always exists within the core plugin folder if the others aren't found.
422
+ *
423
+ * @param string $template_path
424
+ * @return string
425
+ */
426
+ public static function locate_template_url($template_path){
427
+ if( file_exists(get_stylesheet_directory().'/plugins/login-with-ajax/login-with-ajax.js') ){ //Child Theme (or just theme)
428
+ return trailingslashit(get_stylesheet_directory_uri())."plugins/login-with-ajax/$template_path";
429
+ }else if( file_exists(get_template_directory().'/plugins/login-with-ajax/login-with-ajax.js') ){ //Parent Theme (if parent exists)
430
+ return trailingslashit(get_template_directory_uri())."plugins/login-with-ajax/$template_path";
431
+ }
432
+ //Default file in plugin folder
433
+ return trailingslashit(plugin_dir_url(__FILE__))."widget/$template_path";
434
+ }
435
 
436
  //Checks a directory for folders and populates the template file
437
+ public static function find_templates($dir){
438
  if (is_dir($dir)) {
439
  if ($dh = opendir($dir)) {
440
  while (($file = readdir($dh)) !== false) {
441
  if(is_dir($dir . $file) && $file != '.' && $file != '..' && $file != '.svn'){
442
  //Template dir found, add it to the template array
443
+ self::$templates[$file] = path_join($dir, $file);
444
  }
445
  }
446
  closedir($dh);
447
  }
448
  }
449
  }
450
+
451
+ /**
452
+ * Add template link and JSON callback var to the URL
453
+ * @param string $content
454
+ * @return string
455
+ */
456
+ public static function template_link( $content ){
457
+ return add_query_arg(array('template'=>self::$template), $content);
 
458
  }
459
+
460
+ /**
461
+ * Returns a sanitized JSONP response from an array
462
+ * @param array $array
463
+ * @return string
464
+ */
465
+ public static function json_encode($array){
466
+ $return = json_encode($array);
467
  if( isset($_REQUEST['callback']) && preg_match("/^jQuery[_a-zA-Z0-9]+$/", $_REQUEST['callback']) ){
468
+ $return = $_REQUEST['callback']."($return)";
469
  }
470
  return $return;
471
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
472
  }
473
+ //Set when to init this class
474
+ add_action( 'widgets_init', 'LoginWithAjax::init' );
475
+
476
  //Add translation
477
+ function lwa_load_plugin_textdomain(){
478
+ load_plugin_textdomain('login-with-ajax', false, "login-with-ajax/langs");
479
+ }
480
+ add_action('plugins_loaded','lwa_load_plugin_textdomain');
481
 
482
  //Include admin file if needed
483
  if(is_admin()){
494
 
495
  //Template Tag
496
  function login_with_ajax($atts = ''){
 
497
  $atts = shortcode_parse_atts($atts);
498
+ echo LoginWithAjax::shortcode($atts);
499
  }
 
 
 
 
 
500
  ?>
readme.txt CHANGED
@@ -1,10 +1,9 @@
1
  === Login With Ajax ===
2
  Contributors: netweblogic
3
- Donate link: http://netweblogic.com/wordpress/plugins/login-with-ajax/
4
- Tags: Login, Ajax, Redirect, BuddyPress, MU, WPMU, sidebar, admin, widget
5
- Requires at least: 2.8
6
- Tested up to: 3.3.2
7
- Stable tag: 3.0.4.1
8
 
9
  Add smooth ajax login and registration effects to your blog and choose where users get redirected upon login/logout. Supports SSL, MU, and BuddyPress.
10
 
@@ -14,32 +13,32 @@ Login With Ajax is for sites that need user logins or registrations and would li
14
 
15
  Some of the features:
16
 
17
- * AJAX Login without refreshing your screen.
18
- * AJAX Registration without refreshing your screen.
19
- * AJAX Registration Password retrieval without refreshing your screen.
20
- * Compatible with Wordpress, Wordpress MU and BuddyPress (BuddyPress supports logins only, no registrations yet).
21
- * Will work with forced SSL logins.
22
- * Customizable, upgrade-safe widgets.
23
- * Redirect users to custom URLs on Login and Logout
24
- * Redirect users with different roles to custom URLs
25
- * shortcode and template tags available
26
  * Fallback mechanism, will still work on javascript-disabled browsers
 
 
 
27
  * Widget specific option to show link to profile page
28
- * Now translatable (currently only Spanish is available, please contact me to contribute)
29
 
30
- If you have any problems with the plugins, please visit our [http://netweblogic.com/forums/](support forums) for further information and provide some feedback first, we may be able to help. It's considered rude to just give low ratings and nothing reason for doing so.
31
-
32
- If you find this plugin useful and would like to say thanks, a link, digg, or some other form of recognition to the plugin page on our blog would be appreciated.
33
 
34
  = Translated Languages Available =
35
 
36
  Here's a list of currently translated languages. Translations that have been submitted are greatly appreciated and hopefully make this plugin a better one. If you'd like to contribute, please have a look at the POT file in the langs folder and send us your translations.
37
 
38
  * Finnish - Jaakko Kangosjärvi
39
- * Russian - [http://dropbydrop.org.ua/](Виталий Капля)
40
- * French - [http://wall.clan-zone.dk](Geoffroy Deleury)
41
  * German - Linus Metzler
42
- * Chinese - [http://fashion-bop.com](Simon Lau)
43
  * Italian - Marco aka teethgrinder
44
  * Romanian - Gabriel Berzescu
45
  * Danish - Christian B.
@@ -47,11 +46,13 @@ Here's a list of currently translated languages. Translations that have been sub
47
  * Brazilian - Humberto S. Ribeiro, Diogo Goncalves, Fabiano Arruda
48
  * Turkish - Mesut Soylu
49
  * Polish - Ryszard Rysz
50
- * Lithuanian - [http://www.kulinare.lt/](Gera Dieta)
51
- * Albanian - [http://blogu.programeshqip.org/](Besnik Bleta)
52
- * Spanish - Myself and [http://e-rgonomy.com](Danilo Casati)
53
  * Hungarian - Lorinc Borda
54
- * Japanese - [http://riuiski.com](Ryuei Sasaki)
 
 
55
 
56
  == Installation ==
57
 
@@ -67,6 +68,20 @@ Here's a list of currently translated languages. Translations that have been sub
67
 
68
  == Notes ==
69
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
70
  = Shortcodes & Template Tags =
71
 
72
  You can use the shortcode [login-with-ajax] or [lwa] and template tag login_with_ajax() with these options :
@@ -83,11 +98,14 @@ To force SSL, see [http://codex.wordpress.org/Administration_Over_SSL]("this pag
83
  You can customize the html widgets in an upgrade-safe manner. Firstly, you need to understand how Login With Ajax loads templates:
84
 
85
  * When looking for files/templates there is an order of precedence - active child theme (if applicable), active parent themes, and finally the plugin folder
86
- * Login With Ajax loads only one CSS and JS file. The plugin checks the locations above and loads the one it finds first.
87
- ** login-with-ajax.js and login-with-ajax.css must be located in either wp-content/themes/yourtheme/plugins/login-with-ajax/ or wp-content/plugins/login-with-ajax/widget/
88
- ** This was done to minimize the number of resources loaded, but means that if you have more than one template, you should add any extra CSS and JS to those single files.
 
89
  * Login With Ajax then checks for template folders, if two folders match names (e.g. you move default template to your theme) the order of precedence explained above applies.
90
- ** These theme folders are located within wp-content/themes/yourtheme/plugins/login-with-ajax/ or wp-content/plugins/login-with-ajax/widget/
 
 
91
  * There is a zip file inside the widget folder with a few extra theme folders, they are not fully maintained each release, but should work.
92
  * When a user is logged out, the widget_out.php will be shown, otherwise widget_in.php. These are located in the template folder.
93
 
@@ -135,78 +153,89 @@ For further questions and answers (or to submit one yourself) go to our [http://
135
 
136
  == Changelog ==
137
 
138
- = 2.1 =
139
- * Added translation POT files.
140
- * Spanish translation (quick/poor attempt on my part, just to get things going)
141
- * Fixed result bug on [http://netweblogic.com/forums/topic/undefined-error-on-logging-in-with-wp-29]
142
- * Fixed bug on [http://wordpress.org/support/topic/355406]
 
 
 
 
 
 
 
 
 
 
 
143
 
144
- = 2.1.1 =
145
- * Added Finnish, Russian and French Translations
146
- * Made JS success message translatable
147
- * Fixed encoding issue (e.g. # fails in passwords) in the JS
148
 
149
- = 2.1.2 =
150
- * Added German Translations
151
- * Fixed JS url encoding issue
 
 
152
 
153
- = 2.1.3 =
154
- * Added Italian Translations
155
- * Added space in widget after "Hi" when logged in.
156
- * CSS compatability with themes improvement.
157
 
158
- = 2.1.4 =
159
- * Added Chinese Translations
160
- * CSS compatability with themes improvement.
161
 
162
- = 2.1.5 =
163
- * Changed logged in widget to fix avatar display issue for both BuddyPress and WP. (Using ID instead of email for get_avatar and changed depreciated BP function).
164
- * Added Danish Translation
 
 
165
 
166
- = 2.2 =
167
- * Added Polish, Turkish and Brazilian Translation
168
- * Fixed buddypress avatar not showing when logged in
169
- * Removed capitalization of username in logged in widget
170
- * Fixed all other known bugs
171
- * Added placeholders for redirects (e.g. %USERNAME% for username when logged in)
172
- * Added seamless login, screen doesn't refresh upon successful login.
173
 
174
- = 2.21 =
175
- * Redirect bug fix
176
- * Hopefully fixed encoding issue
 
 
177
 
178
  = 3.0b =
179
  * Various bug fixes
180
  * Improved JavaScript code
181
  * Ajax Registration Option
182
 
183
- = 3.0b3 =
184
- * %LASTURL% now works for logins as well
185
- * Profile link plays nice with buddypress
186
- * Added fix to stop wp_new_user_notification conflicts
187
- * Empty logins now have an error message too.
188
 
189
- = 3.0 =
190
- * Option to choose from various widget templates.
 
 
 
 
 
191
 
192
- = 3.0.1 =
193
- * Fixed unexpected #LoginWithAjax_Footer showing up at bottom
194
- * Fixed link problems for sub-directory blogs (using bloginfo('wpurl') now)
195
- * Added Albanian
196
- * Replace Spanish with revised version
197
 
198
- = 3.0.2 =
199
- * got rid of (hopefully all) php warnings
 
200
 
201
- = 3.0.3 =
202
- * scrollbar issue in default widget
203
- * added hungarian
 
204
 
205
- = 3.0.4 =
206
- * updated russian translation
207
- * added japanese
208
- * updated iranian
209
- * added registration attribute to template tags/shortcode
210
 
211
- = 3.0.4.1 =
212
- * fixed xss vulnerability for re-enlistment on wordpress repo, more on the way
 
 
1
  === Login With Ajax ===
2
  Contributors: netweblogic
3
+ Tags: login, ajax, ajax login, registration, redirect redirect, buddypress, multi site, sidebar, admin, widget
4
+ Requires at least: 3.1
5
+ Tested up to: 3.5.1
6
+ Stable tag: 3.1
 
7
 
8
  Add smooth ajax login and registration effects to your blog and choose where users get redirected upon login/logout. Supports SSL, MU, and BuddyPress.
9
 
13
 
14
  Some of the features:
15
 
16
+ * AJAX-powered, no screen refreshes!
17
+ * Login
18
+ * Registration
19
+ * Remember/Reset Password
20
+ * Custom Login/Logout redirections
21
+ * Redirect users to custom URLs on Login and Logout
22
+ * Redirect users with different roles to custom URLs
23
+ * WPML - Language-specific redirects
24
+ * SSL-compatible
25
  * Fallback mechanism, will still work on javascript-disabled browsers
26
+ * Compatible with Wordpress, MultiSite and BuddyPress
27
+ * Customizable, upgrade-safe widgets
28
+ * shortcode and template tags available
29
  * Widget specific option to show link to profile page
 
30
 
31
+ If you have any problems with the plugin after reading the FAQ, Other Notes, etc. please visit the [support forums](http://wordpress.org/support/plugin/login-with-ajax).
 
 
32
 
33
  = Translated Languages Available =
34
 
35
  Here's a list of currently translated languages. Translations that have been submitted are greatly appreciated and hopefully make this plugin a better one. If you'd like to contribute, please have a look at the POT file in the langs folder and send us your translations.
36
 
37
  * Finnish - Jaakko Kangosjärvi
38
+ * Russian - [Виталий Капля](http://dropbydrop.org.ua/)
39
+ * French - [Geoffroy Deleury](http://wall.clan-zone.dk)
40
  * German - Linus Metzler
41
+ * Chinese - [Simon Lau](http://fashion-bop.com)
42
  * Italian - Marco aka teethgrinder
43
  * Romanian - Gabriel Berzescu
44
  * Danish - Christian B.
46
  * Brazilian - Humberto S. Ribeiro, Diogo Goncalves, Fabiano Arruda
47
  * Turkish - Mesut Soylu
48
  * Polish - Ryszard Rysz
49
+ * Lithuanian - [Gera Dieta](http://www.kulinare.lt/)
50
+ * Albanian - [Besnik Bleta](http://blogu.programeshqip.org/)
51
+ * Spanish - Myself and [Danilo Casati](http://e-rgonomy.com)
52
  * Hungarian - Lorinc Borda
53
+ * Japanese - [Ryuei Sasaki](http://riuiski.com)
54
+ * Arabic (SA) - Adel Madshel
55
+ * Persian - [Mohammad Hosein Ameri](http://khandoon.ir/)
56
 
57
  == Installation ==
58
 
68
 
69
  == Notes ==
70
 
71
+ = Upgrading from v3 to v3.1 =
72
+ Due to the improvmenets necessary (specifically allowing multiple LWA widgets on one page), it was important to modify the template files to use classnames instead of ids.
73
+
74
+ If you have customized your widgets as per the instructions below, you will need make some modifications to your templates, and probably re-evaluate whether you still need custom JS if you went that far.
75
+
76
+ We've tried to minimize potential conflicts arising from this, but you should consider revising your template regarding these two points:
77
+
78
+ * LoginWithAjax is now a static class, so things like $this->function() and $this->variable should become LoginWithAjax::function() and LoginWithAjax::$variable
79
+ * Element IDs are now classnames, and are converted like so (we do have backwards compatibility to account for this, but still recommended):
80
+ * LoginWithAjax becomes lwa
81
+ * classname is all lowercase
82
+ * underscores become hyphens
83
+ * Example : LoginWithAjax_Form > lwa-form
84
+
85
  = Shortcodes & Template Tags =
86
 
87
  You can use the shortcode [login-with-ajax] or [lwa] and template tag login_with_ajax() with these options :
98
  You can customize the html widgets in an upgrade-safe manner. Firstly, you need to understand how Login With Ajax loads templates:
99
 
100
  * When looking for files/templates there is an order of precedence - active child theme (if applicable), active parent themes, and finally the plugin folder
101
+ * Login With Ajax loads only one CSS and JS file. The plugin checks the locations above and loads the one it finds first. This was done to minimize the number of resources loaded, but means that if you have more than one template, you should add any extra CSS and JS to those single files.
102
+ * login-with-ajax.js and login-with-ajax.css must be located in either:
103
+ * wp-content/themes/yourtheme/plugins/login-with-ajax/
104
+ * wp-content/plugins/login-with-ajax/widget/
105
  * Login With Ajax then checks for template folders, if two folders match names (e.g. you move default template to your theme) the order of precedence explained above applies.
106
+ * These theme folders are located within :
107
+ * wp-content/themes/your-theme-or-child-theme/plugins/login-with-ajax/
108
+ * wp-content/plugins/login-with-ajax/widget/
109
  * There is a zip file inside the widget folder with a few extra theme folders, they are not fully maintained each release, but should work.
110
  * When a user is logged out, the widget_out.php will be shown, otherwise widget_in.php. These are located in the template folder.
111
 
153
 
154
  == Changelog ==
155
 
156
+ = 3.1 =
157
+ * fixed json_encode issue
158
+ * overhaul of JS, now leaner and meaner
159
+ * modified template structure to allow multiple login forms
160
+ * added template selection to each widget
161
+ * added title choice to widget
162
+ * removed inclusion of wp-includes/registration.php during regsitration (not needed since WP 3.1)
163
+ * added two new templates to choose in widgets
164
+ * new light-weight modal using tweaked Reveal library - http://zurb.com/playground/reveal-modal-plugin
165
+ * improved css
166
+ * improved html structures in widget templates
167
+ * added sainitization in widget templates
168
+ * fixed CSRF vulnerability in admin settings page - thanks to Charlie Eriksen via Secunia SVCRP
169
+ * moved WP Widget before/after and open/close tags out of templates and into the WP_Widget class
170
+ * LoginWithAjax class is now completely static
171
+ * added some MS fixes for registration, now works with BuddyPress
172
 
173
+ = 3.0.4.1 =
174
+ * fixed xss vulnerability for re-enlistment on wordpress repo, more on the way
 
 
175
 
176
+ = 3.0.4 =
177
+ * updated russian translation
178
+ * added japanese
179
+ * updated iranian
180
+ * added registration attribute to template tags/shortcode
181
 
182
+ = 3.0.3 =
183
+ * scrollbar issue in default widget
184
+ * added hungarian
 
185
 
186
+ = 3.0.2 =
187
+ * got rid of (hopefully all) php warnings
 
188
 
189
+ = 3.0.1 =
190
+ * Fixed unexpected #LoginWithAjax_Footer showing up at bottom
191
+ * Fixed link problems for sub-directory blogs (using bloginfo('wpurl') now)
192
+ * Added Albanian
193
+ * Replace Spanish with revised version
194
 
195
+ = 3.0 =
196
+ * Option to choose from various widget templates.
 
 
 
 
 
197
 
198
+ = 3.0b3 =
199
+ * %LASTURL% now works for logins as well
200
+ * Profile link plays nice with buddypress
201
+ * Added fix to stop wp_new_user_notification conflicts
202
+ * Empty logins now have an error message too.
203
 
204
  = 3.0b =
205
  * Various bug fixes
206
  * Improved JavaScript code
207
  * Ajax Registration Option
208
 
209
+ = 2.21 =
210
+ * Redirect bug fix
211
+ * Hopefully fixed encoding issue
 
 
212
 
213
+ = 2.2 =
214
+ * Added Polish, Turkish and Brazilian Translation
215
+ * Fixed buddypress avatar not showing when logged in
216
+ * Removed capitalization of username in logged in widget
217
+ * Fixed all other known bugs
218
+ * Added placeholders for redirects (e.g. %USERNAME% for username when logged in)
219
+ * Added seamless login, screen doesn't refresh upon successful login.
220
 
221
+ = 2.1.5 =
222
+ * Changed logged in widget to fix avatar display issue for both BuddyPress and WP. (Using ID instead of email for get_avatar and changed depreciated BP function).
223
+ * Added Danish Translation
 
 
224
 
225
+ = 2.1.4 =
226
+ * Added Chinese Translations
227
+ * CSS compatability with themes improvement.
228
 
229
+ = 2.1.3 =
230
+ * Added Italian Translations
231
+ * Added space in widget after "Hi" when logged in.
232
+ * CSS compatability with themes improvement.
233
 
234
+ = 2.1.2 =
235
+ * Added German Translations
236
+ * Fixed JS url encoding issue
 
 
237
 
238
+ = 2.1.1 =
239
+ * Added Finnish, Russian and French Translations
240
+ * Made JS success message translatable
241
+ * Fixed encoding issue (e.g. # fails in passwords) in the JS
registration.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ //Copy of registration function in wp-login.php which is required in ajax process
3
+ /**
4
+ * Handles registering a new user.
5
+ *
6
+ * @param string $user_login User's username for logging in
7
+ * @param string $user_email User's email address to send password and add
8
+ * @return int|WP_Error Either user's ID or error on failure.
9
+ */
10
+ function register_new_user( $user_login, $user_email ) {
11
+ $errors = new WP_Error();
12
+
13
+ $sanitized_user_login = sanitize_user( $user_login );
14
+ $user_email = apply_filters( 'user_registration_email', $user_email );
15
+
16
+ // Check the username
17
+ if ( $sanitized_user_login == '' ) {
18
+ $errors->add( 'empty_username', __( '<strong>ERROR</strong>: Please enter a username.' ) );
19
+ } elseif ( ! validate_username( $user_login ) ) {
20
+ $errors->add( 'invalid_username', __( '<strong>ERROR</strong>: This username is invalid because it uses illegal characters. Please enter a valid username.' ) );
21
+ $sanitized_user_login = '';
22
+ } elseif ( username_exists( $sanitized_user_login ) ) {
23
+ $errors->add( 'username_exists', __( '<strong>ERROR</strong>: This username is already registered. Please choose another one.' ) );
24
+ }
25
+
26
+ // Check the e-mail address
27
+ if ( $user_email == '' ) {
28
+ $errors->add( 'empty_email', __( '<strong>ERROR</strong>: Please type your e-mail address.' ) );
29
+ } elseif ( ! is_email( $user_email ) ) {
30
+ $errors->add( 'invalid_email', __( '<strong>ERROR</strong>: The email address isn&#8217;t correct.' ) );
31
+ $user_email = '';
32
+ } elseif ( email_exists( $user_email ) ) {
33
+ $errors->add( 'email_exists', __( '<strong>ERROR</strong>: This email is already registered, please choose another one.' ) );
34
+ }
35
+
36
+ do_action( 'register_post', $sanitized_user_login, $user_email, $errors );
37
+
38
+ $errors = apply_filters( 'registration_errors', $errors, $sanitized_user_login, $user_email );
39
+
40
+ if ( $errors->get_error_code() )
41
+ return $errors;
42
+
43
+ $user_pass = wp_generate_password( 12, false);
44
+ $user_id = wp_create_user( $sanitized_user_login, $user_pass, $user_email );
45
+ if ( ! $user_id ) {
46
+ $errors->add( 'registerfail', sprintf( __( '<strong>ERROR</strong>: Couldn&#8217;t register you... please contact the <a href="mailto:%s">webmaster</a> !' ), get_option( 'admin_email' ) ) );
47
+ return $errors;
48
+ }
49
+
50
+ update_user_option( $user_id, 'default_password_nag', true, true ); //Set up the Password change nag.
51
+
52
+ wp_new_user_notification( $user_id, $user_pass );
53
+
54
+ return $user_id;
55
+ }
widget/close.png DELETED
Binary file
widget/default/widget_in.php CHANGED
@@ -5,58 +5,43 @@
5
  * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
  */
7
  ?>
8
- <?php
9
- global $current_user;
10
- if( $is_widget ){
11
- echo $before_widget . $before_title . '<span id="LoginWithAjax_Title">' . __( 'Hi', 'login-with-ajax' ) . " " . $current_user->display_name . '</span>' . $after_title;
12
- }else{
13
- //If you want the AJAX login widget to work without refreshing the screen upon login, this is needed for the widget title to update.
14
- echo '<span id="LoginWithAjax_Title_Substitute" style="display:none">' . __( 'Hi', 'login-with-ajax' ) . " " . $current_user->display_name . '</span>';
15
- }
16
- ?>
17
- <div id="LoginWithAjax">
18
  <?php
19
  global $current_user;
20
- global $user_level;
21
- global $wpmu_version;
22
  get_currentuserinfo();
23
  ?>
24
- <table cellpadding="0" cellspacing="0" width="100%">
 
25
  <tr>
26
- <td class="avatar" id="LoginWithAjax_Avatar">
27
  <?php echo get_avatar( $current_user->ID, $size = '50' ); ?>
28
  </td>
29
- <td id="LoginWithAjax_Info">
30
  <?php
31
  //Admin URL
32
  if ( $lwa_data['profile_link'] == '1' ) {
33
  if( function_exists('bp_loggedin_user_link') ){
34
  ?>
35
- <a href="<?php bp_loggedin_user_link(); ?>"><?php echo strtolower(__('Profile')) ?></a><br/>
36
  <?php
37
  }else{
38
  ?>
39
- <a href="<?php bloginfo('wpurl') ?>/wp-admin/profile.php"><?php echo strtolower(__('Profile')) ?></a><br/>
40
  <?php
41
  }
42
  }
43
  //Logout URL
44
  ?>
45
- <a id="wp-logout" href="<?php echo wp_logout_url() ?>"><?php echo strtolower(__( 'Log Out' )) ?></a><br />
46
  <?php
47
  //Blog Admin
48
- if( !empty($wpmu_version) || $user_level > 8 ) {
49
  ?>
50
- <a href="<?php bloginfo('wpurl') ?>/wp-admin/"><?php _e("blog admin", 'loginwithajax'); ?></a>
51
  <?php
52
  }
53
  ?>
54
  </td>
55
  </tr>
56
  </table>
57
- </div>
58
- <?php
59
- if( $is_widget ){
60
- echo $after_widget;
61
- }
62
- ?>
5
  * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
  */
7
  ?>
8
+ <div class="lwa">
 
 
 
 
 
 
 
 
 
9
  <?php
10
  global $current_user;
 
 
11
  get_currentuserinfo();
12
  ?>
13
+ <span class="lwa-title-sub" style="display:none"><?php echo __( 'Hi', 'login-with-ajax' ) . " " . $current_user->display_name ?></span>
14
+ <table>
15
  <tr>
16
+ <td class="avatar" id="lwa-avatar">
17
  <?php echo get_avatar( $current_user->ID, $size = '50' ); ?>
18
  </td>
19
+ <td id="lwa-info">
20
  <?php
21
  //Admin URL
22
  if ( $lwa_data['profile_link'] == '1' ) {
23
  if( function_exists('bp_loggedin_user_link') ){
24
  ?>
25
+ <a href="<?php bp_loggedin_user_link(); ?>"><?php echo strtolower(__('Profile','login-with-ajax')) ?></a><br/>
26
  <?php
27
  }else{
28
  ?>
29
+ <a href="<?php echo trailingslashit(get_admin_url()); ?>profile.php"><?php echo strtolower(__('Profile','login-with-ajax')) ?></a><br/>
30
  <?php
31
  }
32
  }
33
  //Logout URL
34
  ?>
35
+ <a id="wp-logout" href="<?php echo wp_logout_url() ?>"><?php echo strtolower(__( 'Log Out' ,'login-with-ajax')) ?></a><br />
36
  <?php
37
  //Blog Admin
38
+ if( current_user_can('list_users') ) {
39
  ?>
40
+ <a href="<?php echo get_admin_url(); ?>"><?php _e("blog admin", 'login-with-ajax'); ?></a>
41
  <?php
42
  }
43
  ?>
44
  </td>
45
  </tr>
46
  </table>
47
+ </div>
 
 
 
 
 
widget/default/widget_out.php CHANGED
@@ -5,121 +5,90 @@
5
  * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
  */
7
  ?>
8
- <?php
9
- if( $is_widget ){
10
- echo $before_widget . $before_title . '<span id="LoginWithAjax_Title">' . __('Log In') . '</span>' . $after_title;
11
- }
12
- ?>
13
- <div id="LoginWithAjax" class="default"><?php //ID must be here, and if this is a template, class name should be that of template directory ?>
14
- <span id="LoginWithAjax_Status"></span>
15
- <form name="LoginWithAjax_Form" id="LoginWithAjax_Form" action="<?php echo $this->url_login; ?>" method="post">
16
- <table width='100%' cellspacing="0" cellpadding="0">
17
- <tr id="LoginWithAjax_Username">
18
- <td class="username_label">
19
- <label><?php _e( 'Username' ) ?></label>
20
  </td>
21
- <td class="username_input">
22
- <input type="text" name="log" id="lwa_user_login" class="input" value="<?php echo attribute_escape(stripslashes($user_login)); ?>" />
23
  </td>
24
  </tr>
25
- <tr id="LoginWithAjax_Password">
26
- <td class="password_label">
27
- <label><?php _e( 'Password' ) ?></label>
28
  </td>
29
- <td class="password_input">
30
- <input type="password" name="pwd" id="lwa_user_pass" class="input" value="" />
31
  </td>
32
  </tr>
33
  <tr><td colspan="2"><?php do_action('login_form'); ?></td></tr>
34
- <tr id="LoginWithAjax_Submit">
35
- <td id="LoginWithAjax_SubmitButton">
36
- <input type="submit" name="wp-submit" id="lwa_wp-submit" value="<?php _e('Log In'); ?>" tabindex="100" />
37
- <input type="hidden" name="redirect_to" value="http://<?php echo $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'] ?>" />
38
- <input type="hidden" name="testcookie" value="1" />
39
- <input type="hidden" name="lwa_profile_link" value="<?php echo $lwa_data['profile_link'] ?>" />
40
  </td>
41
- <td id="LoginWithAjax_Links">
42
- <input name="rememberme" type="checkbox" id="lwa_rememberme" value="forever" /> <label><?php _e( 'Remember Me' ) ?></label>
43
  <br />
44
- <a id="LoginWithAjax_Links_Remember" href="<?php echo site_url('wp-login.php?action=lostpassword', 'login') ?>" title="<?php _e('Password Lost and Found') ?>"><?php _e('Lost your password?') ?></a>
45
- <?php
46
- //Signup Links
47
- if ( get_option('users_can_register') && $lwa_data['registration'] == '1' ) {
48
- echo "<br />";
49
- if ( function_exists('bp_get_signup_page') ) { //Buddypress
50
- $register_link = bp_get_signup_page();
51
- }elseif ( file_exists( ABSPATH."/wp-signup.php" ) ) { //MU + WP3
52
- $register_link = site_url('wp-signup.php', 'login');
53
- } else {
54
- $register_link = site_url('wp-login.php?action=register', 'login');
55
- }
56
- ?>
57
- <a href="<?php echo $register_link ?>" id="LoginWithAjax_Links_Register" rel="#LoginWithAjax_Register"><?php _e('Register') ?></a>
58
- <?php
59
- }
60
- ?>
61
  </td>
62
  </tr>
63
  </table>
64
  </form>
65
- <form name="LoginWithAjax_Remember" id="LoginWithAjax_Remember" action="<?php echo $this->url_remember ?>" method="post" style="display:none;">
66
- <table width='100%' cellspacing="0" cellpadding="0">
 
67
  <tr>
68
  <td>
69
- <strong><?php echo __("Forgotten Password", 'login-with-ajax'); ?></strong>
70
  </td>
71
  </tr>
72
  <tr>
73
- <td class="forgot-pass-email">
74
  <?php $msg = __("Enter username or email", 'login-with-ajax'); ?>
75
- <input type="text" name="user_login" id="lwa_user_remember" value="<?php echo $msg ?>" onfocus="if(this.value == '<?php echo $msg ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo $msg ?>'}" />
 
76
  </td>
77
  </tr>
78
  <tr>
79
- <td>
80
- <input type="submit" value="<?php echo __("Get New Password", 'login-with-ajax'); ?>" />
81
- <a href="#" id="LoginWithAjax_Links_Remember_Cancel"><?php _e("Cancel"); ?></a>
82
- <input type="hidden" name="login-with-ajax" value="remember" />
83
  </td>
84
  </tr>
85
  </table>
86
  </form>
87
- </div>
88
- <?php if( get_option('users_can_register') && $lwa_data['registration'] == '1' ): ?>
89
- <div id="LoginWithAjax_Footer">
90
- <div id="LoginWithAjax_Register" style="display:none;" class="default">
91
- <h4 class="message register"><?php _e('Register For This Site') ?></h4>
92
- <form name="registerform" id="registerform" action="<?php echo $this->url_register ?>" method="post">
93
- <p>
94
- <label><?php _e('Username') ?><br />
95
  <input type="text" name="user_login" id="user_login" class="input" size="20" tabindex="10" /></label>
96
  </p>
97
- <p>
98
- <label><?php _e('E-mail') ?><br />
99
  <input type="text" name="user_email" id="user_email" class="input" size="25" tabindex="20" /></label>
100
  </p>
101
  <?php do_action('register_form'); ?>
102
- <p id="reg_passmail"><?php _e('A password will be e-mailed to you.') ?></p>
103
- <p class="submit"><input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php esc_attr_e('Register'); ?>" tabindex="100" /></p>
104
- <input type="hidden" name="lwa" value="1" />
 
 
105
  </form>
106
  </div>
107
- </div>
108
- <script type="text/javascript">
109
- jQuery(document).ready(function($) {
110
- var triggers = $("#LoginWithAjax_Links_Register").overlay({
111
- mask: {
112
- color: '#ebecff',
113
- loadSpeed: 200,
114
- opacity: 0.9
115
- },
116
- closeOnClick: true
117
- });
118
- });
119
- </script>
120
- <?php endif; ?>
121
- <?php
122
- if( $is_widget ){
123
- echo $after_widget;
124
- }
125
- ?>
5
  * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
  */
7
  ?>
8
+ <div class="lwa lwa-default"><?php //class must be here, and if this is a template, class name should be that of template directory ?>
9
+ <form class="lwa-form" action="<?php echo esc_attr(LoginWithAjax::$url_login); ?>" method="post">
10
+ <span class="lwa-status"></span>
11
+ <table>
12
+ <tr class="lwa-username">
13
+ <td class="lwa-username-label">
14
+ <label><?php esc_html_e( 'Username','login-with-ajax' ) ?></label>
 
 
 
 
 
15
  </td>
16
+ <td class="lwa-username-input">
17
+ <input type="text" name="log" />
18
  </td>
19
  </tr>
20
+ <tr class="lwa-password">
21
+ <td class="lwa-password-label">
22
+ <label><?php esc_html_e( 'Password','login-with-ajax' ) ?></label>
23
  </td>
24
+ <td class="lwa-password-input">
25
+ <input type="password" name="pwd" />
26
  </td>
27
  </tr>
28
  <tr><td colspan="2"><?php do_action('login_form'); ?></td></tr>
29
+ <tr class="lwa-submit">
30
+ <td class="lwa-submit-button">
31
+ <input type="submit" name="wp-submit" id="lwa_wp-submit" value="<?php esc_attr_e('Log In', 'login-with-ajax'); ?>" tabindex="100" />
32
+ <input type="hidden" name="lwa_profile_link" value="<?php echo esc_attr($lwa_data['profile_link']); ?>" />
33
+ <input type="hidden" name="login-with-ajax" value="login" />
 
34
  </td>
35
+ <td class="lwa-submit-links">
36
+ <input name="rememberme" type="checkbox" class="lwa-rememberme" value="forever" /> <label><?php esc_html_e( 'Remember Me','login-with-ajax' ) ?></label>
37
  <br />
38
+ <a class="lwa-links-remember" href="<?php echo esc_attr(LoginWithAjax::$url_remember); ?>" title="<?php esc_attr_e('Password Lost and Found', 'login-with-ajax') ?>"><?php esc_html_e('Lost your password?', 'login-with-ajax') ?></a>
39
+ <?php if ( get_option('users_can_register') && !empty($lwa_data['registration']) ) : ?>
40
+ <br />
41
+ <a href="<?php echo esc_attr(LoginWithAjax::$url_register); ?>" class="lwa-links-register lwa-links-modal"><?php esc_html_e('Register','login-with-ajax') ?></a>
42
+ <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
43
  </td>
44
  </tr>
45
  </table>
46
  </form>
47
+ <form class="lwa-remember" action="<?php echo esc_attr(LoginWithAjax::$url_remember) ?>" method="post" style="display:none;">
48
+ <span class="lwa-status"></span>
49
+ <table>
50
  <tr>
51
  <td>
52
+ <strong><?php esc_html_e("Forgotten Password", 'login-with-ajax'); ?></strong>
53
  </td>
54
  </tr>
55
  <tr>
56
+ <td class="lwa-remember-email">
57
  <?php $msg = __("Enter username or email", 'login-with-ajax'); ?>
58
+ <input type="text" name="user_login" class="lwa-user-remember" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}" />
59
+ <?php do_action('lostpassword_form'); ?>
60
  </td>
61
  </tr>
62
  <tr>
63
+ <td class="lwa-remember-buttons">
64
+ <input type="submit" value="<?php esc_attr_e("Get New Password", 'login-with-ajax'); ?>" class="lwa-button-remember" />
65
+ <a href="#" class="lwa-links-remember-cancel"><?php esc_html_e("Cancel", 'login-with-ajax'); ?></a>
66
+ <input type="hidden" name="login-with-ajax" value="remember" />
67
  </td>
68
  </tr>
69
  </table>
70
  </form>
71
+ <?php if( get_option('users_can_register') && !empty($lwa_data['registration']) ): ?>
72
+ <div class="lwa-register lwa-register-default lwa-modal" style="display:none;">
73
+ <h4><?php esc_html_e('Register For This Site','login-with-ajax') ?></h4>
74
+ <p><em class="lwa-register-tip"><?php esc_html_e('A password will be e-mailed to you.','login-with-ajax') ?></em></p>
75
+ <form class="lwa-register-form" action="<?php echo esc_attr(LoginWithAjax::$url_register); ?>" method="post">
76
+ <span class="lwa-status"></span>
77
+ <p class="lwa-username">
78
+ <label><?php esc_html_e('Username','login-with-ajax') ?><br />
79
  <input type="text" name="user_login" id="user_login" class="input" size="20" tabindex="10" /></label>
80
  </p>
81
+ <p class="lwa-email">
82
+ <label><?php esc_html_e('E-mail','login-with-ajax') ?><br />
83
  <input type="text" name="user_email" id="user_email" class="input" size="25" tabindex="20" /></label>
84
  </p>
85
  <?php do_action('register_form'); ?>
86
+ <?php do_action('lwa_register_form'); ?>
87
+ <p class="submit">
88
+ <input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php esc_attr_e('Register', 'login-with-ajax'); ?>" tabindex="100" />
89
+ </p>
90
+ <input type="hidden" name="login-with-ajax" value="register" />
91
  </form>
92
  </div>
93
+ <?php endif; ?>
94
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
widget/divs-only/widget_out.php ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * This is the page users will see logged out.
4
+ * You can edit this, but for upgrade safety you should copy and modify this file into your template folder.
5
+ * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
+ */
7
+ ?>
8
+ <div class="lwa lwa-divs-only">
9
+ <span class="lwa-status"></span>
10
+ <form name="lwa-form" class="lwa-form" action="<?php echo esc_attr(LoginWithAjax::$url_login); ?>" method="post">
11
+ <div class="lwa-username">
12
+ <label><?php esc_html_e( 'Username','login-with-ajax' ) ?></label>
13
+ <input type="text" name="log" id="lwa_user_login" class="input" />
14
+ </div>
15
+
16
+ <div class="lwa-password">
17
+ <label><?php esc_html_e( 'Password','login-with-ajax' ) ?></label>
18
+ <input type="password" name="pwd" id="lwa_user_pass" class="input" />
19
+ </div>
20
+
21
+ <div class="lwa-submit-button">
22
+ <input type="submit" name="wp-submit" id="lwa_wp-submit" value="<?php esc_attr_e('Log In','login-with-ajax'); ?>" tabindex="100" />
23
+ <input type="hidden" name="lwa_profile_link" value="<?php echo esc_attr($lwa_data['profile_link']); ?>" />
24
+ <input type="hidden" name="login-with-ajax" value="login" />
25
+ </div>
26
+
27
+ <div class="lwa-links">
28
+ <input name="rememberme" type="checkbox" class="lwa-rememberme" value="forever" /> <label><?php esc_html_e( 'Remember Me','login-with-ajax' ) ?></label>
29
+ <br />
30
+ <a class="lwa-links-remember" href="<?php echo esc_attr(LoginWithAjax::$url_remember); ?>" title="<?php esc_attr_e('Password Lost and Found','login-with-ajax') ?>"><?php esc_attr_e('Lost your password?','login-with-ajax') ?></a>
31
+ <?php if ( get_option('users_can_register') ) : ?>
32
+ <br />
33
+ <a href="<?php echo esc_attr(LoginWithAjax::$url_register); ?>" class="lwa-links-register-inline"><?php esc_html_e('Register','login-with-ajax'); ?></a>
34
+ <?php endif; ?>
35
+ </div>
36
+ </form>
37
+ <form name="lwa-remember" class="lwa-remember" action="<?php echo esc_attr(LoginWithAjax::$url_remember); ?>" method="post" style="display:none;">
38
+ <p><strong><?php esc_html_e("Forgotten Password",'login-with-ajax'); ?></strong></p>
39
+ <div class="lwa-remember-email">
40
+ <?php $msg = __("Enter username or email",'login-with-ajax'); ?>
41
+ <input type="text" name="user_login" id="lwa_user_remember" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}" />
42
+ </div>
43
+ <div class="lwa-submit-button">
44
+ <input type="submit" value="<?php esc_attr_e("Get New Password", 'login-with-ajax'); ?>" />
45
+ <a href="#" class="lwa-links-remember-cancel"><?php esc_attr_e("Cancel", 'login-with-ajax'); ?></a>
46
+ <input type="hidden" name="login-with-ajax" value="remember" />
47
+ </div>
48
+ </form>
49
+ <?php if ( $lwa_data['registration'] == true ) : ?>
50
+ <div class="lwa-register" style="display:none;" >
51
+ <form name="registerform" id="registerform" action="<?php echo esc_attr(LoginWithAjax::$url_register); ?>" method="post">
52
+ <p><strong><?php esc_html_e('Register For This Site','login-with-ajax'); ?></strong></p>
53
+ <div class="lwa-username">
54
+ <?php $msg = __('Username','login-with-ajax'); ?>
55
+ <input type="text" name="user_login" id="user_login" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}" />
56
+ </div>
57
+ <div class="lwa-email">
58
+ <?php $msg = __('E-mail','login-with-ajax'); ?>
59
+ <input type="text" name="user_email" id="user_email" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}"/>
60
+ </div>
61
+ <?php
62
+ //If you want other plugins to play nice, you need this:
63
+ do_action('register_form');
64
+ ?>
65
+ <p class="lwa-submit-button">
66
+ <?php esc_html_e('A password will be e-mailed to you.','login-with-ajax') ?>
67
+ <input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php esc_attr_e('Register', 'login-with-ajax'); ?>" tabindex="100" />
68
+ <a href="#" class="lwa-links-register-inline-cancel"><?php esc_html_e("Cancel", 'login-with-ajax'); ?></a>
69
+ <input type="hidden" name="login-with-ajax" value="register" />
70
+ </p>
71
+ </form>
72
+ </div>
73
+ <?php endif; ?>
74
+ </div>
widget/extra-widgets.zip DELETED
Binary file
widget/jquery.reveal.js ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * jQuery Reveal Plugin 1.0
3
+ * www.ZURB.com
4
+ * Copyright 2010, ZURB
5
+ * Free to use under the MIT license.
6
+ * http://www.opensource.org/licenses/mit-license.php
7
+ */
8
+
9
+
10
+ (function($) {
11
+
12
+ /*---------------------------
13
+ Defaults for Reveal
14
+ ----------------------------*/
15
+
16
+ /*---------------------------
17
+ Listener for data-reveal-id attributes
18
+ ----------------------------*/
19
+
20
+ $('a[data-reveal-id]').on('click', function(e) {
21
+ e.preventDefault();
22
+ var modalLocation = $(this).attr('data-reveal-id');
23
+ $('#'+modalLocation).reveal($(this).data());
24
+ });
25
+
26
+ /*---------------------------
27
+ Extend and Execute
28
+ ----------------------------*/
29
+
30
+ $.fn.reveal = function(options) {
31
+
32
+
33
+ var defaults = {
34
+ animation: 'fadeAndPop', //fade, fadeAndPop, none
35
+ animationspeed: 300, //how fast animtions are
36
+ closeonbackgroundclick: true, //if you click background will modal close?
37
+ dismissmodalclass: 'close-reveal-modal', //the class of a button or element that will close an open modal
38
+ modalbgclass : 'reveal-modal-bg'
39
+ };
40
+
41
+ //Extend dem' options
42
+ var options = $.extend({}, defaults, options);
43
+
44
+ return this.each(function() {
45
+
46
+ /*---------------------------
47
+ Global Variables
48
+ ----------------------------*/
49
+ var modal = $(this),
50
+ topMeasure = parseInt(modal.css('top')),
51
+ topOffset = modal.height() + topMeasure,
52
+ locked = false,
53
+ modalBG = $('.'+options.modalbgclass);
54
+
55
+ /*---------------------------
56
+ Create Modal BG
57
+ ----------------------------*/
58
+ if(modalBG.length == 0) {
59
+ modalBG = $('<div class="'+options.modalbgclass+'" />').insertAfter(modal);
60
+ }
61
+ if( modal.find('.'+options.dismissmodalclass).length == 0 ){
62
+ modal.append('<a class="'+options.dismissmodalclass+'">&#215;</a>');
63
+ }
64
+
65
+ /*---------------------------
66
+ Open & Close Animations
67
+ ----------------------------*/
68
+ //Entrance Animations
69
+ modal.bind('reveal:open', function () {
70
+ modalBG.unbind('click.modalEvent');
71
+ $('.' + options.dismissmodalclass).unbind('click.modalEvent');
72
+ if(!locked) {
73
+ lockModal();
74
+ if(options.animation == "fadeAndPop") {
75
+ modal.css({'top': $(document).scrollTop()-topOffset, 'opacity' : 0, 'visibility' : 'visible', 'display':'block'});
76
+ modalBG.fadeIn(options.animationspeed/2);
77
+ modal.delay(options.animationspeed/2).animate({
78
+ "top": $(document).scrollTop()+topMeasure + 'px',
79
+ "opacity" : 1
80
+ }, options.animationspeed,unlockModal());
81
+ }
82
+ if(options.animation == "fade") {
83
+ modal.css({'opacity' : 0, 'visibility' : 'visible', 'top': $(document).scrollTop()+topMeasure, 'display':'block'});
84
+ modalBG.fadeIn(options.animationspeed/2);
85
+ modal.delay(options.animationspeed/2).animate({
86
+ "opacity" : 1
87
+ }, options.animationspeed,unlockModal());
88
+ }
89
+ if(options.animation == "none") {
90
+ modal.css({'visibility' : 'visible', 'top':$(document).scrollTop()+topMeasure, 'display':'block'});
91
+ modalBG.css({"display":"block"});
92
+ unlockModal()
93
+ }
94
+ }
95
+ modal.unbind('reveal:open');
96
+ });
97
+
98
+ //Closing Animation
99
+ modal.bind('reveal:close', function () {
100
+ if(!locked) {
101
+ lockModal();
102
+ if(options.animation == "fadeAndPop") {
103
+ modalBG.delay(options.animationspeed).fadeOut(options.animationspeed);
104
+ modal.animate({
105
+ "top": $(document).scrollTop()-topOffset + 'px',
106
+ "opacity" : 0
107
+ }, options.animationspeed/2, function() {
108
+ modal.css({'top':topMeasure, 'opacity' : 1, 'visibility' : 'hidden'});
109
+ unlockModal();
110
+ });
111
+ }
112
+ if(options.animation == "fade") {
113
+ modalBG.delay(options.animationspeed).fadeOut(options.animationspeed);
114
+ modal.animate({
115
+ "opacity" : 0
116
+ }, options.animationspeed, function() {
117
+ modal.css({'opacity' : 1, 'visibility' : 'hidden', 'top' : topMeasure});
118
+ unlockModal();
119
+ });
120
+ }
121
+ if(options.animation == "none") {
122
+ modal.css({'visibility' : 'hidden', 'top' : topMeasure});
123
+ modalBG.css({'display' : 'none'});
124
+ }
125
+ }
126
+ modal.unbind('reveal:close');
127
+ });
128
+
129
+ /*---------------------------
130
+ Open and add Closing Listeners
131
+ ----------------------------*/
132
+ //Open Modal Immediately
133
+ modal.trigger('reveal:open')
134
+
135
+ //Close Modal Listeners
136
+ var closeButton = $('.' + options.dismissmodalclass).bind('click.modalEvent', function () {
137
+ modal.trigger('reveal:close')
138
+ });
139
+
140
+ if(options.closeonbackgroundclick) {
141
+ modalBG.css({"cursor":"pointer"})
142
+ modalBG.bind('click.modalEvent', function () {
143
+ modal.trigger('reveal:close')
144
+ });
145
+ }
146
+ $('body').keyup(function(e) {
147
+ if(e.which===27){ modal.trigger('reveal:close'); } // 27 is the keycode for the Escape key
148
+ });
149
+
150
+
151
+ /*---------------------------
152
+ Animations Locks
153
+ ----------------------------*/
154
+ function unlockModal() {
155
+ locked = false;
156
+ }
157
+ function lockModal() {
158
+ locked = true;
159
+ }
160
+
161
+ });//each call
162
+ }//orbit plugin call
163
+ })(jQuery);
widget/login-with-ajax.js CHANGED
@@ -1,16 +1,2 @@
1
- jQuery(document).ready(function($){$('#LoginWithAjax_Form').submit(function(event){event.preventDefault();$('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax');var url=$('#LoginWithAjax_Form').attr('action');var postData=getPostData('#LoginWithAjax_Form *[name]');postData['login-with-ajax']='login';$.post(url,postData,function(data){lwaAjax(data,'LoginWithAjax_Status','#login-with-ajax');if(data.result===true){if(data.widget!=null){$.get(data.widget,function(widget_result){$('#LoginWithAjax').replaceWith(widget_result);$('#LoginWithAjax_Title').replaceWith($('#LoginWithAjax_Title_Substitute').text());});}else{if(data.redirect==null){window.location.reload();}else{window.location=data.redirect;}}}},"json");});$('#LoginWithAjax_Remember').submit(function(event){event.preventDefault();$('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax');var url=$('#LoginWithAjax_Remember').attr('action');var postData=getPostData('#LoginWithAjax_Remember *[name]');$.post(url,postData,function(data){lwaAjax(data,'LoginWithAjax_Status','#login-with-ajax');},"json");});$('#LoginWithAjax_Register form').submit(function(event){event.preventDefault();$('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax_Register');var url=$('#LoginWithAjax_Register form').attr('action');var postData=getPostData('#LoginWithAjax_Register form *[name]');$.post(url,postData,function(data){lwaAjax(data,'LoginWithAjax_Register_Status','#LoginWithAjax_Register');},"json");});$('#LoginWithAjax_Remember').hide();$('#LoginWithAjax_Links_Remember').click(function(event){event.preventDefault();$('#LoginWithAjax_Remember').show('slow');});$('#LoginWithAjax_Links_Remember_Cancel').click(function(event){event.preventDefault();$('#LoginWithAjax_Remember').hide('slow');});function lwaAjax(data,statusElement,prependTo){$('#LoginWithAjax_Loading').remove();if(data.result===true||data.result===false){if(data.result===true){if($('#'+statusElement).length>0){$('#'+statusElement).attr('class','confirm').html(data.message);}else{$('<span id="'+statusElement+'" class="confirm">'+data.message+'</span>').prependTo(prependTo);}}else{if($('#'+statusElement).length>0){$('#'+statusElement).attr('class','invalid').html(data.error);}else{$('<span id="'+statusElement+'" class="invalid">'+data.error+'</span>').prependTo(prependTo);}
2
- $('#'+statusElement).click(function(event){event.preventDefault();$('#LoginWithAjax_Remember').show('slow');});}}else{if($('#'+statusElement).length>0){$('#'+statusElement).attr('class','invalid').html('An error has occured. Please try again.');}else{$('<span id="'+statusElement+'" class="invalid">An error has occured. Please try again.</span>').prependTo(prependTo);}}}
3
- function getPostData(selector){var postData={};$.each($(selector),function(index,el){el=$(el);postData[el.attr('name')]=el.attr('value');});return postData}});
4
-
5
- /* Do not edit after here*/
6
- /* jQuery Tools 1.2.5 Overlay & Expose */
7
- (function(a){function t(d,b){var c=this,j=d.add(c),o=a(window),k,f,m,g=a.tools.expose&&(b.mask||b.expose),n=Math.random().toString().slice(10);if(g){if(typeof g=="string")g={color:g};g.closeOnClick=g.closeOnEsc=false}var p=b.target||d.attr("rel");f=p?a(p):d;if(!f.length)throw"Could not find Overlay: "+p;d&&d.index(f)==-1&&d.click(function(e){c.load(e);return e.preventDefault()});a.extend(c,{load:function(e){if(c.isOpened())return c;var h=q[b.effect];if(!h)throw'Overlay: cannot find effect : "'+b.effect+
8
- '"';b.oneInstance&&a.each(s,function(){this.close(e)});e=e||a.Event();e.type="onBeforeLoad";j.trigger(e);if(e.isDefaultPrevented())return c;m=true;g&&a(f).expose(g);var i=b.top,r=b.left,u=f.outerWidth({margin:true}),v=f.outerHeight({margin:true});if(typeof i=="string")i=i=="center"?Math.max((o.height()-v)/2,0):parseInt(i,10)/100*o.height();if(r=="center")r=Math.max((o.width()-u)/2,0);h[0].call(c,{top:i,left:r},function(){if(m){e.type="onLoad";j.trigger(e)}});g&&b.closeOnClick&&a.mask.getMask().one("click",
9
- c.close);b.closeOnClick&&a(document).bind("click."+n,function(l){a(l.target).parents(f).length||c.close(l)});b.closeOnEsc&&a(document).bind("keydown."+n,function(l){l.keyCode==27&&c.close(l)});return c},close:function(e){if(!c.isOpened())return c;e=e||a.Event();e.type="onBeforeClose";j.trigger(e);if(!e.isDefaultPrevented()){m=false;q[b.effect][1].call(c,function(){e.type="onClose";j.trigger(e)});a(document).unbind("click."+n).unbind("keydown."+n);g&&a.mask.close();return c}},getOverlay:function(){return f},
10
- getTrigger:function(){return d},getClosers:function(){return k},isOpened:function(){return m},getConf:function(){return b}});a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(e,h){a.isFunction(b[h])&&a(c).bind(h,b[h]);c[h]=function(i){i&&a(c).bind(h,i);return c}});k=f.find(b.close||".close");if(!k.length&&!b.close){k=a('<a class="close"></a>');f.prepend(k)}k.click(function(e){c.close(e)});b.load&&c.load()}a.tools=a.tools||{version:"1.2.5"};a.tools.overlay={addEffect:function(d,
11
- b,c){q[d]=[b,c]},conf:{close:null,closeOnClick:true,closeOnEsc:true,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:false,mask:null,oneInstance:true,speed:"normal",target:null,top:"10%"}};var s=[],q={};a.tools.overlay.addEffect("default",function(d,b){var c=this.getConf(),j=a(window);if(!c.fixed){d.top+=j.scrollTop();d.left+=j.scrollLeft()}d.position=c.fixed?"fixed":"absolute";this.getOverlay().css(d).fadeIn(c.speed,b)},function(d){this.getOverlay().fadeOut(this.getConf().closeSpeed,
12
- d)});a.fn.overlay=function(d){var b=this.data("overlay");if(b)return b;if(a.isFunction(d))d={onBeforeLoad:d};d=a.extend(true,{},a.tools.overlay.conf,d);this.each(function(){b=new t(a(this),d);s.push(b);a(this).data("overlay",b)});return d.api?b:this}})(jQuery);
13
- (function(b){function k(){if(b.browser.msie){var a=b(document).height(),d=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,a-d<20?d:a]}return[b(document).width(),b(document).height()]}function h(a){if(a)return a.call(b.mask)}b.tools=b.tools||{version:"1.2.5"};var l;l=b.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,startOpacity:0,color:"#fff",onLoad:null,
14
- onClose:null}};var c,i,e,g,j;b.mask={load:function(a,d){if(e)return this;if(typeof a=="string")a={color:a};a=a||g;g=a=b.extend(b.extend({},l.conf),a);c=b("#"+a.maskId);if(!c.length){c=b("<div/>").attr("id",a.maskId);b("body").append(c)}var m=k();c.css({position:"absolute",top:0,left:0,width:m[0],height:m[1],display:"none",opacity:a.startOpacity,zIndex:a.zIndex});a.color&&c.css("backgroundColor",a.color);if(h(a.onBeforeLoad)===false)return this;a.closeOnEsc&&b(document).bind("keydown.mask",function(f){f.keyCode==
15
- 27&&b.mask.close(f)});a.closeOnClick&&c.bind("click.mask",function(f){b.mask.close(f)});b(window).bind("resize.mask",function(){b.mask.fit()});if(d&&d.length){j=d.eq(0).css("zIndex");b.each(d,function(){var f=b(this);/relative|absolute|fixed/i.test(f.css("position"))||f.css("position","relative")});i=d.css({zIndex:Math.max(a.zIndex+1,j=="auto"?0:j)})}c.css({display:"block"}).fadeTo(a.loadSpeed,a.opacity,function(){b.mask.fit();h(a.onLoad);e="full"});e=true;return this},close:function(){if(e){if(h(g.onBeforeClose)===
16
- false)return this;c.fadeOut(g.closeSpeed,function(){h(g.onClose);i&&i.css({zIndex:j});e=false});b(document).unbind("keydown.mask");c.unbind("click.mask");b(window).unbind("resize.mask")}return this},fit:function(){if(e){var a=k();c.css({width:a[0],height:a[1]})}},getMask:function(){return c},isLoaded:function(a){return a?e=="full":e},getConf:function(){return g},getExposed:function(){return i}};b.fn.mask=function(a){b.mask.load(a);return this};b.fn.expose=function(a){b.mask.load(a,this);return this}})(jQuery);
1
+ jQuery(document).ready(function(e){function t(t,n){e(".lwa-loading").remove();n=e(n);if(t.result===true){n.attr("class","lwa-status lwa-status-confirm").html(t.message)}else if(t.result===false){n.attr("class","lwa-status lwa-status-invalid").html(t.error);n.find("a").click(function(t){t.preventDefault();e(this).parents(".lwa").find("form.lwa-remember").show("slow")})}else{n.attr("class","lwa-status lwa-status-invalid").html("An error has occured. Please try again.")}}if(e("#LoginWithAjax").length>0){e("#LoginWithAjax").addClass("lwa");e("#LoginWithAjax_Status").addClass("lwa-status");e("#LoginWithAjax_Register").addClass("lwa-register");e("#LoginWithAjax_Remember").addClass("lwa-remember");e("#LoginWithAjax_Links_Remember").addClass("lwa-links-remember");e("#LoginWithAjax_Links_Remember_Cancel").addClass("lwa-links-remember-cancel");e("#LoginWithAjax_Form").addClass("lwa-form")}e("form.lwa-form, form.lwa-remember, div.lwa-register form").submit(function(n){n.preventDefault();var r=e(this);var i=r.find(".lwa-status");if(i.length==0){i=e('<span class="lwa-status"></span>');r.prepend(i)}e('<div class="lwa-loading"></div>').prependTo(r);e.post(r.attr("action"),r.serialize(),function(n){t(n,i);e(document).trigger("lwa_"+n.action,[n,r])},"jsonp")});e(document).on("lwa_login",function(t,n,r){if(n.result===true){if(n.widget!=null){e.get(n.widget,function(t){var n=e(t);r.parent(".lwa").replaceWith(n);var i=n.find(".").show();var s=n.parent().find(".lwa-title");s.replaceWith(i)})}else{if(n.redirect==null){window.location.reload()}else{window.location=n.redirect}}}});e(".lwa-modal").each(function(t,n){var r=e(n);r.parents(".lwa").data("modal",r);e("body").append(e('<div class="lwa"></div>').append(r))});e(document).on("click",".lwa-links-modal",function(t){t.preventDefault();target=e(this).parents(".lwa").data("modal");target.reveal({modalbgclass:"lwa-modal-bg",dismissmodalclass:"lwa-modal-close"})});e(".lwa-links-register-inline").click(function(t){t.preventDefault();e(this).parents(".lwa").find(".lwa-register").show("slow")});e(".lwa-links-register-inline-cancel").click(function(t){t.preventDefault();e(this).parents(".lwa-register").hide("slow")});e(document).on("click",".lwa-links-remember",function(t){t.preventDefault();e(this).parents(".lwa").find(".lwa-remember").show("slow")});e(document).on("click",".lwa-links-remember-cancel",function(t){t.preventDefault();e(this).parents(".lwa-remember").hide("slow")})});
2
+ (function(e){e("a[data-reveal-id]").on("click",function(t){t.preventDefault();var n=e(this).attr("data-reveal-id");e("#"+n).reveal(e(this).data())});e.fn.reveal=function(t){var n={animation:"fadeAndPop",animationspeed:300,closeonbackgroundclick:true,dismissmodalclass:"close-reveal-modal",modalbgclass:"reveal-modal-bg"};var t=e.extend({},n,t);return this.each(function(){function a(){s=false}function f(){s=true}var n=e(this),r=parseInt(n.css("top")),i=n.height()+r,s=false,o=e("."+t.modalbgclass);if(o.length==0){o=e('<div class="'+t.modalbgclass+'" />').insertAfter(n)}if(n.find("."+t.dismissmodalclass).length==0){n.append('<a class="'+t.dismissmodalclass+'">&#215;</a>')}n.bind("reveal:open",function(){o.unbind("click.modalEvent");e("."+t.dismissmodalclass).unbind("click.modalEvent");if(!s){f();if(t.animation=="fadeAndPop"){n.css({top:e(document).scrollTop()-i,opacity:0,visibility:"visible",display:"block"});o.fadeIn(t.animationspeed/2);n.delay(t.animationspeed/2).animate({top:e(document).scrollTop()+r+"px",opacity:1},t.animationspeed,a())}if(t.animation=="fade"){n.css({opacity:0,visibility:"visible",top:e(document).scrollTop()+r,display:"block"});o.fadeIn(t.animationspeed/2);n.delay(t.animationspeed/2).animate({opacity:1},t.animationspeed,a())}if(t.animation=="none"){n.css({visibility:"visible",top:e(document).scrollTop()+r,display:"block"});o.css({display:"block"});a()}}n.unbind("reveal:open")});n.bind("reveal:close",function(){if(!s){f();if(t.animation=="fadeAndPop"){o.delay(t.animationspeed).fadeOut(t.animationspeed);n.animate({top:e(document).scrollTop()-i+"px",opacity:0},t.animationspeed/2,function(){n.css({top:r,opacity:1,visibility:"hidden"});a()})}if(t.animation=="fade"){o.delay(t.animationspeed).fadeOut(t.animationspeed);n.animate({opacity:0},t.animationspeed,function(){n.css({opacity:1,visibility:"hidden",top:r});a()})}if(t.animation=="none"){n.css({visibility:"hidden",top:r});o.css({display:"none"})}}n.unbind("reveal:close")});n.trigger("reveal:open");var u=e("."+t.dismissmodalclass).bind("click.modalEvent",function(){n.trigger("reveal:close")});if(t.closeonbackgroundclick){o.css({cursor:"pointer"});o.bind("click.modalEvent",function(){n.trigger("reveal:close")})}e("body").keyup(function(e){if(e.which===27){n.trigger("reveal:close")}})})}})(jQuery)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
widget/login-with-ajax.source.js CHANGED
@@ -1,141 +1,118 @@
1
  /* Customize from here downwards */
2
  jQuery(document).ready( function($) {
3
- //Oh well... I guess we have to use jQuery ... if you are a javascript developer, consider MooTools if you have a choice, it's great!
4
- $('#LoginWithAjax_Form').submit(function(event){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  //Stop event, add loading pic...
6
- event.preventDefault();
7
- $('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax');
8
- //Sort out url
9
- var url = $('#LoginWithAjax_Form').attr('action');
10
- //Get POST data
11
- var postData = getPostData('#LoginWithAjax_Form *[name]');
12
- postData['login-with-ajax'] = 'login'; //So that there is a JS fallback mechanism
 
13
  //Make Ajax Call
14
- $.post(url, postData, function(data){
15
- lwaAjax( data, 'LoginWithAjax_Status', '#login-with-ajax' );
16
- if(data.result === true){
17
- //Login Successful - Extra stuff to do
18
- if( data.widget != null ){
19
- $.get( data.widget, function(widget_result) {
20
- $('#LoginWithAjax').replaceWith(widget_result);
21
- $('#LoginWithAjax_Title').replaceWith($('#LoginWithAjax_Title_Substitute').text());
22
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  }else{
24
- if(data.redirect == null){
25
- window.location.reload();
26
- }else{
27
- window.location = data.redirect;
28
- }
29
  }
30
  }
31
- }, "json");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  });
33
-
34
- $('#LoginWithAjax_Remember').submit(function(event){
35
- //Stop event, add loading pic...
36
- event.preventDefault();
37
- $('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax');
38
- //Sort out url
39
- var url = $('#LoginWithAjax_Remember').attr('action');
40
- //Get POST data
41
- var postData = getPostData('#LoginWithAjax_Remember *[name]');
42
- //Make Ajax Call
43
- $.post(url, postData, function(data){
44
- lwaAjax( data, 'LoginWithAjax_Status', '#login-with-ajax' );
45
- }, "json");
46
- });
47
-
48
- $('#LoginWithAjax_Register form').submit(function(event){
49
- //Stop event, add loading pic...
50
  event.preventDefault();
51
- $('<div class="LoginWithAjax_Loading" id="LoginWithAjax_Loading"></div>').prependTo('#LoginWithAjax_Register');
52
- //Sort out url
53
- var url = $('#LoginWithAjax_Register form').attr('action');
54
- //Get POST data
55
- var postData = getPostData('#LoginWithAjax_Register form *[name]');
56
- $.post(url, postData, function(data){
57
- //variable status not here anymore
58
- lwaAjax( data, 'LoginWithAjax_Register_Status', '#LoginWithAjax_Register' );
59
- }, "json");
60
- /*$.ajax({
61
- type: 'POST',
62
- url: url,
63
- data: postData,
64
- success: function(data){
65
- //variable status not here anymore
66
- lwaAjax( data, 'LoginWithAjax_Register_Status', '#LoginWithAjax_Register' );
67
- },
68
- dataType: "json"
69
- });*/
70
- });
71
 
72
  //Visual Effects for hidden items
73
  //Remember
74
- $('#LoginWithAjax_Remember').hide();
75
- $('#LoginWithAjax_Links_Remember').click(function(event){
76
  event.preventDefault();
77
- $('#LoginWithAjax_Remember').show('slow');
78
  });
79
- $('#LoginWithAjax_Links_Remember_Cancel').click(function(event){
80
  event.preventDefault();
81
- $('#LoginWithAjax_Remember').hide('slow');
82
  });
83
 
84
  //Handle a AJAX call for Login, RememberMe or Registration
85
- function lwaAjax( data, statusElement, prependTo ){
86
- $('#LoginWithAjax_Loading').remove();
87
- if( data.result === true || data.result === false ){
88
- if(data.result === true){
89
- //Login Successful
90
- if( $('#'+statusElement).length > 0 ){
91
- $('#'+statusElement).attr('class','confirm').html(data.message);
92
- }else{
93
- $('<span id="'+statusElement+'" class="confirm">'+data.message+'</span>').prependTo( prependTo );
94
- }
95
- }else{
96
- //Login Failed
97
- //If there already is an error element, replace text contents, otherwise create a new one and insert it
98
- if( $('#'+statusElement).length > 0 ){
99
- $('#'+statusElement).attr('class','invalid').html(data.error);
100
- }else{
101
- $('<span id="'+statusElement+'" class="invalid">'+data.error+'</span>').prependTo( prependTo );
102
- }
103
- //We assume a link in the status message is for a forgotten password
104
- $('#'+statusElement).click(function(event){
105
- event.preventDefault();
106
- $('#LoginWithAjax_Remember').show('slow');
107
- });
108
- }
109
  }else{
110
  //If there already is an error element, replace text contents, otherwise create a new one and insert it
111
- if( $('#'+statusElement).length > 0 ){
112
- $('#'+statusElement).attr('class','invalid').html('An error has occured. Please try again.');
113
- }else{
114
- $('<span id="'+statusElement+'" class="invalid">An error has occured. Please try again.</span>').prependTo( prependTo );
115
- }
116
  }
117
  }
118
-
119
- //Get all POSTable data from form.
120
- function getPostData(selector){
121
- var postData = {};
122
- $.each($(selector), function(index,el){
123
- el = $(el);
124
- postData[el.attr('name')] = el.attr('value');
125
- });
126
- return postData
127
- }
128
  });
129
 
130
  /* Do not edit after here*/
131
- /* jQuery Tools 1.2.5 Overlay & Expose */
132
- (function(a){function t(d,b){var c=this,j=d.add(c),o=a(window),k,f,m,g=a.tools.expose&&(b.mask||b.expose),n=Math.random().toString().slice(10);if(g){if(typeof g=="string")g={color:g};g.closeOnClick=g.closeOnEsc=false}var p=b.target||d.attr("rel");f=p?a(p):d;if(!f.length)throw"Could not find Overlay: "+p;d&&d.index(f)==-1&&d.click(function(e){c.load(e);return e.preventDefault()});a.extend(c,{load:function(e){if(c.isOpened())return c;var h=q[b.effect];if(!h)throw'Overlay: cannot find effect : "'+b.effect+
133
- '"';b.oneInstance&&a.each(s,function(){this.close(e)});e=e||a.Event();e.type="onBeforeLoad";j.trigger(e);if(e.isDefaultPrevented())return c;m=true;g&&a(f).expose(g);var i=b.top,r=b.left,u=f.outerWidth({margin:true}),v=f.outerHeight({margin:true});if(typeof i=="string")i=i=="center"?Math.max((o.height()-v)/2,0):parseInt(i,10)/100*o.height();if(r=="center")r=Math.max((o.width()-u)/2,0);h[0].call(c,{top:i,left:r},function(){if(m){e.type="onLoad";j.trigger(e)}});g&&b.closeOnClick&&a.mask.getMask().one("click",
134
- c.close);b.closeOnClick&&a(document).bind("click."+n,function(l){a(l.target).parents(f).length||c.close(l)});b.closeOnEsc&&a(document).bind("keydown."+n,function(l){l.keyCode==27&&c.close(l)});return c},close:function(e){if(!c.isOpened())return c;e=e||a.Event();e.type="onBeforeClose";j.trigger(e);if(!e.isDefaultPrevented()){m=false;q[b.effect][1].call(c,function(){e.type="onClose";j.trigger(e)});a(document).unbind("click."+n).unbind("keydown."+n);g&&a.mask.close();return c}},getOverlay:function(){return f},
135
- getTrigger:function(){return d},getClosers:function(){return k},isOpened:function(){return m},getConf:function(){return b}});a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(e,h){a.isFunction(b[h])&&a(c).bind(h,b[h]);c[h]=function(i){i&&a(c).bind(h,i);return c}});k=f.find(b.close||".close");if(!k.length&&!b.close){k=a('<a class="close"></a>');f.prepend(k)}k.click(function(e){c.close(e)});b.load&&c.load()}a.tools=a.tools||{version:"1.2.5"};a.tools.overlay={addEffect:function(d,
136
- b,c){q[d]=[b,c]},conf:{close:null,closeOnClick:true,closeOnEsc:true,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:false,mask:null,oneInstance:true,speed:"normal",target:null,top:"10%"}};var s=[],q={};a.tools.overlay.addEffect("default",function(d,b){var c=this.getConf(),j=a(window);if(!c.fixed){d.top+=j.scrollTop();d.left+=j.scrollLeft()}d.position=c.fixed?"fixed":"absolute";this.getOverlay().css(d).fadeIn(c.speed,b)},function(d){this.getOverlay().fadeOut(this.getConf().closeSpeed,
137
- d)});a.fn.overlay=function(d){var b=this.data("overlay");if(b)return b;if(a.isFunction(d))d={onBeforeLoad:d};d=a.extend(true,{},a.tools.overlay.conf,d);this.each(function(){b=new t(a(this),d);s.push(b);a(this).data("overlay",b)});return d.api?b:this}})(jQuery);
138
- (function(b){function k(){if(b.browser.msie){var a=b(document).height(),d=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,a-d<20?d:a]}return[b(document).width(),b(document).height()]}function h(a){if(a)return a.call(b.mask)}b.tools=b.tools||{version:"1.2.5"};var l;l=b.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,startOpacity:0,color:"#fff",onLoad:null,
139
- onClose:null}};var c,i,e,g,j;b.mask={load:function(a,d){if(e)return this;if(typeof a=="string")a={color:a};a=a||g;g=a=b.extend(b.extend({},l.conf),a);c=b("#"+a.maskId);if(!c.length){c=b("<div/>").attr("id",a.maskId);b("body").append(c)}var m=k();c.css({position:"absolute",top:0,left:0,width:m[0],height:m[1],display:"none",opacity:a.startOpacity,zIndex:a.zIndex});a.color&&c.css("backgroundColor",a.color);if(h(a.onBeforeLoad)===false)return this;a.closeOnEsc&&b(document).bind("keydown.mask",function(f){f.keyCode==
140
- 27&&b.mask.close(f)});a.closeOnClick&&c.bind("click.mask",function(f){b.mask.close(f)});b(window).bind("resize.mask",function(){b.mask.fit()});if(d&&d.length){j=d.eq(0).css("zIndex");b.each(d,function(){var f=b(this);/relative|absolute|fixed/i.test(f.css("position"))||f.css("position","relative")});i=d.css({zIndex:Math.max(a.zIndex+1,j=="auto"?0:j)})}c.css({display:"block"}).fadeTo(a.loadSpeed,a.opacity,function(){b.mask.fit();h(a.onLoad);e="full"});e=true;return this},close:function(){if(e){if(h(g.onBeforeClose)===
141
- false)return this;c.fadeOut(g.closeSpeed,function(){h(g.onClose);i&&i.css({zIndex:j});e=false});b(document).unbind("keydown.mask");c.unbind("click.mask");b(window).unbind("resize.mask")}return this},fit:function(){if(e){var a=k();c.css({width:a[0],height:a[1]})}},getMask:function(){return c},isLoaded:function(a){return a?e=="full":e},getConf:function(){return g},getExposed:function(){return i}};b.fn.mask=function(a){b.mask.load(a);return this};b.fn.expose=function(a){b.mask.load(a,this);return this}})(jQuery);
1
  /* Customize from here downwards */
2
  jQuery(document).ready( function($) {
3
+ //TODO some backwards compatability here -
4
+ if( $('#LoginWithAjax').length > 0 ){
5
+ $('#LoginWithAjax').addClass('lwa');
6
+ $('#LoginWithAjax_Status').addClass('lwa-status');
7
+ $('#LoginWithAjax_Register').addClass('lwa-register');
8
+ $('#LoginWithAjax_Remember').addClass('lwa-remember');
9
+ $('#LoginWithAjax_Links_Remember').addClass('lwa-links-remember');
10
+ $('#LoginWithAjax_Links_Remember_Cancel').addClass('lwa-links-remember-cancel');
11
+ $('#LoginWithAjax_Form').addClass('lwa-form');
12
+ }
13
+ /*
14
+ * links
15
+ * add action input htmls
16
+ */
17
+ //Remember and register form AJAX
18
+ $('form.lwa-form, form.lwa-remember, div.lwa-register form').submit(function(event){
19
  //Stop event, add loading pic...
20
+ event.preventDefault();
21
+ var form = $(this);
22
+ var statusElement = form.find('.lwa-status');
23
+ if( statusElement.length == 0 ){
24
+ statusElement = $('<span class="lwa-status"></span>');
25
+ form.prepend(statusElement);
26
+ }
27
+ $('<div class="lwa-loading"></div>').prependTo(form);
28
  //Make Ajax Call
29
+ $.post(form.attr('action'), form.serialize(), function(data){
30
+ lwaAjax( data, statusElement );
31
+ $(document).trigger('lwa_' + data.action, [data, form]);
32
+ }, "jsonp");
33
+ //trigger event
34
+ });
35
+
36
+ //Catch login actions
37
+ $(document).on('lwa_login', function(event, data, form){
38
+ if(data.result === true){
39
+ //Login Successful - Extra stuff to do
40
+ if( data.widget != null ){
41
+ $.get( data.widget, function(widget_result) {
42
+ var newWidget = $(widget_result);
43
+ form.parent('.lwa').replaceWith(newWidget);
44
+ var lwaSub = newWidget.find('.').show();
45
+ var lwaOrg = newWidget.parent().find('.lwa-title');
46
+ lwaOrg.replaceWith(lwaSub);
47
+ });
48
+ }else{
49
+ if(data.redirect == null){
50
+ window.location.reload();
51
  }else{
52
+ window.location = data.redirect;
 
 
 
 
53
  }
54
  }
55
+ }
56
+ });
57
+
58
+ //Registration overlay
59
+ $('.lwa-modal').each( function(i,e){
60
+ var modal = $(e);
61
+ modal.parents('.lwa').data('modal', modal);
62
+ $('body').append($('<div class="lwa"></div>').append(modal));
63
+ });
64
+ $(document).on('click', ".lwa-links-modal", function(e){
65
+ e.preventDefault();
66
+ target = $(this).parents('.lwa').data('modal');
67
+ target.reveal({
68
+ modalbgclass: 'lwa-modal-bg',
69
+ dismissmodalclass: 'lwa-modal-close' //the class of a button or element that will close an open modal
70
+ });
71
  });
72
+ //Register
73
+ $('.lwa-links-register-inline').click(function(event){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  event.preventDefault();
75
+ $(this).parents('.lwa').find('.lwa-register').show('slow');
76
+ });
77
+ $('.lwa-links-register-inline-cancel').click(function(event){
78
+ event.preventDefault();
79
+ $(this).parents('.lwa-register').hide('slow');
80
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
 
82
  //Visual Effects for hidden items
83
  //Remember
84
+ $(document).on('click', '.lwa-links-remember', function(event){
 
85
  event.preventDefault();
86
+ $(this).parents('.lwa').find('.lwa-remember').show('slow');
87
  });
88
+ $(document).on('click', '.lwa-links-remember-cancel', function(event){
89
  event.preventDefault();
90
+ $(this).parents('.lwa-remember').hide('slow');
91
  });
92
 
93
  //Handle a AJAX call for Login, RememberMe or Registration
94
+ function lwaAjax( data, statusElement ){
95
+ $('.lwa-loading').remove();
96
+ statusElement = $(statusElement);
97
+ if(data.result === true){
98
+ //Login Successful
99
+ statusElement.attr('class','lwa-status lwa-status-confirm').html(data.message); //modify status content
100
+ }else if( data.result === false ){
101
+ //Login Failed
102
+ statusElement.attr('class','lwa-status lwa-status-invalid').html(data.error); //modify status content
103
+ //We assume a link in the status message is for a forgotten password
104
+ statusElement.find('a').click(function(event){
105
+ event.preventDefault();
106
+ $(this).parents('.lwa').find('form.lwa-remember').show('slow');
107
+ });
 
 
 
 
 
 
 
 
 
 
108
  }else{
109
  //If there already is an error element, replace text contents, otherwise create a new one and insert it
110
+ statusElement.attr('class','lwa-status lwa-status-invalid').html('An error has occured. Please try again.'); //modify status content
 
 
 
 
111
  }
112
  }
113
+
 
 
 
 
 
 
 
 
 
114
  });
115
 
116
  /* Do not edit after here*/
117
+ /* http://zurb.com/playground/reveal-modal-plugin */
118
+ (function(e){e("a[data-reveal-id]").on("click",function(t){t.preventDefault();var n=e(this).attr("data-reveal-id");e("#"+n).reveal(e(this).data())});e.fn.reveal=function(t){var n={animation:"fadeAndPop",animationspeed:300,closeonbackgroundclick:true,dismissmodalclass:"close-reveal-modal",modalbgclass:"reveal-modal-bg"};var t=e.extend({},n,t);return this.each(function(){function a(){s=false}function f(){s=true}var n=e(this),r=parseInt(n.css("top")),i=n.height()+r,s=false,o=e("."+t.modalbgclass);if(o.length==0){o=e('<div class="'+t.modalbgclass+'" />').insertAfter(n)}if(n.find("."+t.dismissmodalclass).length==0){n.append('<a class="'+t.dismissmodalclass+'">&#215;</a>')}n.bind("reveal:open",function(){o.unbind("click.modalEvent");e("."+t.dismissmodalclass).unbind("click.modalEvent");if(!s){f();if(t.animation=="fadeAndPop"){n.css({top:e(document).scrollTop()-i,opacity:0,visibility:"visible",display:"block"});o.fadeIn(t.animationspeed/2);n.delay(t.animationspeed/2).animate({top:e(document).scrollTop()+r+"px",opacity:1},t.animationspeed,a())}if(t.animation=="fade"){n.css({opacity:0,visibility:"visible",top:e(document).scrollTop()+r,display:"block"});o.fadeIn(t.animationspeed/2);n.delay(t.animationspeed/2).animate({opacity:1},t.animationspeed,a())}if(t.animation=="none"){n.css({visibility:"visible",top:e(document).scrollTop()+r,display:"block"});o.css({display:"block"});a()}}n.unbind("reveal:open")});n.bind("reveal:close",function(){if(!s){f();if(t.animation=="fadeAndPop"){o.delay(t.animationspeed).fadeOut(t.animationspeed);n.animate({top:e(document).scrollTop()-i+"px",opacity:0},t.animationspeed/2,function(){n.css({top:r,opacity:1,visibility:"hidden"});a()})}if(t.animation=="fade"){o.delay(t.animationspeed).fadeOut(t.animationspeed);n.animate({opacity:0},t.animationspeed,function(){n.css({opacity:1,visibility:"hidden",top:r});a()})}if(t.animation=="none"){n.css({visibility:"hidden",top:r});o.css({display:"none"})}}n.unbind("reveal:close")});n.trigger("reveal:open");var u=e("."+t.dismissmodalclass).bind("click.modalEvent",function(){n.trigger("reveal:close")});if(t.closeonbackgroundclick){o.css({cursor:"pointer"});o.bind("click.modalEvent",function(){n.trigger("reveal:close")})}e("body").keyup(function(e){if(e.which===27){n.trigger("reveal:close")}})})}})(jQuery)
 
 
 
 
 
 
 
 
 
widget/modal/widget_out.php ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * This is the page users will see logged out.
4
+ * You can edit this, but for upgrade safety you should copy and modify this file into your template folder.
5
+ * The location from within your template folder is plugins/login-with-ajax/ (create these directories if they don't exist)
6
+ */
7
+ ?>
8
+ <div class="lwa lwa-template-modal"><?php //class must be here, and if this is a template, class name should be that of template directory ?>
9
+ <a href="<?php echo esc_attr(LoginWithAjax::$url_login); ?>" class="lwa-links-modal"><?php esc_html_e('Log In','login-with-ajax') ?></a>
10
+ <?php
11
+ //FOOTER - once the page loads, this will be moved automatically to the bottom of the document.
12
+ ?>
13
+ <div class="lwa-modal" style="display:none;">
14
+ <form name="lwa-form" class="lwa-form" action="<?php echo esc_attr(LoginWithAjax::$url_login); ?>" method="post">
15
+ <span class="lwa-status"></span>
16
+ <table>
17
+ <tr class="lwa-username">
18
+ <td class="username_label">
19
+ <label><?php esc_html_e( 'Username','login-with-ajax' ) ?></label>
20
+ </td>
21
+ <td class="username_input">
22
+ <input type="text" name="log" id="lwa_user_login" class="input" />
23
+ </td>
24
+ </tr>
25
+ <tr class="lwa-password">
26
+ <td class="password_label">
27
+ <label><?php esc_html_e( 'Password','login-with-ajax' ) ?></label>
28
+ </td>
29
+ <td class="password_input">
30
+ <input type="password" name="pwd" id="lwa_user_pass" class="input" value="" />
31
+ </td>
32
+ </tr>
33
+ <tr class="lwa-submit">
34
+ <td class="lwa-submit-button">
35
+ <input type="submit" name="wp-submit" class="lwa-wp-submit" value="<?php esc_attr_e('Log In','login-with-ajax'); ?>" tabindex="100" />
36
+ <input type="hidden" name="lwa_profile_link" value="<?php echo !empty($lwa_data['profile_link']) ? 1:0 ?>" />
37
+ <input type="hidden" name="login-with-ajax" value="login" />
38
+ </td>
39
+ <td class="lwa-links">
40
+ <input name="rememberme" type="checkbox" id="lwa_rememberme" value="forever" /> <label><?php esc_html_e( 'Remember Me','login-with-ajax' ) ?></label>
41
+ <br />
42
+ <a class="lwa-links-remember" href="<?php echo site_url('wp-login.php?action=lostpassword', 'login') ?>" title="<?php esc_attr_e('Password Lost and Found','login-with-ajax') ?>"><?php esc_html_e('Lost your password?','login-with-ajax') ?></a>
43
+ <?php
44
+ //Signup Links
45
+ if ( get_option('users_can_register') && !empty($lwa_data['registration']) ) {
46
+ ?>
47
+ <br />
48
+ <a href="<?php echo esc_attr(LoginWithAjax::getRegisterLink()); ?>" class="lwa-links-register-inline"><?php esc_html_e('Register','login-with-ajax') ?></a>
49
+ <?php
50
+ }
51
+ ?>
52
+ </td>
53
+ </tr>
54
+ </table>
55
+ </form>
56
+ <form name="lwa-remember" class="lwa-remember" action="<?php echo esc_attr(LoginWithAjax::$url_remember); ?>" method="post" style="display:none;">
57
+ <span class="lwa-status"></span>
58
+ <table>
59
+ <tr>
60
+ <td>
61
+ <strong><?php esc_html_e("Forgotten Password", 'login-with-ajax'); ?></strong>
62
+ </td>
63
+ </tr>
64
+ <tr class="lwa-remember-email">
65
+ <td>
66
+ <?php $msg = __("Enter username or email", 'login-with-ajax'); ?>
67
+ <input type="text" name="user_login" id="lwa_user_remember" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}" />
68
+ </td>
69
+ </tr>
70
+ <tr>
71
+ <td>
72
+ <input type="submit" value="<?php esc_attr_e("Get New Password", 'login-with-ajax'); ?>" />
73
+ <a href="#" class="lwa-links-remember-cancel"><?php esc_html_e("Cancel",'login-with-ajax'); ?></a>
74
+ <input type="hidden" name="login-with-ajax" value="remember" />
75
+ </td>
76
+ </tr>
77
+ </table>
78
+ </form>
79
+ <?php if ( get_option('users_can_register') && !empty($lwa_data['registration']) ) : //Taken from wp-login.php ?>
80
+ <div class="lwa-register" style="display:none;">
81
+ <form name="lwa-register" action="<?php echo esc_attr(LoginWithAjax::$url_register); ?>" method="post">
82
+ <span class="lwa-status"></span>
83
+ <table>
84
+ <tr>
85
+ <td>
86
+ <strong><?php esc_html_e('Register For This Site','login-with-ajax') ?></strong>
87
+ </td>
88
+ </tr>
89
+ <tr class="lwa-username">
90
+ <td>
91
+ <?php $msg = __('Username','login-with-ajax') ?>
92
+ <input type="text" name="user_login" id="user_login" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}" /></label>
93
+ </td>
94
+ </tr>
95
+ <tr class="lwa-email">
96
+ <td>
97
+ <?php $msg = __('E-mail','login-with-ajax') ?>
98
+ <input type="text" name="user_email" id="user_email" value="<?php echo esc_attr($msg); ?>" onfocus="if(this.value == '<?php echo esc_attr($msg); ?>'){this.value = '';}" onblur="if(this.value == ''){this.value = '<?php echo esc_attr($msg); ?>'}"/></label>
99
+ </td>
100
+ </tr>
101
+ <tr>
102
+ <td>
103
+ <?php
104
+ //If you want other plugins to play nice, you need this:
105
+ do_action('register_form');
106
+ ?>
107
+ </td>
108
+ </tr>
109
+ <tr>
110
+ <td>
111
+ <?php esc_html_e('A password will be e-mailed to you.') ?><br />
112
+ <input type="submit" value="<?php esc_attr_e('Register','login-with-ajax'); ?>" tabindex="100" />
113
+ <a href="#" class="lwa-links-register-inline-cancel"><?php esc_html_e("Cancel",'login-with-ajax'); ?></a>
114
+ <input type="hidden" name="login-with-ajax" value="register" />
115
+ </td>
116
+ </tr>
117
+ </table>
118
+ </form>
119
+ </div>
120
+ <?php endif; ?>
121
+ </div>
122
+ </div>
widget/widget.css CHANGED
@@ -1,54 +1,52 @@
1
  @charset "utf-8";
2
- #LoginWithAjax { margin-bottom:10px; position:relative; font-size:1em; }
3
- #LoginWithAjax td { padding-top:7px; vertical-align:top; background-color:none; }
 
 
 
 
4
 
5
  /*Logged out CSS*/
6
- #LoginWithAjax .password_label, #LoginWithAjax .username_label { padding-right:10px; vertical-align:middle; }
7
- #LoginWithAjax_Password input, #LoginWithAjax_Username input { width:97%; }
8
 
9
- #LoginWithAjax_Loading { position:absolute; width:100%; height:100%; background:#FFFFFF url(loading.gif) 50% 50% no-repeat; left:0px; top:0px; opacity:0.8; filter:alpha(opacity=80)}
10
 
11
- #LoginWithAjax_Status.invalid, #LoginWithAjax_Status.confirm { text-align:left; display:block; padding:3px; margin-bottom:8px; }
12
- #LoginWithAjax_Status.invalid { color:#990000; background:#F0D9D9; border:1px solid #E0B4B4; }
13
- #LoginWithAjax_Status.confirm { color:#009900; background:#D8FFB0; border:1px solid #AAFF71; }
 
14
 
15
  /*Logged In CSS*/
16
- #LoginWithAjax_Avatar { width:60px; padding-right:10px; }
17
 
18
  /*Forgotten password*/
19
- #LoginWithAjax_Remember { margin-top:10px; display:none; }
20
- #LoginWithAjax_Remember p { padding: 0px 0px 3px 0px }
21
- #LoginWithAjax_Remember .forgot-pass-email input { width:97%; padding:2px; color:#666; }
22
 
23
  /*Registration*/
24
- #LoginWithAjax #LoginWithAjax_Register { margin-top:10px; display:none; }
25
- #LoginWithAjax_Register_Status.invalid, #LoginWithAjax_Register_Status.confirm { text-align:left; display:block; padding:3px; margin-bottom:8px; }
26
- #LoginWithAjax_Register_Status.invalid { color:#990000; background:#F0D9D9; border:1px solid #E0B4B4; }
27
- #LoginWithAjax_Register_Status.confirm { color:#009900; background:#D8FFB0; border:1px solid #AAFF71; }
28
- #LoginWithAjax_Register input[type=text] { width:97%; padding:2px; color:#666; }
29
-
30
- /*Default Template*/
31
- #LoginWithAjax_Register.default { background-color:#fff; color:#333; display:none; width:350px; padding:15px; text-align:left; border:2px solid #333; opacity:0.8; -moz-border-radius:6px; -webkit-border-radius:6px; -moz-box-shadow: 0 0 50px #ccc; -webkit-box-shadow: 0 0 50px #ccc; }
32
- #LoginWithAjax_Register.default h4 { font-size:16px; margin:0px; padding:0px; }
33
- #LoginWithAjax_Register form { overflow:auto; height:400px; }
34
- #LoginWithAjax_Register.default .close { background:url(close.png) 0px 0px no-repeat !important; position:absolute; right:-15px; top:-15px; cursor:pointer; height:35px; width:35px; border:none; padding:0px; margin:0px; }
35
- #LoginWithAjax_Register.default #wp-submit { display:block; clear:both; }
36
-
37
- /*ie7-friendly*/
38
- #LoginWithAjax.ie7-friendly div { padding-top:7px; vertical-align:top; background-color:none; }
39
- #LoginWithAjax.ie7-friendly #LoginWithAjax_Register { margin-top:5px; display:none; }
40
- #LoginWithAjax.ie7-friendly #LoginWithAjax_Register p { padding: 0px 0px 3px 0px }
41
-
42
- /*inline-registration*/
43
- #LoginWithAjax.inline-registration #LoginWithAjax_Register { margin-top:5px; display:none; }
44
- #LoginWithAjax.inline-registration #LoginWithAjax_Register p { padding: 0px 0px 3px 0px }
45
 
46
  /*OpenID specific*/
47
- #LoginWithAjax_Register hr { display:block; }
48
- #LoginWithAjax_Register #openid_identifier { width:auto; }
 
 
 
 
 
 
 
 
 
 
 
 
 
49
 
50
  /*Modal Template*/
51
- #LoginWithAjax_Modal { background-color:#fff; color:#333; width:350px; padding:15px; text-align:left; border:2px solid #333; opacity:0.8; -moz-border-radius:6px; -webkit-border-radius:6px; -moz-box-shadow: 0 0 50px #ccc; -webkit-box-shadow: 0 0 50px #ccc; }
52
- #LoginWithAjax_Modal h4 { font-size:16px; margin:0px; padding:0px; }
53
- #LoginWithAjax_Modal .close { background:url(default/close.png) 0px 0px no-repeat !important; position:absolute; right:-15px; top:-15px; cursor:pointer; height:35px; width:35px; border:none; padding:0px; margin:0px; }
54
- #LoginWithAjax_Modal #wp-submit { display:block; clear:both; }
 
 
1
  @charset "utf-8";
2
+ #branding { z-index:9996; } /* a little naughty, twentyeleven fix */
3
+ .lwa { margin-bottom:10px; }
4
+ form.lwa-form, form.lwa-remember, div.lwa-register form { position:relative; }
5
+ .lwa table { width:100% !important; margin:0px !important; border-spacing:0; border-collapse:collapse; }
6
+ .lwa td,.lwa th { padding:0; border-spacing:0; }
7
+ .lwa td { padding-top:7px; vertical-align:top; background-color:none; }
8
 
9
  /*Logged out CSS*/
10
+ .lwa .lwa-username-label, .lwa .lwa-password-label { padding-right:10px; vertical-align:middle; }
11
+ .lwa-password input, .lwa-username input, .lwa-email input, .lwa-remember-email input { margin:0px; width:96%; padding-left:2%; padding-right:2%; }
12
 
13
+ .lwa-loading { position:absolute; width:100%; height:100%; background:#FFFFFF url(loading.gif) 50% 50% no-repeat; left:0px; top:0px; opacity:0.8; filter:alpha(opacity=80)}
14
 
15
+ .lwa-status { margin:0px 0px 5px; padding:10px 10px; color:#333; border-radius:3px; display:none; }
16
+ .lwa-status-invalid, .lwa-status-confirm { display:block !important; }
17
+ .lwa-status-invalid { background-color:#FFEBE8; border:1px solid #C00; }
18
+ .lwa-status-confirm { background-color:#f1fff0; border:1px solid #a8d144; }
19
 
20
  /*Logged In CSS*/
21
+ .lwa-avatar { width:60px; padding-right:10px; }
22
 
23
  /*Forgotten password*/
24
+ .lwa-remember { margin-top:10px; display:none; }
 
 
25
 
26
  /*Registration*/
27
+ .lwa .lwa-register { margin-top:10px; display:none; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
 
29
  /*OpenID specific*/
30
+ .lwa-register hr { display:block; }
31
+ .lwa-register #openid_identifier { width:auto; }
32
+
33
+ /* Modals CSS */
34
+ .lwa-modal-bg { position: fixed; height: 100%; width: 100%; background: #000; background: rgba(0,0,0,.8); z-index: 100; display: none; top: 0; left: 0; }
35
+ .lwa-modal { visibility: hidden; top: 100px; left: 50%; margin-left: -240px; width: 400px; background: #fefefe; position: absolute; z-index: 101; padding: 30px 40px 34px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; -moz-box-shadow: 0 0 10px rgba(0,0,0,.4); -webkit-box-shadow: 0 0 10px rgba(0,0,0,.4); -box-shadow: 0 0 10px rgba(0,0,0,.4); }
36
+ .lwa-modal h4, .lwa-modal p { margin-bottom:10px; }
37
+ .lwa-modal .lwa-modal-close { font-size: 30px; line-height: .5; position: absolute; top: 8px; right: 11px; color: #aaa; text-shadow: 0 -1px 1px rbga(0,0,0,.6); font-weight: bold; cursor: pointer; }
38
+
39
+ /* divs-only */
40
+ .lwa-divs-only p { margin:8px 0px 5px !important; }
41
+ .lwa-divs-only input[type="text"] { margin:5px 0px 10px; }
42
+ .lwa-divs-only .lwa-submit-button, .lwa-divs-only .lwa-links { margin-top:5px; }
43
+ .lwa-divs-only .lwa-form .lwa-submit-button { float:right; }
44
+ .lwa-divs-only .lwa-remember, .lwa-divs-only .lwa-register { clear:both; }
45
 
46
  /*Modal Template*/
47
+ /*
48
+ .lwa-template--modal .lwa-modal-box { background-color:#fff; color:#333; width:350px; padding:15px; text-align:left; border:2px solid #333; opacity:0.8; -moz-border-radius:6px; -webkit-border-radius:6px; -moz-box-shadow: 0 0 50px #ccc; -webkit-box-shadow: 0 0 50px #ccc; }
49
+ .lwa-template--modal .lwa-modal-box h4 { font-size:16px; margin:0px; padding:0px; }
50
+ .lwa-template--modal .lwa-modal-box .close { background:url(modal/close.png) 0px 0px no-repeat !important; position:absolute; right:-15px; top:-15px; cursor:pointer; height:35px; width:35px; border:none; padding:0px; margin:0px; }
51
+ .lwa-template--modal .lwa-modal-box #wp-submit { display:block; clear:both; }
52
+ */