Social Login - Version 4.6

Version Description

  • Asynchronous JavaScript
  • Social Network "Instagram" added
  • Social Network "Vimeo" added
  • Social Network "Reddit" added
  • Social Network "Amazon" added
  • French Translation Added
  • Missing text domains added
  • BuddyPress Avatars fixed
  • Better WPEngine compatibility
  • Email filter fixed
Download this release

Release Info

Developer ClaudeSchlesser
Plugin Icon 128x128 Social Login
Version 4.6
Comparing to
See all releases

Code changes from version 4.4 to 4.6

assets/css/admin.css CHANGED
@@ -155,7 +155,7 @@
155
  display: inline-block;
156
  }
157
 
158
- .oa_social_login_provider_aol {
159
  background-position: -2px -1px;
160
  }
161
 
@@ -175,7 +175,7 @@
175
  background-position: -150px -1px;
176
  }
177
 
178
- .oa_social_login_provider_hyves {
179
  background-position: -187px -1px;
180
  }
181
 
@@ -257,4 +257,11 @@
257
 
258
  .oa_social_login_provider_twitch {
259
  background-position: -1112px -1px;
 
 
 
 
 
 
 
260
  }
155
  display: inline-block;
156
  }
157
 
158
+ .oa_social_login_provider_vimeo {
159
  background-position: -2px -1px;
160
  }
161
 
175
  background-position: -150px -1px;
176
  }
177
 
178
+ .oa_social_login_provider_reddit {
179
  background-position: -187px -1px;
180
  }
181
 
257
 
258
  .oa_social_login_provider_twitch {
259
  background-position: -1112px -1px;
260
+ }
261
+ .oa_social_login_provider_amazon {
262
+ background-position: -1149px -1px;
263
+ }
264
+
265
+ .oa_social_login_provider_instagram {
266
+ background-position: -1186px -1px;
267
  }
assets/img/provider_sprite_35_35.png CHANGED
Binary file
assets/js/admin.js CHANGED
@@ -44,6 +44,13 @@ jQuery(document).ready(function($) {
44
  radio_use_http_0.attr("checked", "checked");
45
  message_string = objectL10n.oa_admin_js_201b;
46
  }
 
 
 
 
 
 
 
47
  /* FSOCKOPEN detected, HTTPS */
48
  else if (response == 'success_autodetect_api_fsockopen_https')
49
  {
@@ -60,6 +67,15 @@ jQuery(document).ready(function($) {
60
  radio_use_http_0.attr("checked", "checked");
61
  message_string = objectL10n.oa_admin_js_202b;
62
  }
 
 
 
 
 
 
 
 
 
63
  /* No handler detected */
64
  else
65
  {
44
  radio_use_http_0.attr("checked", "checked");
45
  message_string = objectL10n.oa_admin_js_201b;
46
  }
47
+ /* CURL detected, ports closed */
48
+ else if (response == 'error_autodetect_api_curl_ports_blocked')
49
+ {
50
+ is_success = false;
51
+ radio_curl.attr("checked", "checked");
52
+ message_string = objectL10n.oa_admin_js_201c;
53
+ }
54
  /* FSOCKOPEN detected, HTTPS */
55
  else if (response == 'success_autodetect_api_fsockopen_https')
56
  {
67
  radio_use_http_0.attr("checked", "checked");
68
  message_string = objectL10n.oa_admin_js_202b;
69
  }
70
+ /* FSOCKOPEN detected, ports closed */
71
+ else if (response == 'error_autodetect_api_fsockopen_ports_blocked')
72
+ {
73
+ is_success = false;
74
+ radio_fsockopen.attr("checked", "checked");
75
+ message_string = objectL10n.oa_admin_js_202c;
76
+ }
77
+
78
+
79
  /* No handler detected */
80
  else
81
  {
filters.txt CHANGED
@@ -1,11 +1,15 @@
1
-
2
- The codes have to be added to the end of the functions.php file of your WordPress theme.
3
  By doing so your changes will not be overwritten when you install a new version of Social Login.
4
 
5
- ********************************************************************************
6
- * Use your own CSS
7
- ********************************************************************************
8
-
 
 
 
 
 
9
  function oa_social_login_set_custom_css($css_theme_uri)
10
  {
11
  //Replace the URL by an URL to your own CSS Stylesheet
@@ -14,32 +18,71 @@ By doing so your changes will not be overwritten when you install a new version
14
  //Done
15
  return $css_theme_uri;
16
  }
 
17
  add_filter('oa_social_login_default_css', 'oa_social_login_set_custom_css');
18
  add_filter('oa_social_login_widget_css', 'oa_social_login_set_custom_css');
 
19
 
20
 
21
- ********************************************************************************
22
- * Restrict access and allow only email addresses of a specific domain
23
- ********************************************************************************
24
 
 
 
 
25
  function oa_social_login_filter_new_user_email ($user_email)
26
  {
27
  //Only users with social network accounts having an email address ending in @gmail.com may register
28
  if ( ! preg_match ('/@gmail\.com$/i', trim ($user_email)))
29
  {
30
- return 'disallowed';
31
  }
32
  return $user_email;
33
  }
34
  add_filter('oa_social_login_filter_new_user_email', 'oa_social_login_filter_new_user_email');
35
 
36
 
37
- ********************************************************************************
38
- * Custom redirections
39
- ********************************************************************************
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
 
41
  //Redirection for new users
42
- function oa_social_login_filter_redirect_for_new_users ($url, $user_data)
43
  {
44
  //Force the url to something else
45
  $url = 'http://my-website.com/welcome-new-user/';
@@ -47,11 +90,11 @@ function oa_social_login_filter_redirect_for_new_users ($url, $user_data)
47
  //New users will be redirected here
48
  return $url;
49
  }
50
- add_filter('oa_social_login_filter_registration_redirect_url', 'oa_social_login_filter_redirect_for_new_users', 10, 2);
51
 
52
 
53
  //Redirection for existing users
54
- function oa_social_login_filter_redirect_for_existing_users ($url, $user_data)
55
  {
56
  //Force the url to something else
57
  $url = 'http://my-website.com/welcome-back/';
@@ -59,5 +102,87 @@ function oa_social_login_filter_redirect_for_existing_users ($url, $user_data)
59
  //Returning users will be redirected here
60
  return $url;
61
  }
62
- add_filter('oa_social_login_filter_login_redirect_url', 'oa_social_login_filter_redirect_for_existing_users', 10, 2);
63
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ The codes in the following examples have to be added to the end of the functions.php file of your WordPress theme.
 
2
  By doing so your changes will not be overwritten when you install a new version of Social Login.
3
 
4
+ You can find this file in your WordPress administration area:
5
+
6
+ Appearance \ Editor \ Theme Functions (functions.php)
7
+
8
+
9
+
10
+ //*******************************************************************************
11
+ // Social Login: Use your own CSS to customize the icons
12
+ //*******************************************************************************
13
  function oa_social_login_set_custom_css($css_theme_uri)
14
  {
15
  //Replace the URL by an URL to your own CSS Stylesheet
18
  //Done
19
  return $css_theme_uri;
20
  }
21
+
22
  add_filter('oa_social_login_default_css', 'oa_social_login_set_custom_css');
23
  add_filter('oa_social_login_widget_css', 'oa_social_login_set_custom_css');
24
+ add_filter('oa_social_login_link_css', 'oa_social_login_set_custom_css');
25
 
26
 
 
 
 
27
 
28
+ //*******************************************************************************
29
+ // Social Login: Restrict access and allow only email addresses of a specific domain
30
+ //*******************************************************************************
31
  function oa_social_login_filter_new_user_email ($user_email)
32
  {
33
  //Only users with social network accounts having an email address ending in @gmail.com may register
34
  if ( ! preg_match ('/@gmail\.com$/i', trim ($user_email)))
35
  {
36
+ trigger_error ('This email address may not be used to register', E_USER_ERROR);
37
  }
38
  return $user_email;
39
  }
40
  add_filter('oa_social_login_filter_new_user_email', 'oa_social_login_filter_new_user_email');
41
 
42
 
43
+
44
+ //*******************************************************************************
45
+ // Social Login: Change the default password for users created by Social Login
46
+ //*******************************************************************************
47
+ function oa_social_login_set_new_user_password ($user_password)
48
+ {
49
+ //This the the default behavior
50
+ $user_password = wp_generate_password ();
51
+
52
+ //This is an example for a custom setting
53
+ $user_password = substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789') , 0 , 10);
54
+
55
+ //The new user will be assigned this password
56
+ return $user_password;
57
+ }
58
+ add_filter('oa_social_login_filter_new_user_password', 'oa_social_login_set_new_user_password');
59
+
60
+
61
+
62
+ //*******************************************************************************
63
+ // Social Login: Change the default role for new users
64
+ //*******************************************************************************
65
+ function oa_social_login_set_new_user_role ($user_role)
66
+ {
67
+ //This the the default behavior, usually the default role is subscriber
68
+ $user_role = get_option('default_role');
69
+
70
+ //This is an example for a custom setting with two roles
71
+ $user_role = 'author editor';
72
+
73
+ //The new user will be assigned this role
74
+ return $user_role;
75
+ }
76
+ add_filter('oa_social_login_filter_new_user_role', 'oa_social_login_set_new_user_role');
77
+
78
+
79
+
80
+ //*******************************************************************************
81
+ // Social Login: Custom redirections
82
+ //*******************************************************************************
83
 
84
  //Redirection for new users
85
+ function oa_social_login_set_redirect_url_new_users ($url, $user_data)
86
  {
87
  //Force the url to something else
88
  $url = 'http://my-website.com/welcome-new-user/';
90
  //New users will be redirected here
91
  return $url;
92
  }
93
+ add_filter('oa_social_login_filter_registration_redirect_url', 'oa_social_login_set_redirect_url_new_users', 10, 2);
94
 
95
 
96
  //Redirection for existing users
97
+ function oa_social_login_set_redirect_url_existing_users ($url, $user_data)
98
  {
99
  //Force the url to something else
100
  $url = 'http://my-website.com/welcome-back/';
102
  //Returning users will be redirected here
103
  return $url;
104
  }
105
+ add_filter('oa_social_login_filter_login_redirect_url', 'oa_social_login_set_redirect_url_existing_users', 10, 2);
106
 
107
+
108
+
109
+ //*******************************************************************************
110
+ // Social Login: Action called before adding a new user
111
+ //*******************************************************************************
112
+
113
+ //This function will be called before Social Login adds a new user
114
+ function oa_social_login_do_before_user_insert ($user_data, $identity)
115
+ {
116
+ //These are the fields for the WordPress database
117
+ print_r($user_data);
118
+
119
+ //This is the full social network profile of this user
120
+ print_r($identity);
121
+ }
122
+ add_action ('oa_social_login_action_before_user_insert', 'oa_social_login_do_before_user_insert', 10, 2);
123
+
124
+
125
+
126
+ //*******************************************************************************
127
+ // Social Login: Action called after having added a new user
128
+ //*******************************************************************************
129
+
130
+ //This function will be called after Social Login has added a new user
131
+ function oa_social_login_do_after_user_insert ($user_data, $identity)
132
+ {
133
+ //These are the fields from the WordPress database
134
+ print_r($user_data);
135
+
136
+ //This is the full social network profile of this user
137
+ print_r($identity);
138
+ }
139
+ add_action ('oa_social_login_action_after_user_insert', 'oa_social_login_do_after_user_insert', 10, 2);
140
+
141
+
142
+
143
+ //*******************************************************************************
144
+ // Social Login: Action called before logging in the user
145
+ //*******************************************************************************
146
+
147
+ //This function will be called before Social Login logs the the user in
148
+ function oa_social_login_do_before_user_login ($user_data, $identity, $new_registration)
149
+ {
150
+ //true for new and false for returning users
151
+ if ($new_registration)
152
+ {
153
+ echo "I am a new user";
154
+ }
155
+ else
156
+ {
157
+ echo "I am a returning user";
158
+ }
159
+
160
+ //These are the fields from the WordPress database
161
+ print_r($user_data);
162
+
163
+ //This is the full social network profile of this user
164
+ print_r($identity);
165
+ }
166
+ add_action ('oa_social_login_action_before_user_login', 'oa_social_login_do_before_user_login', 10, 3);
167
+
168
+
169
+
170
+ //*******************************************************************************
171
+ // Social Login: Action called before redirecting the user
172
+ //*******************************************************************************
173
+
174
+ //This function will be called before Social Login redirects the user
175
+ function oa_social_login_do_before_user_redirect ($user_data, $identity, $redirect_to)
176
+ {
177
+ echo "User will be redirected to ".$redirect_to;
178
+
179
+ //These are the fields from the WordPress database
180
+ print_r($user_data);
181
+
182
+ //This is the full social network profile of this user
183
+ print_r($identity);
184
+ }
185
+ add_action ('oa_social_login_action_before_user_redirect', 'oa_social_login_do_before_user_redirect', 10, 3);
186
+
187
+
188
+
includes/admin.php CHANGED
@@ -1,1137 +1,1213 @@
1
- <?php
2
-
3
- /**
4
- * Admin User List: Add header column
5
- **/
6
- function oa_social_login_admin_user_column_add ($columns)
7
- {
8
- //Read settings
9
- $settings = get_option ('oa_social_login_settings');
10
-
11
- //Add column if enabled
12
- if (!empty ($settings ['plugin_add_column_user_list']))
13
- {
14
- $columns ['oa_social_login_registration'] = __ ('Registration', 'oa_social_login');
15
- }
16
- return $columns;
17
- }
18
- add_filter ('manage_users_columns', 'oa_social_login_admin_user_column_add');
19
-
20
-
21
- /**
22
- * Admin User List: Add column content
23
- **/
24
- function oa_social_login_admin_user_colum_display ($value, $column_name, $user_id)
25
- {
26
- //Check if it is our own column
27
- if ($column_name <> 'oa_social_login_registration')
28
- {
29
- return $value;
30
- }
31
-
32
- //Read Identity Provider
33
- $meta_identity_providers = trim (strval (get_user_meta ($user_id, 'oa_social_login_identity_provider', true)));
34
- if (strlen ($meta_identity_providers) > 0)
35
- {
36
- $meta_identity_providers = array_unique (explode ("|", $meta_identity_providers));
37
- }
38
-
39
- //Social Login Registration
40
- if (is_array ($meta_identity_providers) AND count ($meta_identity_providers) > 0)
41
- {
42
- return '<strong>Social Login</strong>: ' . implode (", ", $meta_identity_providers);
43
- }
44
- //Traditional Registration
45
- else
46
- {
47
- return __ ('Registration Form', 'oa_social_login');
48
- }
49
- }
50
- add_action ('manage_users_custom_column', 'oa_social_login_admin_user_colum_display', 10, 3);
51
-
52
-
53
- /**
54
- * Add administration area links
55
- **/
56
- function oa_social_login_admin_menu ()
57
- {
58
- //Setup
59
- $page = add_menu_page ('OneAll Social Login ' . __ ('Setup', 'oa_social_login'), 'Social Login', 'manage_options', 'oa_social_login_setup', 'oa_display_social_login_setup');
60
- add_action ('admin_print_styles-' . $page, 'oa_social_login_admin_css');
61
-
62
- //Settings
63
- $page = add_submenu_page ('oa_social_login_setup', 'OneAll Social Login ' . __ ('Settings'), __ ('Settings'), 'manage_options', 'oa_social_login_settings', 'oa_display_social_login_settings');
64
- add_action ('admin_print_styles-' . $page, 'oa_social_login_admin_css');
65
-
66
- //Fix Setup title
67
- global $submenu;
68
- if (is_array ($submenu) AND isset ($submenu ['oa_social_login_setup']))
69
- {
70
- $submenu ['oa_social_login_setup'] [0] [0] = __ ('Setup', 'oa_social_login');
71
- }
72
-
73
- add_action ('admin_enqueue_scripts', 'oa_social_login_admin_js');
74
- add_action ('admin_init', 'oa_register_social_login_settings');
75
- add_action ('admin_notices', 'oa_social_login_admin_message');
76
- }
77
- add_action ('admin_menu', 'oa_social_login_admin_menu');
78
-
79
-
80
- /**
81
- * Automatically approve comments if option enabled
82
- **/
83
- function oa_social_login_admin_pre_comment_approved ($approved)
84
- {
85
- // No need to do the check if the comment has already been approved
86
- if (empty ($approved))
87
- {
88
- //Read settings
89
- $settings = get_option ('oa_social_login_settings');
90
-
91
- //Check if enabled
92
- if (!empty ($settings ['plugin_comment_auto_approve']))
93
- {
94
- $user_id = get_current_user_id ();
95
- if (is_numeric ($user_id))
96
- {
97
- if (get_user_meta ($user_id, 'oa_social_login_user_token', true) !== false)
98
- {
99
- $approved = 1;
100
- }
101
- }
102
- }
103
- }
104
- return $approved;
105
- }
106
- add_action ('pre_comment_approved', 'oa_social_login_admin_pre_comment_approved');
107
-
108
-
109
- /**
110
- * Add an activation message to be displayed once
111
- */
112
- function oa_social_login_admin_message ()
113
- {
114
- if (get_option ('oa_social_login_activation_message') !== '1')
115
- {
116
- echo '<div class="updated"><p><strong>' . __ ('Thank you for using Social Login!', 'oa_social_login') . '</strong> ' . sprintf (__ ('Please complete the <strong><a href="%s">Social Login Setup</a></strong> to enable the plugin.', 'oa_social_login'), 'admin.php?page=oa_social_login_setup') . '</p></div>';
117
- update_option ('oa_social_login_activation_message', '1');
118
- }
119
- }
120
-
121
-
122
- /**
123
- * Autodetect API Connection Handler
124
- */
125
- function oa_social_login_admin_autodetect_api_connection_handler ()
126
- {
127
- //Check AJAX Nonce
128
- check_ajax_referer ('oa_social_login_ajax_nonce');
129
-
130
- //Check CURL HTTPS - Port 443
131
- if (oa_social_login_check_curl (true) === true)
132
- {
133
- echo 'success_autodetect_api_curl_https';
134
- die ();
135
- }
136
- //Check CURL HTTP - Port 80
137
- elseif (oa_social_login_check_curl (false) === true)
138
- {
139
- echo 'success_autodetect_api_curl_http';
140
- die ();
141
- }
142
- //Check FSOCKOPEN HTTPS - Port 443
143
- elseif (oa_social_login_check_fsockopen (true) == true)
144
- {
145
- echo 'success_autodetect_api_fsockopen_https';
146
- die ();
147
- }
148
- //Check FSOCKOPEN HTTP - Port 80
149
- elseif (oa_social_login_check_fsockopen (false) == true)
150
- {
151
- echo 'success_autodetect_api_fsockopen_http';
152
- die ();
153
- }
154
-
155
- //No working handler found
156
- echo 'error_autodetect_api_no_handler';
157
- die ();
158
- }
159
- add_action ('wp_ajax_autodetect_api_connection_handler', 'oa_social_login_admin_autodetect_api_connection_handler');
160
-
161
-
162
- /**
163
- * Check API Settings through an Ajax Call
164
- */
165
- function oa_social_login_admin_check_api_settings ()
166
- {
167
- check_ajax_referer ('oa_social_login_ajax_nonce');
168
-
169
- //Check if all fields have been filled out
170
- if (empty ($_POST ['api_subdomain']) OR empty ($_POST ['api_key']) OR empty ($_POST ['api_secret']))
171
- {
172
- echo 'error_not_all_fields_filled_out';
173
- delete_option ('oa_social_login_api_settings_verified');
174
- die ();
175
- }
176
-
177
- //Check the handler
178
- $api_connection_handler = ((!empty ($_POST ['api_connection_handler']) AND $_POST ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
179
- $api_connection_use_https = ((!isset ($_POST ['api_connection_use_https']) OR $_POST ['api_connection_use_https'] == '1') ? true : false);
180
-
181
-
182
- //FSOCKOPEN
183
- if ($api_connection_handler == 'fsockopen')
184
- {
185
- if (!oa_social_login_check_fsockopen ($api_connection_use_https))
186
- {
187
- echo 'error_selected_handler_faulty';
188
- delete_option ('oa_social_login_api_settings_verified');
189
- die ();
190
- }
191
- }
192
- //CURL
193
- else
194
- {
195
- if (!oa_social_login_check_curl ($api_connection_use_https))
196
- {
197
- echo 'error_selected_handler_faulty';
198
- delete_option ('oa_social_login_api_settings_verified');
199
- die ();
200
- }
201
- }
202
-
203
- $api_subdomain = trim (strtolower ($_POST ['api_subdomain']));
204
- $api_key = trim ($_POST ['api_key']);
205
- $api_secret = trim ($_POST ['api_secret']);
206
-
207
- //Full domain entered
208
- if (preg_match ("/([a-z0-9\-]+)\.api\.oneall\.com/i", $api_subdomain, $matches))
209
- {
210
- $api_subdomain = $matches [1];
211
- }
212
-
213
- //Check subdomain format
214
- if (!preg_match ("/^[a-z0-9\-]+$/i", $api_subdomain))
215
- {
216
- echo 'error_subdomain_wrong_syntax';
217
- delete_option ('oa_social_login_api_settings_verified');
218
- die ();
219
- }
220
-
221
- //Domain
222
- $api_domain = $api_subdomain . '.api.oneall.com';
223
-
224
- //Connection to
225
- $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_domain . '/tools/ping.json';
226
-
227
- //Get connection details
228
- $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, array ('api_key' => $api_key, 'api_secret' => $api_secret), 15);
229
-
230
- //Parse result
231
- if (is_object ($result) AND property_exists ($result, 'http_code') AND property_exists ($result, 'http_data'))
232
- {
233
- switch ($result->http_code)
234
- {
235
- //Success
236
- case 200:
237
- echo 'success';
238
- update_option ('oa_social_login_api_settings_verified', '1');
239
- break;
240
-
241
- //Authentication Error
242
- case 401:
243
- echo 'error_authentication_credentials_wrong';
244
- delete_option ('oa_social_login_api_settings_verified');
245
- break;
246
-
247
- //Wrong Subdomain
248
- case 404:
249
- echo 'error_subdomain_wrong';
250
- delete_option ('oa_social_login_api_settings_verified');
251
- break;
252
-
253
- //Other error
254
- default:
255
- echo 'error_communication';
256
- delete_option ('oa_social_login_api_settings_verified');
257
- break;
258
- }
259
- }
260
- else
261
- {
262
- echo 'error_communication';
263
- delete_option ('oa_social_login_api_settings_verified');
264
- }
265
- die ();
266
- }
267
- add_action ('wp_ajax_check_api_settings', 'oa_social_login_admin_check_api_settings');
268
-
269
-
270
- /**
271
- * Add Settings JS
272
- **/
273
- function oa_social_login_admin_js ($hook)
274
- {
275
- if (stripos ($hook, 'oa_social_login') !== false)
276
- {
277
- if (!wp_script_is ('oa_social_login_admin_js', 'registered'))
278
- {
279
- wp_register_script ('oa_social_login_admin_js', OA_SOCIAL_LOGIN_PLUGIN_URL . "/assets/js/admin.js");
280
- }
281
-
282
- $oa_social_login_ajax_nonce = wp_create_nonce ('oa_social_login_ajax_nonce');
283
-
284
- wp_enqueue_script ('oa_social_login_admin_js');
285
- wp_enqueue_script ('jquery');
286
-
287
- wp_localize_script ('oa_social_login_admin_js', 'objectL10n',
288
- array (
289
- 'oa_social_login_ajax_nonce' => $oa_social_login_ajax_nonce,
290
- 'oa_admin_js_1' => __ ('Contacting API - please wait this may take a few minutes ...', 'oa_social_login'),
291
- 'oa_admin_js_101' => __ ('The settings are correct - do not forget to save your changes!', 'oa_social_login'),
292
- 'oa_admin_js_111' => __ ('Please fill out each of the fields above.', 'oa_social_login'),
293
- 'oa_admin_js_112' => __ ('The subdomain does not exist. Have you filled it out correctly?', 'oa_social_login'),
294
- 'oa_admin_js_113' => __ ('The subdomain has a wrong syntax!', 'oa_social_login'),
295
- 'oa_admin_js_114' => __ ('Could not contact API. Are outbound requests on port 443 allowed?', 'oa_social_login'),
296
- 'oa_admin_js_115' => __ ('The API subdomain is correct, but one or both keys are invalid', 'oa_social_login'),
297
- 'oa_admin_js_116' => __ ('Connection handler does not work, try using the Autodetection', 'oa_social_login'),
298
- 'oa_admin_js_201a' => __ ('Detected CURL on Port 443 - do not forget to save your changes!', 'oa_social_login'),
299
- 'oa_admin_js_201b' => __ ('Detected CURL on Port 80 - do not forget to save your changes!', 'oa_social_login'),
300
- 'oa_admin_js_202a' => __ ('Detected FSOCKOPEN on Port 443 - do not forget to save your changes!', 'oa_social_login'),
301
- 'oa_admin_js_202b' => __ ('Detected FSOCKOPEN on Port 80 - do not forget to save your changes!', 'oa_social_login'),
302
- 'oa_admin_js_211' => sprintf (__ ('Autodetection Error - our <a href="%s" target="_blank">documentation</a> helps you fix this issue.', 'oa_social_login'), 'http://docs.oneall.com/plugins/guide/social-login-wordpress/#help')
303
- ));
304
- }
305
- }
306
-
307
-
308
- /**
309
- * Add Settings CSS
310
- **/
311
- function oa_social_login_admin_css ($hook = '')
312
- {
313
- if (!wp_style_is ('oa_social_login_admin_css', 'registered'))
314
- {
315
- wp_register_style ('oa_social_login_admin_css', OA_SOCIAL_LOGIN_PLUGIN_URL . "/assets/css/admin.css");
316
- }
317
-
318
- if (did_action ('wp_print_styles'))
319
- {
320
- wp_print_styles ('oa_social_login_admin_css');
321
- }
322
- else
323
- {
324
- wp_enqueue_style ('oa_social_login_admin_css');
325
- }
326
- }
327
-
328
-
329
- /**
330
- * Register plugin settings and their sanitization callback
331
- */
332
- function oa_register_social_login_settings ()
333
- {
334
- register_setting ('oa_social_login_settings_group', 'oa_social_login_settings', 'oa_social_login_settings_validate');
335
- }
336
-
337
-
338
- /**
339
- * Plugin settings sanitization callback
340
- */
341
- function oa_social_login_settings_validate ($settings)
342
- {
343
- //Import providers
344
- GLOBAL $oa_social_login_providers;
345
-
346
- //Settings page?
347
- $page = (!empty ($_POST ['page']) ? strtolower ($_POST ['page']) : '');
348
-
349
- //Store the sanitzed settings
350
- $sanitzed_settings = get_option ('oa_social_login_settings');
351
-
352
- //Check format
353
- if (!is_array ($sanitzed_settings))
354
- {
355
- $sanitzed_settings = array ();
356
- }
357
-
358
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
359
- //Setup
360
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
361
- if ($page == 'setup')
362
- {
363
-
364
- //Extract fields
365
- foreach (array (
366
- 'api_connection_handler',
367
- 'api_connection_use_https',
368
- 'api_subdomain',
369
- 'api_key',
370
- 'api_secret',
371
- 'providers'
372
- ) AS $key)
373
- {
374
- //Value is given
375
- if (isset ($settings [$key]))
376
- {
377
- //Provider tickboxes
378
- if ($key == 'providers')
379
- {
380
- //Resest providers
381
- $sanitzed_settings ['providers'] = array ();
382
-
383
- //Loop through new values
384
- if (is_array ($settings ['providers']))
385
- {
386
- //Loop through valid values
387
- foreach ($oa_social_login_providers AS $key => $name)
388
- {
389
- if (isset ($settings ['providers'] [$key]) AND $settings ['providers'] [$key] == '1')
390
- {
391
- $sanitzed_settings ['providers'] [$key] = 1;
392
- }
393
- }
394
- }
395
- }
396
- //Other field
397
- else
398
- {
399
- $sanitzed_settings [$key] = trim ($settings [$key]);
400
- }
401
- }
402
- }
403
- //Sanitize API Use HTTPS
404
- $sanitzed_settings ['api_connection_use_https'] = (empty ($sanitzed_settings ['api_connection_use_https']) ? 0 : 1);
405
-
406
- //Sanitize API Connection handler
407
- if (isset ($sanitzed_settings ['api_connection_handler']) AND in_array (strtolower ($sanitzed_settings ['api_connection_handler']), array ('curl','fsockopen')))
408
- {
409
- $sanitzed_settings ['api_connection_handler'] = strtolower ($sanitzed_settings ['api_connection_handler']);
410
- }
411
- else
412
- {
413
- $sanitzed_settings ['api_connection_handler'] = 'curl';
414
- }
415
-
416
- //Sanitize API Subdomain
417
- if (isset ($sanitzed_settings ['api_subdomain']))
418
- {
419
- //Subdomain is always in lowercase
420
- $api_subdomain = strtolower ($sanitzed_settings ['api_subdomain']);
421
-
422
- //Full domain entered
423
- if (preg_match ("/([a-z0-9\-]+)\.api\.oneall\.com/i", $api_subdomain, $matches))
424
- {
425
- $api_subdomain = $matches [1];
426
- }
427
-
428
- $sanitzed_settings ['api_subdomain'] = $api_subdomain;
429
- }
430
-
431
- //Done
432
- return $sanitzed_settings;
433
- }
434
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
435
- //Setup
436
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
437
- elseif ($page == 'settings')
438
- {
439
- //Extract fields
440
- foreach (array (
441
- 'plugin_add_column_user_list',
442
- 'plugin_require_email',
443
- 'plugin_require_email_text',
444
- 'plugin_caption',
445
- 'plugin_link_verified_accounts',
446
- 'plugin_show_avatars_in_comments',
447
- 'plugin_use_small_buttons',
448
- 'plugin_display_in_login_form',
449
- 'plugin_login_form_redirect',
450
- 'plugin_login_form_redirect_custom_url',
451
- 'plugin_display_in_registration_form',
452
- 'plugin_registration_form_redirect',
453
- 'plugin_registration_form_redirect_custom_url',
454
- 'plugin_comment_show_if_members_only',
455
- 'plugin_comment_auto_approve',
456
- 'plugin_comment_show',
457
- 'plugin_profile_show',
458
- 'plugin_shortcode_login_redirect',
459
- 'plugin_shortcode_login_redirect_url',
460
- 'plugin_shortcode_register_redirect',
461
- 'plugin_shortcode_register_redirect_url',
462
- 'plugin_notify_admin'
463
- ) AS $key)
464
- {
465
- if (isset ($settings [$key]))
466
- {
467
- $sanitzed_settings [$key] = trim ($settings [$key]);
468
- }
469
- else
470
- {
471
- $sanitzed_settings [$key] = '';
472
- }
473
- }
474
-
475
- //Flag settings
476
- $sanitzed_settings ['plugin_add_column_user_list'] = ($sanitzed_settings ['plugin_add_column_user_list'] == '1' ? 1 : 0);
477
- $sanitzed_settings ['plugin_profile_show'] = ($sanitzed_settings ['plugin_profile_show'] == '0' ? 0 : 1);
478
- $sanitzed_settings ['plugin_notify_admin'] = ($sanitzed_settings ['plugin_notify_admin'] == '0' ? 0 : 1);
479
- $sanitzed_settings ['plugin_require_email'] = ($sanitzed_settings ['plugin_require_email'] == '1' ? 1 : 0);
480
- $sanitzed_settings ['plugin_comment_show'] = ($sanitzed_settings ['plugin_comment_show'] == '0' ? 0 : 1);
481
- $sanitzed_settings ['plugin_comment_show_if_members_only'] = ($sanitzed_settings ['plugin_comment_show_if_members_only'] == '0' ? 0 : 1);
482
- $sanitzed_settings ['plugin_use_small_buttons'] = ($sanitzed_settings ['plugin_use_small_buttons'] == '1' ? 1 : 0);
483
- $sanitzed_settings ['plugin_display_in_login_form'] = ($sanitzed_settings ['plugin_display_in_login_form'] == '0' ? 0 : 1);
484
- $sanitzed_settings ['plugin_display_in_registration_form'] = ($sanitzed_settings ['plugin_display_in_registration_form'] == '0' ? 0 : 1);
485
- $sanitzed_settings ['plugin_link_verified_accounts'] = ($sanitzed_settings ['plugin_link_verified_accounts'] == '0' ? 0 : 1);
486
- $sanitzed_settings ['plugin_comment_auto_approve'] = ($sanitzed_settings ['plugin_comment_auto_approve'] == '1' ? 1 : 0);
487
-
488
- //Multiple settings
489
- $sanitzed_settings ['plugin_show_avatars_in_comments'] = (in_array ($sanitzed_settings ['plugin_show_avatars_in_comments'], array (0, 1, 2)) ? $sanitzed_settings ['plugin_show_avatars_in_comments'] : 0);
490
-
491
- //Redirection Settings: Widget & Shortcode Login
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
492
  $sanitzed_settings ['plugin_shortcode_login_redirect'] = (in_array ($sanitzed_settings ['plugin_shortcode_login_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_shortcode_login_redirect'] : 'current');
493
- if ($sanitzed_settings ['plugin_shortcode_login_redirect'] == 'custom')
494
- {
495
- if (empty ($sanitzed_settings ['plugin_shortcode_login_redirect_url']))
496
- {
497
- $sanitzed_settings ['plugin_shortcode_login_redirect'] = 'current';
498
- }
499
- }
500
- else
501
- {
502
- $sanitzed_settings ['plugin_shortcode_login_redirect_url'] = '';
503
- }
504
-
505
- //Redirection Settings: Widget & Shortcode Registration
506
  $sanitzed_settings ['plugin_shortcode_register_redirect'] = (in_array ($sanitzed_settings ['plugin_shortcode_register_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_shortcode_register_redirect'] : 'current');
507
- if ($sanitzed_settings ['plugin_shortcode_register_redirect'] == 'custom')
508
- {
509
- if (empty ($sanitzed_settings ['plugin_shortcode_register_redirect_url']))
510
- {
511
- $sanitzed_settings ['plugin_shortcode_register_redirect'] = 'current';
512
- }
513
- }
514
- else
515
- {
516
- $sanitzed_settings ['plugin_shortcode_register_redirect_url'] = '';
517
- }
518
-
519
- //Redirection Settings: Form Login
520
- $sanitzed_settings ['plugin_login_form_redirect'] = (in_array ($sanitzed_settings ['plugin_login_form_redirect'], array ('dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_login_form_redirect'] : 'homepage');
521
- if ($sanitzed_settings ['plugin_login_form_redirect'] == 'custom')
522
- {
523
- if (empty ($sanitzed_settings ['plugin_login_form_redirect_custom_url']))
524
- {
525
- $sanitzed_settings ['plugin_login_form_redirect'] = 'homepage';
526
- }
527
- }
528
- else
529
- {
530
- $sanitzed_settings ['plugin_login_form_redirect_custom_url'] = '';
531
- }
532
-
533
-
534
- //Redirection Settings: Form Registration
535
- $sanitzed_settings ['plugin_registration_form_redirect'] = (in_array ($sanitzed_settings ['plugin_registration_form_redirect'], array ('dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_registration_form_redirect'] : 'dashboard');
536
- if ($sanitzed_settings ['plugin_registration_form_redirect'] == 'custom')
537
- {
538
- if (empty ($sanitzed_settings ['plugin_registration_form_redirect_custom_url']))
539
- {
540
- $sanitzed_settings ['plugin_registration_form_redirect'] = 'dashboard';
541
- }
542
- }
543
- else
544
- {
545
- $sanitzed_settings ['plugin_registration_form_redirect_custom_url'] = '';
546
- }
547
-
548
- //Done
549
- return $sanitzed_settings;
550
- }
551
-
552
- //Error
553
- return array ();
554
- }
555
-
556
-
557
- /**
558
- * Display Settings Page
559
- **/
560
- function oa_display_social_login_setup ()
561
- {
562
- //Import providers
563
- GLOBAL $oa_social_login_providers;
564
- ?>
565
- <div class="wrap">
566
- <div id="oa_social_login_page" class="oa_social_login_setup">
567
- <h2>OneAll Social Login</h2>
568
- <h2 class="nav-tab-wrapper">
569
- <a class="nav-tab nav-tab-active" href="admin.php?page=oa_social_login_setup"><?php _e ('Setup', 'oa_social_login'); ?></a>
570
- <a class="nav-tab" href="admin.php?page=oa_social_login_settings"><?php _e ('Settings', 'oa_social_login'); ?></a>
571
- </h2>
572
- <?php
573
- if (get_option ('oa_social_login_api_settings_verified') !== '1')
574
- {
575
- ?>
576
- <p>
577
- <?php _e ('Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Hyves, VKontakte, Google or Yahoo.', 'oa_social_login'); ?>
578
- <strong><?php _e ('Draw a larger audience and increase your user engagement in a few simple steps.', 'oa_social_login'); ?> </strong>
579
- </p>
580
- <div class="oa_social_login_box" id="oa_social_login_box_status">
581
- <div class="oa_social_login_box_title">
582
- <?php _e ('Get Started!', 'oa_social_login'); ?>
583
- </div>
584
- <p>
585
- <?php printf (__ ('To be able to use this plugin you first of all need to create a free account at %s and setup a Site.', 'oa_social_login'), '<a href="https://app.oneall.com/signup/" target="_blank">http://www.oneall.com</a>'); ?>
586
- <?php _e ('After having created your account and setup your Site, please enter the Site settings in the form below.', 'oa_social_login'); ?>
587
- <?php _e ("Don't worry the setup takes only a couple of minutes!", 'oa_social_login'); ?>
588
- </p>
589
- <p>
590
- <a class="button-secondary" href="https://app.oneall.com/signup/" target="_blank"><strong><?php _e ('Click here to setup your free account', 'oa_social_login'); ?></strong></a>
591
- </p>
592
- <h3>
593
- <?php printf (__ ('You are in good company! This plugin is used on more than %s websites!', 'oa_social_login'), '150,000'); ?>
594
- </h3>
595
- </div>
596
- <?php
597
- }
598
- else
599
- {
600
- ?>
601
- <p></p>
602
- <div class="oa_social_login_box" id="oa_social_login_box_status">
603
- <div class="oa_social_login_box_title">
604
- <?php _e ('Your API Account is setup correctly', 'oa_social_login'); ?>
605
- </div>
606
- <p>
607
- <?php _e ('Login to your account to manage your providers and access your Social Insights.', 'oa_social_login'); ?>
608
- <?php _e ("Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement.", 'oa_social_login'); ?>
609
- </p>
610
- <p>
611
- <a class="button-secondary" href="https://app.oneall.com/signin/" target="_blank"><strong><?php _e ('Click here to login to your account', 'oa_social_login'); ?></strong> </a>
612
- </p>
613
- </div>
614
- <?php
615
- }
616
- ?>
617
- <div class="oa_social_login_box" id="oa_social_login_box_help">
618
- <div class="oa_social_login_box_title">
619
- <?php _e ('Help, Updates &amp; Documentation', 'oa_social_login'); ?>
620
- </div>
621
- <ul>
622
- <li><?php printf (__ ('<a target="_blank" href="%s">Follow us on Twitter</a> to stay informed about updates', 'oa_social_login'), 'http://www.twitter.com/oneall'); ?>;</li>
623
- <li><?php printf (__ ('<a target="_blank" href="%s">Read the online documentation</a> for more information about this plugin', 'oa_social_login'), 'http://docs.oneall.com/plugins/guide/social-login-wordpress/'); ?>;</li>
624
- <li><?php printf (__ ('<a target="_blank" href="%s">Contact us</a> if you have feedback or need assistance', 'oa_social_login'), 'http://www.oneall.com/company/contact-us/'); ?>.
625
- <li><?php printf (__ ('We also have <a target="_blank" href="%s">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ...', 'oa_social_login'), 'http://docs.oneall.com/plugins/'); ?>.
626
- </li>
627
- </ul>
628
- </div>
629
- <?php
630
- if (!empty ($_REQUEST ['settings-updated']) AND strtolower ($_REQUEST ['settings-updated']) == 'true')
631
- {
632
- ?>
633
- <div class="oa_social_login_box" id="oa_social_login_box_updated">
634
- <?php _e ('Your modifications have been saved successfully!'); ?>
635
- </div>
636
- <?php
637
- }
638
- ?>
639
- <form method="post" action="options.php">
640
- <?php
641
- settings_fields ('oa_social_login_settings_group');
642
- $settings = get_option ('oa_social_login_settings');
643
- ?>
644
- <table class="form-table oa_social_login_table">
645
- <tr class="row_head">
646
- <th colspan="2"><?php _e ('API Connection Handler', 'oa_social_login'); ?>
647
- </th>
648
- </tr>
649
- <?php
650
- $api_connection_handler = ((empty ($settings ['api_connection_handler']) OR $settings ['api_connection_handler'] <> 'fsockopen') ? 'curl' : 'fsockopen');
651
- ?>
652
- <tr class="row_even">
653
- <td rowspan="2" class="row_multi" style="width:200px">
654
- <label><?php _e ('API Connection Handler', 'oa_social_login'); ?>:</label>
655
- </td>
656
- <td>
657
- <input type="radio" id="oa_social_login_api_connection_handler_curl" name="oa_social_login_settings[api_connection_handler]" value="curl" <?php echo (($api_connection_handler <> 'fsockopen') ? 'checked="checked"' : ''); ?> />
658
- <label for="oa_social_login_api_connection_handler_curl"><?php _e ('Use PHP CURL to communicate with the API', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong></label><br />
659
- <span class="description"><?php _e ('Using CURL is recommended but it might be disabled on some servers.', 'oa_social_login'); ?></span>
660
- </td>
661
- </tr>
662
- <tr class="row_even">
663
- <td>
664
- <input type="radio" id="oa_social_login_api_connection_handler_fsockopen" name="oa_social_login_settings[api_connection_handler]" value="fsockopen" <?php echo (($api_connection_handler == 'fsockopen') ? 'checked="checked"' : ''); ?> />
665
- <label for="oa_social_login_api_connection_handler_fsockopen"><?php _e ('Use PHP FSOCKOPEN to communicate with the API', 'oa_social_login'); ?> </label><br />
666
- <span class="description"><?php _e ('Try using FSOCKOPEN if you encounter any problems with CURL.', 'oa_social_login'); ?></span>
667
- </td>
668
- </tr>
669
- <?php
670
- $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
671
- ?>
672
- <tr class="row_even">
673
- <td rowspan="2" class="row_multi" style="width:200px">
674
- <label><?php _e ('API Connection Port', 'oa_social_login'); ?>:</label>
675
- </td>
676
- <td>
677
- <input type="radio" id="oa_social_login_api_connection_handler_use_https_1" name="oa_social_login_settings[api_connection_use_https]" value="1" <?php echo ($api_connection_use_https ? 'checked="checked"' : ''); ?> />
678
- <label for="oa_social_login_api_connection_handler_use_https_1"><?php _e ('Communication via HTTPS on port 443', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong></label><br />
679
- <span class="description"><?php _e ('Using port 443 is secure but you might need OpenSSL', 'oa_social_login'); ?></span>
680
- </td>
681
- </tr>
682
- <tr class="row_even">
683
- <td>
684
- <input type="radio" id="oa_social_login_api_connection_handler_use_https_0" name="oa_social_login_settings[api_connection_use_https]" value="0" <?php echo (!$api_connection_use_https ? 'checked="checked"' : ''); ?> />
685
- <label for="oa_social_login_api_connection_handler_use_https_0"><?php _e ('Communication via HTTP on port 80', 'oa_social_login'); ?> </label><br />
686
- <span class="description"><?php _e ("Using port 80 is a bit faster, doesn't need OpenSSL but is less secure", 'oa_social_login'); ?></span>
687
- </td>
688
- </tr>
689
- <tr class="row_foot">
690
- <td>
691
- <a class="button-primary" id="oa_social_login_autodetect_api_connection_handler" href="#"><?php _e ('Autodetect API Connection', 'oa_social_login'); ?></a>
692
- </td>
693
- <td>
694
- <div id="oa_social_login_api_connection_handler_result"></div>
695
- </td>
696
- </tr>
697
- </table>
698
- <table class="form-table oa_social_login_table">
699
- <tr class="row_head">
700
- <th>
701
- <?php _e ('API Settings', 'oa_social_login'); ?>
702
- </th>
703
- <th><a href="https://app.oneall.com/applications/" target="_blank"><?php _e ('Click here to create and view your API Credentials', 'oa_social_login'); ?></a>
704
- </th>
705
- </tr>
706
- <tr class="row_even">
707
- <td style="width:200px">
708
- <label for="oa_social_login_settings_api_subdomain"><?php _e ('API Subdomain', 'oa_social_login'); ?>:</label>
709
- </td>
710
- <td>
711
- <input type="text" id="oa_social_login_settings_api_subdomain" name="oa_social_login_settings[api_subdomain]" size="65" value="<?php echo (isset ($settings ['api_subdomain']) ? htmlspecialchars ($settings ['api_subdomain']) : ''); ?>" />
712
- </td>
713
- </tr>
714
- <tr class="row_odd">
715
- <td style="width:200px">
716
- <label for="oa_social_login_settings_api_key"><?php _e ('API Public Key', 'oa_social_login'); ?>:</label>
717
- </td>
718
- <td>
719
- <input type="text" id="oa_social_login_settings_api_key" name="oa_social_login_settings[api_key]" size="65" value="<?php echo (isset ($settings ['api_key']) ? htmlspecialchars ($settings ['api_key']) : ''); ?>" />
720
- </td>
721
- </tr>
722
- <tr class="row_even">
723
- <td style="width:200px">
724
- <label for="oa_social_login_settings_api_secret"><?php _e ('API Private Key', 'oa_social_login'); ?>:</label>
725
- </td>
726
- <td>
727
- <input type="text" id="oa_social_login_settings_api_secret" name="oa_social_login_settings[api_secret]" size="65" value="<?php echo (isset ($settings ['api_secret']) ? htmlspecialchars ($settings ['api_secret']) : ''); ?>" />
728
- </td>
729
- </tr>
730
- <tr class="row_foot">
731
- <td>
732
- <a class="button-primary" id="oa_social_login_test_api_settings" href="#"><?php _e ('Verify API Settings', 'oa_social_login'); ?> </a>
733
- </td>
734
- <td>
735
- <div id="oa_social_login_api_test_result"></div>
736
- </td>
737
- </tr>
738
- </table>
739
- <table class="form-table oa_social_login_table">
740
- <tr class="row_head">
741
- <th colspan="2">
742
- <?php _e ('Enable the social networks/identity providers of your choice', 'oa_social_login'); ?>
743
- </th>
744
- </tr>
745
- <?php
746
- $i = 0;
747
- foreach ($oa_social_login_providers AS $key => $provider_data)
748
- {
749
- ?>
750
- <tr class="row_provider <?php echo ((($i++) % 2) == 0) ? 'row_even' : 'row_odd' ?>">
751
- <td class="cell_provider_icon">
752
- <label for="oneall_social_login_provider_<?php echo $key; ?>">
753
- <span class="oa_social_login_provider oa_social_login_provider_<?php echo $key; ?>" title="<?php echo htmlspecialchars ($provider_data ['name']); ?>"><?php echo htmlspecialchars ($provider_data ['name']); ?> </span>
754
- </label>
755
- </td>
756
- <td class="cell_provider_label">
757
- <input type="checkbox" id="oneall_social_login_provider_<?php echo $key; ?>" name="oa_social_login_settings[providers][<?php echo $key; ?>]" value="1" <?php checked ('1', $settings ['providers'] [$key]); ?> />
758
- <label for="oneall_social_login_provider_<?php echo $key; ?>"><?php echo htmlspecialchars ($provider_data ['name']); ?> </label>
759
- <?php
760
- if (in_array ($key, array ('vkontakte', 'mailru', 'odnoklassniki')))
761
- {
762
- echo ' - ' . sprintf (__ ('To enable cyrillic usernames, you might need <a target="_blank" href="%s">this plugin</a>', 'oa_social_login'), 'http://wordpress.org/extend/plugins/wordpress-special-characters-in-usernames/');
763
- }
764
- ?>
765
- </td>
766
- </tr>
767
- <?php
768
- }
769
- ?>
770
- </table>
771
- <p class="submit">
772
- <input type="hidden" name="page" value="setup" />
773
- <input type="submit" class="button-primary" value="<?php _e ('Save Changes', 'oa_social_login') ?>" />
774
- </p>
775
- </form>
776
- </div>
777
- </div>
778
- <?php
779
- }
780
-
781
-
782
- /**
783
- * Display Settings Page
784
- **/
785
- function oa_display_social_login_settings ()
786
- {
787
- ?>
788
- <div class="wrap">
789
- <div id="oa_social_login_page" class="oa_social_login_settings">
790
- <h2>OneAll Social Login</h2>
791
- <h2 class="nav-tab-wrapper">
792
- <a class="nav-tab" href="admin.php?page=oa_social_login_setup"><?php _e ('Setup', 'oa_social_login'); ?></a>
793
- <a class="nav-tab nav-tab-active" href="admin.php?page=oa_social_login_settings"><?php _e ('Settings', 'oa_social_login'); ?></a>
794
- </h2>
795
- <p></p>
796
- <form method="post" action="options.php">
797
- <?php
798
- settings_fields ('oa_social_login_settings_group');
799
- $settings = get_option ('oa_social_login_settings');
800
- ?>
801
- <div class="oa_social_login_box" id="oa_social_login_box_help">
802
- <div class="oa_social_login_box_title">
803
- <?php _e ('Logout to see the plugin in action!', 'oa_social_login'); ?>
804
- </div>
805
- <p>
806
- <?php
807
- _e ('Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected.', 'oa_social_login');
808
- ?>
809
- <strong><?php _e ('You therefore have to logout to see the plugin in action.', 'oa_social_login'); ?> </strong>
810
- </p>
811
- </div>
812
- <?php
813
- if (!empty ($_REQUEST ['settings-updated']) AND strtolower ($_REQUEST ['settings-updated']) == 'true')
814
- {
815
- ?>
816
- <div class="oa_social_login_box" id="oa_social_login_box_updated">
817
- <?php _e ('Your modifications have been saved successfully!', 'oa_social_login'); ?>
818
- </div>
819
- <?php
820
- }
821
- ?>
822
- <table class="form-table oa_social_login_table">
823
- <tr class="row_head">
824
- <th>
825
- <?php _e ('General Settings', 'oa_social_login'); ?>
826
- </th>
827
- </tr>
828
- <tr class="row_odd">
829
- <td>
830
- <strong><?php _e ('Enter the description to be displayed above the Social Login buttons (leave empty for none):', 'oa_social_login'); ?></strong>
831
- </td>
832
- </tr>
833
- <tr class="row_even">
834
- <td>
835
- <?php
836
- $plugin_caption = (isset ($settings ['plugin_caption']) ? $settings ['plugin_caption'] : _e ('Connect with:', 'oa_social_login'));
837
- ?>
838
- <input type="text" name="oa_social_login_settings[plugin_caption]" size="90" value="<?php echo htmlspecialchars ($plugin_caption); ?>" />
839
- </td>
840
- </tr>
841
- <tr class="row_odd">
842
- <td>
843
- <strong><?php _e ("Do you want to use the default or the small social network buttons?", 'oa_social_login'); ?></strong>
844
- </td>
845
- </tr>
846
- <tr class="row_even">
847
- <td>
848
- <?php
849
- $plugin_use_small_buttons = ((isset ($settings ['plugin_use_small_buttons']) AND in_array ($settings ['plugin_use_small_buttons'], array (0, 1))) ? $settings ['plugin_use_small_buttons'] : 0);
850
- ?>
851
- <input type="radio" name="oa_social_login_settings[plugin_use_small_buttons]" value="0" <?php echo ($plugin_use_small_buttons == 0 ? 'checked="checked"' : ''); ?> /> <?php printf (__ ('Use the default social network buttons (%s)', 'oa_social_login'), '32x32 px'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
852
- <input type="radio" name="oa_social_login_settings[plugin_use_small_buttons]" value="1" <?php echo ($plugin_use_small_buttons == 1 ? 'checked="checked"' : ''); ?> /> <?php printf (__ ('Use the small social network buttons (%s)', 'oa_social_login'), '16x16 px'); ?>
853
- </td>
854
- </tr>
855
- <tr class="row_odd">
856
- <td>
857
- <strong><?php _e ('Do you want to display the social networks used to connect in the user list of the administration area ?', 'oa_social_login'); ?></strong>
858
- </td>
859
- </tr>
860
- <tr class="row_even">
861
- <td>
862
- <?php
863
- $plugin_add_column_user_list = ((isset ($settings ['plugin_add_column_user_list']) AND in_array ($settings ['plugin_add_column_user_list'], array (0, 1))) ? $settings ['plugin_add_column_user_list'] : 0);
864
- ?>
865
- <input type="radio" name="oa_social_login_settings[plugin_add_column_user_list]" value="1" <?php echo ($plugin_add_column_user_list == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, add a new column to the user list and display the social network that the user connected with', 'oa_social_login'); ?> <br />
866
- <input type="radio" name="oa_social_login_settings[plugin_add_column_user_list]" value="0" <?php echo ($plugin_add_column_user_list == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, no not display the social networks in the user list', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong>
867
- </td>
868
- </tr>
869
- <tr class="row_odd">
870
- <td>
871
- <strong><?php _e ('Do you want to receive an email whenever a new user registers with Social Login ?', 'oa_social_login'); ?></strong>
872
- </td>
873
- </tr>
874
- <tr class="row_even">
875
- <td>
876
- <?php
877
- $plugin_notify_admin = ((isset ($settings ['plugin_notify_admin']) AND in_array ($settings ['plugin_notify_admin'], array (0, 1))) ? $settings ['plugin_notify_admin'] : 1);
878
- ?>
879
- <input type="radio" name="oa_social_login_settings[plugin_notify_admin]" value="1" <?php echo ($plugin_notify_admin == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, send me an email whenever a new user registers with Social Login', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
880
- <input type="radio" name="oa_social_login_settings[plugin_notify_admin]" value="0" <?php echo ($plugin_notify_admin == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not send me any emails', 'oa_social_login'); ?>
881
- </td>
882
- </tr>
883
- </table>
884
- <table class="form-table oa_social_login_table">
885
- <tr class="row_head">
886
- <th>
887
- <?php _e ('User Settings', 'oa_social_login'); ?>
888
- </th>
889
- </tr>
890
- <tr class="row_odd">
891
- <td>
892
- <strong><?php _e ("If the user's social network profile has no email address, should we ask the user to enter it manually?", 'oa_social_login'); ?></strong>
893
- </td>
894
- </tr>
895
- <tr class="row_even">
896
- <td>
897
- <?php
898
- $plugin_require_email = ((isset ($settings ['plugin_require_email']) AND in_array ($settings ['plugin_require_email'], array (0, 1))) ? $settings ['plugin_require_email'] : 0);
899
- ?>
900
- <input type="radio" name="oa_social_login_settings[plugin_require_email]" value="0" <?php echo ($plugin_require_email == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, simplify the registration by automatically creating a placeholder email', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
901
- <input type="radio" name="oa_social_login_settings[plugin_require_email]" value="1" <?php echo ($plugin_require_email == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, require the user to enter his email address manually and display this message:', 'oa_social_login'); ?> <br />
902
- <textarea name="oa_social_login_settings[plugin_require_email_text]" cols="90" rows="3"><?php echo (isset ($settings ['plugin_require_email_text']) ? htmlspecialchars ($settings ['plugin_require_email_text']) : _e ('<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue.', 'oa_social_login')); ?></textarea>
903
- <span class="description"><?php _e ('HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect.', 'oa_social_login'); ?></span>
904
- </td>
905
- </tr>
906
- <tr class="row_odd">
907
- <td>
908
- <strong><?php _e ("If the user's social network profile has a verified email, should we try to link it to an existing account?", 'oa_social_login'); ?></strong>
909
- </td>
910
- </tr>
911
- <tr class="row_even">
912
- <td>
913
- <?php
914
- $plugin_link_verified_accounts = ((isset ($settings ['plugin_link_verified_accounts']) AND in_array ($settings ['plugin_link_verified_accounts'], array (0, 1))) ? $settings ['plugin_link_verified_accounts'] : 1);
915
- ?>
916
- <input type="radio" name="oa_social_login_settings[plugin_link_verified_accounts]" value="1" <?php echo ($plugin_link_verified_accounts == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, try to link verified social network profiles to existing blog accounts', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
917
- <input type="radio" name="oa_social_login_settings[plugin_link_verified_accounts]" value="0" <?php echo ($plugin_link_verified_accounts == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable account linking', 'oa_social_login'); ?>
918
- </td>
919
- </tr>
920
- <tr class="row_odd">
921
- <td>
922
- <strong><?php _e ("If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?", 'oa_social_login'); ?></strong>
923
- </td>
924
- </tr>
925
- <tr class="row_even">
926
- <td>
927
- <?php
928
- $plugin_show_avatars_in_comments = ((isset ($settings ['plugin_show_avatars_in_comments']) AND in_array ($settings ['plugin_show_avatars_in_comments'], array (0, 1, 2))) ? $settings ['plugin_show_avatars_in_comments'] : 0);
929
- ?>
930
- <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="0" <?php echo ($plugin_show_avatars_in_comments == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not use avatars from social networks', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
931
- <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="1" <?php echo ($plugin_show_avatars_in_comments == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, use small avatars from social networks if available', 'oa_social_login'); ?><br />
932
- <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="2" <?php echo ($plugin_show_avatars_in_comments == 2 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, use large avatars from social networks if available', 'oa_social_login'); ?>
933
- </td>
934
- </tr>
935
- </table>
936
- <table class="form-table oa_social_login_table">
937
- <tr class="row_head">
938
- <th>
939
- <?php _e ('Comment Settings', 'oa_social_login'); ?>
940
- </th>
941
- </tr>
942
- <tr class="row_odd">
943
- <td>
944
- <strong><?php _e ("Show the Social Login buttons in the comment area?", 'oa_social_login'); ?></strong>
945
- </td>
946
- </tr>
947
- <tr class="row_even">
948
- <td>
949
- <?php
950
- $plugin_comment_show = ((isset ($settings ['plugin_comment_show']) AND in_array ($settings ['plugin_comment_show'], array (0, 1))) ? $settings ['plugin_comment_show'] : 1);
951
- ?>
952
- <input type="radio" name="oa_social_login_settings[plugin_comment_show]" value="1" <?php echo ($plugin_comment_show == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Login buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
953
- <input type="radio" name="oa_social_login_settings[plugin_comment_show]" value="0" <?php echo ($plugin_comment_show == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Login buttons', 'oa_social_login'); ?><br />
954
- </td>
955
- </tr>
956
- <tr class="row_odd">
957
- <td>
958
- <strong><?php _e ("Show the Social Login buttons in the comment area if comments are disabled for guests?", 'oa_social_login'); ?></strong>
959
- </td>
960
- </tr>
961
- <tr class="row_even">
962
- <td>
963
- <?php
964
- $plugin_comment_show_if_members_only = ((isset ($settings ['plugin_comment_show_if_members_only']) AND in_array ($settings ['plugin_comment_show_if_members_only'], array (0, 1))) ? $settings ['plugin_comment_show_if_members_only'] : 1);
965
- ?>
966
- <span class="description"><?php _e ('The buttons will be displayed below the "You must be logged in to leave a comment" notice.'); ?> </span><br />
967
- <input type="radio" name="oa_social_login_settings[plugin_comment_show_if_members_only]" value="1" <?php echo ($plugin_comment_show_if_members_only == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Login buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
968
- <input type="radio" name="oa_social_login_settings[plugin_comment_show_if_members_only]" value="0" <?php echo ($plugin_comment_show_if_members_only == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Login buttons', 'oa_social_login'); ?>
969
- </td>
970
- </tr>
971
- <tr class="row_odd">
972
- <td>
973
- <strong><?php _e ("Automatically approve comments left by users that connected by using Social Login?", 'oa_social_login'); ?></strong>
974
- </td>
975
- </tr>
976
- <tr class="row_even">
977
- <td>
978
- <?php
979
- $plugin_comment_auto_approve = ((isset ($settings ['plugin_comment_auto_approve']) AND in_array ($settings ['plugin_comment_auto_approve'], array (0, 1))) ? $settings ['plugin_comment_auto_approve'] : 0);
980
- ?>
981
- <input type="radio" name="oa_social_login_settings[plugin_comment_auto_approve]" value="1" <?php echo ($plugin_comment_auto_approve == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, automatically approve comments made by users that connected with Social Login', 'oa_social_login'); ?><br />
982
- <input type="radio" name="oa_social_login_settings[plugin_comment_auto_approve]" value="0" <?php echo ($plugin_comment_auto_approve == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not automatically approve', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)
983
- </strong><br />
984
- </td>
985
- </tr>
986
- </table>
987
-
988
- <table class="form-table oa_social_login_table">
989
- <tr class="row_head">
990
- <th>
991
- <?php _e ('Profile Settings', 'oa_social_login'); ?>
992
- </th>
993
- </tr>
994
- <tr class="row_odd">
995
- <td>
996
- <strong><?php _e ("Show the Social Link buttons in the user profile?", 'oa_social_login'); ?></strong>
997
- </td>
998
- </tr>
999
- <tr class="row_even">
1000
- <td>
1001
- <span class="description"><?php _e ('Keep this option enabled to allow each user to connect multiple social networks to his own profile.'); ?> </span><br />
1002
- <?php
1003
- $plugin_profile_show = ((isset ($settings ['plugin_profile_show']) AND in_array ($settings ['plugin_profile_show'], array (0, 1))) ? $settings ['plugin_profile_show'] : 1);
1004
- ?>
1005
- <input type="radio" name="oa_social_login_settings[plugin_profile_show]" value="1" <?php echo ($plugin_profile_show == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Link buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1006
- <input type="radio" name="oa_social_login_settings[plugin_profile_show]" value="0" <?php echo ($plugin_profile_show == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Link buttons', 'oa_social_login'); ?><br />
1007
- </td>
1008
- </tr>
1009
- </table>
1010
- <table class="form-table oa_social_login_table">
1011
- <tr class="row_head">
1012
- <th>
1013
- <?php _e ('Login Page Settings', 'oa_social_login'); ?>
1014
- </th>
1015
- </tr>
1016
- <tr class="row_odd">
1017
- <td>
1018
- <strong><?php _e ('Do you want to display Social Login on the login form of your blog?', 'oa_social_login'); ?></strong>
1019
- </td>
1020
- </tr>
1021
- <tr class="row_even">
1022
- <td>
1023
- <?php
1024
- $plugin_display_in_login_form = ((isset ($settings ['plugin_display_in_login_form']) AND in_array ($settings ['plugin_display_in_login_form'], array (0, 1))) ? $settings ['plugin_display_in_login_form'] : 1);
1025
- ?>
1026
- <input type="radio" name="oa_social_login_settings[plugin_display_in_login_form]" value="1" <?php echo ($plugin_display_in_login_form == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, display the social network buttons below the login form', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1027
- <input type="radio" name="oa_social_login_settings[plugin_display_in_login_form]" value="0" <?php echo ($plugin_display_in_login_form == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable social network buttons in the login form', 'oa_social_login'); ?>
1028
- </td>
1029
- </tr>
1030
- <tr class="row_odd">
1031
- <td>
1032
- <strong><?php _e ('Where should users be redirected to after having logged in with Social Login on the login page?', 'oa_social_login'); ?></strong>
1033
- </td>
1034
- </tr>
1035
- <tr class="row_even">
1036
- <td>
1037
- <?php
1038
- $plugin_login_form_redirect = ((isset ($settings ['plugin_login_form_redirect']) AND in_array ($settings ['plugin_login_form_redirect'], array ('homepage','dashboard','custom'))) ? $settings ['plugin_login_form_redirect'] : 'homepage');
1039
- $plugin_login_form_redirect_custom_url = (isset ($settings ['plugin_login_form_redirect_custom_url']) ? $settings ['plugin_login_form_redirect_custom_url'] : '');
1040
- ?>
1041
- <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="homepage" <?php echo ($plugin_login_form_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1042
- <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="dashboard" <?php echo ($plugin_login_form_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1043
- <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="custom" <?php echo ($plugin_login_form_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1044
- <input type="text" name="oa_social_login_settings[plugin_login_form_redirect_custom_url]" size="90" value="<?php echo htmlspecialchars ($plugin_login_form_redirect_custom_url); ?>" />
1045
- </td>
1046
- </tr>
1047
- </table>
1048
- <table class="form-table oa_social_login_table">
1049
- <tr class="row_head">
1050
- <th>
1051
- <?php _e ('Registration Page Settings', 'oa_social_login'); ?>
1052
- </th>
1053
- </tr>
1054
- <tr class="row_odd">
1055
- <td>
1056
- <strong><?php _e ('Do you want to display Social Login on the registration form of your blog?', 'oa_social_login'); ?></strong>
1057
- </td>
1058
- </tr>
1059
- <tr class="row_even">
1060
- <td>
1061
- <?php
1062
- $plugin_display_in_registration_form = ((isset ($settings ['plugin_display_in_registration_form']) AND in_array ($settings ['plugin_display_in_registration_form'], array (0, 1))) ? $settings ['plugin_display_in_registration_form'] : 1);
1063
- ?>
1064
- <input type="radio" name="oa_social_login_settings[plugin_display_in_registration_form]" value="1" <?php echo ($plugin_display_in_registration_form == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, display the social network buttons below the registration form', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1065
- <input type="radio" name="oa_social_login_settings[plugin_display_in_registration_form]" value="0" <?php echo ($plugin_display_in_registration_form == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable social network buttons in the registration form', 'oa_social_login'); ?>
1066
- </td>
1067
- </tr>
1068
- <tr class="row_odd">
1069
- <td>
1070
- <strong><?php _e ('Where should users be redirected to after having registered with Social Login on the registration page?', 'oa_social_login'); ?></strong>
1071
- </td>
1072
- </tr>
1073
- <tr class="row_even">
1074
- <td>
1075
- <?php
1076
- $plugin_registration_form_redirect = ((isset ($settings ['plugin_registration_form_redirect']) AND in_array ($settings ['plugin_registration_form_redirect'], array ('homepage','dashboard','custom'))) ? $settings ['plugin_registration_form_redirect'] : 'dashboard');
1077
- $plugin_registration_form_redirect_custom_url = (isset ($settings ['plugin_registration_form_redirect_custom_url']) ? $settings ['plugin_registration_form_redirect_custom_url'] : '');
1078
- ?>
1079
- <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="homepage" <?php echo ($plugin_registration_form_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?><br />
1080
- <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="dashboard" <?php echo ($plugin_registration_form_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1081
- <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="custom" <?php echo ($plugin_registration_form_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1082
- <input type="text" name="oa_social_login_settings[plugin_registration_form_redirect_custom_url]" size="90" value="<?php echo htmlspecialchars ($plugin_registration_form_redirect_custom_url); ?>" />
1083
- </td>
1084
- </tr>
1085
- </table>
1086
- <table class="form-table oa_social_login_table">
1087
- <tr class="row_head">
1088
- <th>
1089
- <?php _e ('Widget &amp; Shortcode Settings', 'oa_social_login'); ?>
1090
- </th>
1091
- </tr>
1092
- <tr class="row_odd">
1093
- <td>
1094
- <strong><?php _e ('Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:', 'oa_social_login'); ?></strong>
1095
- </td>
1096
- </tr>
1097
- <tr class="row_even">
1098
- <td>
1099
- <?php
1100
- $plugin_shortcode_login_redirect = ((isset ($settings ['plugin_shortcode_login_redirect']) AND in_array ($settings ['plugin_shortcode_login_redirect'], array ('current', 'dashboard', 'homepage', 'custom'))) ? $settings ['plugin_shortcode_login_redirect'] : 'current');
1101
- $plugin_shortcode_login_redirect_url = (isset ($settings ['plugin_shortcode_login_redirect_url']) ? $settings ['plugin_shortcode_login_redirect_url'] : '');
1102
- ?>
1103
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="current" <?php echo ($plugin_shortcode_login_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1104
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="homepage" <?php echo ($plugin_shortcode_login_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?> <br />
1105
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="dashboard" <?php echo ($plugin_shortcode_login_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1106
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="custom" <?php echo ($plugin_shortcode_login_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1107
- <input type="text" name="oa_social_login_settings[plugin_shortcode_login_redirect_url]" size="90" value="<?php echo htmlspecialchars ($plugin_shortcode_login_redirect_url); ?>" />
1108
- </td>
1109
- </tr>
1110
- <tr class="row_odd">
1111
- <td>
1112
- <strong><?php _e ('Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:', 'oa_social_login'); ?></strong>
1113
- </td>
1114
- </tr>
1115
- <tr class="row_even">
1116
- <td>
1117
- <?php
1118
- $plugin_shortcode_register_redirect = ((isset ($settings ['plugin_shortcode_register_redirect']) AND in_array ($settings ['plugin_shortcode_register_redirect'], array ('current', 'dashboard', 'homepage', 'custom'))) ? $settings ['plugin_shortcode_register_redirect'] : 'current');
1119
- $plugin_shortcode_register_redirect_url = (isset ($settings ['plugin_shortcode_register_redirect_url']) ? $settings ['plugin_shortcode_register_redirect_url'] : '');
1120
- ?>
1121
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="current" <?php echo ($plugin_shortcode_register_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1122
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="homepage" <?php echo ($plugin_shortcode_register_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?><br />
1123
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="dashboard" <?php echo ($plugin_shortcode_register_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1124
- <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="custom" <?php echo ($plugin_shortcode_register_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1125
- <input type="text" name="oa_social_login_settings[plugin_shortcode_register_redirect_url]" size="90" value="<?php echo htmlspecialchars ($plugin_shortcode_register_redirect_url); ?>" />
1126
- </td>
1127
- </tr>
1128
- </table>
1129
- <p class="submit">
1130
- <input type="hidden" name="page" value="settings" />
1131
- <input type="submit" class="button-primary" value="<?php _e ('Save Changes', 'oa_social_login') ?>" />
1132
- </p>
1133
- </form>
1134
- </div>
1135
- </div>
1136
- <?php
1137
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Admin User List: Add header column
5
+ **/
6
+ function oa_social_login_admin_user_column_add ($columns)
7
+ {
8
+ //Read settings
9
+ $settings = get_option ('oa_social_login_settings');
10
+
11
+ //Add column if enabled
12
+ if (!empty ($settings ['plugin_add_column_user_list']))
13
+ {
14
+ $columns ['oa_social_login_registration'] = __ ('Registration', 'oa_social_login');
15
+ }
16
+ return $columns;
17
+ }
18
+ add_filter ('manage_users_columns', 'oa_social_login_admin_user_column_add');
19
+
20
+
21
+ /**
22
+ * Admin User List: Add column content
23
+ **/
24
+ function oa_social_login_admin_user_colum_display ($value, $column_name, $user_id)
25
+ {
26
+ //Check if it is our own column
27
+ if ($column_name <> 'oa_social_login_registration')
28
+ {
29
+ return $value;
30
+ }
31
+
32
+ //Read Identity Provider
33
+ $meta_identity_providers = trim (strval (get_user_meta ($user_id, 'oa_social_login_identity_provider', true)));
34
+ if (strlen ($meta_identity_providers) > 0)
35
+ {
36
+ $meta_identity_providers = array_unique (explode ("|", $meta_identity_providers));
37
+ }
38
+
39
+ //Social Login Registration
40
+ if (is_array ($meta_identity_providers) AND count ($meta_identity_providers) > 0)
41
+ {
42
+ return '<strong>Social Login</strong>: ' . implode (", ", $meta_identity_providers);
43
+ }
44
+ //Traditional Registration
45
+ else
46
+ {
47
+ return __ ('Registration Form', 'oa_social_login');
48
+ }
49
+ }
50
+ add_action ('manage_users_custom_column', 'oa_social_login_admin_user_colum_display', 10, 3);
51
+
52
+
53
+ /**
54
+ * Add administration area links
55
+ **/
56
+ function oa_social_login_admin_menu ()
57
+ {
58
+ //Setup
59
+ $page = add_menu_page ('OneAll Social Login ' . __ ('Setup', 'oa_social_login'), 'Social Login', 'manage_options', 'oa_social_login_setup', 'oa_display_social_login_setup');
60
+ add_action ('admin_print_styles-' . $page, 'oa_social_login_admin_css');
61
+
62
+ //Settings
63
+ $page = add_submenu_page ('oa_social_login_setup', 'OneAll Social Login ' . __ ('Settings'), __ ('Settings'), 'manage_options', 'oa_social_login_settings', 'oa_display_social_login_settings');
64
+ add_action ('admin_print_styles-' . $page, 'oa_social_login_admin_css');
65
+
66
+ //Fix Setup title
67
+ global $submenu;
68
+ if (is_array ($submenu) AND isset ($submenu ['oa_social_login_setup']))
69
+ {
70
+ $submenu ['oa_social_login_setup'] [0] [0] = __ ('Setup', 'oa_social_login');
71
+ }
72
+
73
+ add_action ('admin_enqueue_scripts', 'oa_social_login_admin_js');
74
+ add_action ('admin_init', 'oa_register_social_login_settings');
75
+ add_action ('admin_notices', 'oa_social_login_admin_message');
76
+ }
77
+ add_action ('admin_menu', 'oa_social_login_admin_menu');
78
+
79
+
80
+ /**
81
+ * Automatically approve comments if option enabled
82
+ **/
83
+ function oa_social_login_admin_pre_comment_approved ($approved)
84
+ {
85
+ // No need to do the check if the comment has already been approved
86
+ if (empty ($approved))
87
+ {
88
+ //Read settings
89
+ $settings = get_option ('oa_social_login_settings');
90
+
91
+ //Check if enabled
92
+ if (!empty ($settings ['plugin_comment_auto_approve']))
93
+ {
94
+ $user_id = get_current_user_id ();
95
+ if (is_numeric ($user_id))
96
+ {
97
+ if (get_user_meta ($user_id, 'oa_social_login_user_token', true) !== false)
98
+ {
99
+ $approved = 1;
100
+ }
101
+ }
102
+ }
103
+ }
104
+ return $approved;
105
+ }
106
+ add_action ('pre_comment_approved', 'oa_social_login_admin_pre_comment_approved');
107
+
108
+
109
+ /**
110
+ * Add an activation message to be displayed once
111
+ */
112
+ function oa_social_login_admin_message ()
113
+ {
114
+ if (get_option ('oa_social_login_activation_message') !== '1')
115
+ {
116
+ echo '<div class="updated"><p><strong>' . __ ('Thank you for using Social Login!', 'oa_social_login') . '</strong> ' . sprintf (__ ('Please complete the <strong><a href="%s">Social Login Setup</a></strong> to enable the plugin.', 'oa_social_login'), 'admin.php?page=oa_social_login_setup') . '</p></div>';
117
+ update_option ('oa_social_login_activation_message', '1');
118
+ }
119
+ }
120
+
121
+
122
+ /**
123
+ * Autodetect API Connection Handler
124
+ */
125
+ function oa_social_login_admin_autodetect_api_connection_handler ()
126
+ {
127
+ //Check AJAX Nonce
128
+ check_ajax_referer ('oa_social_login_ajax_nonce');
129
+
130
+ //Check if CURL is available
131
+ if (oa_social_login_check_curl_available ())
132
+ {
133
+ //Check CURL HTTPS - Port 443
134
+ if (oa_social_login_check_curl (true) === true)
135
+ {
136
+ echo 'success_autodetect_api_curl_https';
137
+ die ();
138
+ }
139
+ //Check CURL HTTP - Port 80
140
+ elseif (oa_social_login_check_curl (false) === true)
141
+ {
142
+ echo 'success_autodetect_api_curl_http';
143
+ die ();
144
+ }
145
+ else
146
+ {
147
+ echo 'error_autodetect_api_curl_ports_blocked';
148
+ die ();
149
+ }
150
+ }
151
+ //Check if FSOCKOPEN is available
152
+ elseif (oa_social_login_check_fsockopen_available())
153
+ {
154
+ //Check FSOCKOPEN HTTPS - Port 443
155
+ if (oa_social_login_check_fsockopen (true) == true)
156
+ {
157
+ echo 'success_autodetect_api_fsockopen_https';
158
+ die ();
159
+ }
160
+ //Check FSOCKOPEN HTTP - Port 80
161
+ elseif (oa_social_login_check_fsockopen (false) == true)
162
+ {
163
+ echo 'success_autodetect_api_fsockopen_http';
164
+ die ();
165
+ }
166
+ else
167
+ {
168
+ echo 'error_autodetect_api_fsockopen_ports_blocked';
169
+ die ();
170
+ }
171
+ }
172
+
173
+ //No working handler found
174
+ echo 'error_autodetect_api_no_handler';
175
+ die ();
176
+ }
177
+ add_action ('wp_ajax_autodetect_api_connection_handler', 'oa_social_login_admin_autodetect_api_connection_handler');
178
+
179
+
180
+ /**
181
+ * Check API Settings through an Ajax Call
182
+ */
183
+ function oa_social_login_admin_check_api_settings ()
184
+ {
185
+ check_ajax_referer ('oa_social_login_ajax_nonce');
186
+
187
+ //Check if all fields have been filled out
188
+ if (empty ($_POST ['api_subdomain']) OR empty ($_POST ['api_key']) OR empty ($_POST ['api_secret']))
189
+ {
190
+ echo 'error_not_all_fields_filled_out';
191
+ delete_option ('oa_social_login_api_settings_verified');
192
+ die ();
193
+ }
194
+
195
+ //Check the handler
196
+ $api_connection_handler = ((!empty ($_POST ['api_connection_handler']) AND $_POST ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
197
+ $api_connection_use_https = ((!isset ($_POST ['api_connection_use_https']) OR $_POST ['api_connection_use_https'] == '1') ? true : false);
198
+
199
+
200
+ //FSOCKOPEN
201
+ if ($api_connection_handler == 'fsockopen')
202
+ {
203
+ if (!oa_social_login_check_fsockopen ($api_connection_use_https))
204
+ {
205
+ echo 'error_selected_handler_faulty';
206
+ delete_option ('oa_social_login_api_settings_verified');
207
+ die ();
208
+ }
209
+ }
210
+ //CURL
211
+ else
212
+ {
213
+ if (!oa_social_login_check_curl ($api_connection_use_https))
214
+ {
215
+ echo 'error_selected_handler_faulty';
216
+ delete_option ('oa_social_login_api_settings_verified');
217
+ die ();
218
+ }
219
+ }
220
+
221
+ $api_subdomain = trim (strtolower ($_POST ['api_subdomain']));
222
+ $api_key = trim ($_POST ['api_key']);
223
+ $api_secret = trim ($_POST ['api_secret']);
224
+
225
+ //Full domain entered
226
+ if (preg_match ("/([a-z0-9\-]+)\.api\.oneall\.com/i", $api_subdomain, $matches))
227
+ {
228
+ $api_subdomain = $matches [1];
229
+ }
230
+
231
+ //Check subdomain format
232
+ if (!preg_match ("/^[a-z0-9\-]+$/i", $api_subdomain))
233
+ {
234
+ echo 'error_subdomain_wrong_syntax';
235
+ delete_option ('oa_social_login_api_settings_verified');
236
+ die ();
237
+ }
238
+
239
+ //Domain
240
+ $api_domain = $api_subdomain . '.api.oneall.com';
241
+
242
+ //Connection to
243
+ $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_domain . '/tools/ping.json';
244
+
245
+ //Get connection details
246
+ $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, array ('api_key' => $api_key, 'api_secret' => $api_secret), 15);
247
+
248
+ //Parse result
249
+ if (is_object ($result) AND property_exists ($result, 'http_code') AND property_exists ($result, 'http_data'))
250
+ {
251
+ switch ($result->http_code)
252
+ {
253
+ //Success
254
+ case 200:
255
+ echo 'success';
256
+ update_option ('oa_social_login_api_settings_verified', '1');
257
+ break;
258
+
259
+ //Authentication Error
260
+ case 401:
261
+ echo 'error_authentication_credentials_wrong';
262
+ delete_option ('oa_social_login_api_settings_verified');
263
+ break;
264
+
265
+ //Wrong Subdomain
266
+ case 404:
267
+ echo 'error_subdomain_wrong';
268
+ delete_option ('oa_social_login_api_settings_verified');
269
+ break;
270
+
271
+ //Other error
272
+ default:
273
+ echo 'error_communication';
274
+ delete_option ('oa_social_login_api_settings_verified');
275
+ break;
276
+ }
277
+ }
278
+ else
279
+ {
280
+ echo 'error_communication';
281
+ delete_option ('oa_social_login_api_settings_verified');
282
+ }
283
+ die ();
284
+ }
285
+ add_action ('wp_ajax_check_api_settings', 'oa_social_login_admin_check_api_settings');
286
+
287
+
288
+ /**
289
+ * Add Settings JS
290
+ **/
291
+ function oa_social_login_admin_js ($hook)
292
+ {
293
+ if (stripos ($hook, 'oa_social_login') !== false)
294
+ {
295
+ if (!wp_script_is ('oa_social_login_admin_js', 'registered'))
296
+ {
297
+ wp_register_script ('oa_social_login_admin_js', OA_SOCIAL_LOGIN_PLUGIN_URL . "/assets/js/admin.js");
298
+ }
299
+
300
+ $oa_social_login_ajax_nonce = wp_create_nonce ('oa_social_login_ajax_nonce');
301
+
302
+ wp_enqueue_script ('oa_social_login_admin_js');
303
+ wp_enqueue_script ('jquery');
304
+
305
+ wp_localize_script ('oa_social_login_admin_js', 'objectL10n',
306
+ array (
307
+ 'oa_social_login_ajax_nonce' => $oa_social_login_ajax_nonce,
308
+ 'oa_admin_js_1' => __ ('Contacting API - please wait this may take a few minutes ...', 'oa_social_login'),
309
+ 'oa_admin_js_101' => __ ('The settings are correct - do not forget to save your changes!', 'oa_social_login'),
310
+ 'oa_admin_js_111' => __ ('Please fill out each of the fields above.', 'oa_social_login'),
311
+ 'oa_admin_js_112' => __ ('The subdomain does not exist. Have you filled it out correctly?', 'oa_social_login'),
312
+ 'oa_admin_js_113' => __ ('The subdomain has a wrong syntax!', 'oa_social_login'),
313
+ 'oa_admin_js_114' => __ ('Could not contact API. Are outbound requests on port 443 allowed?', 'oa_social_login'),
314
+ 'oa_admin_js_115' => __ ('The API subdomain is correct, but one or both keys are invalid', 'oa_social_login'),
315
+ 'oa_admin_js_116' => __ ('Connection handler does not work, try using the Autodetection', 'oa_social_login'),
316
+ 'oa_admin_js_201a' => __ ('Detected CURL on Port 443 - do not forget to save your changes!', 'oa_social_login'),
317
+ 'oa_admin_js_201b' => __ ('Detected CURL on Port 80 - do not forget to save your changes!', 'oa_social_login'),
318
+ 'oa_admin_js_201c' => __ ('CURL is available but both ports (80, 443) are blocked for outbound requests', 'oa_social_login'),
319
+ 'oa_admin_js_202a' => __ ('Detected FSOCKOPEN on Port 443 - do not forget to save your changes!', 'oa_social_login'),
320
+ 'oa_admin_js_202b' => __ ('Detected FSOCKOPEN on Port 80 - do not forget to save your changes!', 'oa_social_login'),
321
+ 'oa_admin_js_202c' => __ ('FSOCKOPEN is available but both ports (80, 443) are blocked for outbound requests', 'oa_social_login'),
322
+ 'oa_admin_js_211' => sprintf (__ ('Autodetection Error - our <a href="%s" target="_blank">documentation</a> helps you fix this issue.', 'oa_social_login'), 'http://docs.oneall.com/plugins/guide/social-login-wordpress/#help')
323
+ ));
324
+ }
325
+ }
326
+
327
+
328
+ /**
329
+ * Add Settings CSS
330
+ **/
331
+ function oa_social_login_admin_css ($hook = '')
332
+ {
333
+ if (!wp_style_is ('oa_social_login_admin_css', 'registered'))
334
+ {
335
+ wp_register_style ('oa_social_login_admin_css', OA_SOCIAL_LOGIN_PLUGIN_URL . "/assets/css/admin.css");
336
+ }
337
+
338
+ if (did_action ('wp_print_styles'))
339
+ {
340
+ wp_print_styles ('oa_social_login_admin_css');
341
+ }
342
+ else
343
+ {
344
+ wp_enqueue_style ('oa_social_login_admin_css');
345
+ }
346
+ }
347
+
348
+
349
+ /**
350
+ * Register plugin settings and their sanitization callback
351
+ */
352
+ function oa_register_social_login_settings ()
353
+ {
354
+ register_setting ('oa_social_login_settings_group', 'oa_social_login_settings', 'oa_social_login_settings_validate');
355
+ }
356
+
357
+
358
+ /**
359
+ * Plugin settings sanitization callback
360
+ */
361
+ function oa_social_login_settings_validate ($settings)
362
+ {
363
+ //Import providers
364
+ GLOBAL $oa_social_login_providers;
365
+
366
+ //Settings page?
367
+ $page = (!empty ($_POST ['page']) ? strtolower ($_POST ['page']) : '');
368
+
369
+ //Store the sanitzed settings
370
+ $sanitzed_settings = get_option ('oa_social_login_settings');
371
+
372
+ //Check format
373
+ if (!is_array ($sanitzed_settings))
374
+ {
375
+ $sanitzed_settings = array ();
376
+ }
377
+
378
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////
379
+ //Setup
380
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////
381
+ if ($page == 'setup')
382
+ {
383
+
384
+ //Extract fields
385
+ foreach (array (
386
+ 'api_connection_handler',
387
+ 'api_connection_use_https',
388
+ 'api_subdomain',
389
+ 'asynchronous_javascript',
390
+ 'api_key',
391
+ 'api_secret',
392
+ 'providers'
393
+ ) AS $key)
394
+ {
395
+ //Value is given
396
+ if (isset ($settings [$key]))
397
+ {
398
+ //Provider tickboxes
399
+ if ($key == 'providers')
400
+ {
401
+ //Resest providers
402
+ $sanitzed_settings ['providers'] = array ();
403
+
404
+ //Loop through new values
405
+ if (is_array ($settings ['providers']))
406
+ {
407
+ //Loop through valid values
408
+ foreach ($oa_social_login_providers AS $key => $name)
409
+ {
410
+ if (isset ($settings ['providers'] [$key]) AND $settings ['providers'] [$key] == '1')
411
+ {
412
+ $sanitzed_settings ['providers'] [$key] = 1;
413
+ }
414
+ }
415
+ }
416
+ }
417
+ //Other field
418
+ else
419
+ {
420
+ $sanitzed_settings [$key] = trim ($settings [$key]);
421
+ }
422
+ }
423
+ }
424
+ //Sanitize API Use HTTPS
425
+ $sanitzed_settings ['api_connection_use_https'] = (empty ($sanitzed_settings ['api_connection_use_https']) ? 0 : 1);
426
+
427
+ //Sanitize API Connection handler
428
+ if (isset ($sanitzed_settings ['api_connection_handler']) AND in_array (strtolower ($sanitzed_settings ['api_connection_handler']), array ('curl','fsockopen')))
429
+ {
430
+ $sanitzed_settings ['api_connection_handler'] = strtolower ($sanitzed_settings ['api_connection_handler']);
431
+ }
432
+ else
433
+ {
434
+ $sanitzed_settings ['api_connection_handler'] = 'curl';
435
+ }
436
+
437
+ //Sanitize API Subdomain
438
+ if (isset ($sanitzed_settings ['api_subdomain']))
439
+ {
440
+ //Subdomain is always in lowercase
441
+ $api_subdomain = strtolower ($sanitzed_settings ['api_subdomain']);
442
+
443
+ //Full domain entered
444
+ if (preg_match ("/([a-z0-9\-]+)\.api\.oneall\.com/i", $api_subdomain, $matches))
445
+ {
446
+ $api_subdomain = $matches [1];
447
+ }
448
+
449
+ $sanitzed_settings ['api_subdomain'] = $api_subdomain;
450
+ }
451
+
452
+ //Sanitize Synchronous Flag
453
+ $sanitzed_settings ['asynchronous_javascript'] = (empty ($sanitzed_settings ['asynchronous_javascript']) ? 0 : 1);
454
+
455
+ //Done
456
+ return $sanitzed_settings;
457
+ }
458
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////
459
+ //Setup
460
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////
461
+ elseif ($page == 'settings')
462
+ {
463
+ //Extract fields
464
+ foreach (array (
465
+ 'plugin_add_column_user_list',
466
+ 'plugin_require_email',
467
+ 'plugin_require_email_text',
468
+ 'plugin_caption',
469
+ 'plugin_link_verified_accounts',
470
+ 'plugin_show_avatars_in_comments',
471
+ 'plugin_use_small_buttons',
472
+ 'plugin_display_in_login_form',
473
+ 'plugin_login_form_redirect',
474
+ 'plugin_login_form_redirect_custom_url',
475
+ 'plugin_display_in_registration_form',
476
+ 'plugin_registration_form_redirect',
477
+ 'plugin_registration_form_redirect_custom_url',
478
+ 'plugin_comment_show_if_members_only',
479
+ 'plugin_comment_auto_approve',
480
+ 'plugin_comment_show',
481
+ 'plugin_profile_show',
482
+ 'plugin_shortcode_login_redirect',
483
+ 'plugin_shortcode_login_redirect_url',
484
+ 'plugin_shortcode_register_redirect',
485
+ 'plugin_shortcode_register_redirect_url',
486
+ 'plugin_notify_admin'
487
+ ) AS $key)
488
+ {
489
+ if (isset ($settings [$key]))
490
+ {
491
+ $sanitzed_settings [$key] = trim ($settings [$key]);
492
+ }
493
+ else
494
+ {
495
+ $sanitzed_settings [$key] = '';
496
+ }
497
+ }
498
+
499
+ //Flag settings
500
+ $sanitzed_settings ['plugin_add_column_user_list'] = ($sanitzed_settings ['plugin_add_column_user_list'] == '1' ? 1 : 0);
501
+ $sanitzed_settings ['plugin_profile_show'] = ($sanitzed_settings ['plugin_profile_show'] == '0' ? 0 : 1);
502
+ $sanitzed_settings ['plugin_notify_admin'] = ($sanitzed_settings ['plugin_notify_admin'] == '0' ? 0 : 1);
503
+ $sanitzed_settings ['plugin_require_email'] = ($sanitzed_settings ['plugin_require_email'] == '1' ? 1 : 0);
504
+ $sanitzed_settings ['plugin_comment_show'] = ($sanitzed_settings ['plugin_comment_show'] == '0' ? 0 : 1);
505
+ $sanitzed_settings ['plugin_comment_show_if_members_only'] = ($sanitzed_settings ['plugin_comment_show_if_members_only'] == '0' ? 0 : 1);
506
+ $sanitzed_settings ['plugin_use_small_buttons'] = ($sanitzed_settings ['plugin_use_small_buttons'] == '1' ? 1 : 0);
507
+ $sanitzed_settings ['plugin_display_in_login_form'] = ($sanitzed_settings ['plugin_display_in_login_form'] == '0' ? 0 : 1);
508
+ $sanitzed_settings ['plugin_display_in_registration_form'] = ($sanitzed_settings ['plugin_display_in_registration_form'] == '0' ? 0 : 1);
509
+ $sanitzed_settings ['plugin_link_verified_accounts'] = ($sanitzed_settings ['plugin_link_verified_accounts'] == '0' ? 0 : 1);
510
+ $sanitzed_settings ['plugin_comment_auto_approve'] = ($sanitzed_settings ['plugin_comment_auto_approve'] == '1' ? 1 : 0);
511
+
512
+ //Multiple settings
513
+ $sanitzed_settings ['plugin_show_avatars_in_comments'] = (in_array ($sanitzed_settings ['plugin_show_avatars_in_comments'], array (0, 1, 2)) ? $sanitzed_settings ['plugin_show_avatars_in_comments'] : 0);
514
+
515
+ //Redirection Settings: Widget & Shortcode Login
516
  $sanitzed_settings ['plugin_shortcode_login_redirect'] = (in_array ($sanitzed_settings ['plugin_shortcode_login_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_shortcode_login_redirect'] : 'current');
517
+ if ($sanitzed_settings ['plugin_shortcode_login_redirect'] == 'custom')
518
+ {
519
+ if (empty ($sanitzed_settings ['plugin_shortcode_login_redirect_url']))
520
+ {
521
+ $sanitzed_settings ['plugin_shortcode_login_redirect'] = 'current';
522
+ }
523
+ }
524
+ else
525
+ {
526
+ $sanitzed_settings ['plugin_shortcode_login_redirect_url'] = '';
527
+ }
528
+
529
+ //Redirection Settings: Widget & Shortcode Registration
530
  $sanitzed_settings ['plugin_shortcode_register_redirect'] = (in_array ($sanitzed_settings ['plugin_shortcode_register_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_shortcode_register_redirect'] : 'current');
531
+ if ($sanitzed_settings ['plugin_shortcode_register_redirect'] == 'custom')
532
+ {
533
+ if (empty ($sanitzed_settings ['plugin_shortcode_register_redirect_url']))
534
+ {
535
+ $sanitzed_settings ['plugin_shortcode_register_redirect'] = 'current';
536
+ }
537
+ }
538
+ else
539
+ {
540
+ $sanitzed_settings ['plugin_shortcode_register_redirect_url'] = '';
541
+ }
542
+
543
+ //Redirection Settings: Form Login
544
+ $sanitzed_settings ['plugin_login_form_redirect'] = (in_array ($sanitzed_settings ['plugin_login_form_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_login_form_redirect'] : 'homepage');
545
+ if ($sanitzed_settings ['plugin_login_form_redirect'] == 'custom')
546
+ {
547
+ if (empty ($sanitzed_settings ['plugin_login_form_redirect_custom_url']))
548
+ {
549
+ $sanitzed_settings ['plugin_login_form_redirect'] = 'homepage';
550
+ }
551
+ }
552
+ else
553
+ {
554
+ $sanitzed_settings ['plugin_login_form_redirect_custom_url'] = '';
555
+ }
556
+
557
+
558
+ //Redirection Settings: Form Registration
559
+ $sanitzed_settings ['plugin_registration_form_redirect'] = (in_array ($sanitzed_settings ['plugin_registration_form_redirect'], array ('current','dashboard','homepage','custom')) ? $sanitzed_settings ['plugin_registration_form_redirect'] : 'dashboard');
560
+ if ($sanitzed_settings ['plugin_registration_form_redirect'] == 'custom')
561
+ {
562
+ if (empty ($sanitzed_settings ['plugin_registration_form_redirect_custom_url']))
563
+ {
564
+ $sanitzed_settings ['plugin_registration_form_redirect'] = 'dashboard';
565
+ }
566
+ }
567
+ else
568
+ {
569
+ $sanitzed_settings ['plugin_registration_form_redirect_custom_url'] = '';
570
+ }
571
+
572
+ //Done
573
+ return $sanitzed_settings;
574
+ }
575
+
576
+ //Error
577
+ return array ();
578
+ }
579
+
580
+
581
+ /**
582
+ * Display Settings Page
583
+ **/
584
+ function oa_display_social_login_setup ()
585
+ {
586
+ //Import providers
587
+ GLOBAL $oa_social_login_providers;
588
+ ?>
589
+ <div class="wrap">
590
+ <div id="oa_social_login_page" class="oa_social_login_setup">
591
+ <h2>OneAll Social Login <?php echo (defined ('OA_SOCIAL_LOGIN_VERSION') ? OA_SOCIAL_LOGIN_VERSION : ''); ?></h2>
592
+ <h2 class="nav-tab-wrapper">
593
+ <a class="nav-tab nav-tab-active" href="admin.php?page=oa_social_login_setup"><?php _e ('Setup', 'oa_social_login'); ?></a>
594
+ <a class="nav-tab" href="admin.php?page=oa_social_login_settings"><?php _e ('Settings', 'oa_social_login'); ?></a>
595
+ </h2>
596
+ <?php
597
+ if (get_option ('oa_social_login_api_settings_verified') !== '1')
598
+ {
599
+ ?>
600
+ <p>
601
+ <?php _e ('Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Instagram, VKontakte, Google or Yahoo.', 'oa_social_login'); ?>
602
+ <strong><?php _e ('Draw a larger audience and increase your user engagement in a few simple steps.', 'oa_social_login'); ?> </strong>
603
+ </p>
604
+ <div class="oa_social_login_box" id="oa_social_login_box_status">
605
+ <div class="oa_social_login_box_title">
606
+ <?php _e ('Get Started!', 'oa_social_login'); ?>
607
+ </div>
608
+ <p>
609
+ <?php printf (__ ('To be able to use this plugin you first of all need to create a free account at %s and setup a Site.', 'oa_social_login'), '<a href="https://app.oneall.com/signup/" target="_blank">http://www.oneall.com</a>'); ?>
610
+ <?php _e ('After having created your account and setup your Site, please enter the Site settings in the form below.', 'oa_social_login'); ?>
611
+ <?php _e ("Don't worry the setup takes only a couple of minutes!", 'oa_social_login'); ?>
612
+ </p>
613
+ <p>
614
+ <a class="button-secondary" href="https://app.oneall.com/signup/" target="_blank"><strong><?php _e ('Click here to setup your free account', 'oa_social_login'); ?></strong></a>
615
+ </p>
616
+ <h3>
617
+ <?php printf (__ ('You are in good company! This plugin is used on more than %s websites!', 'oa_social_login'), '250,000'); ?>
618
+ </h3>
619
+ </div>
620
+ <?php
621
+ }
622
+ else
623
+ {
624
+ ?>
625
+ <p></p>
626
+ <div class="oa_social_login_box" id="oa_social_login_box_status">
627
+ <div class="oa_social_login_box_title">
628
+ <?php _e ('Your API Account is setup correctly', 'oa_social_login'); ?>
629
+ </div>
630
+ <p>
631
+ <?php _e ('Login to your account to manage your providers and access your Social Insights.', 'oa_social_login'); ?>
632
+ <?php _e ("Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement.", 'oa_social_login'); ?>
633
+ </p>
634
+ <p>
635
+ <a class="button-secondary" href="https://app.oneall.com/signin/" target="_blank"><strong><?php _e ('Click here to login to your account', 'oa_social_login'); ?></strong> </a>
636
+ </p>
637
+ </div>
638
+ <?php
639
+ }
640
+ ?>
641
+ <div class="oa_social_login_box" id="oa_social_login_box_help">
642
+ <div class="oa_social_login_box_title">
643
+ <?php _e ('Help, Updates &amp; Documentation', 'oa_social_login'); ?>
644
+ </div>
645
+ <ul>
646
+ <li><?php printf (__ ('<a target="_blank" href="%s">Follow us on Twitter</a> to stay informed about updates', 'oa_social_login'), 'http://www.twitter.com/oneall'); ?>;</li>
647
+ <li><?php printf (__ ('<a target="_blank" href="%s">Read the online documentation</a> for more information about this plugin', 'oa_social_login'), 'http://docs.oneall.com/plugins/guide/social-login-wordpress/'); ?>;</li>
648
+ <li><?php printf (__ ('<a target="_blank" href="%s">Contact us</a> if you have feedback or need assistance', 'oa_social_login'), 'http://www.oneall.com/company/contact-us/'); ?>.
649
+ <li><?php printf (__ ('We also have <a target="_blank" href="%s">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ...', 'oa_social_login'), 'http://docs.oneall.com/plugins/'); ?>.
650
+ </li>
651
+ </ul>
652
+ </div>
653
+ <?php
654
+ if (!empty ($_REQUEST ['settings-updated']) AND strtolower ($_REQUEST ['settings-updated']) == 'true')
655
+ {
656
+ ?>
657
+ <div class="oa_social_login_box" id="oa_social_login_box_updated">
658
+ <?php _e ('Your modifications have been saved successfully!'); ?>
659
+ </div>
660
+ <?php
661
+ }
662
+ ?>
663
+ <form method="post" action="options.php">
664
+ <?php
665
+ settings_fields ('oa_social_login_settings_group');
666
+ $settings = get_option ('oa_social_login_settings');
667
+ ?>
668
+ <table class="form-table oa_social_login_table">
669
+ <tr class="row_head">
670
+ <th colspan="2"><?php _e ('API Connection Handler', 'oa_social_login'); ?>
671
+ </th>
672
+ </tr>
673
+ <?php
674
+ $api_connection_handler = ((empty ($settings ['api_connection_handler']) OR $settings ['api_connection_handler'] <> 'fsockopen') ? 'curl' : 'fsockopen');
675
+ ?>
676
+ <tr class="row_even">
677
+ <td rowspan="2" class="row_multi" style="width:200px">
678
+ <label><?php _e ('API Connection Handler', 'oa_social_login'); ?>:</label>
679
+ </td>
680
+ <td>
681
+ <input type="radio" id="oa_social_login_api_connection_handler_curl" name="oa_social_login_settings[api_connection_handler]" value="curl" <?php echo (($api_connection_handler <> 'fsockopen') ? 'checked="checked"' : ''); ?> />
682
+ <label for="oa_social_login_api_connection_handler_curl"><?php _e ('Use PHP CURL to communicate with the API', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong></label><br />
683
+ <span class="description"><?php _e ('Using CURL is recommended but it might be disabled on some servers.', 'oa_social_login'); ?></span>
684
+ </td>
685
+ </tr>
686
+ <tr class="row_even">
687
+ <td>
688
+ <input type="radio" id="oa_social_login_api_connection_handler_fsockopen" name="oa_social_login_settings[api_connection_handler]" value="fsockopen" <?php echo (($api_connection_handler == 'fsockopen') ? 'checked="checked"' : ''); ?> />
689
+ <label for="oa_social_login_api_connection_handler_fsockopen"><?php _e ('Use PHP FSOCKOPEN to communicate with the API', 'oa_social_login'); ?> </label><br />
690
+ <span class="description"><?php _e ('Try using FSOCKOPEN if you encounter any problems with CURL.', 'oa_social_login'); ?></span>
691
+ </td>
692
+ </tr>
693
+ <?php
694
+ $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
695
+ ?>
696
+ <tr class="row_even">
697
+ <td rowspan="2" class="row_multi" style="width:200px">
698
+ <label><?php _e ('API Connection Port', 'oa_social_login'); ?>:</label>
699
+ </td>
700
+ <td>
701
+ <input type="radio" id="oa_social_login_api_connection_handler_use_https_1" name="oa_social_login_settings[api_connection_use_https]" value="1" <?php echo ($api_connection_use_https ? 'checked="checked"' : ''); ?> />
702
+ <label for="oa_social_login_api_connection_handler_use_https_1"><?php _e ('Communication via HTTPS on port 443', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong></label><br />
703
+ <span class="description"><?php _e ('Using port 443 is secure but you might need OpenSSL', 'oa_social_login'); ?></span>
704
+ </td>
705
+ </tr>
706
+ <tr class="row_even">
707
+ <td>
708
+ <input type="radio" id="oa_social_login_api_connection_handler_use_https_0" name="oa_social_login_settings[api_connection_use_https]" value="0" <?php echo (!$api_connection_use_https ? 'checked="checked"' : ''); ?> />
709
+ <label for="oa_social_login_api_connection_handler_use_https_0"><?php _e ('Communication via HTTP on port 80', 'oa_social_login'); ?> </label><br />
710
+ <span class="description"><?php _e ("Using port 80 is a bit faster, doesn't need OpenSSL but is less secure", 'oa_social_login'); ?></span>
711
+ </td>
712
+ </tr>
713
+ <tr class="row_foot">
714
+ <td>
715
+ <a class="button-primary" id="oa_social_login_autodetect_api_connection_handler" href="#"><?php _e ('Autodetect API Connection', 'oa_social_login'); ?></a>
716
+ </td>
717
+ <td>
718
+ <div id="oa_social_login_api_connection_handler_result"></div>
719
+ </td>
720
+ </tr>
721
+ </table>
722
+ <table class="form-table oa_social_login_table">
723
+ <tr class="row_head">
724
+ <th>
725
+ <?php _e ('API Settings', 'oa_social_login'); ?>
726
+ </th>
727
+ <th><a href="https://app.oneall.com/applications/" target="_blank"><?php _e ('Click here to create and view your API Credentials', 'oa_social_login'); ?></a>
728
+ </th>
729
+ </tr>
730
+ <tr class="row_even">
731
+ <td style="width:200px">
732
+ <label for="oa_social_login_settings_api_subdomain"><?php _e ('API Subdomain', 'oa_social_login'); ?>:</label>
733
+ </td>
734
+ <td>
735
+ <input type="text" id="oa_social_login_settings_api_subdomain" name="oa_social_login_settings[api_subdomain]" size="65" value="<?php echo (isset ($settings ['api_subdomain']) ? htmlspecialchars ($settings ['api_subdomain']) : ''); ?>" />
736
+ </td>
737
+ </tr>
738
+ <tr class="row_odd">
739
+ <td style="width:200px">
740
+ <label for="oa_social_login_settings_api_key"><?php _e ('API Public Key', 'oa_social_login'); ?>:</label>
741
+ </td>
742
+ <td>
743
+ <input type="text" id="oa_social_login_settings_api_key" name="oa_social_login_settings[api_key]" size="65" value="<?php echo (isset ($settings ['api_key']) ? htmlspecialchars ($settings ['api_key']) : ''); ?>" />
744
+ </td>
745
+ </tr>
746
+ <tr class="row_even">
747
+ <td style="width:200px">
748
+ <label for="oa_social_login_settings_api_secret"><?php _e ('API Private Key', 'oa_social_login'); ?>:</label>
749
+ </td>
750
+ <td>
751
+ <input type="text" id="oa_social_login_settings_api_secret" name="oa_social_login_settings[api_secret]" size="65" value="<?php echo (isset ($settings ['api_secret']) ? htmlspecialchars ($settings ['api_secret']) : ''); ?>" />
752
+ </td>
753
+ </tr>
754
+ <tr class="row_foot">
755
+ <td>
756
+ <a class="button-primary" id="oa_social_login_test_api_settings" href="#"><?php _e ('Verify API Settings', 'oa_social_login'); ?> </a>
757
+ </td>
758
+ <td>
759
+ <div id="oa_social_login_api_test_result"></div>
760
+ </td>
761
+ </tr>
762
+ </table>
763
+
764
+ <table class="form-table oa_social_login_table">
765
+ <tr class="row_head">
766
+ <th colspan="2"><?php _e ('JavaScript Settings', 'oa_social_login'); ?>
767
+ </th>
768
+ </tr>
769
+ <?php
770
+
771
+ //We dont have a value yet
772
+ if ( ! isset ($settings['asynchronous_javascript']))
773
+ {
774
+ //No subdomain, this is probably a new installation.
775
+ if ( ! isset ($settings ['api_subdomain']))
776
+ {
777
+ //Enable asynchronous JavaScript.
778
+ $asynchronous_javascript = 1;
779
+ }
780
+ //We have a subdomain, this is probably an updated version of the plugin.
781
+ else
782
+ {
783
+ //Disable asynchronous JavaScript.
784
+ $asynchronous_javascript = 0;
785
+ }
786
+ }
787
+ //We have a value.
788
+ else
789
+ {
790
+ $asynchronous_javascript = ( ! empty ($settings ['asynchronous_javascript']) ? 1 : 0);
791
+ }
792
+
793
+ ?>
794
+ <tr class="row_even">
795
+ <td rowspan="2" class="row_multi" style="width:200px">
796
+ <label><?php _e ('JavaScript Usage', 'oa_social_login'); ?>:</label>
797
+ </td>
798
+ <td>
799
+ <input type="radio" id="oa_social_login_asynchronous_javascript_1" name="oa_social_login_settings[asynchronous_javascript]" value="1" <?php echo ( ! empty ($asynchronous_javascript) ? 'checked="checked"' : ''); ?> />
800
+ <label for="oa_social_login_asynchronous_javascript_1"><?php _e ('Asynchronous JavaScript', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong></label><br />
801
+ <span class="description"><?php _e ('Background loading without interfering with the display and behavior of the existing page.', 'oa_social_login'); ?></span>
802
+ </td>
803
+ </tr>
804
+ <tr class="row_even">
805
+ <td>
806
+ <input type="radio" id="oa_social_login_asynchronous_javascript_0" name="oa_social_login_settings[asynchronous_javascript]" value="0" <?php echo (empty ($asynchronous_javascript) ? 'checked="checked"' : ''); ?> />
807
+ <label for="oa_social_login_asynchronous_javascript_0"><?php _e ('Synchronous JavaScript', 'oa_social_login'); ?> </label><br />
808
+ <span class="description"><?php _e ('Real-time loading when the page is being rendered by the browser.', 'oa_social_login'); ?></span>
809
+ </td>
810
+ </tr>
811
+ </table>
812
+
813
+ <table class="form-table oa_social_login_table">
814
+ <tr class="row_head">
815
+ <th colspan="2">
816
+ <?php _e ('Enable the social networks/identity providers of your choice', 'oa_social_login'); ?>
817
+ </th>
818
+ </tr>
819
+ <?php
820
+ $i = 0;
821
+ foreach ($oa_social_login_providers AS $key => $provider_data)
822
+ {
823
+ ?>
824
+ <tr class="row_provider <?php echo ((($i++) % 2) == 0) ? 'row_even' : 'row_odd' ?>">
825
+ <td class="cell_provider_icon">
826
+ <label for="oneall_social_login_provider_<?php echo $key; ?>">
827
+ <span class="oa_social_login_provider oa_social_login_provider_<?php echo $key; ?>" title="<?php echo htmlspecialchars ($provider_data ['name']); ?>"><?php echo htmlspecialchars ($provider_data ['name']); ?> </span>
828
+ </label>
829
+ </td>
830
+ <td class="cell_provider_label">
831
+ <input type="checkbox" id="oneall_social_login_provider_<?php echo $key; ?>" name="oa_social_login_settings[providers][<?php echo $key; ?>]" value="1" <?php checked ('1', $settings ['providers'] [$key]); ?> />
832
+ <label for="oneall_social_login_provider_<?php echo $key; ?>"><?php echo htmlspecialchars ($provider_data ['name']); ?> </label>
833
+ <?php
834
+ if (in_array ($key, array ('vkontakte', 'mailru', 'odnoklassniki')))
835
+ {
836
+ echo ' - ' . sprintf (__ ('To enable cyrillic usernames, you might need <a target="_blank" href="%s">this plugin</a>', 'oa_social_login'), 'http://wordpress.org/extend/plugins/wordpress-special-characters-in-usernames/');
837
+ }
838
+ ?>
839
+ </td>
840
+ </tr>
841
+ <?php
842
+ }
843
+ ?>
844
+ </table>
845
+ <p class="submit">
846
+ <input type="hidden" name="page" value="setup" />
847
+ <input type="submit" class="button-primary" value="<?php _e ('Save Changes', 'oa_social_login') ?>" />
848
+ </p>
849
+ </form>
850
+ </div>
851
+ </div>
852
+ <?php
853
+ }
854
+
855
+
856
+ /**
857
+ * Display Settings Page
858
+ **/
859
+ function oa_display_social_login_settings ()
860
+ {
861
+ ?>
862
+ <div class="wrap">
863
+ <div id="oa_social_login_page" class="oa_social_login_settings">
864
+ <h2>OneAll Social Login <?php echo (defined ('OA_SOCIAL_LOGIN_VERSION') ? OA_SOCIAL_LOGIN_VERSION : ''); ?></h2>
865
+ <h2 class="nav-tab-wrapper">
866
+ <a class="nav-tab" href="admin.php?page=oa_social_login_setup"><?php _e ('Setup', 'oa_social_login'); ?></a>
867
+ <a class="nav-tab nav-tab-active" href="admin.php?page=oa_social_login_settings"><?php _e ('Settings', 'oa_social_login'); ?></a>
868
+ </h2>
869
+ <p></p>
870
+ <form method="post" action="options.php">
871
+ <?php
872
+ settings_fields ('oa_social_login_settings_group');
873
+ $settings = get_option ('oa_social_login_settings');
874
+ ?>
875
+ <div class="oa_social_login_box" id="oa_social_login_box_help">
876
+ <div class="oa_social_login_box_title">
877
+ <?php _e ('Logout to see the plugin in action!', 'oa_social_login'); ?>
878
+ </div>
879
+ <p>
880
+ <?php
881
+ _e ('Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected.', 'oa_social_login');
882
+ ?>
883
+ <strong><?php _e ('You therefore have to logout to see the plugin in action.', 'oa_social_login'); ?> </strong>
884
+ </p>
885
+ </div>
886
+ <?php
887
+ if (!empty ($_REQUEST ['settings-updated']) AND strtolower ($_REQUEST ['settings-updated']) == 'true')
888
+ {
889
+ ?>
890
+ <div class="oa_social_login_box" id="oa_social_login_box_updated">
891
+ <?php _e ('Your modifications have been saved successfully!', 'oa_social_login'); ?>
892
+ </div>
893
+ <?php
894
+ }
895
+ ?>
896
+ <table class="form-table oa_social_login_table">
897
+ <tr class="row_head">
898
+ <th>
899
+ <?php _e ('General Settings', 'oa_social_login'); ?>
900
+ </th>
901
+ </tr>
902
+ <tr class="row_odd">
903
+ <td>
904
+ <strong><?php _e ('Enter the description to be displayed above the Social Login buttons (leave empty for none):', 'oa_social_login'); ?></strong>
905
+ </td>
906
+ </tr>
907
+ <tr class="row_even">
908
+ <td>
909
+ <?php
910
+ $plugin_caption = (isset ($settings ['plugin_caption']) ? $settings ['plugin_caption'] : __ ('Connect with:', 'oa_social_login'));
911
+ ?>
912
+ <input type="text" name="oa_social_login_settings[plugin_caption]" size="90" value="<?php echo htmlspecialchars ($plugin_caption); ?>" />
913
+ </td>
914
+ </tr>
915
+ <tr class="row_odd">
916
+ <td>
917
+ <strong><?php _e ("Do you want to use the default or the small social network buttons?", 'oa_social_login'); ?></strong>
918
+ </td>
919
+ </tr>
920
+ <tr class="row_even">
921
+ <td>
922
+ <?php
923
+ $plugin_use_small_buttons = ((isset ($settings ['plugin_use_small_buttons']) AND in_array ($settings ['plugin_use_small_buttons'], array (0, 1))) ? $settings ['plugin_use_small_buttons'] : 0);
924
+ ?>
925
+ <input type="radio" name="oa_social_login_settings[plugin_use_small_buttons]" value="0" <?php echo ($plugin_use_small_buttons == 0 ? 'checked="checked"' : ''); ?> /> <?php printf (__ ('Use the default social network buttons (%s)', 'oa_social_login'), '32x32 px'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
926
+ <input type="radio" name="oa_social_login_settings[plugin_use_small_buttons]" value="1" <?php echo ($plugin_use_small_buttons == 1 ? 'checked="checked"' : ''); ?> /> <?php printf (__ ('Use the small social network buttons (%s)', 'oa_social_login'), '16x16 px'); ?>
927
+ </td>
928
+ </tr>
929
+ <tr class="row_odd">
930
+ <td>
931
+ <strong><?php _e ('Do you want to display the social networks used to connect in the user list of the administration area ?', 'oa_social_login'); ?></strong>
932
+ </td>
933
+ </tr>
934
+ <tr class="row_even">
935
+ <td>
936
+ <?php
937
+ $plugin_add_column_user_list = ((isset ($settings ['plugin_add_column_user_list']) AND in_array ($settings ['plugin_add_column_user_list'], array (0, 1))) ? $settings ['plugin_add_column_user_list'] : 0);
938
+ ?>
939
+ <input type="radio" name="oa_social_login_settings[plugin_add_column_user_list]" value="1" <?php echo ($plugin_add_column_user_list == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, add a new column to the user list and display the social network that the user connected with', 'oa_social_login'); ?> <br />
940
+ <input type="radio" name="oa_social_login_settings[plugin_add_column_user_list]" value="0" <?php echo ($plugin_add_column_user_list == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, no not display the social networks in the user list', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong>
941
+ </td>
942
+ </tr>
943
+ <tr class="row_odd">
944
+ <td>
945
+ <strong><?php _e ('Do you want to receive an email whenever a new user registers with Social Login ?', 'oa_social_login'); ?></strong>
946
+ </td>
947
+ </tr>
948
+ <tr class="row_even">
949
+ <td>
950
+ <?php
951
+ $plugin_notify_admin = ((isset ($settings ['plugin_notify_admin']) AND in_array ($settings ['plugin_notify_admin'], array (0, 1))) ? $settings ['plugin_notify_admin'] : 1);
952
+ ?>
953
+ <input type="radio" name="oa_social_login_settings[plugin_notify_admin]" value="1" <?php echo ($plugin_notify_admin == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, send me an email whenever a new user registers with Social Login', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
954
+ <input type="radio" name="oa_social_login_settings[plugin_notify_admin]" value="0" <?php echo ($plugin_notify_admin == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not send me any emails', 'oa_social_login'); ?>
955
+ </td>
956
+ </tr>
957
+ </table>
958
+ <table class="form-table oa_social_login_table">
959
+ <tr class="row_head">
960
+ <th>
961
+ <?php _e ('User Settings', 'oa_social_login'); ?>
962
+ </th>
963
+ </tr>
964
+ <tr class="row_odd">
965
+ <td>
966
+ <strong><?php _e ("If the user's social network profile has no email address, should we ask the user to enter it manually?", 'oa_social_login'); ?></strong>
967
+ </td>
968
+ </tr>
969
+ <tr class="row_even">
970
+ <td>
971
+ <?php
972
+ $plugin_require_email = ((isset ($settings ['plugin_require_email']) AND in_array ($settings ['plugin_require_email'], array (0, 1))) ? $settings ['plugin_require_email'] : 0);
973
+ ?>
974
+ <input type="radio" name="oa_social_login_settings[plugin_require_email]" value="0" <?php echo ($plugin_require_email == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, simplify the registration by automatically creating a placeholder email', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
975
+ <input type="radio" name="oa_social_login_settings[plugin_require_email]" value="1" <?php echo ($plugin_require_email == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, require the user to enter his email address manually and display this message:', 'oa_social_login'); ?> <br />
976
+ <textarea name="oa_social_login_settings[plugin_require_email_text]" cols="90" rows="3"><?php echo (isset ($settings ['plugin_require_email_text']) ? htmlspecialchars ($settings ['plugin_require_email_text']) : _e ('<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue.', 'oa_social_login')); ?></textarea>
977
+ <span class="description"><?php _e ('HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect.', 'oa_social_login'); ?></span>
978
+ </td>
979
+ </tr>
980
+ <tr class="row_odd">
981
+ <td>
982
+ <strong><?php _e ("If the user's social network profile has a verified email, should we try to link it to an existing account?", 'oa_social_login'); ?></strong>
983
+ </td>
984
+ </tr>
985
+ <tr class="row_even">
986
+ <td>
987
+ <?php
988
+ $plugin_link_verified_accounts = ((isset ($settings ['plugin_link_verified_accounts']) AND in_array ($settings ['plugin_link_verified_accounts'], array (0, 1))) ? $settings ['plugin_link_verified_accounts'] : 1);
989
+ ?>
990
+ <input type="radio" name="oa_social_login_settings[plugin_link_verified_accounts]" value="1" <?php echo ($plugin_link_verified_accounts == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, try to link verified social network profiles to existing blog accounts', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
991
+ <input type="radio" name="oa_social_login_settings[plugin_link_verified_accounts]" value="0" <?php echo ($plugin_link_verified_accounts == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable account linking', 'oa_social_login'); ?>
992
+ </td>
993
+ </tr>
994
+ <tr class="row_odd">
995
+ <td>
996
+ <strong><?php _e ("If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?", 'oa_social_login'); ?></strong>
997
+ </td>
998
+ </tr>
999
+ <tr class="row_even">
1000
+ <td>
1001
+ <?php
1002
+ $plugin_show_avatars_in_comments = ((isset ($settings ['plugin_show_avatars_in_comments']) AND in_array ($settings ['plugin_show_avatars_in_comments'], array (0, 1, 2))) ? $settings ['plugin_show_avatars_in_comments'] : 0);
1003
+ ?>
1004
+ <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="0" <?php echo ($plugin_show_avatars_in_comments == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not use avatars from social networks', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1005
+ <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="1" <?php echo ($plugin_show_avatars_in_comments == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, use small avatars from social networks if available', 'oa_social_login'); ?><br />
1006
+ <input type="radio" name="oa_social_login_settings[plugin_show_avatars_in_comments]" value="2" <?php echo ($plugin_show_avatars_in_comments == 2 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, use large avatars from social networks if available', 'oa_social_login'); ?>
1007
+ </td>
1008
+ </tr>
1009
+ </table>
1010
+ <table class="form-table oa_social_login_table">
1011
+ <tr class="row_head">
1012
+ <th>
1013
+ <?php _e ('Comment Settings', 'oa_social_login'); ?>
1014
+ </th>
1015
+ </tr>
1016
+ <tr class="row_odd">
1017
+ <td>
1018
+ <strong><?php _e ("Show the Social Login buttons in the comment area?", 'oa_social_login'); ?></strong>
1019
+ </td>
1020
+ </tr>
1021
+ <tr class="row_even">
1022
+ <td>
1023
+ <?php
1024
+ $plugin_comment_show = ((isset ($settings ['plugin_comment_show']) AND in_array ($settings ['plugin_comment_show'], array (0, 1))) ? $settings ['plugin_comment_show'] : 1);
1025
+ ?>
1026
+ <input type="radio" name="oa_social_login_settings[plugin_comment_show]" value="1" <?php echo ($plugin_comment_show == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Login buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1027
+ <input type="radio" name="oa_social_login_settings[plugin_comment_show]" value="0" <?php echo ($plugin_comment_show == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Login buttons', 'oa_social_login'); ?><br />
1028
+ </td>
1029
+ </tr>
1030
+ <tr class="row_odd">
1031
+ <td>
1032
+ <strong><?php _e ("Show the Social Login buttons in the comment area if comments are disabled for guests?", 'oa_social_login'); ?></strong>
1033
+ </td>
1034
+ </tr>
1035
+ <tr class="row_even">
1036
+ <td>
1037
+ <?php
1038
+ $plugin_comment_show_if_members_only = ((isset ($settings ['plugin_comment_show_if_members_only']) AND in_array ($settings ['plugin_comment_show_if_members_only'], array (0, 1))) ? $settings ['plugin_comment_show_if_members_only'] : 1);
1039
+ ?>
1040
+ <span class="description"><?php _e ('The buttons will be displayed below the "You must be logged in to leave a comment" notice.'); ?> </span><br />
1041
+ <input type="radio" name="oa_social_login_settings[plugin_comment_show_if_members_only]" value="1" <?php echo ($plugin_comment_show_if_members_only == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Login buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1042
+ <input type="radio" name="oa_social_login_settings[plugin_comment_show_if_members_only]" value="0" <?php echo ($plugin_comment_show_if_members_only == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Login buttons', 'oa_social_login'); ?>
1043
+ </td>
1044
+ </tr>
1045
+ <tr class="row_odd">
1046
+ <td>
1047
+ <strong><?php _e ("Automatically approve comments left by users that connected by using Social Login?", 'oa_social_login'); ?></strong>
1048
+ </td>
1049
+ </tr>
1050
+ <tr class="row_even">
1051
+ <td>
1052
+ <?php
1053
+ $plugin_comment_auto_approve = ((isset ($settings ['plugin_comment_auto_approve']) AND in_array ($settings ['plugin_comment_auto_approve'], array (0, 1))) ? $settings ['plugin_comment_auto_approve'] : 0);
1054
+ ?>
1055
+ <input type="radio" name="oa_social_login_settings[plugin_comment_auto_approve]" value="1" <?php echo ($plugin_comment_auto_approve == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, automatically approve comments made by users that connected with Social Login', 'oa_social_login'); ?><br />
1056
+ <input type="radio" name="oa_social_login_settings[plugin_comment_auto_approve]" value="0" <?php echo ($plugin_comment_auto_approve == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not automatically approve', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)
1057
+ </strong><br />
1058
+ </td>
1059
+ </tr>
1060
+ </table>
1061
+
1062
+ <table class="form-table oa_social_login_table">
1063
+ <tr class="row_head">
1064
+ <th>
1065
+ <?php _e ('Profile Settings', 'oa_social_login'); ?>
1066
+ </th>
1067
+ </tr>
1068
+ <tr class="row_odd">
1069
+ <td>
1070
+ <strong><?php _e ("Show the Social Link buttons in the user profile?", 'oa_social_login'); ?></strong>
1071
+ </td>
1072
+ </tr>
1073
+ <tr class="row_even">
1074
+ <td>
1075
+ <span class="description"><?php _e ('Keep this option enabled to allow each user to connect multiple social networks to his own profile.'); ?> </span><br />
1076
+ <?php
1077
+ $plugin_profile_show = ((isset ($settings ['plugin_profile_show']) AND in_array ($settings ['plugin_profile_show'], array (0, 1))) ? $settings ['plugin_profile_show'] : 1);
1078
+ ?>
1079
+ <input type="radio" name="oa_social_login_settings[plugin_profile_show]" value="1" <?php echo ($plugin_profile_show == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, show the Social Link buttons', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1080
+ <input type="radio" name="oa_social_login_settings[plugin_profile_show]" value="0" <?php echo ($plugin_profile_show == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, do not show the Social Link buttons', 'oa_social_login'); ?><br />
1081
+ </td>
1082
+ </tr>
1083
+ </table>
1084
+ <table class="form-table oa_social_login_table">
1085
+ <tr class="row_head">
1086
+ <th>
1087
+ <?php _e ('Login Page Settings', 'oa_social_login'); ?>
1088
+ </th>
1089
+ </tr>
1090
+ <tr class="row_odd">
1091
+ <td>
1092
+ <strong><?php _e ('Do you want to display Social Login on the login form of your blog?', 'oa_social_login'); ?></strong>
1093
+ </td>
1094
+ </tr>
1095
+ <tr class="row_even">
1096
+ <td>
1097
+ <?php
1098
+ $plugin_display_in_login_form = ((isset ($settings ['plugin_display_in_login_form']) AND in_array ($settings ['plugin_display_in_login_form'], array (0, 1))) ? $settings ['plugin_display_in_login_form'] : 1);
1099
+ ?>
1100
+ <input type="radio" name="oa_social_login_settings[plugin_display_in_login_form]" value="1" <?php echo ($plugin_display_in_login_form == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, display the social network buttons below the login form', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1101
+ <input type="radio" name="oa_social_login_settings[plugin_display_in_login_form]" value="0" <?php echo ($plugin_display_in_login_form == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable social network buttons in the login form', 'oa_social_login'); ?>
1102
+ </td>
1103
+ </tr>
1104
+ <tr class="row_odd">
1105
+ <td>
1106
+ <strong><?php _e ('Where should users be redirected to after having logged in with Social Login on the login page?', 'oa_social_login'); ?></strong>
1107
+ </td>
1108
+ </tr>
1109
+ <tr class="row_even">
1110
+ <td>
1111
+ <?php
1112
+ $plugin_login_form_redirect = ((isset ($settings ['plugin_login_form_redirect']) AND in_array ($settings ['plugin_login_form_redirect'], array ('current','homepage','dashboard','custom'))) ? $settings ['plugin_login_form_redirect'] : 'homepage');
1113
+ $plugin_login_form_redirect_custom_url = (isset ($settings ['plugin_login_form_redirect_custom_url']) ? $settings ['plugin_login_form_redirect_custom_url'] : '');
1114
+ ?>
1115
+ <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="current" <?php echo ($plugin_login_form_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?><br />
1116
+ <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="homepage" <?php echo ($plugin_login_form_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1117
+ <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="dashboard" <?php echo ($plugin_login_form_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1118
+ <input type="radio" name="oa_social_login_settings[plugin_login_form_redirect]" value="custom" <?php echo ($plugin_login_form_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1119
+ <input type="text" name="oa_social_login_settings[plugin_login_form_redirect_custom_url]" size="90" value="<?php echo htmlspecialchars ($plugin_login_form_redirect_custom_url); ?>" />
1120
+ </td>
1121
+ </tr>
1122
+ </table>
1123
+ <table class="form-table oa_social_login_table">
1124
+ <tr class="row_head">
1125
+ <th>
1126
+ <?php _e ('Registration Page Settings', 'oa_social_login'); ?>
1127
+ </th>
1128
+ </tr>
1129
+ <tr class="row_odd">
1130
+ <td>
1131
+ <strong><?php _e ('Do you want to display Social Login on the registration form of your blog?', 'oa_social_login'); ?></strong>
1132
+ </td>
1133
+ </tr>
1134
+ <tr class="row_even">
1135
+ <td>
1136
+ <?php
1137
+ $plugin_display_in_registration_form = ((isset ($settings ['plugin_display_in_registration_form']) AND in_array ($settings ['plugin_display_in_registration_form'], array (0, 1))) ? $settings ['plugin_display_in_registration_form'] : 1);
1138
+ ?>
1139
+ <input type="radio" name="oa_social_login_settings[plugin_display_in_registration_form]" value="1" <?php echo ($plugin_display_in_registration_form == 1 ? 'checked="checked"' : ''); ?> /> <?php _e ('Yes, display the social network buttons below the registration form', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1140
+ <input type="radio" name="oa_social_login_settings[plugin_display_in_registration_form]" value="0" <?php echo ($plugin_display_in_registration_form == 0 ? 'checked="checked"' : ''); ?> /> <?php _e ('No, disable social network buttons in the registration form', 'oa_social_login'); ?>
1141
+ </td>
1142
+ </tr>
1143
+ <tr class="row_odd">
1144
+ <td>
1145
+ <strong><?php _e ('Where should users be redirected to after having registered with Social Login on the registration page?', 'oa_social_login'); ?></strong>
1146
+ </td>
1147
+ </tr>
1148
+ <tr class="row_even">
1149
+ <td>
1150
+ <?php
1151
+ $plugin_registration_form_redirect = ((isset ($settings ['plugin_registration_form_redirect']) AND in_array ($settings ['plugin_registration_form_redirect'], array ('current','homepage','dashboard','custom'))) ? $settings ['plugin_registration_form_redirect'] : 'dashboard');
1152
+ $plugin_registration_form_redirect_custom_url = (isset ($settings ['plugin_registration_form_redirect_custom_url']) ? $settings ['plugin_registration_form_redirect_custom_url'] : '');
1153
+ ?>
1154
+ <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="current" <?php echo ($plugin_registration_form_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?><br />
1155
+ <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="homepage" <?php echo ($plugin_registration_form_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?><br />
1156
+ <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="dashboard" <?php echo ($plugin_registration_form_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1157
+ <input type="radio" name="oa_social_login_settings[plugin_registration_form_redirect]" value="custom" <?php echo ($plugin_registration_form_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1158
+ <input type="text" name="oa_social_login_settings[plugin_registration_form_redirect_custom_url]" size="90" value="<?php echo htmlspecialchars ($plugin_registration_form_redirect_custom_url); ?>" />
1159
+ </td>
1160
+ </tr>
1161
+ </table>
1162
+ <table class="form-table oa_social_login_table">
1163
+ <tr class="row_head">
1164
+ <th>
1165
+ <?php _e ('Widget &amp; Shortcode Settings', 'oa_social_login'); ?>
1166
+ </th>
1167
+ </tr>
1168
+ <tr class="row_odd">
1169
+ <td>
1170
+ <strong><?php _e ('Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:', 'oa_social_login'); ?></strong>
1171
+ </td>
1172
+ </tr>
1173
+ <tr class="row_even">
1174
+ <td>
1175
+ <?php
1176
+ $plugin_shortcode_login_redirect = ((isset ($settings ['plugin_shortcode_login_redirect']) AND in_array ($settings ['plugin_shortcode_login_redirect'], array ('current', 'dashboard', 'homepage', 'custom'))) ? $settings ['plugin_shortcode_login_redirect'] : 'current');
1177
+ $plugin_shortcode_login_redirect_url = (isset ($settings ['plugin_shortcode_login_redirect_url']) ? $settings ['plugin_shortcode_login_redirect_url'] : '');
1178
+ ?>
1179
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="current" <?php echo ($plugin_shortcode_login_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1180
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="homepage" <?php echo ($plugin_shortcode_login_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?> <br />
1181
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="dashboard" <?php echo ($plugin_shortcode_login_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1182
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_login_redirect]" value="custom" <?php echo ($plugin_shortcode_login_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1183
+ <input type="text" name="oa_social_login_settings[plugin_shortcode_login_redirect_url]" size="90" value="<?php echo htmlspecialchars ($plugin_shortcode_login_redirect_url); ?>" />
1184
+ </td>
1185
+ </tr>
1186
+ <tr class="row_odd">
1187
+ <td>
1188
+ <strong><?php _e ('Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:', 'oa_social_login'); ?></strong>
1189
+ </td>
1190
+ </tr>
1191
+ <tr class="row_even">
1192
+ <td>
1193
+ <?php
1194
+ $plugin_shortcode_register_redirect = ((isset ($settings ['plugin_shortcode_register_redirect']) AND in_array ($settings ['plugin_shortcode_register_redirect'], array ('current', 'dashboard', 'homepage', 'custom'))) ? $settings ['plugin_shortcode_register_redirect'] : 'current');
1195
+ $plugin_shortcode_register_redirect_url = (isset ($settings ['plugin_shortcode_register_redirect_url']) ? $settings ['plugin_shortcode_register_redirect_url'] : '');
1196
+ ?>
1197
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="current" <?php echo ($plugin_shortcode_register_redirect == 'current' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users back to the current page', 'oa_social_login'); ?> <strong>(<?php _e ('Default', 'oa_social_login') ?>)</strong><br />
1198
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="homepage" <?php echo ($plugin_shortcode_register_redirect == 'homepage' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the homepage of my blog', 'oa_social_login'); ?><br />
1199
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="dashboard" <?php echo ($plugin_shortcode_register_redirect == 'dashboard' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to their account dashboard', 'oa_social_login'); ?><br />
1200
+ <input type="radio" name="oa_social_login_settings[plugin_shortcode_register_redirect]" value="custom" <?php echo ($plugin_shortcode_register_redirect == 'custom' ? 'checked="checked"' : ''); ?> /> <?php _e ('Redirect users to the following url', 'oa_social_login'); ?>:<br />
1201
+ <input type="text" name="oa_social_login_settings[plugin_shortcode_register_redirect_url]" size="90" value="<?php echo htmlspecialchars ($plugin_shortcode_register_redirect_url); ?>" />
1202
+ </td>
1203
+ </tr>
1204
+ </table>
1205
+ <p class="submit">
1206
+ <input type="hidden" name="page" value="settings" />
1207
+ <input type="submit" class="button-primary" value="<?php _e ('Save Changes', 'oa_social_login') ?>" />
1208
+ </p>
1209
+ </form>
1210
+ </div>
1211
+ </div>
1212
+ <?php
1213
+ }
includes/communication.php CHANGED
@@ -1,643 +1,765 @@
1
- <?php
2
-
3
-
4
- /**
5
- * Handle the callback
6
- */
7
- function oa_social_login_callback ()
8
- {
9
- //Callback Handler
10
- if (isset ($_POST) AND !empty ($_POST ['oa_action']) AND $_POST ['oa_action'] == 'social_login' AND !empty ($_POST ['connection_token']))
11
- {
12
- //OneAll Connection token
13
- $connection_token = trim ($_POST ['connection_token']);
14
-
15
- //Read settings
16
- $settings = get_option ('oa_social_login_settings');
17
-
18
- //API Settings
19
- $api_connection_handler = ((!empty ($settings ['api_connection_handler']) AND $settings ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
20
- $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
21
- $api_subdomain = (!empty ($settings ['api_subdomain']) ? trim ($settings ['api_subdomain']) : '');
22
-
23
- //We cannot make a connection without a subdomain
24
- if (!empty ($api_subdomain))
25
- {
26
- //See: http://docs.oneall.com/api/resources/connections/read-connection-details/
27
- $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_subdomain . '.api.oneall.com/connections/' . $connection_token . '.json';
28
-
29
- //API Credentials
30
- $api_credentials = array (
31
- 'api_key' => (!empty ($settings ['api_key']) ? $settings ['api_key'] : ''),
32
- 'api_secret' => (!empty ($settings ['api_secret']) ? $settings ['api_secret'] : '')
33
- );
34
-
35
- //Get connection details
36
- $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, $api_credentials);
37
- if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200 AND property_exists ($result, 'http_data'))
38
- {
39
- //Decode result
40
- $decoded_result = @json_decode ($result->http_data);
41
- if (is_object ($decoded_result) AND isset ($decoded_result->response->result->data->user))
42
- {
43
- //User data
44
- $user_data = $decoded_result->response->result->data->user;
45
-
46
- //Social network profile data
47
- $identity = $user_data->identity;
48
-
49
- //Unique user token provided by OneAll
50
- $user_token = $user_data->user_token;
51
-
52
- //Identity Provider
53
- $user_identity_provider = $identity->source->name;
54
-
55
- //Thumbnail
56
- $user_thumbnail = (!empty ($identity->thumbnailUrl) ? trim ($identity->thumbnailUrl) : '');
57
-
58
- //Picture
59
- $user_picture = (!empty ($identity->pictureUrl) ? trim ($identity->pictureUrl) : '');
60
-
61
- //Firstname
62
- $user_first_name = (!empty ($identity->name->givenName) ? $identity->name->givenName : '');
63
-
64
- //Lastname
65
- $user_last_name = (!empty ($identity->name->familyName) ? $identity->name->familyName : '');
66
-
67
- //Fullname
68
- if (!empty ($identity->name->formatted))
69
- {
70
- $user_full_name = $identity->name->formatted;
71
- }
72
- elseif (!empty ($identity->name->displayName))
73
- {
74
- $user_full_name = $identity->name->displayName;
75
- }
76
- else
77
- {
78
- $user_full_name = trim ($user_first_name . ' ' . $user_last_name);
79
- }
80
-
81
- // Email Address.
82
- $user_email = '';
83
- if (property_exists ($identity, 'emails') AND is_array ($identity->emails))
84
- {
85
- $user_email_is_verified = false;
86
- while ($user_email_is_verified !== true AND (list(, $email) = each ($identity->emails)))
87
- {
88
- $user_email = $email->value;
89
- $user_email_is_verified = ($email->is_verified == '1');
90
- }
91
- }
92
-
93
- //User Website
94
- if (!empty ($identity->profileUrl))
95
- {
96
- $user_website = $identity->profileUrl;
97
- }
98
- elseif (!empty ($identity->urls [0]->value))
99
- {
100
- $user_website = $identity->urls [0]->value;
101
- }
102
- else
103
- {
104
- $user_website = '';
105
- }
106
-
107
- //Preferred Username
108
- if (!empty ($identity->preferredUsername))
109
- {
110
- $user_login = $identity->preferredUsername;
111
- }
112
- elseif (!empty ($identity->displayName))
113
- {
114
- $user_login = $identity->displayName;
115
- }
116
- else
117
- {
118
- $user_login = $user_full_name;
119
- }
120
-
121
- //New user created?
122
- $new_registration = false;
123
-
124
- //Sanitize Login
125
- $user_login = str_replace ('.', '-', $user_login);
126
- $user_login = sanitize_user ($user_login, true);
127
-
128
- // Get user by token
129
- $user_id = oa_social_login_get_userid_by_token ($user_token);
130
-
131
- //Try to link to existing account
132
- if (!is_numeric ($user_id))
133
- {
134
- //This is a new user
135
- $new_registration = true;
136
-
137
- //Linked enabled?
138
- if (!isset ($settings ['plugin_link_verified_accounts']) OR $settings ['plugin_link_verified_accounts'] == '1')
139
- {
140
- //Only if email is verified
141
- if (!empty ($user_email) AND $user_email_is_verified === true)
142
- {
143
- //Read existing user
144
- if (($user_id_tmp = email_exists ($user_email)) !== false)
145
- {
146
- $user_data = get_userdata ($user_id_tmp);
147
- if ($user_data !== false)
148
- {
149
- $user_id = $user_data->ID;
150
- $user_login = $user_data->user_login;
151
-
152
- delete_metadata ('user', null, 'oa_social_login_user_token', $user_token, true);
153
- update_user_meta ($user_id, 'oa_social_login_user_token', $user_token);
154
- update_user_meta ($user_id, 'oa_social_login_identity_provider', $user_identity_provider);
155
- wp_cache_delete ($user_id, 'users');
156
- wp_cache_delete ($user_login, 'userlogins');
157
- }
158
- }
159
- }
160
- }
161
- }
162
-
163
-
164
- //New User
165
- if (!is_numeric ($user_id))
166
- {
167
- //Username is mandatory
168
- if (!isset ($user_login) OR strlen (trim ($user_login)) == 0)
169
- {
170
- $user_login = $user_identity_provider . 'User';
171
- }
172
-
173
- //Username must be unique
174
- if (username_exists ($user_login))
175
- {
176
- $i = 1;
177
- $user_login_tmp = $user_login;
178
- do
179
- {
180
- $user_login_tmp = $user_login . ($i++);
181
- }
182
- while (username_exists ($user_login_tmp));
183
- $user_login = $user_login_tmp;
184
- }
185
-
186
- //Email Restriction
187
- $user_email = apply_filters ('oa_social_login_filter_new_user_email', $user_email);
188
- if ($user_email === 'disallowed')
189
- {
190
- trigger_error (__ ('This Social Network account may not be used to register', 'oa_social_login'), E_USER_ERROR);
191
- }
192
-
193
- //Email must be unique
194
- $placeholder_email_used = false;
195
- if (!isset ($user_email) OR !is_email ($user_email) OR email_exists ($user_email))
196
- {
197
- $user_email = oa_social_login_create_rand_email ();
198
- $placeholder_email_used = true;
199
- }
200
-
201
- //Generate a new password
202
- $user_password = wp_generate_password ();
203
-
204
- //Build user data
205
- $user_data = array (
206
- 'user_login' => $user_login,
207
- 'display_name' => (!empty ($user_full_name) ? $user_full_name : $user_login),
208
- 'user_email' => $user_email,
209
- 'first_name' => $user_first_name,
210
- 'last_name' => $user_last_name,
211
- 'user_url' => $user_website,
212
- 'user_pass' => $user_password
213
- );
214
-
215
- // Create a new user
216
- $user_id = wp_insert_user ($user_data);
217
- if (is_numeric ($user_id))
218
- {
219
- delete_metadata ('user', null, 'oa_social_login_user_token', $user_token, true);
220
- update_user_meta ($user_id, 'oa_social_login_user_token', $user_token);
221
- update_user_meta ($user_id, 'oa_social_login_identity_provider', $user_identity_provider);
222
-
223
- //Email is required
224
- if (!empty ($settings ['plugin_require_email']))
225
- {
226
- //We don't have the real email
227
- if ($placeholder_email_used)
228
- {
229
- update_user_meta ($user_id, 'oa_social_login_request_email', 1);
230
- }
231
- }
232
-
233
- //Notify Administrator
234
- if (!empty ($settings ['plugin_notify_admin']))
235
- {
236
- oa_social_login_user_notification ($user_id, $user_identity_provider);
237
- }
238
-
239
- wp_cache_delete ($user_id, 'users');
240
- wp_cache_delete ($user_login, 'userlogins');
241
- do_action ('user_register', $user_id);
242
- }
243
- }
244
-
245
- //Sucess
246
- $user_data = get_userdata ($user_id);
247
- if ($user_data !== false)
248
- {
249
- //Update user thumbnail
250
- if (!empty ($user_thumbnail))
251
- {
252
- update_user_meta ($user_id, 'oa_social_login_user_thumbnail', $user_thumbnail);
253
- }
254
-
255
- //Update user picture
256
- if (!empty ($user_picture))
257
- {
258
- update_user_meta ($user_id, 'oa_social_login_user_picture', $user_picture);
259
- }
260
-
261
- //Setup Cookie
262
- wp_clear_auth_cookie ();
263
- wp_set_auth_cookie ($user_data->ID, true);
264
- do_action ('wp_login', $user_data->user_login, $user_data);
265
-
266
- //Where did the user come from?
267
- $oa_social_login_source = (!empty ($_REQUEST ['oa_social_login_source']) ? strtolower (trim ($_REQUEST ['oa_social_login_source'])) : '');
268
-
269
- //Use safe redirection?
270
- $redirect_to_safe = false;
271
-
272
- //Build the url to redirect the user to
273
- switch ($oa_social_login_source)
274
- {
275
- //*************** Registration ***************
276
- case 'registration':
277
- //Default redirection
278
- $redirect_to = admin_url ();
279
-
280
- //Redirection in URL
281
- if (!empty ($_GET ['redirect_to']))
282
- {
283
- $redirect_to = $_GET ['redirect_to'];
284
- $redirect_to_safe = true;
285
- }
286
- else
287
- {
288
- //Redirection customized
289
- if (isset ($settings ['plugin_registration_form_redirect']))
290
- {
291
- switch (strtolower ($settings ['plugin_registration_form_redirect']))
292
- {
293
- //Homepage
294
- case 'homepage':
295
- $redirect_to = home_url ();
296
- break;
297
-
298
- //Custom
299
- case 'custom':
300
- if (isset ($settings ['plugin_registration_form_redirect_custom_url']) AND strlen (trim ($settings ['plugin_registration_form_redirect_custom_url'])) > 0)
301
- {
302
- $redirect_to = trim ($settings ['plugin_registration_form_redirect_custom_url']);
303
- }
304
- break;
305
-
306
- //Default/Dashboard
307
- default:
308
- case 'dashboard':
309
- $redirect_to = admin_url ();
310
- break;
311
- }
312
- }
313
- }
314
- break;
315
-
316
-
317
- //*************** Login ***************
318
- case 'login':
319
- //Default redirection
320
- $redirect_to = home_url ();
321
-
322
- //Redirection in URL
323
- if (!empty ($_GET ['redirect_to']))
324
- {
325
- $redirect_to = $_GET ['redirect_to'];
326
- $redirect_to_safe = true;
327
- }
328
- else
329
- {
330
- //Redirection customized
331
- if (isset ($settings ['plugin_login_form_redirect']))
332
- {
333
- switch (strtolower ($settings ['plugin_login_form_redirect']))
334
- {
335
- //Dashboard
336
- case 'dashboard':
337
- $redirect_to = admin_url ();
338
- break;
339
-
340
- //Custom
341
- case 'custom':
342
- if (isset ($settings ['plugin_login_form_redirect_custom_url']) AND strlen (trim ($settings ['plugin_login_form_redirect_custom_url'])) > 0)
343
- {
344
- $redirect_to = trim ($settings ['plugin_login_form_redirect_custom_url']);
345
- }
346
- break;
347
-
348
- //Default/Homepage
349
- default:
350
- case 'homepage':
351
- $redirect_to = home_url ();
352
- break;
353
- }
354
- }
355
- }
356
- break;
357
-
358
- // *************** Comments ***************
359
- case 'comments':
360
- $redirect_to = oa_social_login_get_current_url () . '#comments';
361
- break;
362
-
363
- //*************** Widget/Shortcode ***************
364
- default:
365
- case 'widget':
366
- case 'shortcode':
367
- // This is a new user
368
- $opt_key = ($new_registration === true ? 'register' : 'login');
369
-
370
- //Default value
371
- $redirect_to = oa_social_login_get_current_url ();
372
-
373
- //Redirection customized
374
- if (isset ($settings ['plugin_shortcode_' . $opt_key . '_redirect']))
375
- {
376
- switch (strtolower ($settings ['plugin_shortcode_' . $opt_key . '_redirect']))
377
- {
378
- //Current
379
- case 'current':
380
- $redirect_to = oa_social_login_get_current_url ();
381
- break;
382
-
383
- //Homepage
384
- case 'homepage':
385
- $redirect_to = home_url ();
386
- break;
387
-
388
- //Dashboard
389
- case 'dashboard':
390
- $redirect_to = admin_url ();
391
- break;
392
-
393
- //Custom
394
- case 'custom':
395
- if (isset ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url']) AND strlen (trim ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url'])) > 0)
396
- {
397
- $redirect_to = trim ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url']);
398
- }
399
- break;
400
- }
401
- }
402
- break;
403
- }
404
-
405
- //Check if url set
406
- if (!isset ($redirect_to) OR strlen (trim ($redirect_to)) == 0)
407
- {
408
- $redirect_to = home_url ();
409
- }
410
-
411
- //Filter for redirection urls
412
- if ($new_registration === true)
413
- {
414
- $redirect_to = apply_filters ('oa_social_login_filter_registration_redirect_url', $redirect_to, $user_data);
415
- }
416
- else
417
- {
418
- $redirect_to = apply_filters ('oa_social_login_filter_login_redirect_url', $redirect_to, $user_data);
419
- }
420
-
421
- //Use safe redirection
422
- if ($redirect_to_safe === true)
423
- {
424
- wp_safe_redirect ($redirect_to);
425
- }
426
- else
427
- {
428
- wp_redirect ($redirect_to);
429
- }
430
- exit ();
431
- }
432
- }
433
-
434
- }
435
- }
436
- }
437
- }
438
-
439
-
440
- /**
441
- * Send an API request by using the given handler
442
- */
443
- function oa_social_login_do_api_request ($handler, $url, $options = array (), $timeout = 25)
444
- {
445
- //FSOCKOPEN
446
- if ($handler == 'fsockopen')
447
- {
448
- return oa_social_login_fsockopen_request ($url, $options, $timeout);
449
- }
450
- //CURL
451
- else
452
- {
453
- return oa_social_login_curl_request ($url, $options, $timeout);
454
- }
455
- }
456
-
457
-
458
- /**
459
- * Check if fsockopen can be used
460
- */
461
- function oa_social_login_check_fsockopen ($secure = true)
462
- {
463
- $result = oa_social_login_fsockopen_request (($secure ? 'https' : 'http') . '://www.oneall.com/ping.html');
464
- if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200)
465
- {
466
- if (property_exists ($result, 'http_data'))
467
- {
468
- if (strtolower ($result->http_data) == 'ok')
469
- {
470
- return true;
471
- }
472
- }
473
- }
474
- return false;
475
- }
476
-
477
-
478
- /**
479
- * Checks if CURL can be used
480
- */
481
- function oa_social_login_check_curl ($secure = true)
482
- {
483
- if (in_array ('curl', get_loaded_extensions ()) AND function_exists ('curl_init'))
484
- {
485
- $result = oa_social_login_curl_request (($secure ? 'https' : 'http') . '://www.oneall.com/ping.html');
486
- if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200)
487
- {
488
- if (property_exists ($result, 'http_data'))
489
- {
490
- if (strtolower ($result->http_data) == 'ok')
491
- {
492
- return true;
493
- }
494
- }
495
- }
496
- }
497
- return false;
498
- }
499
-
500
-
501
- /**
502
- * Sends a CURL request.
503
- */
504
- function oa_social_login_curl_request ($url, $options = array (), $timeout = 15)
505
- {
506
- //Store the result
507
- $result = new stdClass ();
508
-
509
- //Send request
510
- $curl = curl_init ();
511
- curl_setopt ($curl, CURLOPT_URL, $url);
512
- curl_setopt ($curl, CURLOPT_HEADER, 0);
513
- curl_setopt ($curl, CURLOPT_TIMEOUT, $timeout);
514
- curl_setopt ($curl, CURLOPT_VERBOSE, 0);
515
- curl_setopt ($curl, CURLOPT_RETURNTRANSFER, 1);
516
- curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0);
517
- curl_setopt ($curl, CURLOPT_SSL_VERIFYHOST, 0);
518
- curl_setopt ($curl, CURLOPT_USERAGENT, 'SocialLogin ' . OA_SOCIAL_LOGIN_VERSION . 'WP (+http://www.oneall.com/)');
519
-
520
- // BASIC AUTH?
521
- if (isset ($options ['api_key']) AND isset ($options ['api_secret']))
522
- {
523
- curl_setopt ($curl, CURLOPT_USERPWD, $options ['api_key'] . ":" . $options ['api_secret']);
524
- }
525
-
526
- //Make request
527
- if (($http_data = curl_exec ($curl)) !== false)
528
- {
529
- $result->http_code = curl_getinfo ($curl, CURLINFO_HTTP_CODE);
530
- $result->http_data = $http_data;
531
- $result->http_error = null;
532
- }
533
- else
534
- {
535
- $result->http_code = -1;
536
- $result->http_data = null;
537
- $result->http_error = curl_error ($curl);
538
- }
539
-
540
- //Done
541
- return $result;
542
- }
543
-
544
-
545
- /**
546
- * Sends an fsockopen request.
547
- */
548
- function oa_social_login_fsockopen_request ($url, $options = array (), $timeout = 15)
549
- {
550
- //Store the result
551
- $result = new stdClass ();
552
-
553
- //Make sure that this is a valid URL
554
- if (($uri = parse_url ($url)) == false)
555
- {
556
- $result->http_code = -1;
557
- $result->http_data = null;
558
- $result->http_error = 'invalid_uri';
559
- return $result;
560
- }
561
-
562
- //Make sure that we can handle the scheme
563
- switch ($uri ['scheme'])
564
- {
565
- case 'http':
566
- $port = (isset ($uri ['port']) ? $uri ['port'] : 80);
567
- $host = ($uri ['host'] . ($port != 80 ? ':' . $port : ''));
568
- $fp = @fsockopen ($uri ['host'], $port, $errno, $errstr, $timeout);
569
- break;
570
-
571
- case 'https':
572
- $port = (isset ($uri ['port']) ? $uri ['port'] : 443);
573
- $host = ($uri ['host'] . ($port != 443 ? ':' . $port : ''));
574
- $fp = @fsockopen ('ssl://' . $uri ['host'], $port, $errno, $errstr, $timeout);
575
- break;
576
-
577
- default:
578
- $result->http_code = -1;
579
- $result->http_data = null;
580
- $result->http_error = 'invalid_schema';
581
- return $result;
582
- break;
583
- }
584
-
585
- //Make sure that the socket has been opened properly
586
- if (!$fp)
587
- {
588
- $result->http_code = -$errno;
589
- $result->http_data = null;
590
- $result->http_error = trim ($errstr);
591
- return $result;
592
- }
593
-
594
- //Construct the path to act on
595
- $path = (isset ($uri ['path']) ? $uri ['path'] : '/');
596
- if (isset ($uri ['query']))
597
- {
598
- $path .= '?' . $uri ['query'];
599
- }
600
-
601
- //Create HTTP request
602
- $defaults = array (
603
- 'Host' => "Host: $host",
604
- 'User-Agent' => 'User-Agent: SocialLogin ' . OA_SOCIAL_LOGIN_VERSION . 'WP (+http://www.oneall.com/)'
605
- );
606
-
607
- //Enable basic authentication
608
- if (isset ($options ['api_key']) AND isset ($options ['api_secret']))
609
- {
610
- $defaults ['Authorization'] = 'Authorization: Basic ' . base64_encode ($options ['api_key'] . ":" . $options ['api_secret']);
611
- }
612
-
613
- //Build and send request
614
- $request = 'GET ' . $path . " HTTP/1.0\r\n";
615
- $request .= implode ("\r\n", $defaults);
616
- $request .= "\r\n\r\n";
617
- fwrite ($fp, $request);
618
-
619
- //Fetch response
620
- $response = '';
621
- while (!feof ($fp))
622
- {
623
- $response .= fread ($fp, 1024);
624
- }
625
-
626
- //Close connection
627
- fclose ($fp);
628
-
629
- //Parse response
630
- list($response_header, $response_body) = explode ("\r\n\r\n", $response, 2);
631
-
632
- //Parse header
633
- $response_header = preg_split ("/\r\n|\n|\r/", $response_header);
634
- list($header_protocol, $header_code, $header_status_message) = explode (' ', trim (array_shift ($response_header)), 3);
635
-
636
- //Build result
637
- $result->http_code = $header_code;
638
- $result->http_data = $response_body;
639
-
640
- //Done
641
- return $result;
642
- }
643
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+
4
+ /**
5
+ * Handle the callback
6
+ */
7
+ function oa_social_login_callback ()
8
+ {
9
+ //Callback Handler
10
+ if (isset ($_POST) AND !empty ($_POST ['oa_action']) AND $_POST ['oa_action'] == 'social_login' AND !empty ($_POST ['connection_token']))
11
+ {
12
+ //OneAll Connection token
13
+ $connection_token = trim ($_POST ['connection_token']);
14
+
15
+ //Read settings
16
+ $settings = get_option ('oa_social_login_settings');
17
+
18
+ //API Settings
19
+ $api_connection_handler = ((!empty ($settings ['api_connection_handler']) AND $settings ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
20
+ $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
21
+ $api_subdomain = (!empty ($settings ['api_subdomain']) ? trim ($settings ['api_subdomain']) : '');
22
+
23
+ //We cannot make a connection without a subdomain
24
+ if (!empty ($api_subdomain))
25
+ {
26
+ //See: http://docs.oneall.com/api/resources/connections/read-connection-details/
27
+ $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_subdomain . '.api.oneall.com/connections/' . $connection_token . '.json';
28
+
29
+ //API Credentials
30
+ $api_credentials = array ();
31
+ $api_credentials['api_key'] = (!empty ($settings ['api_key']) ? $settings ['api_key'] : '');
32
+ $api_credentials['api_secret'] = (!empty ($settings ['api_secret']) ? $settings ['api_secret'] : '');
33
+
34
+ //Retrieve connection details
35
+ $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, $api_credentials);
36
+
37
+ //Check result
38
+ if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200 AND property_exists ($result, 'http_data'))
39
+ {
40
+ //Decode result
41
+ $decoded_result = @json_decode ($result->http_data);
42
+ if (is_object ($decoded_result) AND isset ($decoded_result->response->result->data->user))
43
+ {
44
+ //User data
45
+ $user_data = $decoded_result->response->result->data->user;
46
+
47
+ //Social network profile data
48
+ $identity = $user_data->identity;
49
+
50
+ //Unique user token provided by OneAll
51
+ $user_token = $user_data->user_token;
52
+
53
+ //Identity Provider
54
+ $user_identity_provider = $identity->source->name;
55
+
56
+ //Thumbnail
57
+ $user_thumbnail = (!empty ($identity->thumbnailUrl) ? trim ($identity->thumbnailUrl) : '');
58
+
59
+ //Picture
60
+ $user_picture = (!empty ($identity->pictureUrl) ? trim ($identity->pictureUrl) : '');
61
+
62
+ //About Me
63
+ $user_about_me = (!empty ($identity->aboutMe) ? trim ($identity->aboutMe) : '');
64
+
65
+ //Note
66
+ $user_note = (!empty ($identity->note) ? trim ($identity->note) : '');
67
+
68
+ //Firstname
69
+ $user_first_name = (!empty ($identity->name->givenName) ? $identity->name->givenName : '');
70
+
71
+ //Lastname
72
+ $user_last_name = (!empty ($identity->name->familyName) ? $identity->name->familyName : '');
73
+
74
+ //Fullname
75
+ if (!empty ($identity->name->formatted))
76
+ {
77
+ $user_full_name = $identity->name->formatted;
78
+ }
79
+ elseif (!empty ($identity->name->displayName))
80
+ {
81
+ $user_full_name = $identity->name->displayName;
82
+ }
83
+ else
84
+ {
85
+ $user_full_name = trim ($user_first_name . ' ' . $user_last_name);
86
+ }
87
+
88
+ // Email Address.
89
+ $user_email = '';
90
+ if (property_exists ($identity, 'emails') AND is_array ($identity->emails))
91
+ {
92
+ $user_email_is_verified = false;
93
+ while ($user_email_is_verified !== true AND (list(, $email) = each ($identity->emails)))
94
+ {
95
+ $user_email = $email->value;
96
+ $user_email_is_verified = ($email->is_verified == '1');
97
+ }
98
+ }
99
+
100
+ //User Website
101
+ if (!empty ($identity->profileUrl))
102
+ {
103
+ $user_website = $identity->profileUrl;
104
+ }
105
+ elseif (!empty ($identity->urls [0]->value))
106
+ {
107
+ $user_website = $identity->urls [0]->value;
108
+ }
109
+ else
110
+ {
111
+ $user_website = '';
112
+ }
113
+
114
+ //Preferred Username
115
+ if (!empty ($identity->preferredUsername))
116
+ {
117
+ $user_login = $identity->preferredUsername;
118
+ }
119
+ elseif (!empty ($identity->displayName))
120
+ {
121
+ $user_login = $identity->displayName;
122
+ }
123
+ else
124
+ {
125
+ $user_login = $user_full_name;
126
+ }
127
+
128
+ //New user created?
129
+ $new_registration = false;
130
+
131
+ //Sanitize Login
132
+ $user_login = str_replace ('.', '-', $user_login);
133
+ $user_login = sanitize_user ($user_login, true);
134
+
135
+ // Get user by token
136
+ $user_id = oa_social_login_get_userid_by_token ($user_token);
137
+
138
+ //Try to link to existing account
139
+ if (!is_numeric ($user_id))
140
+ {
141
+ //This is a new user
142
+ $new_registration = true;
143
+
144
+ //Linking enabled?
145
+ if (!isset ($settings ['plugin_link_verified_accounts']) OR $settings ['plugin_link_verified_accounts'] == '1')
146
+ {
147
+ //Only if email is verified
148
+ if (!empty ($user_email) AND $user_email_is_verified === true)
149
+ {
150
+ //Read existing user
151
+ if (($user_id_tmp = email_exists ($user_email)) !== false)
152
+ {
153
+ $user_data = get_userdata ($user_id_tmp);
154
+ if ($user_data !== false)
155
+ {
156
+ $user_id = $user_data->ID;
157
+ $user_login = $user_data->user_login;
158
+
159
+ //Refresh the meta data
160
+ delete_metadata ('user', null, 'oa_social_login_user_token', $user_token, true);
161
+ update_user_meta ($user_id, 'oa_social_login_user_token', $user_token);
162
+ update_user_meta ($user_id, 'oa_social_login_identity_provider', $user_identity_provider);
163
+
164
+ //Refresh the cache
165
+ wp_cache_delete ($user_id, 'users');
166
+ wp_cache_delete ($user_login, 'userlogins');
167
+ }
168
+ }
169
+ }
170
+ }
171
+ }
172
+
173
+
174
+ //New User
175
+ if (!is_numeric ($user_id))
176
+ {
177
+ //Username is mandatory
178
+ if (!isset ($user_login) OR strlen (trim ($user_login)) == 0)
179
+ {
180
+ $user_login = $user_identity_provider . 'User';
181
+ }
182
+
183
+ // BuddyPress : See bp_core_strip_username_spaces()
184
+ if (function_exists ('bp_core_strip_username_spaces'))
185
+ {
186
+ $user_login = str_replace (' ', '-', $user_login);
187
+ }
188
+
189
+ //Username must be unique
190
+ if (username_exists ($user_login))
191
+ {
192
+ $i = 1;
193
+ $user_login_tmp = $user_login;
194
+ do
195
+ {
196
+ $user_login_tmp = $user_login . ($i++);
197
+ }
198
+ while (username_exists ($user_login_tmp));
199
+ $user_login = $user_login_tmp;
200
+ }
201
+
202
+ //Email Filter
203
+ $user_email = apply_filters ('oa_social_login_filter_new_user_email', $user_email);
204
+
205
+ //Email must be unique
206
+ $placeholder_email_used = false;
207
+ if (!isset ($user_email) OR !is_email ($user_email) OR email_exists ($user_email))
208
+ {
209
+ $user_email = oa_social_login_create_rand_email ();
210
+ $placeholder_email_used = true;
211
+ }
212
+
213
+ //Setup the user's password
214
+ $user_password = wp_generate_password ();
215
+ $user_password = apply_filters ('oa_social_login_filter_new_user_password', $user_password);
216
+
217
+ //Setup the user's role
218
+ $user_role = get_option ('default_role');
219
+ $user_role = apply_filters ('oa_social_login_filter_new_user_role', $user_role);
220
+
221
+ //Build user data
222
+ $user_fields = array (
223
+ 'user_login' => $user_login,
224
+ 'display_name' => (!empty ($user_full_name) ? $user_full_name : $user_login),
225
+ 'user_email' => $user_email,
226
+ 'first_name' => $user_first_name,
227
+ 'last_name' => $user_last_name,
228
+ 'user_url' => $user_website,
229
+ 'user_pass' => $user_password,
230
+ 'role' => $user_role
231
+ );
232
+
233
+ //Filter for user_data
234
+ $user_fields = apply_filters ('oa_social_login_filter_new_user_fields', $user_fields);
235
+
236
+ //Hook before adding the user
237
+ do_action ('oa_social_login_action_before_user_insert', $user_fields, $identity);
238
+
239
+ // Create a new user
240
+ $user_id = wp_insert_user ($user_fields);
241
+ if (is_numeric ($user_id) AND ($user_data = get_userdata ($user_id)) !== false)
242
+ {
243
+ //Refresh the meta data
244
+ delete_metadata ('user', null, 'oa_social_login_user_token', $user_token, true);
245
+
246
+ //Save OneAll user meta-data
247
+ update_user_meta ($user_id, 'oa_social_login_user_token', $user_token);
248
+ update_user_meta ($user_id, 'oa_social_login_identity_provider', $user_identity_provider);
249
+
250
+ //Save WordPress user meta-data
251
+ if ( ! empty ($user_about_me) OR ! empty ($user_note))
252
+ {
253
+ $user_description = (! empty ($user_about_me) ? $user_about_me : $user_note);
254
+ update_user_meta ($user_id, 'description', $user_description);
255
+ }
256
+
257
+ //Email is required
258
+ if (!empty ($settings ['plugin_require_email']))
259
+ {
260
+ //We don't have the real email
261
+ if ($placeholder_email_used)
262
+ {
263
+ update_user_meta ($user_id, 'oa_social_login_request_email', 1);
264
+ }
265
+ }
266
+
267
+ //Notify Administrator
268
+ if (!empty ($settings ['plugin_notify_admin']))
269
+ {
270
+ oa_social_login_user_notification ($user_id, $user_identity_provider);
271
+ }
272
+
273
+ //Refresh the cache
274
+ wp_cache_delete ($user_id, 'users');
275
+ wp_cache_delete ($user_login, 'userlogins');
276
+
277
+ //Social Login Hook
278
+ do_action ('oa_social_login_action_after_user_insert', $user_data, $identity);
279
+ }
280
+ }
281
+
282
+ //Sucess
283
+ $user_data = get_userdata ($user_id);
284
+ if ($user_data !== false)
285
+ {
286
+ //Hooks to be used by third parties
287
+ do_action ('oa_social_login_action_before_user_login', $user_data, $identity, $new_registration);
288
+
289
+ //Update user thumbnail
290
+ if (!empty ($user_thumbnail))
291
+ {
292
+ update_user_meta ($user_id, 'oa_social_login_user_thumbnail', $user_thumbnail);
293
+ }
294
+
295
+ //Update user picture
296
+ if (!empty ($user_picture))
297
+ {
298
+ update_user_meta ($user_id, 'oa_social_login_user_picture', $user_picture);
299
+ }
300
+
301
+ //Set the cookie and login
302
+ wp_clear_auth_cookie ();
303
+ wp_set_auth_cookie ($user_data->ID, true);
304
+ do_action ('wp_login', $user_data->user_login, $user_data);
305
+
306
+ //Where did the user come from?
307
+ $oa_social_login_source = (!empty ($_REQUEST ['oa_social_login_source']) ? strtolower (trim ($_REQUEST ['oa_social_login_source'])) : '');
308
+
309
+ //Use safe redirection?
310
+ $redirect_to_safe = false;
311
+
312
+ //Build the url to redirect the user to
313
+ switch ($oa_social_login_source)
314
+ {
315
+ //*************** Registration ***************
316
+ case 'registration':
317
+ //Default redirection
318
+ $redirect_to = admin_url ();
319
+
320
+ //Redirection in URL
321
+ if (!empty ($_GET ['redirect_to']))
322
+ {
323
+ $redirect_to = $_GET ['redirect_to'];
324
+ $redirect_to_safe = true;
325
+ }
326
+ else
327
+ {
328
+ //Redirection customized
329
+ if (isset ($settings ['plugin_registration_form_redirect']))
330
+ {
331
+ switch (strtolower ($settings ['plugin_registration_form_redirect']))
332
+ {
333
+ //Current
334
+ case 'current':
335
+ $redirect_to = oa_social_login_get_current_url ();
336
+ break;
337
+
338
+ //Homepage
339
+ case 'homepage':
340
+ $redirect_to = home_url ();
341
+ break;
342
+
343
+ //Custom
344
+ case 'custom':
345
+ if (isset ($settings ['plugin_registration_form_redirect_custom_url']) AND strlen (trim ($settings ['plugin_registration_form_redirect_custom_url'])) > 0)
346
+ {
347
+ $redirect_to = trim ($settings ['plugin_registration_form_redirect_custom_url']);
348
+ }
349
+ break;
350
+
351
+ //Default/Dashboard
352
+ default:
353
+ case 'dashboard':
354
+ $redirect_to = admin_url ();
355
+ break;
356
+ }
357
+ }
358
+ }
359
+ break;
360
+
361
+
362
+ //*************** Login ***************
363
+ case 'login':
364
+ //Default redirection
365
+ $redirect_to = home_url ();
366
+
367
+ //Redirection in URL
368
+ if (!empty ($_GET ['redirect_to']))
369
+ {
370
+ $redirect_to = $_GET ['redirect_to'];
371
+ $redirect_to_safe = true;
372
+ }
373
+ else
374
+ {
375
+ //Redirection customized
376
+ if (isset ($settings ['plugin_login_form_redirect']))
377
+ {
378
+ switch (strtolower ($settings ['plugin_login_form_redirect']))
379
+ {
380
+ //Current
381
+ case 'current':
382
+
383
+ global $pagenow;
384
+
385
+ //Do not redirect to the login page as this would logout the user.
386
+ if (empty ($pagenow) OR $pagenow <> 'wp-login.php')
387
+ {
388
+ $redirect_to = oa_social_login_get_current_url ();
389
+ }
390
+ //In this case just go to the home page
391
+ else
392
+ {
393
+ $redirect_to = home_url ();
394
+ }
395
+ break;
396
+
397
+ //Dashboard
398
+ case 'dashboard':
399
+ $redirect_to = admin_url ();
400
+ break;
401
+
402
+ //Custom
403
+ case 'custom':
404
+ if (isset ($settings ['plugin_login_form_redirect_custom_url']) AND strlen (trim ($settings ['plugin_login_form_redirect_custom_url'])) > 0)
405
+ {
406
+ $redirect_to = trim ($settings ['plugin_login_form_redirect_custom_url']);
407
+ }
408
+ break;
409
+
410
+ //Default/Homepage
411
+ default:
412
+ case 'homepage':
413
+ $redirect_to = home_url ();
414
+ break;
415
+ }
416
+ }
417
+ }
418
+ break;
419
+
420
+ // *************** Comments ***************
421
+ case 'comments':
422
+ $redirect_to = oa_social_login_get_current_url () . '#comments';
423
+ break;
424
+
425
+ //*************** Widget/Shortcode ***************
426
+ default:
427
+ case 'widget':
428
+ case 'shortcode':
429
+ // This is a new user
430
+ $opt_key = ($new_registration === true ? 'register' : 'login');
431
+
432
+ //Default value
433
+ $redirect_to = oa_social_login_get_current_url ();
434
+
435
+ //Redirection customized
436
+ if (isset ($settings ['plugin_shortcode_' . $opt_key . '_redirect']))
437
+ {
438
+ switch (strtolower ($settings ['plugin_shortcode_' . $opt_key . '_redirect']))
439
+ {
440
+ //Current
441
+ case 'current':
442
+ $redirect_to = oa_social_login_get_current_url ();
443
+ break;
444
+
445
+ //Homepage
446
+ case 'homepage':
447
+ $redirect_to = home_url ();
448
+ break;
449
+
450
+ //Dashboard
451
+ case 'dashboard':
452
+ $redirect_to = admin_url ();
453
+ break;
454
+
455
+ //Custom
456
+ case 'custom':
457
+ if (isset ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url']) AND strlen (trim ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url'])) > 0)
458
+ {
459
+ $redirect_to = trim ($settings ['plugin_shortcode_' . $opt_key . '_redirect_url']);
460
+ }
461
+ break;
462
+ }
463
+ }
464
+ break;
465
+ }
466
+
467
+ //Check if url set
468
+ if (!isset ($redirect_to) OR strlen (trim ($redirect_to)) == 0)
469
+ {
470
+ $redirect_to = home_url ();
471
+ }
472
+
473
+ //Filter for redirection urls
474
+ if ($new_registration === true)
475
+ {
476
+ $redirect_to = apply_filters ('oa_social_login_filter_registration_redirect_url', $redirect_to, $user_data);
477
+ }
478
+ else
479
+ {
480
+ $redirect_to = apply_filters ('oa_social_login_filter_login_redirect_url', $redirect_to, $user_data);
481
+ }
482
+
483
+ //Hooks for other plugins
484
+ do_action('oa_social_login_action_before_user_redirect', $user_data, $identity, $redirect_to);
485
+
486
+ //Use safe redirection
487
+ if ($redirect_to_safe === true)
488
+ {
489
+ wp_safe_redirect ($redirect_to);
490
+ }
491
+ else
492
+ {
493
+ wp_redirect ($redirect_to);
494
+ }
495
+ exit ();
496
+ }
497
+ }
498
+ }
499
+ }
500
+ }
501
+ }
502
+
503
+
504
+ /**
505
+ * Send an API request by using the given handler
506
+ */
507
+ function oa_social_login_do_api_request ($handler, $url, $options = array (), $timeout = 25)
508
+ {
509
+ //FSOCKOPEN
510
+ if ($handler == 'fsockopen')
511
+ {
512
+ return oa_social_login_fsockopen_request ($url, $options, $timeout);
513
+ }
514
+ //CURL
515
+ else
516
+ {
517
+ return oa_social_login_curl_request ($url, $options, $timeout);
518
+ }
519
+ }
520
+
521
+ /**
522
+ * **************************************************************************************************************
523
+ * ************************************************* FSOCKOPEN **************************************************
524
+ * **************************************************************************************************************
525
+ */
526
+
527
+ /**
528
+ * Check if fsockopen is available.
529
+ */
530
+ function oa_social_login_check_fsockopen_available ()
531
+ {
532
+ //Make sure fsockopen has been loaded
533
+ if (function_exists ('fsockopen') AND function_exists ('fwrite'))
534
+ {
535
+ $disabled_functions = oa_social_login_get_disabled_functions ();
536
+
537
+ //Make sure fsockopen has not been disabled
538
+ if (!in_array ('fsockopen', $disabled_functions) AND !in_array ('fwrite', $disabled_functions))
539
+ {
540
+ //Loaded and enabled
541
+ return true;
542
+ }
543
+ }
544
+
545
+ //Not loaded or disabled
546
+ return false;
547
+ }
548
+
549
+
550
+ /**
551
+ * Check if fsockopen is enabled and can be used to connect to OneAll.
552
+ */
553
+ function oa_social_login_check_fsockopen ($secure = true)
554
+ {
555
+ if (oa_social_login_check_fsockopen_available ())
556
+ {
557
+ $result = oa_social_login_fsockopen_request (($secure ? 'https' : 'http') . '://www.oneall.com/ping.html');
558
+ if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200)
559
+ {
560
+ if (property_exists ($result, 'http_data'))
561
+ {
562
+ if (strtolower ($result->http_data) == 'ok')
563
+ {
564
+ return true;
565
+ }
566
+ }
567
+ }
568
+ }
569
+ return false;
570
+ }
571
+
572
+
573
+ /**
574
+ * Send an fsockopen request.
575
+ */
576
+ function oa_social_login_fsockopen_request ($url, $options = array (), $timeout = 15)
577
+ {
578
+ //Store the result
579
+ $result = new stdClass ();
580
+
581
+ //Make sure that this is a valid URL
582
+ if (($uri = parse_url ($url)) == false)
583
+ {
584
+ $result->http_code = -1;
585
+ $result->http_data = null;
586
+ $result->http_error = 'invalid_uri';
587
+ return $result;
588
+ }
589
+
590
+ //Make sure that we can handle the scheme
591
+ switch ($uri ['scheme'])
592
+ {
593
+ case 'http':
594
+ $port = (isset ($uri ['port']) ? $uri ['port'] : 80);
595
+ $host = ($uri ['host'] . ($port != 80 ? ':' . $port : ''));
596
+ $fp = @fsockopen ($uri ['host'], $port, $errno, $errstr, $timeout);
597
+ break;
598
+
599
+ case 'https':
600
+ $port = (isset ($uri ['port']) ? $uri ['port'] : 443);
601
+ $host = ($uri ['host'] . ($port != 443 ? ':' . $port : ''));
602
+ $fp = @fsockopen ('ssl://' . $uri ['host'], $port, $errno, $errstr, $timeout);
603
+ break;
604
+
605
+ default:
606
+ $result->http_code = -1;
607
+ $result->http_data = null;
608
+ $result->http_error = 'invalid_schema';
609
+ return $result;
610
+ break;
611
+ }
612
+
613
+ //Make sure that the socket has been opened properly
614
+ if (!$fp)
615
+ {
616
+ $result->http_code = -$errno;
617
+ $result->http_data = null;
618
+ $result->http_error = trim ($errstr);
619
+ return $result;
620
+ }
621
+
622
+ //Construct the path to act on
623
+ $path = (isset ($uri ['path']) ? $uri ['path'] : '/');
624
+ if (isset ($uri ['query']))
625
+ {
626
+ $path .= '?' . $uri ['query'];
627
+ }
628
+
629
+ //Create HTTP request
630
+ $defaults = array (
631
+ 'Host' => "Host: $host",
632
+ 'User-Agent' => 'User-Agent: SocialLogin ' . OA_SOCIAL_LOGIN_VERSION . 'WP (+http://www.oneall.com/)'
633
+ );
634
+
635
+ //Enable basic authentication
636
+ if (isset ($options ['api_key']) AND isset ($options ['api_secret']))
637
+ {
638
+ $defaults ['Authorization'] = 'Authorization: Basic ' . base64_encode ($options ['api_key'] . ":" . $options ['api_secret']);
639
+ }
640
+
641
+ //Build and send request
642
+ $request = 'GET ' . $path . " HTTP/1.0\r\n";
643
+ $request .= implode ("\r\n", $defaults);
644
+ $request .= "\r\n\r\n";
645
+ fwrite ($fp, $request);
646
+
647
+ //Fetch response
648
+ $response = '';
649
+ while (!feof ($fp))
650
+ {
651
+ $response .= fread ($fp, 1024);
652
+ }
653
+
654
+ //Close connection
655
+ fclose ($fp);
656
+
657
+ //Parse response
658
+ list($response_header, $response_body) = explode ("\r\n\r\n", $response, 2);
659
+
660
+ //Parse header
661
+ $response_header = preg_split ("/\r\n|\n|\r/", $response_header);
662
+ list($header_protocol, $header_code, $header_status_message) = explode (' ', trim (array_shift ($response_header)), 3);
663
+
664
+ //Build result
665
+ $result->http_code = $header_code;
666
+ $result->http_data = $response_body;
667
+
668
+ //Done
669
+ return $result;
670
+ }
671
+
672
+ /**
673
+ * **************************************************************************************************************
674
+ ** *************************************************** CURL ****************************************************
675
+ * **************************************************************************************************************
676
+ */
677
+
678
+ /**
679
+ * Check if cURL has been loaded and is enabled.
680
+ */
681
+ function oa_social_login_check_curl_available ()
682
+ {
683
+ //Make sure cURL has been loaded
684
+ if (in_array ('curl', get_loaded_extensions ()) AND function_exists ('curl_init') AND function_exists ('curl_exec'))
685
+ {
686
+ $disabled_functions = oa_social_login_get_disabled_functions ();
687
+
688
+ //Make sure cURL not been disabled
689
+ if (!in_array ('curl_init', $disabled_functions) AND !in_array ('curl_exec', $disabled_functions))
690
+ {
691
+ //Loaded and enabled
692
+ return true;
693
+ }
694
+ }
695
+
696
+ //Not loaded or disabled
697
+ return false;
698
+ }
699
+
700
+
701
+ /**
702
+ * Check if CURL is available and can be used to connect to OneAll
703
+ */
704
+ function oa_social_login_check_curl ($secure = true)
705
+ {
706
+ if (oa_social_login_check_curl_available ())
707
+ {
708
+ $result = oa_social_login_curl_request (($secure ? 'https' : 'http') . '://www.oneall.com/ping.html');
709
+ if (is_object ($result) AND property_exists ($result, 'http_code') AND $result->http_code == 200)
710
+ {
711
+ if (property_exists ($result, 'http_data'))
712
+ {
713
+ if (strtolower ($result->http_data) == 'ok')
714
+ {
715
+ return true;
716
+ }
717
+ }
718
+ }
719
+ }
720
+ return false;
721
+ }
722
+
723
+
724
+ /**
725
+ * Send a CURL request.
726
+ */
727
+ function oa_social_login_curl_request ($url, $options = array (), $timeout = 15)
728
+ {
729
+ //Store the result
730
+ $result = new stdClass ();
731
+
732
+ //Send request
733
+ $curl = curl_init ();
734
+ curl_setopt ($curl, CURLOPT_URL, $url);
735
+ curl_setopt ($curl, CURLOPT_HEADER, 0);
736
+ curl_setopt ($curl, CURLOPT_TIMEOUT, $timeout);
737
+ curl_setopt ($curl, CURLOPT_VERBOSE, 0);
738
+ curl_setopt ($curl, CURLOPT_RETURNTRANSFER, 1);
739
+ curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0);
740
+ curl_setopt ($curl, CURLOPT_SSL_VERIFYHOST, 0);
741
+ curl_setopt ($curl, CURLOPT_USERAGENT, 'SocialLogin ' . OA_SOCIAL_LOGIN_VERSION . 'WP (+http://www.oneall.com/)');
742
+
743
+ // BASIC AUTH?
744
+ if (isset ($options ['api_key']) AND isset ($options ['api_secret']))
745
+ {
746
+ curl_setopt ($curl, CURLOPT_USERPWD, $options ['api_key'] . ":" . $options ['api_secret']);
747
+ }
748
+
749
+ //Make request
750
+ if (($http_data = curl_exec ($curl)) !== false)
751
+ {
752
+ $result->http_code = curl_getinfo ($curl, CURLINFO_HTTP_CODE);
753
+ $result->http_data = $http_data;
754
+ $result->http_error = null;
755
+ }
756
+ else
757
+ {
758
+ $result->http_code = -1;
759
+ $result->http_data = null;
760
+ $result->http_error = curl_error ($curl);
761
+ }
762
+
763
+ //Done
764
+ return $result;
765
+ }
includes/settings.php CHANGED
@@ -3,74 +3,84 @@
3
  /**
4
  * Available Providers
5
  */
6
- $oa_social_login_providers = array (
7
- 'facebook' => array (
8
- 'name' => 'Facebook'
9
- ),
10
- 'twitter' => array (
11
- 'name' => 'Twitter'
12
- ),
13
- 'google' => array (
14
- 'name' => 'Google'
15
- ),
16
- 'linkedin' => array (
17
- 'name' => 'LinkedIn'
18
- ),
19
- 'yahoo' => array (
20
- 'name' => 'Yahoo'
21
- ),
22
- 'github' => array (
23
- 'name' => 'Github.com'
24
- ),
25
- 'foursquare' => array (
26
- 'name' => 'Foursquare'
27
- ),
28
- 'youtube' => array (
29
- 'name' => 'YouTube'
30
- ),
31
- 'skyrock' => array (
32
- 'name' => 'Skyrock.com'
33
- ),
34
- 'openid' => array (
35
- 'name' => 'OpenID'
36
- ),
37
- 'wordpress' => array (
38
- 'name' => 'Wordpress.com'
39
- ),
40
- 'hyves' => array (
41
- 'name' => 'Hyves'
42
- ),
43
- 'paypal' => array (
44
- 'name' => 'PayPal'
45
- ),
46
- 'livejournal' => array (
47
- 'name' => 'LiveJournal'
48
- ),
49
- 'steam' => array (
50
- 'name' => 'Steam Community'
51
- ),
52
- 'twitch' => array (
53
- 'name' => 'Twitch.tv'
54
- ),
55
- 'windowslive' => array (
56
- 'name' => 'Windows Live'
57
- ),
58
- 'blogger' => array (
59
- 'name' => 'Blogger'
60
- ),
61
- 'disqus' => array (
62
- 'name' => 'Disqus'
63
- ),
64
- 'stackexchange' => array (
65
- 'name' => 'StackExchange'
66
- ),
67
- 'vkontakte' => array (
68
- 'name' => 'VKontakte (Вконтакте)'
69
- ),
70
- 'odnoklassniki' => array (
71
- 'name' => 'Odnoklassniki.ru'
72
- ),
73
- 'mailru' => array (
74
- 'name' => 'Mail.ru'
75
- )
 
 
 
 
 
 
 
 
 
 
76
  );
3
  /**
4
  * Available Providers
5
  */
6
+
7
+ $oa_social_login_providers = array(
8
+ 'amazon' => array(
9
+ 'name' => 'Amazon',
10
+ ),
11
+ 'blogger' => array(
12
+ 'name' => 'Blogger',
13
+ ),
14
+ 'disqus' => array(
15
+ 'name' => 'Disqus',
16
+ ),
17
+ 'facebook' => array(
18
+ 'name' => 'Facebook',
19
+ ),
20
+ 'foursquare' => array(
21
+ 'name' => 'Foursquare',
22
+ ),
23
+ 'github' => array(
24
+ 'name' => 'Github.com',
25
+ ),
26
+ 'google' => array(
27
+ 'name' => 'Google',
28
+ ),
29
+ 'instagram' => array(
30
+ 'name' => 'Instagram',
31
+ ),
32
+ 'linkedin' => array(
33
+ 'name' => 'LinkedIn',
34
+ ),
35
+ 'livejournal' => array(
36
+ 'name' => 'LiveJournal',
37
+ ),
38
+ 'mailru' => array(
39
+ 'name' => 'Mail.ru',
40
+ ),
41
+ 'odnoklassniki' => array(
42
+ 'name' => 'Odnoklassniki',
43
+ ),
44
+ 'openid' => array(
45
+ 'name' => 'OpenID',
46
+ ),
47
+ 'paypal' => array(
48
+ 'name' => 'PayPal',
49
+ ),
50
+ 'reddit' => array(
51
+ 'name' => 'Reddit',
52
+ ),
53
+ 'skyrock' => array(
54
+ 'name' => 'Skyrock.com',
55
+ ),
56
+ 'stackexchange' => array(
57
+ 'name' => 'StackExchange',
58
+ ),
59
+ 'steam' => array(
60
+ 'name' => 'Steam',
61
+ ),
62
+ 'twitch' => array(
63
+ 'name' => 'Twitch.tv',
64
+ ),
65
+ 'twitter' => array(
66
+ 'name' => 'Twitter',
67
+ ),
68
+ 'vimeo' => array(
69
+ 'name' => 'Vimeo',
70
+ ),
71
+ 'vkontakte' => array(
72
+ 'name' => 'VKontakte',
73
+ ),
74
+ 'windowslive' => array(
75
+ 'name' => 'Windows Live',
76
+ ),
77
+ 'wordpress' => array(
78
+ 'name' => 'WordPress.com',
79
+ ),
80
+ 'yahoo' => array(
81
+ 'name' => 'Yahoo',
82
+ ),
83
+ 'youtube' => array(
84
+ 'name' => 'YouTube',
85
+ )
86
  );
includes/toolbox.php CHANGED
@@ -5,13 +5,13 @@
5
  */
6
  function oa_social_login_init ()
7
  {
8
- //Localization
9
  if (function_exists ('load_plugin_textdomain'))
10
  {
11
  load_plugin_textdomain ('oa_social_login', false, OA_SOCIAL_LOGIN_BASE_PATH . '/languages/');
12
  }
13
 
14
- //Callback Handler
15
  oa_social_login_callback ();
16
  }
17
 
@@ -82,13 +82,17 @@ function oa_social_login_user_notification ($user_id, $user_identity_provider)
82
  //The blogname option is escaped with esc_html on the way into the database
83
  $blogname = wp_specialchars_decode (get_option ('blogname'), ENT_QUOTES);
84
 
85
- //Setup Message
86
- $message = sprintf (__ ('New user registration on your site %s:', 'oa_social_login'), $blogname) . "\r\n\r\n";
87
- $message .= sprintf (__ ('Username: %s', 'oa_social_login'), $user_login) . "\r\n\r\n";
88
- $message .= sprintf (__ ('Social Network: %s', 'oa_social_login'), $user_identity_provider) . "\r\n";
89
 
90
- //Send Message
91
- @wp_mail (get_option ('admin_email'), '[Social Login] ' . sprintf (__ ('[%s] New User Registration', 'oa_social_login'), $blogname), $message);
 
 
 
 
 
92
  }
93
 
94
 
@@ -97,17 +101,43 @@ function oa_social_login_user_notification ($user_id, $user_identity_provider)
97
  */
98
  function oa_social_login_get_current_url ()
99
  {
100
- //Get request URI - Should work on Apache + IIS
101
- $request_uri = ((!isset ($_SERVER ['REQUEST_URI'])) ? $_SERVER ['PHP_SELF'] : $_SERVER ['REQUEST_URI']);
102
- $request_port = ((!empty ($_SERVER ['SERVER_PORT']) AND $_SERVER ['SERVER_PORT'] <> '80') ? (":" . $_SERVER ['SERVER_PORT']) : '');
103
- $request_protocol = (oa_social_login_https_on () ? 'https' : 'http') . "://";
104
- $redirect_to = $request_protocol . $_SERVER ['SERVER_NAME'] . $request_port . $request_uri;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
105
 
106
  //Remove the oa_social_login_source argument
107
- if (strpos ($redirect_to, 'oa_social_login_source') !== false)
108
  {
109
  //Break up url
110
- list($url_part, $query_part) = array_pad (explode ('?', $redirect_to), 2, '');
111
  parse_str ($query_part, $query_vars);
112
 
113
  //Remove oa_social_login_source argument
@@ -117,10 +147,33 @@ function oa_social_login_get_current_url ()
117
  }
118
 
119
  //Build new url
120
- $redirect_to = $url_part . ((is_array ($query_vars) AND count ($query_vars) > 0) ? ('?' . http_build_query ($query_vars)) : '');
121
  }
122
 
123
- return $redirect_to;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  }
125
 
126
 
@@ -183,8 +236,14 @@ function oa_social_login_create_rand_email ()
183
  {
184
  do
185
  {
 
186
  $email = md5 (uniqid (wp_rand (10000, 99000))) . "@example.com";
 
 
 
187
  }
188
  while (email_exists ($email));
 
 
189
  return $email;
190
  }
5
  */
6
  function oa_social_login_init ()
7
  {
8
+ //Add language file.
9
  if (function_exists ('load_plugin_textdomain'))
10
  {
11
  load_plugin_textdomain ('oa_social_login', false, OA_SOCIAL_LOGIN_BASE_PATH . '/languages/');
12
  }
13
 
14
+ //Launch the callback handler.
15
  oa_social_login_callback ();
16
  }
17
 
82
  //The blogname option is escaped with esc_html on the way into the database
83
  $blogname = wp_specialchars_decode (get_option ('blogname'), ENT_QUOTES);
84
 
85
+ //Setup Mail Header
86
+ $recipient = get_bloginfo ('admin_email');
87
+ $subject = '[Social Login] ' . sprintf (__ ('[%s] New User Registration', 'oa_social_login'), $blogname);
 
88
 
89
+ //Setup Mail Body
90
+ $body = sprintf (__ ('New user registration on your site %s:', 'oa_social_login'), $blogname) . "\r\n\r\n";
91
+ $body .= sprintf (__ ('Username: %s', 'oa_social_login'), $user_login) . "\r\n\r\n";
92
+ $body .= sprintf (__ ('Social Network: %s', 'oa_social_login'), $user_identity_provider) . "\r\n";
93
+
94
+ //Send Mail
95
+ @wp_mail ($recipient, $subject, $body);
96
  }
97
 
98
 
101
  */
102
  function oa_social_login_get_current_url ()
103
  {
104
+ //Extract parts
105
+ $request_uri = (isset ($_SERVER ['REQUEST_URI']) ? $_SERVER ['REQUEST_URI'] : $_SERVER ['PHP_SELF']);
106
+ $request_protocol = (oa_social_login_https_on () ? 'https' : 'http');
107
+ $request_host = (isset ($_SERVER ['HTTP_X_FORWARDED_HOST']) ? $_SERVER ['HTTP_X_FORWARDED_HOST'] : (isset ($_SERVER ['HTTP_HOST']) ? $_SERVER ['HTTP_HOST'] : $_SERVER ['SERVER_NAME']));
108
+
109
+ //Port of this request
110
+ $request_port = '';
111
+
112
+ //We are using a proxy
113
+ if (isset ($_SERVER ['HTTP_X_FORWARDED_PORT']))
114
+ {
115
+ // SERVER_PORT is usually wrong on proxies, don't use it!
116
+ $request_port = intval ($_SERVER ['HTTP_X_FORWARDED_PORT']);
117
+ }
118
+ //Does not seem like a proxy
119
+ elseif (isset ($_SERVER ['SERVER_PORT']))
120
+ {
121
+ $request_port = intval ($_SERVER ['SERVER_PORT']);
122
+ }
123
+
124
+ // Remove standard ports
125
+ $request_port = (!in_array ($request_port, array (80, 443)) ? $request_port : '');
126
+
127
+ //Add your own filters
128
+ $request_port = apply_filters ('oa_social_login_filter_current_url_port', $request_port);
129
+ $request_protocol = apply_filters ('oa_social_login_filter_current_url_protocol', $request_protocol);
130
+ $request_host = apply_filters ('oa_social_login_filter_current_url_host', $request_host);
131
+ $request_uri = apply_filters ('oa_social_login_filter_current_url_uri', $request_uri);
132
+
133
+ //Build url
134
+ $current_url = $request_protocol . '://' . $request_host . ( ! empty ($request_port) ? (':'.$request_port) : '') . $request_uri;
135
 
136
  //Remove the oa_social_login_source argument
137
+ if (strpos ($current_url, 'oa_social_login_source') !== false)
138
  {
139
  //Break up url
140
+ list($url_part, $query_part) = array_pad (explode ('?', $current_url), 2, '');
141
  parse_str ($query_part, $query_vars);
142
 
143
  //Remove oa_social_login_source argument
147
  }
148
 
149
  //Build new url
150
+ $current_url = $url_part . ((is_array ($query_vars) AND count ($query_vars) > 0) ? ('?' . http_build_query ($query_vars)) : '');
151
  }
152
 
153
+ //Apply filters
154
+ $current_url = apply_filters ('oa_social_login_filter_current_url', $current_url);
155
+
156
+ //Done
157
+ return $current_url;
158
+ }
159
+
160
+
161
+ /**
162
+ * Return the list of disabled functions.
163
+ */
164
+ function oa_social_login_get_disabled_functions ()
165
+ {
166
+ $disabled_functions = trim (ini_get ('disable_functions'));
167
+ if (strlen ($disabled_functions) == 0)
168
+ {
169
+ $disabled_functions = array ();
170
+ }
171
+ else
172
+ {
173
+ $disabled_functions = explode (',', $disabled_functions);
174
+ $disabled_functions = array_map ('trim', $disabled_functions);
175
+ }
176
+ return $disabled_functions;
177
  }
178
 
179
 
236
  {
237
  do
238
  {
239
+ //Create a random email.
240
  $email = md5 (uniqid (wp_rand (10000, 99000))) . "@example.com";
241
+
242
+ //Allow it to be customized.
243
+ $email = apply_filters ('oa_social_login_filter_create_random_email', $email);
244
  }
245
  while (email_exists ($email));
246
+
247
+ //Done
248
  return $email;
249
  }
includes/user_interface.php CHANGED
@@ -5,18 +5,46 @@
5
  */
6
  function oa_social_login_add_javascripts ()
7
  {
8
- if (!wp_script_is ('oa_social_library', 'registered'))
 
 
 
 
9
  {
10
- //Read settings
11
- $settings = get_option ('oa_social_login_settings');
12
 
13
- if (!empty ($settings ['api_subdomain']))
 
 
 
 
 
 
 
 
 
 
 
 
14
  {
15
- //Include in header, without having the version appended
16
- wp_register_script ('oa_social_library', ((oa_social_login_https_on () ? 'https' : 'http') . '://' . $settings ['api_subdomain'] . '.api.oneall.com/socialize/library.js'), array (), null, false);
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  }
18
  }
19
- wp_print_scripts ('oa_social_library');
20
  }
21
 
22
  //This is for Social Login
@@ -38,34 +66,34 @@ add_action ('show_user_profile', 'oa_social_login_add_javascripts');
38
  */
39
  function oa_social_login_render_link_form ($source, $user)
40
  {
41
- //Data returned
42
  $output = '';
43
 
44
  if (is_object ($user) AND property_exists ($user, 'data') AND !empty ($user->data->ID))
45
  {
46
- //Only show if the user is viewing his own profile
47
  if ($user->data->ID == get_current_user_id ())
48
  {
49
- //Identifier of the current user
50
  $userid = $user->data->ID;
51
 
52
- //Read settings
53
  $settings = get_option ('oa_social_login_settings');
54
 
55
  //Is Social Link enabled?
56
  if (!isset ($settings ['plugin_profile_show']) OR !empty ($settings ['plugin_profile_show']))
57
  {
58
- //Import providers
59
- GLOBAL $oa_social_login_providers;
60
-
61
- //Parse API Settings
62
  $api_connection_handler = ((!empty ($settings ['api_connection_handler']) AND $settings ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
63
  $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
64
  $api_subdomain = (!empty ($settings ['api_subdomain']) ? $settings ['api_subdomain'] : '');
65
  $api_key = (!empty ($settings ['api_key']) ? $settings ['api_key'] : '');
66
  $api_secret = (!empty ($settings ['api_secret']) ? $settings ['api_secret'] : '');
67
 
68
- //Setup API Providers
 
 
 
69
  $api_providers = array ();
70
  if (is_array ($settings ['providers']))
71
  {
@@ -78,29 +106,29 @@ function oa_social_login_render_link_form ($source, $user)
78
  }
79
  }
80
 
81
- //The Subdomain is required
82
  if (!empty ($api_subdomain))
83
  {
84
- //No providers selected
85
  if (count ($api_providers) == 0)
86
  {
87
  $output = '<div style="color:white;background-color:red;">[Social Login] ' . __ ('Please enable at least one social network!', 'oa_social_login') . '</div>';
88
  }
89
- //Providers selected
90
  else
91
  {
92
- //Error Message
93
  $error_message = '';
94
  $success_message = '';
95
 
96
- //Callback Handler
97
  if (isset ($_POST) AND !empty ($_POST ['oa_action']) AND $_POST ['oa_action'] == 'social_link' AND !empty ($_POST ['connection_token']))
98
  {
99
  //More info here: https://docs.oneall.com/api/resources/connections/read-connection-details/
100
  $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_subdomain . '.api.oneall.com/connections/' . $_POST ['connection_token'] . '.json';
101
 
102
  //Get connection details
103
- $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, array ('api_key' => $api_key, 'api_secret' => $api_secret), 15);
104
 
105
  //Parse result
106
  if (is_object ($result) AND property_exists ($result, 'http_code') AND property_exists ($result, 'http_data') AND $result->http_code == 200)
@@ -137,7 +165,7 @@ function oa_social_login_render_link_form ($source, $user)
137
 
138
  //Update new provider list
139
  $identity_providers = array (
140
- trim ($data->user->identity->source->name)
141
  );
142
  foreach ($meta_identity_providers AS $meta_identity_provider)
143
  {
@@ -266,6 +294,9 @@ function oa_social_login_render_link_form ($source, $user)
266
  }
267
  }
268
 
 
 
 
269
  //OneAll user_token
270
  $token = strval (oa_social_login_get_token_by_userid ($userid));
271
 
@@ -273,28 +304,51 @@ function oa_social_login_render_link_form ($source, $user)
273
  $rand = mt_rand (99999, 9999999);
274
 
275
  //Callback URI
276
- $callback_uri = oa_social_login_get_current_url () . '?oa_social_login_source='.$source.'#oa_social_link';
 
 
 
 
 
277
 
278
  //Setup Social Link
279
  $social_link = array ();
280
  $social_link [] = '<div class="oneall_social_link">';
281
- $social_link [] = ' <div class="oneall_social_login_providers" id="oneall_social_login_providers_' . $rand . '"></div>';
282
  $social_link [] = ' <script type="text/javascript">';
283
- $social_link [] = ' oneall.api.plugins.social_link.build("oneall_social_login_providers_' . $rand . '", {';
284
- $social_link [] = ' "providers": ["' . implode ('","', $api_providers) . '"], ';
285
- $social_link [] = ' "user_token": "' . $token . '", ';
286
- $social_link [] = ' "callback_uri": "' . $callback_uri . '", ';
287
- $social_link [] = ' });';
288
- $social_link [] = ' </script>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
289
  $social_link [] = '</div>';
290
  $social_link = implode ("\n", $social_link);
291
 
 
292
  //Setup Output
293
- $output .= '<h3 id="oa_social_link"> '. __('Connect your account to one or more social networks', 'oa_social_login') .'</h3>';
294
  $output .= '<table class="form-table">';
295
- $output .= (empty ($success_message) ? '' : '<tr><td><span style="color:green;font-weight:bold"> '.$success_message. '</span></td></tr>');
296
- $output .= (empty ($error_message) ? '' : '<tr><td><span style="color:red;font-weight:bold">'. $error_message .'</span></td></tr>');
297
- $output .= '<tr><td>'. $social_link .'</td></tr>';
298
  $output .= '</table>';
299
  }
300
  }
@@ -322,8 +376,8 @@ function oa_social_login_link_shortcode_handler ($args)
322
  {
323
  if (is_user_logged_in ())
324
  {
325
- $user = wp_get_current_user();
326
- if ( ! empty ($user->data->ID))
327
  {
328
  return oa_social_login_render_link_form ('shortcode', $user);
329
  }
@@ -341,8 +395,8 @@ function oa_social_login_link_action_handler ()
341
  //Social Link works only with logged in users
342
  if (is_user_logged_in ())
343
  {
344
- $user = wp_get_current_user();
345
- if ( is_object ($user) AND ! empty ($user->data->ID))
346
  {
347
  echo oa_social_login_render_link_form ('custom', $user);
348
  }
@@ -351,7 +405,6 @@ function oa_social_login_link_action_handler ()
351
  add_action ('oa_social_link', 'oa_social_login_link_action_handler');
352
 
353
 
354
-
355
  /**
356
  * **************************************************************************************************************
357
  * ************************************************ SOCIAL LOGIN ************************************************
@@ -364,7 +417,7 @@ add_action ('oa_social_link', 'oa_social_login_link_action_handler');
364
  */
365
  function oa_social_login_shortcode_handler ($args)
366
  {
367
- if ( ! is_user_logged_in ())
368
  {
369
  return oa_social_login_render_login_form ('shortcode');
370
  }
@@ -373,6 +426,53 @@ function oa_social_login_shortcode_handler ($args)
373
  add_shortcode ('oa_social_login', 'oa_social_login_shortcode_handler');
374
 
375
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
376
  /**
377
  * Hook to display custom avatars (Buddypress specific)
378
  */
@@ -387,7 +487,7 @@ function oa_social_login_bp_custom_fetch_avatar ($text, $args)
387
  }
388
 
389
  //Check if avatars are enabled
390
- if ( ! empty ($oa_social_login_avatars))
391
  {
392
  //Check arguments
393
  if (is_array ($args))
@@ -401,33 +501,43 @@ function oa_social_login_bp_custom_fetch_avatar ($text, $args)
401
  //Retrieve user
402
  if (($user_data = get_userdata ($args ['item_id'])) !== false)
403
  {
404
- //Read the avatar
405
- $user_meta_thumbnail = get_user_meta ($args ['item_id'], 'oa_social_login_user_thumbnail', true);
406
- $user_meta_picture = get_user_meta ($args ['item_id'], 'oa_social_login_user_picture', true);
407
 
408
- //Use the picture if possible
409
- if ($oa_social_login_avatars == 2)
410
- {
411
- $user_picture = (! empty ($user_meta_picture) ? $user_meta_picture : $user_meta_thumbnail);
412
- }
413
- //Use the thumbnail if possible
414
- else
415
- {
416
- $user_picture = (! empty ($user_meta_thumbnail) ? $user_meta_thumbnail : $user_meta_picture);
417
- }
418
 
419
- //Avatar found?
420
- if ($user_picture !== false AND strlen (trim ($user_picture)) > 0)
421
  {
422
- //Build Image tags
423
- $img_alt = (!empty ($args ['alt']) ? 'alt="' . oa_social_login_esc_attr ($args ['alt']) . '" ' : '');
424
- $img_alt = sprintf ($img_alt, htmlspecialchars ($user_data->user_login));
425
- $img_class = ('class="' . (!empty ($args ['class']) ? ($args ['class'] . ' ') : '') . 'avatar-social-login" ');
426
- $img_width = (!empty ($args ['width']) ? 'width="' . $args ['width'] . '" ' : '');
427
- $img_height = (!empty ($args ['height']) ? 'height="' . $args ['height'] . '" ' : '');
428
-
429
- //Replace
430
- $text = preg_replace ('#<img[^>]+>#i', '<img data-social-login="bp-d1" src="' . $user_picture . '" ' . $img_alt . $img_class . $img_height . $img_width . '/>', $text);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
431
  }
432
  }
433
  }
@@ -453,7 +563,7 @@ function oa_social_login_custom_avatar ($avatar, $mixed, $size, $default, $alt =
453
  }
454
 
455
  //Check if social avatars are enabled
456
- if ( ! empty ($oa_social_login_avatars))
457
  {
458
  //Check if we have an user identifier
459
  if (is_numeric ($mixed) AND $mixed > 0)
@@ -473,31 +583,53 @@ function oa_social_login_custom_avatar ($avatar, $mixed, $size, $default, $alt =
473
  //None found
474
  else
475
  {
476
- $user_id = null;
477
  }
478
 
479
  //User found?
480
  if (!empty ($user_id))
481
  {
482
- //Read the avatar
483
- $user_meta_thumbnail = get_user_meta ($user_id, 'oa_social_login_user_thumbnail', true);
484
- $user_meta_picture = get_user_meta ($user_id, 'oa_social_login_user_picture', true);
485
 
486
- //Use the picture if possible
487
- if ($oa_social_login_avatars == 2)
488
- {
489
- $user_picture = (! empty ($user_meta_picture) ? $user_meta_picture : $user_meta_thumbnail);
490
- }
491
- //Use the thumbnail if possible
492
- else
493
  {
494
- $user_picture = (! empty ($user_meta_thumbnail) ? $user_meta_thumbnail : $user_meta_picture);
 
 
 
 
 
 
 
 
495
  }
496
 
497
- //Avatar found?
498
- if ($user_picture !== false AND strlen (trim ($user_picture)) > 0)
499
  {
500
- return '<img alt="' . oa_social_login_esc_attr ($alt) . '" src="' . $user_picture . '" class="avatar avatar-social-login avatar-' . $size . ' photo" height="' . $size . '" width="' . $size . '" />';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
501
  }
502
  }
503
  }
@@ -577,11 +709,9 @@ function oa_social_login_render_login_form_registration ()
577
  }
578
  }
579
  }
580
- //WordPress Registration Form
581
- add_action ('register_form', 'oa_social_login_render_login_form_registration');
582
 
583
  //WordPress Signup Form
584
- add_action( 'after_signup_form', 'oa_social_login_render_login_form_registration');
585
 
586
  //BuddyPress Registration
587
  add_action ('bp_before_account_details_fields', 'oa_social_login_render_login_form_registration');
@@ -601,8 +731,6 @@ function oa_social_login_render_login_form_login ()
601
  echo oa_social_login_render_login_form ('login');
602
  }
603
  }
604
- //WordPress Registration
605
- add_action ('login_form', 'oa_social_login_render_login_form_login');
606
 
607
  //WordPress Profile Builder
608
  add_action ('wppb_before_login', 'oa_social_login_render_login_form_login');
@@ -613,6 +741,82 @@ add_action ('bp_before_sidebar_login_form', 'oa_social_login_render_login_form_l
613
  //Appthemes Vantage Theme
614
  add_action ('va_after_admin_bar_login_form', 'oa_social_login_render_login_form_login');
615
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
616
 
617
  /**
618
  * Display a custom grid for login
@@ -646,6 +850,9 @@ function oa_social_login_render_login_form ($source, $args = array ())
646
  //Import providers
647
  GLOBAL $oa_social_login_providers;
648
 
 
 
 
649
  //Container for returned value
650
  $output = '';
651
 
@@ -706,6 +913,15 @@ function oa_social_login_render_login_form ($source, $args = array ())
706
  $css_theme_uri = apply_filters ('oa_social_login_default_css', $css_theme_uri);
707
  }
708
 
 
 
 
 
 
 
 
 
 
709
 
710
  //No providers selected
711
  if (count ($providers) == 0)
@@ -715,11 +931,10 @@ function oa_social_login_render_login_form ($source, $args = array ())
715
  //Providers selected
716
  else
717
  {
718
- //Random integer
719
- $rand = mt_rand (99999, 9999999);
720
 
721
  //Setup output
722
  $output = array ();
 
723
  $output [] = '<div class="oneall_social_login">';
724
 
725
  //Add the caption?
@@ -729,16 +944,31 @@ function oa_social_login_render_login_form ($source, $args = array ())
729
  }
730
 
731
  //Add the Plugin
732
- $output [] = ' <div class="oneall_social_login_providers" id="oneall_social_login_providers_' . $rand . '"></div>';
 
733
  $output [] = ' <script type="text/javascript">';
734
- $output [] = ' oneall.api.plugins.social_login.build("oneall_social_login_providers_' . $rand . '", {';
735
- $output [] = ' "providers": ["' . implode ('","', $providers) . '"], ';
736
- //$output [] = ' "same_window": true, ';
737
- $output [] = ' "callback_uri": (window.location.href + ((window.location.href.split(\'?\')[1] ? \'&amp;\':\'?\') + "oa_social_login_source=' . $source . '")), ';
738
- $output [] = ' "css_theme_uri": "' . $css_theme_uri . '" ';
739
- $output [] = ' });';
740
- $output [] = ' </script>';
741
- $output [] = ' <!-- OneAll.com / Social Login for WordPress / v' . constant ('OA_SOCIAL_LOGIN_VERSION') . ' -->';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
742
  $output [] = '</div>';
743
 
744
  //Done
@@ -794,6 +1024,8 @@ function oa_social_login_request_email ()
794
  if ($_POST ['oa_social_login_action'] == 'confirm_email')
795
  {
796
  $user_email = (empty ($_POST ['oa_social_login_email']) ? '' : trim ($_POST ['oa_social_login_email']));
 
 
797
  if (empty ($user_email))
798
  {
799
  $message = __ ('Please enter your email address', 'oa_social_login');
@@ -811,9 +1043,26 @@ function oa_social_login_request_email ()
811
  }
812
  else
813
  {
814
- wp_update_user (array ('ID' => $user_id, 'user_email' => $user_email));
815
- delete_user_meta ($user_id, 'oa_social_login_request_email');
816
- $display_modal = false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
817
  }
818
  }
819
  }
@@ -835,24 +1084,24 @@ function oa_social_login_request_email ()
835
  oa_social_login_add_site_css ();
836
 
837
  //Show email request form
838
- ?>
839
  <div id="oa_social_login_overlay"></div>
840
  <div id="oa_social_login_modal">
841
  <div class="oa_social_login_modal_outer">
842
  <div class="oa_social_login_modal_inner">
843
  <div class="oa_social_login_modal_title">
844
  <?php
845
- printf (__ ('You have successfully connected with %s!', 'oa_social_login'), '<strong>' . $oa_social_login_identity_provider . '</strong>');
846
- ?>
847
  </div>
848
  <?php
849
- if (strlen (trim ($caption)) > 0)
850
- {
851
- ?>
852
- <div class="oa_social_login_modal_notice"><?php echo str_replace ('%s', $oa_social_login_identity_provider, $caption); ?></div>
853
- <?php
854
- }
855
- ?>
856
  <div class="oa_social_login_modal_body">
857
  <div class="oa_social_login_modal_subtitle">
858
  <?php _e ('Please enter your email address', 'oa_social_login'); ?>:
@@ -868,7 +1117,7 @@ function oa_social_login_request_email ()
868
  </div>
869
  <div class="oa_social_login_buttons">
870
  <input class="oa_social_login_button_confirm" type="submit" value="<?php _e ('Confirm', 'oa_social_login'); ?>" />
871
- <input class="oa_social_login_button_cancel" type="button" value="<?php _e ('Cancel', 'oa_social_login'); ?>" onclick="window.location.href='<?php echo esc_url(wp_logout_url(oa_social_login_get_current_url()));?>'" />
872
  </div>
873
  </fieldset>
874
  </form>
@@ -881,6 +1130,5 @@ function oa_social_login_request_email ()
881
  }
882
  }
883
  }
884
-
885
  add_action ('wp_footer', 'oa_social_login_request_email');
886
- add_action ('admin_footer', 'oa_social_login_request_email');
5
  */
6
  function oa_social_login_add_javascripts ()
7
  {
8
+ //Read the plugin settings.
9
+ $settings = get_option ('oa_social_login_settings');
10
+
11
+ //Without the subdomain we can't include the libary.
12
+ if (!empty ($settings ['api_subdomain']))
13
  {
14
+ //Forge library path.
15
+ $oneall_js_library = ((oa_social_login_https_on () ? 'https' : 'http') . '://' . $settings ['api_subdomain'] . '.api.oneall.com/socialize/library.js');
16
 
17
+ // Synchronous JavaScript: This is the default to stay compatible with existing installations.
18
+ if (empty ($settings ['asynchronous_javascript']))
19
+ {
20
+ //Make sure the library has not yet been included.
21
+ if (!wp_script_is ('oa_social_library', 'registered'))
22
+ {
23
+ //Include in header, without having the version appended
24
+ wp_register_script ('oa_social_library', $oneall_js_library, array (), null, false);
25
+ }
26
+ wp_print_scripts ('oa_social_library');
27
+ }
28
+ // Asynchronous JavaScript.
29
+ else
30
  {
31
+ //JavaScript Method Reference: http://docs.oneall.com/api/javascript/library/methods/
32
+ $output = array ();
33
+ $output [] = '';
34
+ $output [] = " <!-- OneAll.com / Social Login for WordPress / v" . constant ('OA_SOCIAL_LOGIN_VERSION') . " -->";
35
+ $output [] = '<script type="text/javascript">';
36
+ $output [] = " (function() {";
37
+ $output [] = " var oa = document.createElement('script'); oa.type = 'text/javascript';";
38
+ $output [] = " oa.async = true; oa.src = '" . $oneall_js_library . "';";
39
+ $output [] = " var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(oa, s);";
40
+ $output [] = " })();";
41
+ $output [] = "</script>";
42
+ $output [] = '';
43
+
44
+ //Display
45
+ echo implode ("\n", $output);
46
  }
47
  }
 
48
  }
49
 
50
  //This is for Social Login
66
  */
67
  function oa_social_login_render_link_form ($source, $user)
68
  {
69
+ //Store the data being returned.
70
  $output = '';
71
 
72
  if (is_object ($user) AND property_exists ($user, 'data') AND !empty ($user->data->ID))
73
  {
74
+ //Only show Social Link if the user is viewing his own profile.
75
  if ($user->data->ID == get_current_user_id ())
76
  {
77
+ //Identifier of the current user.
78
  $userid = $user->data->ID;
79
 
80
+ //Read Social Login settings.
81
  $settings = get_option ('oa_social_login_settings');
82
 
83
  //Is Social Link enabled?
84
  if (!isset ($settings ['plugin_profile_show']) OR !empty ($settings ['plugin_profile_show']))
85
  {
86
+ //Parse API Settings.
 
 
 
87
  $api_connection_handler = ((!empty ($settings ['api_connection_handler']) AND $settings ['api_connection_handler'] == 'fsockopen') ? 'fsockopen' : 'curl');
88
  $api_connection_use_https = ((!isset ($settings ['api_connection_use_https']) OR $settings ['api_connection_use_https'] == '1') ? true : false);
89
  $api_subdomain = (!empty ($settings ['api_subdomain']) ? $settings ['api_subdomain'] : '');
90
  $api_key = (!empty ($settings ['api_key']) ? $settings ['api_key'] : '');
91
  $api_secret = (!empty ($settings ['api_secret']) ? $settings ['api_secret'] : '');
92
 
93
+ //Import the available social networks.
94
+ GLOBAL $oa_social_login_providers;
95
+
96
+ //Setup the selected social networks.
97
  $api_providers = array ();
98
  if (is_array ($settings ['providers']))
99
  {
106
  }
107
  }
108
 
109
+ //The API subdomain is required.
110
  if (!empty ($api_subdomain))
111
  {
112
+ //No providers have been selected.
113
  if (count ($api_providers) == 0)
114
  {
115
  $output = '<div style="color:white;background-color:red;">[Social Login] ' . __ ('Please enable at least one social network!', 'oa_social_login') . '</div>';
116
  }
117
+ //At least one providers has been selected.
118
  else
119
  {
120
+ //Message Storage.
121
  $error_message = '';
122
  $success_message = '';
123
 
124
+ //Callback Handler.
125
  if (isset ($_POST) AND !empty ($_POST ['oa_action']) AND $_POST ['oa_action'] == 'social_link' AND !empty ($_POST ['connection_token']))
126
  {
127
  //More info here: https://docs.oneall.com/api/resources/connections/read-connection-details/
128
  $api_resource_url = ($api_connection_use_https ? 'https' : 'http') . '://' . $api_subdomain . '.api.oneall.com/connections/' . $_POST ['connection_token'] . '.json';
129
 
130
  //Get connection details
131
+ $result = oa_social_login_do_api_request ($api_connection_handler, $api_resource_url, array ('api_key' => $api_key, 'api_secret' => $api_secret));
132
 
133
  //Parse result
134
  if (is_object ($result) AND property_exists ($result, 'http_code') AND property_exists ($result, 'http_data') AND $result->http_code == 200)
165
 
166
  //Update new provider list
167
  $identity_providers = array (
168
+ trim ($data->user->identity->source->name)
169
  );
170
  foreach ($meta_identity_providers AS $meta_identity_provider)
171
  {
294
  }
295
  }
296
 
297
+ //Custom CSS
298
+ $css_theme_uri = apply_filters ('oa_social_login_link_css', $css_theme_uri);
299
+
300
  //OneAll user_token
301
  $token = strval (oa_social_login_get_token_by_userid ($userid));
302
 
304
  $rand = mt_rand (99999, 9999999);
305
 
306
  //Callback URI
307
+ $callback_uri = oa_social_login_get_current_url ();
308
+ $callback_uri .= (strlen (parse_url ($callback_uri, PHP_URL_QUERY)) == 0 ? '?' : '&') . 'oa_social_login_source=' . $source . '#oa_social_link';
309
+
310
+ //Setup Social Container
311
+ $containerid = 'oneall_social_login_providers_' . mt_rand (99999, 9999999);
312
+
313
 
314
  //Setup Social Link
315
  $social_link = array ();
316
  $social_link [] = '<div class="oneall_social_link">';
317
+ $social_link [] = ' <div class="oneall_social_login_providers" id="' . $containerid . '"></div>';
318
  $social_link [] = ' <script type="text/javascript">';
319
+
320
+ //Synchronous JavaScript: This is the default to stay compatible with existing installations.
321
+ if (empty ($settings ['asynchronous_javascript']))
322
+ {
323
+ $social_link [] = ' oneall.api.plugins.social_link.build("' . $containerid . '", {';
324
+ $social_link [] = ' "providers": ["' . implode ('","', $api_providers) . '"], ';
325
+ $social_link [] = ' "user_token": "' . $token . '", ';
326
+ $social_link [] = ' "callback_uri": "' . $callback_uri . '", ';
327
+ $social_link [] = ' });';
328
+ }
329
+ //Asynchronous JavaScript.
330
+ else
331
+ {
332
+ //JavaScript Method Reference: http://docs.oneall.com/api/javascript/library/methods/
333
+ $social_link [] = " var _oneall = _oneall || [];";
334
+ $social_link [] = " _oneall.push(['social_link', 'set_providers', ['" . implode ("','", $api_providers) . "']]);";
335
+ $social_link [] = " _oneall.push(['social_link', 'set_user_token', '" . $token . "']);";
336
+ $social_link [] = " _oneall.push(['social_link', 'set_callback_uri', '" . $callback_uri . "']);";
337
+ $social_link [] = " _oneall.push(['social_link', 'set_custom_css_uri', '" . $css_theme_uri . "']);";
338
+ $social_link [] = " _oneall.push(['social_link', 'do_render_ui', '" . $containerid . "']);";
339
+ }
340
+
341
+ $social_link [] = " </script>";
342
  $social_link [] = '</div>';
343
  $social_link = implode ("\n", $social_link);
344
 
345
+
346
  //Setup Output
347
+ $output .= '<h3 id="oa_social_link"> ' . __ ('Connect your account to one or more social networks', 'oa_social_login') . '</h3>';
348
  $output .= '<table class="form-table">';
349
+ $output .= (empty ($success_message) ? '' : '<tr><td><span style="color:green;font-weight:bold"> ' . $success_message . '</span></td></tr>');
350
+ $output .= (empty ($error_message) ? '' : '<tr><td><span style="color:red;font-weight:bold">' . $error_message . '</span></td></tr>');
351
+ $output .= '<tr><td>' . $social_link . '</td></tr>';
352
  $output .= '</table>';
353
  }
354
  }
376
  {
377
  if (is_user_logged_in ())
378
  {
379
+ $user = wp_get_current_user ();
380
+ if (!empty ($user->data->ID))
381
  {
382
  return oa_social_login_render_link_form ('shortcode', $user);
383
  }
395
  //Social Link works only with logged in users
396
  if (is_user_logged_in ())
397
  {
398
+ $user = wp_get_current_user ();
399
+ if (is_object ($user) AND !empty ($user->data->ID))
400
  {
401
  echo oa_social_login_render_link_form ('custom', $user);
402
  }
405
  add_action ('oa_social_link', 'oa_social_login_link_action_handler');
406
 
407
 
 
408
  /**
409
  * **************************************************************************************************************
410
  * ************************************************ SOCIAL LOGIN ************************************************
417
  */
418
  function oa_social_login_shortcode_handler ($args)
419
  {
420
+ if (!is_user_logged_in ())
421
  {
422
  return oa_social_login_render_login_form ('shortcode');
423
  }
426
  add_shortcode ('oa_social_login', 'oa_social_login_shortcode_handler');
427
 
428
 
429
+ /**
430
+ * Social Login Shortcode Tests
431
+ *
432
+ * [oa_social_login_test is_social_login_user="true"]
433
+ * This content is displayed for Social Login users
434
+ * [oa_social_login_test]
435
+ *
436
+ * [oa_social_login_test is_social_login_user="false"]
437
+ * This content is displayed for users that aren't Social Login users
438
+ * [oa_social_login_test]
439
+ *
440
+ */
441
+ function oa_social_login_shortcode_test ($args, $content = null)
442
+ {
443
+ if (is_array ($args))
444
+ {
445
+ $user = wp_get_current_user ();
446
+ $is_social_login_user = false;
447
+
448
+ if (!empty ($user->data->ID))
449
+ {
450
+ $identity_providers = trim (strval (get_user_meta ($user->data->ID, 'oa_social_login_identity_provider', true)));
451
+ $is_social_login_user = (strlen ($identity_providers) > 0);
452
+ }
453
+
454
+ if (!empty ($args ['is_social_login_user']))
455
+ {
456
+ if ($args ['is_social_login_user'] == 'true')
457
+ {
458
+ if ($is_social_login_user)
459
+ {
460
+ return do_shortcode ($content);
461
+ }
462
+ }
463
+ elseif ($attr ['is_social_login_user'] == 'false')
464
+ {
465
+ if (!$is_social_login_user)
466
+ {
467
+ return do_shortcode ($content);
468
+ }
469
+ }
470
+ }
471
+ }
472
+ }
473
+ add_shortcode ('oa_social_login_test', 'oa_social_login_shortcode_test');
474
+
475
+
476
  /**
477
  * Hook to display custom avatars (Buddypress specific)
478
  */
487
  }
488
 
489
  //Check if avatars are enabled
490
+ if (!empty ($oa_social_login_avatars))
491
  {
492
  //Check arguments
493
  if (is_array ($args))
501
  //Retrieve user
502
  if (($user_data = get_userdata ($args ['item_id'])) !== false)
503
  {
504
+ //Fetch the BuddyPress avatar for this user
505
+ $bp_user_avatar = strtolower (trim (strval (bp_core_fetch_avatar (array ('item_id' => $args ['item_id'], 'no_grav' => true, 'html' => false)))));
 
506
 
507
+ //Fetch the default BuddyPress avatar
508
+ $bp_default_avatar = strtolower (trim (strval (bp_core_avatar_default ('local'))));
 
 
 
 
 
 
 
 
509
 
510
+ //Only replace if the user has the default avatar (this will keep uploaded avatars)
511
+ if (empty ($bp_user_avatar) OR empty ($bp_default_avatar) OR ($bp_user_avatar == $bp_default_avatar))
512
  {
513
+ //Read the avatar
514
+ $user_meta_thumbnail = get_user_meta ($args ['item_id'], 'oa_social_login_user_thumbnail', true);
515
+ $user_meta_picture = get_user_meta ($args ['item_id'], 'oa_social_login_user_picture', true);
516
+
517
+ //Use the picture if possible
518
+ if ($oa_social_login_avatars == 2)
519
+ {
520
+ $user_picture = (!empty ($user_meta_picture) ? $user_meta_picture : $user_meta_thumbnail);
521
+ }
522
+ //Use the thumbnail if possible
523
+ else
524
+ {
525
+ $user_picture = (!empty ($user_meta_thumbnail) ? $user_meta_thumbnail : $user_meta_picture);
526
+ }
527
+
528
+ //Avatar found?
529
+ if ($user_picture !== false AND strlen (trim ($user_picture)) > 0)
530
+ {
531
+ //Build Image tags
532
+ $img_alt = (!empty ($args ['alt']) ? 'alt="' . oa_social_login_esc_attr ($args ['alt']) . '" ' : '');
533
+ $img_alt = sprintf ($img_alt, htmlspecialchars ($user_data->user_login));
534
+ $img_class = ('class="' . (!empty ($args ['class']) ? ($args ['class'] . ' ') : '') . 'avatar-social-login" ');
535
+ $img_width = (!empty ($args ['width']) ? 'width="' . $args ['width'] . '" ' : '');
536
+ $img_height = (!empty ($args ['height']) ? 'height="' . $args ['height'] . '" ' : '');
537
+
538
+ //Replace
539
+ $text = preg_replace ('#<img[^>]+>#i', '<img data-social-login="bp-d1" src="' . $user_picture . '" ' . $img_alt . $img_class . $img_height . $img_width . '/>', $text);
540
+ }
541
  }
542
  }
543
  }
563
  }
564
 
565
  //Check if social avatars are enabled
566
+ if (!empty ($oa_social_login_avatars))
567
  {
568
  //Check if we have an user identifier
569
  if (is_numeric ($mixed) AND $mixed > 0)
583
  //None found
584
  else
585
  {
586
+ $user_id = null;
587
  }
588
 
589
  //User found?
590
  if (!empty ($user_id))
591
  {
592
+ //Override current avatar ?
593
+ $override_avatar = true;
 
594
 
595
+ //BuddyPress (Thumbnails in the default WordPress toolbar)
596
+ if (function_exists ('bp_core_fetch_avatar') AND function_exists ('bp_core_avatar_default'))
 
 
 
 
 
597
  {
598
+ //Fetch the BuddyPress user avatar
599
+ $bp_user_avatar = bp_core_fetch_avatar (array ('item_id' => $user_id, 'no_grav' => true, 'html' => false));
600
+
601
+ //Do not override if it's not the default avatar
602
+ if (!empty ($bp_user_avatar) AND $bp_user_avatar <> bp_core_avatar_default ())
603
+ {
604
+ //User has probably upladed an avatar
605
+ $override_avatar = false;
606
+ }
607
  }
608
 
609
+ //Show avatar?
610
+ if ($override_avatar)
611
  {
612
+ //Read the avatar
613
+ $user_meta_thumbnail = get_user_meta ($user_id, 'oa_social_login_user_thumbnail', true);
614
+ $user_meta_picture = get_user_meta ($user_id, 'oa_social_login_user_picture', true);
615
+
616
+ //Use the picture if possible
617
+ if ($oa_social_login_avatars == 2)
618
+ {
619
+ $user_picture = (!empty ($user_meta_picture) ? $user_meta_picture : $user_meta_thumbnail);
620
+ }
621
+ //Use the thumbnail if possible
622
+ else
623
+ {
624
+ $user_picture = (!empty ($user_meta_thumbnail) ? $user_meta_thumbnail : $user_meta_picture);
625
+ }
626
+
627
+
628
+ //Avatar found?
629
+ if ($user_picture !== false AND strlen (trim ($user_picture)) > 0)
630
+ {
631
+ return '<img alt="' . oa_social_login_esc_attr ($alt) . '" src="' . $user_picture . '" class="avatar avatar-social-login avatar-' . $size . ' photo" height="' . $size . '" width="' . $size . '" />';
632
+ }
633
  }
634
  }
635
  }
709
  }
710
  }
711
  }
 
 
712
 
713
  //WordPress Signup Form
714
+ add_action ('after_signup_form', 'oa_social_login_render_login_form_registration');
715
 
716
  //BuddyPress Registration
717
  add_action ('bp_before_account_details_fields', 'oa_social_login_render_login_form_registration');
731
  echo oa_social_login_render_login_form ('login');
732
  }
733
  }
 
 
734
 
735
  //WordPress Profile Builder
736
  add_action ('wppb_before_login', 'oa_social_login_render_login_form_login');
741
  //Appthemes Vantage Theme
742
  add_action ('va_after_admin_bar_login_form', 'oa_social_login_render_login_form_login');
743
 
744
+ //Sidebar Login
745
+ add_action ('sidebar_login_widget_logged_out_content_end', 'oa_social_login_render_login_form_login');
746
+
747
+
748
+ /**
749
+ * Display the provider grid for login - with a specific callback_uri
750
+ */
751
+ function oa_social_login_render_login_form_wp_login ()
752
+ {
753
+ //Read settings
754
+ $settings = get_option ('oa_social_login_settings');
755
+
756
+ //Display buttons only if option not set or enabled
757
+ if (!isset ($settings ['plugin_display_in_login_form']) OR !empty ($settings ['plugin_display_in_login_form']))
758
+ {
759
+ //Additional arguments for the login icons
760
+ $args = array ();
761
+
762
+ //Only on the login page
763
+ if (strpos (oa_social_login_get_current_url (), 'wp-login.php') !== false)
764
+ {
765
+ //This is the default WordPress login url
766
+ $args ['callback_uri'] = site_url ('wp-login.php', 'login_post');
767
+
768
+ //Add our query argument
769
+ $args ['callback_uri'] = add_query_arg (array ('oa_social_login_source' => 'login'), $args ['callback_uri']);
770
+
771
+ //Allow others to customize the callback uri
772
+ $args ['callback_uri'] = apply_filters ('oa_social_login_filter_wp_login_callback_uri', $args ['callback_uri']);
773
+ }
774
+
775
+ //Include it as parameter
776
+ echo oa_social_login_render_login_form ('login', $args);
777
+ }
778
+ }
779
+ //WordPress Login Form
780
+ add_action ('login_form', 'oa_social_login_render_login_form_wp_login');
781
+
782
+
783
+ /**
784
+ * Display the provider grid for registration - with a specific callback_uri
785
+ */
786
+ function oa_social_login_render_login_form_wp_registration ()
787
+ {
788
+ //Users may register
789
+ if (get_option ('users_can_register') === '1')
790
+ {
791
+ //Read settings
792
+ $settings = get_option ('oa_social_login_settings');
793
+
794
+ //Display buttons if option not set or enabled
795
+ if (!isset ($settings ['plugin_display_in_registration_form']) OR !empty ($settings ['plugin_display_in_registration_form']))
796
+ {
797
+ //Additional arguments for the icon builder
798
+ $args = array ();
799
+
800
+ //Only on the registration page
801
+ if (strpos (oa_social_login_get_current_url (), 'wp-login.php') !== false)
802
+ {
803
+ //This is the default WordPress registration url
804
+ $args ['callback_uri'] = site_url ('wp-login.php?action=register', 'login_post');
805
+
806
+ //Add our query argument
807
+ $args ['callback_uri'] = add_query_arg (array ('oa_social_login_source' => 'registration'), $args ['callback_uri']);
808
+
809
+ //Others may use this hook
810
+ $args ['callback_uri'] = apply_filters ('oa_social_login_filter_wp_registration_callback_uri', $args ['callback_uri']);
811
+ }
812
+
813
+ echo oa_social_login_render_login_form ('registration', $args);
814
+ }
815
+ }
816
+ }
817
+ //WordPress Registration Form
818
+ add_action ('register_form', 'oa_social_login_render_login_form_wp_registration');
819
+
820
 
821
  /**
822
  * Display a custom grid for login
850
  //Import providers
851
  GLOBAL $oa_social_login_providers;
852
 
853
+ //Parse args
854
+ $args = (is_array ($args) ? $args : array ());
855
+
856
  //Container for returned value
857
  $output = '';
858
 
913
  $css_theme_uri = apply_filters ('oa_social_login_default_css', $css_theme_uri);
914
  }
915
 
916
+ //Build Callback URI
917
+ if (array_key_exists ('callback_uri', $args) AND !empty ($args ['callback_uri']))
918
+ {
919
+ $callback_uri = "'" . $args ['callback_uri'] . "'";
920
+ }
921
+ else
922
+ {
923
+ $callback_uri = "(window.location.href + ((window.location.href.split('?')[1] ? '&amp;': '?') + \"oa_social_login_source=" . $source . "\"))";
924
+ }
925
 
926
  //No providers selected
927
  if (count ($providers) == 0)
931
  //Providers selected
932
  else
933
  {
 
 
934
 
935
  //Setup output
936
  $output = array ();
937
+ $output [] = " <!-- OneAll.com / Social Login for WordPress / v" . constant ('OA_SOCIAL_LOGIN_VERSION') . " -->";
938
  $output [] = '<div class="oneall_social_login">';
939
 
940
  //Add the caption?
944
  }
945
 
946
  //Add the Plugin
947
+ $containerid = 'oneall_social_login_providers_' . mt_rand (99999, 9999999);
948
+ $output [] = ' <div class="oneall_social_login_providers" id="' . $containerid . '"></div>';
949
  $output [] = ' <script type="text/javascript">';
950
+
951
+ //Synchronous JavaScript: This is the default to stay compatible with existing installations.
952
+ if (empty ($settings ['asynchronous_javascript']))
953
+ {
954
+ $output [] = " oneall.api.plugins.social_login.build('" . $containerid . "', {";
955
+ $output [] = " 'providers': ['" . implode ("','", $providers) . "'], ";
956
+ $output [] = " 'callback_uri': " . $callback_uri . ", ";
957
+ $output [] = " 'css_theme_uri': '" . $css_theme_uri . "' ";
958
+ $output [] = " });";
959
+ }
960
+ //Asynchronous JavaScript.
961
+ else
962
+ {
963
+ //JavaScript Method Reference: http://docs.oneall.com/api/javascript/library/methods/
964
+ $output [] = " var _oneall = _oneall || [];";
965
+ $output [] = " _oneall.push(['social_login', 'set_providers', ['" . implode ("','", $providers) . "']]);";
966
+ $output [] = " _oneall.push(['social_login', 'set_callback_uri', " . $callback_uri . "]);";
967
+ $output [] = " _oneall.push(['social_login', 'set_custom_css_uri', '" . $css_theme_uri . "']);";
968
+ $output [] = " _oneall.push(['social_login', 'do_render_ui', '" . $containerid . "']);";
969
+ }
970
+
971
+ $output [] = " </script>";
972
  $output [] = '</div>';
973
 
974
  //Done
1024
  if ($_POST ['oa_social_login_action'] == 'confirm_email')
1025
  {
1026
  $user_email = (empty ($_POST ['oa_social_login_email']) ? '' : trim ($_POST ['oa_social_login_email']));
1027
+ $user_email = apply_filters ('oa_social_login_filter_user_request_email', $user_email, $user_id);
1028
+
1029
  if (empty ($user_email))
1030
  {
1031
  $message = __ ('Please enter your email address', 'oa_social_login');
1043
  }
1044
  else
1045
  {
1046
+ //Read user
1047
+ $user_data = get_userdata ($user_id);
1048
+ if ($user_data !== false)
1049
+ {
1050
+ //Store old email
1051
+ $old_user_email = $user_data->user_email;
1052
+
1053
+ //Update user
1054
+ wp_update_user (array ('ID' => $user_data->ID, 'user_email' => $user_email));
1055
+ delete_user_meta ($user_data->ID, 'oa_social_login_request_email');
1056
+
1057
+ //Set new email for hook
1058
+ $user_data->user_email = $user_email;
1059
+
1060
+ //Hook after having updated the email
1061
+ do_action ('oa_social_login_action_on_user_enter_email', $user_id, $user_data, $old_user_email);
1062
+
1063
+ //No longer needed
1064
+ $display_modal = false;
1065
+ }
1066
  }
1067
  }
1068
  }
1084
  oa_social_login_add_site_css ();
1085
 
1086
  //Show email request form
1087
+ ?>
1088
  <div id="oa_social_login_overlay"></div>
1089
  <div id="oa_social_login_modal">
1090
  <div class="oa_social_login_modal_outer">
1091
  <div class="oa_social_login_modal_inner">
1092
  <div class="oa_social_login_modal_title">
1093
  <?php
1094
+ printf (__ ('You have successfully connected with %s!', 'oa_social_login'), '<strong>' . $oa_social_login_identity_provider . '</strong>');
1095
+ ?>
1096
  </div>
1097
  <?php
1098
+ if (strlen (trim ($caption)) > 0)
1099
+ {
1100
+ ?>
1101
+ <div class="oa_social_login_modal_notice"><?php echo str_replace ('%s', $oa_social_login_identity_provider, $caption); ?></div>
1102
+ <?php
1103
+ }
1104
+ ?>
1105
  <div class="oa_social_login_modal_body">
1106
  <div class="oa_social_login_modal_subtitle">
1107
  <?php _e ('Please enter your email address', 'oa_social_login'); ?>:
1117
  </div>
1118
  <div class="oa_social_login_buttons">
1119
  <input class="oa_social_login_button_confirm" type="submit" value="<?php _e ('Confirm', 'oa_social_login'); ?>" />
1120
+ <input class="oa_social_login_button_cancel" type="button" value="<?php _e ('Cancel', 'oa_social_login'); ?>" onclick="window.location.href='<?php echo esc_url (wp_logout_url (oa_social_login_get_current_url ())); ?>'" />
1121
  </div>
1122
  </fieldset>
1123
  </form>
1130
  }
1131
  }
1132
  }
 
1133
  add_action ('wp_footer', 'oa_social_login_request_email');
1134
+ add_action ('admin_footer', 'oa_social_login_request_email');
languages/oa_social_login-de_DE.mo CHANGED
Binary file
languages/oa_social_login-de_DE.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Social Login\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2013-05-10 16:15+0100\n"
6
- "PO-Revision-Date: 2013-05-10 16:15+0100\n"
7
  "Last-Translator: Claude Schlesser <cschlesser@oneall.com>\n"
8
  "Language-Team: \n"
9
  "Language: \n"
@@ -19,20 +19,16 @@ msgstr ""
19
  #: oa-social-login.php:24
20
  #, php-format
21
  msgid "This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin."
22
- msgstr "Dieses Plugin benötigt Wordpress %s oder höher. Bitte aktualisieren Sie Ihr WordPress um dieses Plugin zu nutzen."
23
 
24
  #: oa-social-login.php:46
25
  #: includes/admin.php:59
26
  #: includes/admin.php:70
27
- #: includes/admin.php:569
28
- #: includes/admin.php:792
29
  msgid "Setup"
30
  msgstr "Einrichten"
31
 
32
- #: includes/communication.php:181
33
- msgid "This Social Network account may not be used to register"
34
- msgstr "Dieses Konto kann nicht zur Anmeldung genutzt werden"
35
-
36
  #: includes/admin.php:14
37
  msgid "Registration"
38
  msgstr "Registriert mit"
@@ -42,565 +38,597 @@ msgid "Registration Form"
42
  msgstr "Anmeldeformular"
43
 
44
  #: includes/admin.php:63
45
- #: includes/admin.php:570
46
- #: includes/admin.php:793
47
  msgid "Settings"
48
  msgstr "Einstellungen"
49
 
50
  #: includes/admin.php:116
51
- #, fuzzy
52
  msgid "Thank you for using Social Login!"
53
  msgstr "Danke, dass Sie Social Login installiert haben!"
54
 
55
  #: includes/admin.php:116
56
- #, fuzzy, php-format
57
  msgid "Please complete the <strong><a href=\"%s\">Social Login Setup</a></strong> to enable the plugin."
58
  msgstr "Bitte rufen Sie die Seite <strong><a href=\"%s\">Einstellungen\\Social Login</a></strong> auf, um das Plugin zu konfigurieren."
59
 
60
- #: includes/admin.php:290
61
  msgid "Contacting API - please wait this may take a few minutes ..."
62
  msgstr "Teste Einstellungen - Dies kann einige Minutern dauern ..."
63
 
64
- #: includes/admin.php:291
65
  msgid "The settings are correct - do not forget to save your changes!"
66
  msgstr "Die Einstellungen sind korrekt! Vergessen Sie nicht abzuspeichern!"
67
 
68
- #: includes/admin.php:292
69
  msgid "Please fill out each of the fields above."
70
  msgstr "Bitte füllen Sie alle Felder aus."
71
 
72
- #: includes/admin.php:293
73
  msgid "The subdomain does not exist. Have you filled it out correctly?"
74
  msgstr "Subdomain wurde nicht gefunden. Haben Sie sie richtig ausgefüllt?"
75
 
76
- #: includes/admin.php:294
77
  msgid "The subdomain has a wrong syntax!"
78
  msgstr "Die Subdomain ist ungültig!"
79
 
80
- #: includes/admin.php:295
81
  msgid "Could not contact API. Are outbound requests on port 443 allowed?"
82
  msgstr "Keine Verbindung zur API. Eventuell blockiert Ihre Firewall Anfragen auf Port 443."
83
 
84
- #: includes/admin.php:296
85
  msgid "The API subdomain is correct, but one or both keys are invalid"
86
  msgstr "Die API-Subdomain ist korrekt, aber die Schlüssel stimmen nicht."
87
 
88
- #: includes/admin.php:297
89
  msgid "Connection handler does not work, try using the Autodetection"
90
  msgstr "Verbindungsfehler! Bitte nutzen Sie die automatische Erkennung"
91
 
92
- #: includes/admin.php:298
93
  msgid "Detected CURL on Port 443 - do not forget to save your changes!"
94
- msgstr "PHP CURL auf Port 443 gefunden! Vergessen Sie nicht abzuspeichern!"
95
 
96
- #: includes/admin.php:299
97
  msgid "Detected CURL on Port 80 - do not forget to save your changes!"
98
- msgstr "PHP CURL auf Port 80 gefunden! Vergessen Sie nicht abzuspeichern!"
 
 
 
 
99
 
100
- #: includes/admin.php:300
101
  msgid "Detected FSOCKOPEN on Port 443 - do not forget to save your changes!"
102
- msgstr "PHP FSOCKOPEN auf Port 443 gefunden! Vergessen Sie nicht abzuspeichern!"
103
 
104
- #: includes/admin.php:301
105
  msgid "Detected FSOCKOPEN on Port 80 - do not forget to save your changes!"
106
- msgstr "PHP FSOCKOPEN auf Port 80 gefunden! Vergessen Sie nicht abzuspeichern!"
 
 
 
 
107
 
108
- #: includes/admin.php:302
109
  #, php-format
110
  msgid "Autodetection Error - our <a href=\"%s\" target=\"_blank\">documentation</a> helps you fix this issue."
111
  msgstr "Verbindungsfehler - in unserer <a href=\"%s\" target=\"_blank\">Dokumentation</a> finden Sie die Lösung."
112
 
113
- #: includes/admin.php:577
114
- msgid "Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Hyves, VKontakte, Google or Yahoo."
115
- msgstr "Erlauben Sie Ihren Besuchern, sich mit 20+ Sozialen Netzwerk wie z.B. Twitter, Facebook, LinkedIn, Hyves, VKontakte, Google oder Yahoo anzumelden, und Kommentare zu hinterlassen."
116
 
117
- #: includes/admin.php:578
118
  msgid "Draw a larger audience and increase your user engagement in a few simple steps."
119
  msgstr "Steigern Sie die Beteilung Ihrer Nutzer auf einfachste Art und Weise."
120
 
121
- #: includes/admin.php:582
122
  msgid "Get Started!"
123
  msgstr "Los gehts!"
124
 
125
- #: includes/admin.php:585
126
  #, php-format
127
  msgid "To be able to use this plugin you first of all need to create a free account at %s and setup a Site."
128
  msgstr "Um dieses Plugin nutzen zu können, müssen Sie sich zunächst kostenlos ein Konto bei %s anmelden."
129
 
130
- #: includes/admin.php:586
131
  msgid "After having created your account and setup your Site, please enter the Site settings in the form below."
132
  msgstr "Nachdem Sie Ihr Konto angemeldet haben, müssen Sie die API-Daten in das nachfolgende Formular eintragen."
133
 
134
- #: includes/admin.php:587
135
  msgid "Don't worry the setup takes only a couple of minutes!"
136
  msgstr "Keine Sorge! Die Einrichtung dauert nur wenige Minuten."
137
 
138
- #: includes/admin.php:590
139
  msgid "Click here to setup your free account"
140
  msgstr "Kostenloses Konto anmelden"
141
 
142
- #: includes/admin.php:593
143
  #, php-format
144
  msgid "You are in good company! This plugin is used on more than %s websites!"
145
  msgstr "Mehr als %s Webseiten nutzen dieses Plugin. Seien Sie mit dabei!"
146
 
147
- #: includes/admin.php:604
148
  msgid "Your API Account is setup correctly"
149
  msgstr "Die API-Daten sind korrekt"
150
 
151
- #: includes/admin.php:607
152
  msgid "Login to your account to manage your providers and access your Social Insights."
153
  msgstr "Loggen Sie sich in Ihr Konto ein, um Einstellungen vorzunehmen und Statistiken einzusehen."
154
 
155
- #: includes/admin.php:608
156
  msgid "Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement."
157
  msgstr "Finden Sie heraus, welche sozialen Netzwerke unter Ihren Besuchern beliebt sind, und steigern Sie die Beteilung Ihrer Besucher."
158
 
159
- #: includes/admin.php:611
160
  msgid "Click here to login to your account"
161
  msgstr "Klicken Sie hier, um sich in Ihr Konto einloggen"
162
 
163
- #: includes/admin.php:619
164
  msgid "Help, Updates &amp; Documentation"
165
  msgstr "Hilfe, Updates &amp; Dokumentation"
166
 
167
- #: includes/admin.php:622
168
  #, php-format
169
  msgid "<a target=\"_blank\" href=\"%s\">Follow us on Twitter</a> to stay informed about updates"
170
  msgstr "<a target=\"_blank\" href=\"%s\">Folgen Sie uns auf Twitter</a>, um auf dem Laufenden zu bleiben"
171
 
172
- #: includes/admin.php:623
173
  #, php-format
174
  msgid "<a target=\"_blank\" href=\"%s\">Read the online documentation</a> for more information about this plugin"
175
  msgstr "<a target=\"_blank\" href=\"%s\">Lesen Sie unsere Dokumentation</a> für zusätzliche Information"
176
 
177
- #: includes/admin.php:624
178
  #, php-format
179
  msgid "<a target=\"_blank\" href=\"%s\">Contact us</a> if you have feedback or need assistance"
180
  msgstr "<a target=\"_blank\" href=\"%s\">Schreiben Sie uns</a>, falls Sie Hilfe benötigen"
181
 
182
- #: includes/admin.php:625
183
- #, fuzzy, php-format
184
  msgid "We also have <a target=\"_blank\" href=\"%s\">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ..."
185
- msgstr "Wir bieten auch Module für <a target=\"_blank\" href=\"%s\">Drupal, phpBB und Joomla</a> an"
186
 
187
- #: includes/admin.php:634
188
- #: includes/admin.php:817
189
  msgid "Your modifications have been saved successfully!"
190
  msgstr "Ihre Einstellungen wurden erfolgreich gespeichert!"
191
 
192
- #: includes/admin.php:646
193
- #: includes/admin.php:654
194
  msgid "API Connection Handler"
195
  msgstr "API Kommunikation"
196
 
197
- #: includes/admin.php:658
198
  msgid "Use PHP CURL to communicate with the API"
199
  msgstr "PHP CURL verwenden"
200
 
201
- #: includes/admin.php:658
202
- #: includes/admin.php:678
203
- #: includes/admin.php:851
204
- #: includes/admin.php:866
205
- #: includes/admin.php:879
206
- #: includes/admin.php:900
207
- #: includes/admin.php:916
208
- #: includes/admin.php:930
209
- #: includes/admin.php:952
210
- #: includes/admin.php:967
211
- #: includes/admin.php:982
212
- #: includes/admin.php:1005
213
  #: includes/admin.php:1026
214
  #: includes/admin.php:1041
215
- #: includes/admin.php:1064
216
- #: includes/admin.php:1080
217
- #: includes/admin.php:1103
218
- #: includes/admin.php:1121
 
 
 
 
219
  msgid "Default"
220
  msgstr "Standard"
221
 
222
- #: includes/admin.php:659
223
  msgid "Using CURL is recommended but it might be disabled on some servers."
224
  msgstr "Empfohlene Einstellung, auf manchen Serven aber deaktiviert."
225
 
226
- #: includes/admin.php:665
227
  msgid "Use PHP FSOCKOPEN to communicate with the API"
228
  msgstr "PHP FSOCKOPEN verwenden"
229
 
230
- #: includes/admin.php:666
231
  msgid "Try using FSOCKOPEN if you encounter any problems with CURL."
232
  msgstr "Verwenden Sie FSOCKEN wenn Probleme mit CURL auftreten sollten."
233
 
234
- #: includes/admin.php:674
235
  msgid "API Connection Port"
236
  msgstr "API Verbindungs Port"
237
 
238
- #: includes/admin.php:678
239
  msgid "Communication via HTTPS on port 443"
240
  msgstr "Verbindung auf HTTPS Port 443"
241
 
242
- #: includes/admin.php:679
243
  msgid "Using port 443 is secure but you might need OpenSSL"
244
  msgstr "Die Verbindung auf Port 443 ist sicherer benötigt aber ggfs. OpenSSL"
245
 
246
- #: includes/admin.php:685
247
  msgid "Communication via HTTP on port 80"
248
  msgstr "Verbindung auf HTTP Port 80"
249
 
250
- #: includes/admin.php:686
251
  msgid "Using port 80 is a bit faster, doesn't need OpenSSL but is less secure"
252
  msgstr "Die Verbindung auf Port 80 ist etwas schneller aber nicht ganz so sicher"
253
 
254
- #: includes/admin.php:691
255
  msgid "Autodetect API Connection"
256
  msgstr "Automatisch erkennen"
257
 
258
- #: includes/admin.php:701
259
  msgid "API Settings"
260
  msgstr "API Einstellungen"
261
 
262
- #: includes/admin.php:703
263
  msgid "Click here to create and view your API Credentials"
264
  msgstr "Klicken Sie hier, um Ihre API-Daten einzusehen"
265
 
266
- #: includes/admin.php:708
267
  msgid "API Subdomain"
268
  msgstr "API Subdomain"
269
 
270
- #: includes/admin.php:716
271
  msgid "API Public Key"
272
  msgstr "API Public Key"
273
 
274
- #: includes/admin.php:724
275
  msgid "API Private Key"
276
  msgstr "API Private Key"
277
 
278
- #: includes/admin.php:732
279
  msgid "Verify API Settings"
280
  msgstr "API-Einstellungen überprüfen"
281
 
282
- #: includes/admin.php:742
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
283
  msgid "Enable the social networks/identity providers of your choice"
284
  msgstr "Wählen Sie die sozialen Netzwerke aus:"
285
 
286
- #: includes/admin.php:762
287
  #, php-format
288
  msgid "To enable cyrillic usernames, you might need <a target=\"_blank\" href=\"%s\">this plugin</a>"
289
  msgstr "Um kyrillische Zeichen zu verwenden, brauchen Sie <a target=\"_blank\" href=\"%s\">dieses Plugin</a>"
290
 
291
- #: includes/admin.php:773
292
- #: includes/admin.php:1131
293
  msgid "Save Changes"
294
  msgstr "Einstellungen speichern"
295
 
296
- #: includes/admin.php:803
297
  msgid "Logout to see the plugin in action!"
298
  msgstr "Sie müssen ausloggen, um das Plugin testen zu können."
299
 
300
- #: includes/admin.php:807
301
  msgid "Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected."
302
  msgstr "Social Login erlaubt es Ihren Benutzern, sich mit dem Konto eines sozialen Netzwerks anzumelden. Bei Benutzern die bereits eingeloggt sind wird das Plugin nicht angezeigt, da der Benutzer bereits angemeldet ist, und keine weitere Anmeldenmöglichkeit benötigt. "
303
 
304
- #: includes/admin.php:809
305
  msgid "You therefore have to logout to see the plugin in action."
306
  msgstr "Sie müssen Sich aus diesem Grund ausloggen, um das Plugin testen zu können."
307
 
308
- #: includes/admin.php:825
309
  msgid "General Settings"
310
  msgstr "Allgemeine Einstellungen"
311
 
312
- #: includes/admin.php:830
313
  msgid "Enter the description to be displayed above the Social Login buttons (leave empty for none):"
314
  msgstr "Welcher Text soll über den Icons der sozialen Netzwerke angezeigt werden (ggf. leer lassen) ?"
315
 
316
- #: includes/admin.php:836
317
  msgid "Connect with:"
318
  msgstr "Einloggen mit:"
319
 
320
- #: includes/admin.php:843
321
  msgid "Do you want to use the default or the small social network buttons?"
322
  msgstr "Wollen Sie die standard -oder kleinere Icons für soziale Netzwerke verwenden?"
323
 
324
- #: includes/admin.php:851
325
  #, php-format
326
  msgid "Use the default social network buttons (%s)"
327
  msgstr "Standard-Icons verwenden (%s)"
328
 
329
- #: includes/admin.php:852
330
  #, php-format
331
  msgid "Use the small social network buttons (%s)"
332
  msgstr "Kleine Icons verwenden (%s)"
333
 
334
- #: includes/admin.php:857
335
  msgid "Do you want to display the social networks used to connect in the user list of the administration area ?"
336
  msgstr "Sollen die verwendeten sozialen Netzwerke in der Benutzerliste angezeigt werden?"
337
 
338
- #: includes/admin.php:865
339
  msgid "Yes, add a new column to the user list and display the social network that the user connected with"
340
  msgstr "Ja, eine weitere Spalte in der Benutzerliste anzeigen"
341
 
342
- #: includes/admin.php:866
343
  msgid "No, no not display the social networks in the user list"
344
  msgstr "Nein, soziale Netzwerke nicht anzeigen"
345
 
346
- #: includes/admin.php:871
347
  msgid "Do you want to receive an email whenever a new user registers with Social Login ?"
348
  msgstr "Wollen Sie per Email benachrichtigt werden, sobald ein Benutzer sich mit Social Login anmeldet?"
349
 
350
- #: includes/admin.php:879
351
  msgid "Yes, send me an email whenever a new user registers with Social Login"
352
  msgstr "Ja, ich möchte eine Email erhalten, wenn jemand sich mit Social Login anmeldet"
353
 
354
- #: includes/admin.php:880
355
  msgid "No, do not send me any emails"
356
  msgstr "Nein, keine Benachrichtigung per Email versenden"
357
 
358
- #: includes/admin.php:887
359
  msgid "User Settings"
360
  msgstr "Benutzer Einstellungen"
361
 
362
- #: includes/admin.php:892
363
  msgid "If the user's social network profile has no email address, should we ask the user to enter it manually?"
364
  msgstr "Müssen Benutzer Ihre Email Address manuell eingeben falls sie nicht im Sozialen Profil vorhanden ist?"
365
 
366
- #: includes/admin.php:900
367
  msgid "No, simplify the registration by automatically creating a placeholder email"
368
  msgstr "Nein, in diesem Fall eine Platzhalter-Email anlegen (vereinfach die Registrierung)"
369
 
370
- #: includes/admin.php:901
371
  msgid "Yes, require the user to enter his email address manually and display this message:"
372
  msgstr "Ja, Benutzer mit folgendem Text auffordern, ihre Email-Adresse einzugeben:"
373
 
374
- #: includes/admin.php:902
375
- #: includes/user_interface.php:833
376
  #, php-format
377
  msgid "<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue."
378
  msgstr "<strong>Wir konnten Ihre E-Mail-Adresse leider nicht über Ihr %s Konto ermitteln.</strong> Bitte geben Sie Ihre Email-Adresse nachfolgend an."
379
 
380
- #: includes/admin.php:903
381
  #, php-format
382
  msgid "HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect."
383
  msgstr "HTML ist erlaubt, der Platzhalter %s wird durch den Namen des sozialen Netzwerks ersetzt."
384
 
385
- #: includes/admin.php:908
386
  msgid "If the user's social network profile has a verified email, should we try to link it to an existing account?"
387
  msgstr "Sollen soziale Profile mit überprüfter Email mit vorhandenen Blog-Nutzern verknüpft werden?"
388
 
389
- #: includes/admin.php:916
390
  msgid "Yes, try to link verified social network profiles to existing blog accounts"
391
  msgstr "Ja, verknüpfe soziale Profile gegebenenfalls mit vorhanden Nutzern"
392
 
393
- #: includes/admin.php:917
394
  msgid "No, disable account linking"
395
  msgstr "Nein, keine Verknüpfung"
396
 
397
- #: includes/admin.php:922
398
  msgid "If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?"
399
  msgstr "Sollen die Benutzerbilder der sozialen Netwerke gegebenenfalls als Avatare verwendet werden?"
400
 
401
- #: includes/admin.php:930
402
  msgid "No, do not use avatars from social networks"
403
  msgstr "Nein, keine Benutzerbilder der sozialen Netzwerke verwenden"
404
 
405
- #: includes/admin.php:931
406
- #, fuzzy
407
  msgid "Yes, use small avatars from social networks if available"
408
  msgstr "Ja, verwende Benutzerbilder (kleines Format) der sozialen Netzwerke"
409
 
410
- #: includes/admin.php:932
411
- #, fuzzy
412
  msgid "Yes, use large avatars from social networks if available"
413
  msgstr "Ja, verwende Benutzerbilder (grosses Format) der sozialen Netzwerke"
414
 
415
- #: includes/admin.php:939
416
  msgid "Comment Settings"
417
  msgstr "Einstellungen: Kommentare"
418
 
419
- #: includes/admin.php:944
420
  msgid "Show the Social Login buttons in the comment area?"
421
  msgstr "Das Plugin über dem Kommentare-Formular anzeigen?"
422
 
423
- #: includes/admin.php:952
424
- #: includes/admin.php:967
425
  msgid "Yes, show the Social Login buttons"
426
  msgstr "Ja, zeige das Plugin an"
427
 
428
- #: includes/admin.php:953
429
- #: includes/admin.php:968
430
  msgid "No, do not show the Social Login buttons"
431
  msgstr "Nein, Plugin nicht anzeigen"
432
 
433
- #: includes/admin.php:958
434
  msgid "Show the Social Login buttons in the comment area if comments are disabled for guests?"
435
  msgstr "Login mit einem sozialen Netzwerk anbieten falls Kommentare für Gäste deaktiviert sind?"
436
 
437
- #: includes/admin.php:966
438
  msgid "The buttons will be displayed below the \"You must be logged in to leave a comment\" notice."
439
  msgstr "Die Icons werden unter \"Du musst angemeldet sein, um einen Kommentar abzugeben\" angezeigt."
440
 
441
- #: includes/admin.php:973
442
  msgid "Automatically approve comments left by users that connected by using Social Login?"
443
  msgstr "Kommentare automatisch freischalten, falls dessen Autor sich mit SocialLogin eingeloggt hat?"
444
 
445
- #: includes/admin.php:981
446
  msgid "Yes, automatically approve comments made by users that connected with Social Login"
447
  msgstr "Ja, Kommentare automatisch freischalten"
448
 
449
- #: includes/admin.php:982
450
  msgid "No, do not automatically approve"
451
  msgstr "Nein, Kommentare nicht automatisch freischalten"
452
 
453
- #: includes/admin.php:991
454
  msgid "Profile Settings"
455
  msgstr "Mitgliederprofil Einstellungen"
456
 
457
- #: includes/admin.php:996
458
  msgid "Show the Social Link buttons in the user profile?"
459
  msgstr "Social Link im Mitgliederprofil anzeigen?"
460
 
461
- #: includes/admin.php:1001
462
  msgid "Keep this option enabled to allow each user to connect multiple social networks to his own profile."
463
  msgstr "Aktivieren Sie diese Option, damit Ihre Mitglieder Ihr Konto mit sozialen Netzwerken koppeln können."
464
 
465
- #: includes/admin.php:1005
466
  msgid "Yes, show the Social Link buttons"
467
  msgstr "Ja, zeige Social Link an"
468
 
469
- #: includes/admin.php:1006
470
  msgid "No, do not show the Social Link buttons"
471
  msgstr "Nein, Social Link nicht anzeigen"
472
 
473
- #: includes/admin.php:1013
474
  msgid "Login Page Settings"
475
  msgstr "Einstellungen: Login-Seite"
476
 
477
- #: includes/admin.php:1018
478
  msgid "Do you want to display Social Login on the login form of your blog?"
479
  msgstr "Das Plugin auf der Login-Seite Ihres Blogs anzeigen?"
480
 
481
- #: includes/admin.php:1026
482
  msgid "Yes, display the social network buttons below the login form"
483
  msgstr "Ja, die Icons der sozialen Netzwerke auf der Login-Seite anzeigen"
484
 
485
- #: includes/admin.php:1027
486
  msgid "No, disable social network buttons in the login form"
487
  msgstr "Nein, keine Icons auf der Login-Seite anzeigen"
488
 
489
- #: includes/admin.php:1032
490
  msgid "Where should users be redirected to after having logged in with Social Login on the login page?"
491
  msgstr "Wohin sollen Nutzer weitergeleitet werden, nachdem Sie sich Social Login auf der Login-Seite eingeloggt haben?"
492
 
493
- #: includes/admin.php:1041
494
- #: includes/admin.php:1079
495
- #: includes/admin.php:1104
496
- #: includes/admin.php:1122
 
 
 
 
 
 
 
497
  msgid "Redirect users to the homepage of my blog"
498
  msgstr "Weiterleitung zur Hauptseite meines Blogs"
499
 
500
- #: includes/admin.php:1042
501
- #: includes/admin.php:1080
502
- #: includes/admin.php:1105
503
- #: includes/admin.php:1123
504
  msgid "Redirect users to their account dashboard"
505
  msgstr "Weiterleitung zur Profilseite des Nutzers"
506
 
507
- #: includes/admin.php:1043
508
- #: includes/admin.php:1081
509
- #: includes/admin.php:1106
510
- #: includes/admin.php:1124
511
  msgid "Redirect users to the following url"
512
  msgstr "Weiterleitung zu dieser URL"
513
 
514
- #: includes/admin.php:1051
515
  msgid "Registration Page Settings"
516
  msgstr "Einstellungen: Anmelden-Seite"
517
 
518
- #: includes/admin.php:1056
519
  msgid "Do you want to display Social Login on the registration form of your blog?"
520
  msgstr "Das Plugin auf der Anmelden-Seite Ihres Blogs anzeigen?"
521
 
522
- #: includes/admin.php:1064
523
  msgid "Yes, display the social network buttons below the registration form"
524
  msgstr "Ja, die Icons der sozialen Netzwerke auf der Anmelden-Seite anzeigen"
525
 
526
- #: includes/admin.php:1065
527
  msgid "No, disable social network buttons in the registration form"
528
  msgstr "Nein, keine Icons auf der Anmelden-Seite anzeigen"
529
 
530
- #: includes/admin.php:1070
531
  msgid "Where should users be redirected to after having registered with Social Login on the registration page?"
532
  msgstr "Wohin sollen Nutzer weitergeleitet werden, nachdem sie ein Konto mit einem sozialen Netzwerk angelegt haben?"
533
 
534
- #: includes/admin.php:1089
535
  msgid "Widget &amp; Shortcode Settings"
536
  msgstr "Widget &amp; Shortcode Einstellungen"
537
 
538
- #: includes/admin.php:1094
539
  msgid "Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:"
540
  msgstr "Benutzer zu dieser Seite weiterleiten nachdem sie im Social Login Widget/Shortcode eingloggt haben:"
541
 
542
- #: includes/admin.php:1103
543
- #: includes/admin.php:1121
544
- msgid "Redirect users back to the current page"
545
- msgstr "Weiterleitung zurück zur aktuellen Seite"
546
-
547
- #: includes/admin.php:1112
548
  msgid "Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:"
549
  msgstr "Benutzer zu dieser Seite weiterleiten nachdem sie über das Social Login Widget/Shortcode registriert haben:"
550
 
551
- #: includes/user_interface.php:88
552
- #: includes/user_interface.php:714
553
  msgid "Please enable at least one social network!"
554
  msgstr "Bitte aktivieren Sie mindestens ein soziales Netzwerk!"
555
 
556
- #: includes/user_interface.php:133
557
- #: includes/user_interface.php:171
558
  #, php-format
559
  msgid "You have successfully linked your %s account."
560
  msgstr "Sie haben Ihr %s Konto erfolgreich hinzugefügt."
561
 
562
- #: includes/user_interface.php:165
563
- #: includes/user_interface.php:256
564
  #, php-format
565
  msgid "This %s account is already used by another user of this website."
566
  msgstr "Dieses %s Konto wird bereit von einem anderen Nutzer verwendet."
567
 
568
- #: includes/user_interface.php:196
569
  #, php-format
570
  msgid "You have successfully unlinked your %s account."
571
  msgstr "Sie haben die Verbindung mit %s Konto getrennt."
572
 
573
- #: includes/user_interface.php:244
574
  msgid "You might no longer be able to login to this website if you don't link at least one social network."
575
  msgstr "Sie können sich womöglich nicht mehr einloggen, falls Sie nicht mindestens ein soziales Netzerk koppeln."
576
 
577
- #: includes/user_interface.php:294
578
  msgid "Connect your account to one or more social networks"
579
  msgstr "Verbinden Sie Ihr Konto mit einem oder mehreren sozialen Netzwerken"
580
 
581
- #: includes/user_interface.php:800
582
- #: includes/user_interface.php:859
583
  msgid "Please enter your email address"
584
  msgstr "Bitte geben Sie Ihre E-Mail-Adresse ein"
585
 
586
- #: includes/user_interface.php:806
587
  msgid "This email is not valid"
588
  msgstr "Diese E-Mail-Adresse ist ungültig"
589
 
590
- #: includes/user_interface.php:811
591
  msgid "This email is already used by another account"
592
  msgstr "Diese E-Mail-Adresse wird bereits verwendet"
593
 
594
- #: includes/user_interface.php:846
595
  #, php-format
596
  msgid "You have successfully connected with %s!"
597
  msgstr "Sie haben Sich erfolgreicht mit %s angemeldet!"
598
 
599
- #: includes/user_interface.php:871
600
  msgid "Confirm"
601
  msgstr "Bestätigen"
602
 
603
- #: includes/user_interface.php:872
604
  msgid "Cancel"
605
  msgstr "Abbrechen"
606
 
@@ -632,25 +660,28 @@ msgstr "Widget verstecken bei eingeloggten Nutzern"
632
  msgid "Tick to use small buttons"
633
  msgstr "Kleine Icons verwenden"
634
 
635
- #: includes/toolbox.php:86
 
 
 
 
 
636
  #, php-format
637
  msgid "New user registration on your site %s:"
638
  msgstr "Neue Benutzeranmeldung auf Ihrer Seite %s:"
639
 
640
- #: includes/toolbox.php:87
641
  #, php-format
642
  msgid "Username: %s"
643
  msgstr "Benutzername: %s"
644
 
645
- #: includes/toolbox.php:88
646
  #, php-format
647
  msgid "Social Network: %s"
648
  msgstr "Soziales Netzwerk: %s"
649
 
650
- #: includes/toolbox.php:91
651
- #, php-format
652
- msgid "[%s] New User Registration"
653
- msgstr "[%s] Neue Benutzeranmeldung"
654
 
655
  #, fuzzy
656
  #~ msgid "Pleasen enter your email address"
@@ -668,9 +699,6 @@ msgstr "[%s] Neue Benutzeranmeldung"
668
  #~ msgid "Social Networks"
669
  #~ msgstr "Soziale Netzwerke"
670
 
671
- #~ msgid "Basic Settings"
672
- #~ msgstr "Grundeinstellungen"
673
-
674
  #~ msgid ""
675
  #~ "Some social networks do not provide their user's email. Ask the user to "
676
  #~ "enter it manually in this case?"
2
  msgstr ""
3
  "Project-Id-Version: Social Login\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2014-05-06 11:41+0100\n"
6
+ "PO-Revision-Date: 2014-05-06 11:41+0100\n"
7
  "Last-Translator: Claude Schlesser <cschlesser@oneall.com>\n"
8
  "Language-Team: \n"
9
  "Language: \n"
19
  #: oa-social-login.php:24
20
  #, php-format
21
  msgid "This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin."
22
+ msgstr "Dieses Plugin benötigt Wordpress %s oder höher. Bitte aktualisieren Sie WordPress, um dieses Plugin zu nutzen."
23
 
24
  #: oa-social-login.php:46
25
  #: includes/admin.php:59
26
  #: includes/admin.php:70
27
+ #: includes/admin.php:593
28
+ #: includes/admin.php:866
29
  msgid "Setup"
30
  msgstr "Einrichten"
31
 
 
 
 
 
32
  #: includes/admin.php:14
33
  msgid "Registration"
34
  msgstr "Registriert mit"
38
  msgstr "Anmeldeformular"
39
 
40
  #: includes/admin.php:63
41
+ #: includes/admin.php:594
42
+ #: includes/admin.php:867
43
  msgid "Settings"
44
  msgstr "Einstellungen"
45
 
46
  #: includes/admin.php:116
 
47
  msgid "Thank you for using Social Login!"
48
  msgstr "Danke, dass Sie Social Login installiert haben!"
49
 
50
  #: includes/admin.php:116
51
+ #, php-format
52
  msgid "Please complete the <strong><a href=\"%s\">Social Login Setup</a></strong> to enable the plugin."
53
  msgstr "Bitte rufen Sie die Seite <strong><a href=\"%s\">Einstellungen\\Social Login</a></strong> auf, um das Plugin zu konfigurieren."
54
 
55
+ #: includes/admin.php:308
56
  msgid "Contacting API - please wait this may take a few minutes ..."
57
  msgstr "Teste Einstellungen - Dies kann einige Minutern dauern ..."
58
 
59
+ #: includes/admin.php:309
60
  msgid "The settings are correct - do not forget to save your changes!"
61
  msgstr "Die Einstellungen sind korrekt! Vergessen Sie nicht abzuspeichern!"
62
 
63
+ #: includes/admin.php:310
64
  msgid "Please fill out each of the fields above."
65
  msgstr "Bitte füllen Sie alle Felder aus."
66
 
67
+ #: includes/admin.php:311
68
  msgid "The subdomain does not exist. Have you filled it out correctly?"
69
  msgstr "Subdomain wurde nicht gefunden. Haben Sie sie richtig ausgefüllt?"
70
 
71
+ #: includes/admin.php:312
72
  msgid "The subdomain has a wrong syntax!"
73
  msgstr "Die Subdomain ist ungültig!"
74
 
75
+ #: includes/admin.php:313
76
  msgid "Could not contact API. Are outbound requests on port 443 allowed?"
77
  msgstr "Keine Verbindung zur API. Eventuell blockiert Ihre Firewall Anfragen auf Port 443."
78
 
79
+ #: includes/admin.php:314
80
  msgid "The API subdomain is correct, but one or both keys are invalid"
81
  msgstr "Die API-Subdomain ist korrekt, aber die Schlüssel stimmen nicht."
82
 
83
+ #: includes/admin.php:315
84
  msgid "Connection handler does not work, try using the Autodetection"
85
  msgstr "Verbindungsfehler! Bitte nutzen Sie die automatische Erkennung"
86
 
87
+ #: includes/admin.php:316
88
  msgid "Detected CURL on Port 443 - do not forget to save your changes!"
89
+ msgstr "CURL kann auf Port 443 verwendet werden. Vergessen Sie nicht abzuspeichern!"
90
 
91
+ #: includes/admin.php:317
92
  msgid "Detected CURL on Port 80 - do not forget to save your changes!"
93
+ msgstr "CURL kann auf Port 80 verwendet werden. Vergessen Sie nicht abzuspeichern!"
94
+
95
+ #: includes/admin.php:318
96
+ msgid "CURL is available but both ports (80, 443) are blocked for outbound requests"
97
+ msgstr "CURL wurde gefunden. Die Ports 80 und 443 scheinen aber für ausgehende Verbindungen gesperrt zu sein."
98
 
99
+ #: includes/admin.php:319
100
  msgid "Detected FSOCKOPEN on Port 443 - do not forget to save your changes!"
101
+ msgstr "FSOCKOPEN kann auf Port 443 verwendet werden. Vergessen Sie nicht abzuspeichern!"
102
 
103
+ #: includes/admin.php:320
104
  msgid "Detected FSOCKOPEN on Port 80 - do not forget to save your changes!"
105
+ msgstr "FSOCKOPEN kann Port 80 verwendet werden. Vergessen Sie nicht abzuspeichern!"
106
+
107
+ #: includes/admin.php:321
108
+ msgid "FSOCKOPEN is available but both ports (80, 443) are blocked for outbound requests"
109
+ msgstr "FSOCKOPEN wurde gefunden. Die Ports 80 und 443 scheinen aber für ausgehende Verbindungen gesperrt zu sein."
110
 
111
+ #: includes/admin.php:322
112
  #, php-format
113
  msgid "Autodetection Error - our <a href=\"%s\" target=\"_blank\">documentation</a> helps you fix this issue."
114
  msgstr "Verbindungsfehler - in unserer <a href=\"%s\" target=\"_blank\">Dokumentation</a> finden Sie die Lösung."
115
 
116
+ #: includes/admin.php:601
117
+ msgid "Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Instagram, VKontakte, Google or Yahoo."
118
+ msgstr "Erlauben Sie Ihren Besuchern, sich mit 20+ Sozialen Netzwerk wie z.B. Twitter, Facebook, LinkedIn, Instagram, Google oder Yahoo anzumelden, und Kommentare zu hinterlassen."
119
 
120
+ #: includes/admin.php:602
121
  msgid "Draw a larger audience and increase your user engagement in a few simple steps."
122
  msgstr "Steigern Sie die Beteilung Ihrer Nutzer auf einfachste Art und Weise."
123
 
124
+ #: includes/admin.php:606
125
  msgid "Get Started!"
126
  msgstr "Los gehts!"
127
 
128
+ #: includes/admin.php:609
129
  #, php-format
130
  msgid "To be able to use this plugin you first of all need to create a free account at %s and setup a Site."
131
  msgstr "Um dieses Plugin nutzen zu können, müssen Sie sich zunächst kostenlos ein Konto bei %s anmelden."
132
 
133
+ #: includes/admin.php:610
134
  msgid "After having created your account and setup your Site, please enter the Site settings in the form below."
135
  msgstr "Nachdem Sie Ihr Konto angemeldet haben, müssen Sie die API-Daten in das nachfolgende Formular eintragen."
136
 
137
+ #: includes/admin.php:611
138
  msgid "Don't worry the setup takes only a couple of minutes!"
139
  msgstr "Keine Sorge! Die Einrichtung dauert nur wenige Minuten."
140
 
141
+ #: includes/admin.php:614
142
  msgid "Click here to setup your free account"
143
  msgstr "Kostenloses Konto anmelden"
144
 
145
+ #: includes/admin.php:617
146
  #, php-format
147
  msgid "You are in good company! This plugin is used on more than %s websites!"
148
  msgstr "Mehr als %s Webseiten nutzen dieses Plugin. Seien Sie mit dabei!"
149
 
150
+ #: includes/admin.php:628
151
  msgid "Your API Account is setup correctly"
152
  msgstr "Die API-Daten sind korrekt"
153
 
154
+ #: includes/admin.php:631
155
  msgid "Login to your account to manage your providers and access your Social Insights."
156
  msgstr "Loggen Sie sich in Ihr Konto ein, um Einstellungen vorzunehmen und Statistiken einzusehen."
157
 
158
+ #: includes/admin.php:632
159
  msgid "Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement."
160
  msgstr "Finden Sie heraus, welche sozialen Netzwerke unter Ihren Besuchern beliebt sind, und steigern Sie die Beteilung Ihrer Besucher."
161
 
162
+ #: includes/admin.php:635
163
  msgid "Click here to login to your account"
164
  msgstr "Klicken Sie hier, um sich in Ihr Konto einloggen"
165
 
166
+ #: includes/admin.php:643
167
  msgid "Help, Updates &amp; Documentation"
168
  msgstr "Hilfe, Updates &amp; Dokumentation"
169
 
170
+ #: includes/admin.php:646
171
  #, php-format
172
  msgid "<a target=\"_blank\" href=\"%s\">Follow us on Twitter</a> to stay informed about updates"
173
  msgstr "<a target=\"_blank\" href=\"%s\">Folgen Sie uns auf Twitter</a>, um auf dem Laufenden zu bleiben"
174
 
175
+ #: includes/admin.php:647
176
  #, php-format
177
  msgid "<a target=\"_blank\" href=\"%s\">Read the online documentation</a> for more information about this plugin"
178
  msgstr "<a target=\"_blank\" href=\"%s\">Lesen Sie unsere Dokumentation</a> für zusätzliche Information"
179
 
180
+ #: includes/admin.php:648
181
  #, php-format
182
  msgid "<a target=\"_blank\" href=\"%s\">Contact us</a> if you have feedback or need assistance"
183
  msgstr "<a target=\"_blank\" href=\"%s\">Schreiben Sie uns</a>, falls Sie Hilfe benötigen"
184
 
185
+ #: includes/admin.php:649
186
+ #, php-format
187
  msgid "We also have <a target=\"_blank\" href=\"%s\">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ..."
188
+ msgstr "Wir bieten auch Module für <a target=\"_blank\" href=\"%s\">Drupal, phpBB , Joomla</a> und andere an"
189
 
190
+ #: includes/admin.php:658
191
+ #: includes/admin.php:891
192
  msgid "Your modifications have been saved successfully!"
193
  msgstr "Ihre Einstellungen wurden erfolgreich gespeichert!"
194
 
195
+ #: includes/admin.php:670
196
+ #: includes/admin.php:678
197
  msgid "API Connection Handler"
198
  msgstr "API Kommunikation"
199
 
200
+ #: includes/admin.php:682
201
  msgid "Use PHP CURL to communicate with the API"
202
  msgstr "PHP CURL verwenden"
203
 
204
+ #: includes/admin.php:682
205
+ #: includes/admin.php:702
206
+ #: includes/admin.php:800
207
+ #: includes/admin.php:925
208
+ #: includes/admin.php:940
209
+ #: includes/admin.php:953
210
+ #: includes/admin.php:974
211
+ #: includes/admin.php:990
212
+ #: includes/admin.php:1004
 
 
 
213
  #: includes/admin.php:1026
214
  #: includes/admin.php:1041
215
+ #: includes/admin.php:1056
216
+ #: includes/admin.php:1079
217
+ #: includes/admin.php:1100
218
+ #: includes/admin.php:1116
219
+ #: includes/admin.php:1139
220
+ #: includes/admin.php:1156
221
+ #: includes/admin.php:1179
222
+ #: includes/admin.php:1197
223
  msgid "Default"
224
  msgstr "Standard"
225
 
226
+ #: includes/admin.php:683
227
  msgid "Using CURL is recommended but it might be disabled on some servers."
228
  msgstr "Empfohlene Einstellung, auf manchen Serven aber deaktiviert."
229
 
230
+ #: includes/admin.php:689
231
  msgid "Use PHP FSOCKOPEN to communicate with the API"
232
  msgstr "PHP FSOCKOPEN verwenden"
233
 
234
+ #: includes/admin.php:690
235
  msgid "Try using FSOCKOPEN if you encounter any problems with CURL."
236
  msgstr "Verwenden Sie FSOCKEN wenn Probleme mit CURL auftreten sollten."
237
 
238
+ #: includes/admin.php:698
239
  msgid "API Connection Port"
240
  msgstr "API Verbindungs Port"
241
 
242
+ #: includes/admin.php:702
243
  msgid "Communication via HTTPS on port 443"
244
  msgstr "Verbindung auf HTTPS Port 443"
245
 
246
+ #: includes/admin.php:703
247
  msgid "Using port 443 is secure but you might need OpenSSL"
248
  msgstr "Die Verbindung auf Port 443 ist sicherer benötigt aber ggfs. OpenSSL"
249
 
250
+ #: includes/admin.php:709
251
  msgid "Communication via HTTP on port 80"
252
  msgstr "Verbindung auf HTTP Port 80"
253
 
254
+ #: includes/admin.php:710
255
  msgid "Using port 80 is a bit faster, doesn't need OpenSSL but is less secure"
256
  msgstr "Die Verbindung auf Port 80 ist etwas schneller aber nicht ganz so sicher"
257
 
258
+ #: includes/admin.php:715
259
  msgid "Autodetect API Connection"
260
  msgstr "Automatisch erkennen"
261
 
262
+ #: includes/admin.php:725
263
  msgid "API Settings"
264
  msgstr "API Einstellungen"
265
 
266
+ #: includes/admin.php:727
267
  msgid "Click here to create and view your API Credentials"
268
  msgstr "Klicken Sie hier, um Ihre API-Daten einzusehen"
269
 
270
+ #: includes/admin.php:732
271
  msgid "API Subdomain"
272
  msgstr "API Subdomain"
273
 
274
+ #: includes/admin.php:740
275
  msgid "API Public Key"
276
  msgstr "API Public Key"
277
 
278
+ #: includes/admin.php:748
279
  msgid "API Private Key"
280
  msgstr "API Private Key"
281
 
282
+ #: includes/admin.php:756
283
  msgid "Verify API Settings"
284
  msgstr "API-Einstellungen überprüfen"
285
 
286
+ #: includes/admin.php:766
287
+ msgid "JavaScript Settings"
288
+ msgstr "JavaScript Einstellungen"
289
+
290
+ #: includes/admin.php:796
291
+ msgid "JavaScript Usage"
292
+ msgstr "JavaScript Kommunikation"
293
+
294
+ #: includes/admin.php:800
295
+ msgid "Asynchronous JavaScript"
296
+ msgstr "Asynchrones JavaScript"
297
+
298
+ #: includes/admin.php:801
299
+ msgid "Background loading without interfering with the display and behavior of the existing page."
300
+ msgstr "JavaScript im Hintergrund laden, um dem Seitenaufbau zu beschleunigen."
301
+
302
+ #: includes/admin.php:807
303
+ msgid "Synchronous JavaScript"
304
+ msgstr "Synchrones JavaScript"
305
+
306
+ #: includes/admin.php:808
307
+ msgid "Real-time loading when the page is being rendered by the browser."
308
+ msgstr "JavaScript in Echtzeit laden."
309
+
310
+ #: includes/admin.php:816
311
  msgid "Enable the social networks/identity providers of your choice"
312
  msgstr "Wählen Sie die sozialen Netzwerke aus:"
313
 
314
+ #: includes/admin.php:836
315
  #, php-format
316
  msgid "To enable cyrillic usernames, you might need <a target=\"_blank\" href=\"%s\">this plugin</a>"
317
  msgstr "Um kyrillische Zeichen zu verwenden, brauchen Sie <a target=\"_blank\" href=\"%s\">dieses Plugin</a>"
318
 
319
+ #: includes/admin.php:847
320
+ #: includes/admin.php:1207
321
  msgid "Save Changes"
322
  msgstr "Einstellungen speichern"
323
 
324
+ #: includes/admin.php:877
325
  msgid "Logout to see the plugin in action!"
326
  msgstr "Sie müssen ausloggen, um das Plugin testen zu können."
327
 
328
+ #: includes/admin.php:881
329
  msgid "Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected."
330
  msgstr "Social Login erlaubt es Ihren Benutzern, sich mit dem Konto eines sozialen Netzwerks anzumelden. Bei Benutzern die bereits eingeloggt sind wird das Plugin nicht angezeigt, da der Benutzer bereits angemeldet ist, und keine weitere Anmeldenmöglichkeit benötigt. "
331
 
332
+ #: includes/admin.php:883
333
  msgid "You therefore have to logout to see the plugin in action."
334
  msgstr "Sie müssen Sich aus diesem Grund ausloggen, um das Plugin testen zu können."
335
 
336
+ #: includes/admin.php:899
337
  msgid "General Settings"
338
  msgstr "Allgemeine Einstellungen"
339
 
340
+ #: includes/admin.php:904
341
  msgid "Enter the description to be displayed above the Social Login buttons (leave empty for none):"
342
  msgstr "Welcher Text soll über den Icons der sozialen Netzwerke angezeigt werden (ggf. leer lassen) ?"
343
 
344
+ #: includes/admin.php:910
345
  msgid "Connect with:"
346
  msgstr "Einloggen mit:"
347
 
348
+ #: includes/admin.php:917
349
  msgid "Do you want to use the default or the small social network buttons?"
350
  msgstr "Wollen Sie die standard -oder kleinere Icons für soziale Netzwerke verwenden?"
351
 
352
+ #: includes/admin.php:925
353
  #, php-format
354
  msgid "Use the default social network buttons (%s)"
355
  msgstr "Standard-Icons verwenden (%s)"
356
 
357
+ #: includes/admin.php:926
358
  #, php-format
359
  msgid "Use the small social network buttons (%s)"
360
  msgstr "Kleine Icons verwenden (%s)"
361
 
362
+ #: includes/admin.php:931
363
  msgid "Do you want to display the social networks used to connect in the user list of the administration area ?"
364
  msgstr "Sollen die verwendeten sozialen Netzwerke in der Benutzerliste angezeigt werden?"
365
 
366
+ #: includes/admin.php:939
367
  msgid "Yes, add a new column to the user list and display the social network that the user connected with"
368
  msgstr "Ja, eine weitere Spalte in der Benutzerliste anzeigen"
369
 
370
+ #: includes/admin.php:940
371
  msgid "No, no not display the social networks in the user list"
372
  msgstr "Nein, soziale Netzwerke nicht anzeigen"
373
 
374
+ #: includes/admin.php:945
375
  msgid "Do you want to receive an email whenever a new user registers with Social Login ?"
376
  msgstr "Wollen Sie per Email benachrichtigt werden, sobald ein Benutzer sich mit Social Login anmeldet?"
377
 
378
+ #: includes/admin.php:953
379
  msgid "Yes, send me an email whenever a new user registers with Social Login"
380
  msgstr "Ja, ich möchte eine Email erhalten, wenn jemand sich mit Social Login anmeldet"
381
 
382
+ #: includes/admin.php:954
383
  msgid "No, do not send me any emails"
384
  msgstr "Nein, keine Benachrichtigung per Email versenden"
385
 
386
+ #: includes/admin.php:961
387
  msgid "User Settings"
388
  msgstr "Benutzer Einstellungen"
389
 
390
+ #: includes/admin.php:966
391
  msgid "If the user's social network profile has no email address, should we ask the user to enter it manually?"
392
  msgstr "Müssen Benutzer Ihre Email Address manuell eingeben falls sie nicht im Sozialen Profil vorhanden ist?"
393
 
394
+ #: includes/admin.php:974
395
  msgid "No, simplify the registration by automatically creating a placeholder email"
396
  msgstr "Nein, in diesem Fall eine Platzhalter-Email anlegen (vereinfach die Registrierung)"
397
 
398
+ #: includes/admin.php:975
399
  msgid "Yes, require the user to enter his email address manually and display this message:"
400
  msgstr "Ja, Benutzer mit folgendem Text auffordern, ihre Email-Adresse einzugeben:"
401
 
402
+ #: includes/admin.php:976
403
+ #: includes/user_interface.php:1078
404
  #, php-format
405
  msgid "<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue."
406
  msgstr "<strong>Wir konnten Ihre E-Mail-Adresse leider nicht über Ihr %s Konto ermitteln.</strong> Bitte geben Sie Ihre Email-Adresse nachfolgend an."
407
 
408
+ #: includes/admin.php:977
409
  #, php-format
410
  msgid "HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect."
411
  msgstr "HTML ist erlaubt, der Platzhalter %s wird durch den Namen des sozialen Netzwerks ersetzt."
412
 
413
+ #: includes/admin.php:982
414
  msgid "If the user's social network profile has a verified email, should we try to link it to an existing account?"
415
  msgstr "Sollen soziale Profile mit überprüfter Email mit vorhandenen Blog-Nutzern verknüpft werden?"
416
 
417
+ #: includes/admin.php:990
418
  msgid "Yes, try to link verified social network profiles to existing blog accounts"
419
  msgstr "Ja, verknüpfe soziale Profile gegebenenfalls mit vorhanden Nutzern"
420
 
421
+ #: includes/admin.php:991
422
  msgid "No, disable account linking"
423
  msgstr "Nein, keine Verknüpfung"
424
 
425
+ #: includes/admin.php:996
426
  msgid "If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?"
427
  msgstr "Sollen die Benutzerbilder der sozialen Netwerke gegebenenfalls als Avatare verwendet werden?"
428
 
429
+ #: includes/admin.php:1004
430
  msgid "No, do not use avatars from social networks"
431
  msgstr "Nein, keine Benutzerbilder der sozialen Netzwerke verwenden"
432
 
433
+ #: includes/admin.php:1005
 
434
  msgid "Yes, use small avatars from social networks if available"
435
  msgstr "Ja, verwende Benutzerbilder (kleines Format) der sozialen Netzwerke"
436
 
437
+ #: includes/admin.php:1006
 
438
  msgid "Yes, use large avatars from social networks if available"
439
  msgstr "Ja, verwende Benutzerbilder (grosses Format) der sozialen Netzwerke"
440
 
441
+ #: includes/admin.php:1013
442
  msgid "Comment Settings"
443
  msgstr "Einstellungen: Kommentare"
444
 
445
+ #: includes/admin.php:1018
446
  msgid "Show the Social Login buttons in the comment area?"
447
  msgstr "Das Plugin über dem Kommentare-Formular anzeigen?"
448
 
449
+ #: includes/admin.php:1026
450
+ #: includes/admin.php:1041
451
  msgid "Yes, show the Social Login buttons"
452
  msgstr "Ja, zeige das Plugin an"
453
 
454
+ #: includes/admin.php:1027
455
+ #: includes/admin.php:1042
456
  msgid "No, do not show the Social Login buttons"
457
  msgstr "Nein, Plugin nicht anzeigen"
458
 
459
+ #: includes/admin.php:1032
460
  msgid "Show the Social Login buttons in the comment area if comments are disabled for guests?"
461
  msgstr "Login mit einem sozialen Netzwerk anbieten falls Kommentare für Gäste deaktiviert sind?"
462
 
463
+ #: includes/admin.php:1040
464
  msgid "The buttons will be displayed below the \"You must be logged in to leave a comment\" notice."
465
  msgstr "Die Icons werden unter \"Du musst angemeldet sein, um einen Kommentar abzugeben\" angezeigt."
466
 
467
+ #: includes/admin.php:1047
468
  msgid "Automatically approve comments left by users that connected by using Social Login?"
469
  msgstr "Kommentare automatisch freischalten, falls dessen Autor sich mit SocialLogin eingeloggt hat?"
470
 
471
+ #: includes/admin.php:1055
472
  msgid "Yes, automatically approve comments made by users that connected with Social Login"
473
  msgstr "Ja, Kommentare automatisch freischalten"
474
 
475
+ #: includes/admin.php:1056
476
  msgid "No, do not automatically approve"
477
  msgstr "Nein, Kommentare nicht automatisch freischalten"
478
 
479
+ #: includes/admin.php:1065
480
  msgid "Profile Settings"
481
  msgstr "Mitgliederprofil Einstellungen"
482
 
483
+ #: includes/admin.php:1070
484
  msgid "Show the Social Link buttons in the user profile?"
485
  msgstr "Social Link im Mitgliederprofil anzeigen?"
486
 
487
+ #: includes/admin.php:1075
488
  msgid "Keep this option enabled to allow each user to connect multiple social networks to his own profile."
489
  msgstr "Aktivieren Sie diese Option, damit Ihre Mitglieder Ihr Konto mit sozialen Netzwerken koppeln können."
490
 
491
+ #: includes/admin.php:1079
492
  msgid "Yes, show the Social Link buttons"
493
  msgstr "Ja, zeige Social Link an"
494
 
495
+ #: includes/admin.php:1080
496
  msgid "No, do not show the Social Link buttons"
497
  msgstr "Nein, Social Link nicht anzeigen"
498
 
499
+ #: includes/admin.php:1087
500
  msgid "Login Page Settings"
501
  msgstr "Einstellungen: Login-Seite"
502
 
503
+ #: includes/admin.php:1092
504
  msgid "Do you want to display Social Login on the login form of your blog?"
505
  msgstr "Das Plugin auf der Login-Seite Ihres Blogs anzeigen?"
506
 
507
+ #: includes/admin.php:1100
508
  msgid "Yes, display the social network buttons below the login form"
509
  msgstr "Ja, die Icons der sozialen Netzwerke auf der Login-Seite anzeigen"
510
 
511
+ #: includes/admin.php:1101
512
  msgid "No, disable social network buttons in the login form"
513
  msgstr "Nein, keine Icons auf der Login-Seite anzeigen"
514
 
515
+ #: includes/admin.php:1106
516
  msgid "Where should users be redirected to after having logged in with Social Login on the login page?"
517
  msgstr "Wohin sollen Nutzer weitergeleitet werden, nachdem Sie sich Social Login auf der Login-Seite eingeloggt haben?"
518
 
519
+ #: includes/admin.php:1115
520
+ #: includes/admin.php:1154
521
+ #: includes/admin.php:1179
522
+ #: includes/admin.php:1197
523
+ msgid "Redirect users back to the current page"
524
+ msgstr "Weiterleitung zurück zur aktuellen Seite"
525
+
526
+ #: includes/admin.php:1116
527
+ #: includes/admin.php:1155
528
+ #: includes/admin.php:1180
529
+ #: includes/admin.php:1198
530
  msgid "Redirect users to the homepage of my blog"
531
  msgstr "Weiterleitung zur Hauptseite meines Blogs"
532
 
533
+ #: includes/admin.php:1117
534
+ #: includes/admin.php:1156
535
+ #: includes/admin.php:1181
536
+ #: includes/admin.php:1199
537
  msgid "Redirect users to their account dashboard"
538
  msgstr "Weiterleitung zur Profilseite des Nutzers"
539
 
540
+ #: includes/admin.php:1118
541
+ #: includes/admin.php:1157
542
+ #: includes/admin.php:1182
543
+ #: includes/admin.php:1200
544
  msgid "Redirect users to the following url"
545
  msgstr "Weiterleitung zu dieser URL"
546
 
547
+ #: includes/admin.php:1126
548
  msgid "Registration Page Settings"
549
  msgstr "Einstellungen: Anmelden-Seite"
550
 
551
+ #: includes/admin.php:1131
552
  msgid "Do you want to display Social Login on the registration form of your blog?"
553
  msgstr "Das Plugin auf der Anmelden-Seite Ihres Blogs anzeigen?"
554
 
555
+ #: includes/admin.php:1139
556
  msgid "Yes, display the social network buttons below the registration form"
557
  msgstr "Ja, die Icons der sozialen Netzwerke auf der Anmelden-Seite anzeigen"
558
 
559
+ #: includes/admin.php:1140
560
  msgid "No, disable social network buttons in the registration form"
561
  msgstr "Nein, keine Icons auf der Anmelden-Seite anzeigen"
562
 
563
+ #: includes/admin.php:1145
564
  msgid "Where should users be redirected to after having registered with Social Login on the registration page?"
565
  msgstr "Wohin sollen Nutzer weitergeleitet werden, nachdem sie ein Konto mit einem sozialen Netzwerk angelegt haben?"
566
 
567
+ #: includes/admin.php:1165
568
  msgid "Widget &amp; Shortcode Settings"
569
  msgstr "Widget &amp; Shortcode Einstellungen"
570
 
571
+ #: includes/admin.php:1170
572
  msgid "Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:"
573
  msgstr "Benutzer zu dieser Seite weiterleiten nachdem sie im Social Login Widget/Shortcode eingloggt haben:"
574
 
575
+ #: includes/admin.php:1188
 
 
 
 
 
576
  msgid "Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:"
577
  msgstr "Benutzer zu dieser Seite weiterleiten nachdem sie über das Social Login Widget/Shortcode registriert haben:"
578
 
579
+ #: includes/user_interface.php:115
580
+ #: includes/user_interface.php:926
581
  msgid "Please enable at least one social network!"
582
  msgstr "Bitte aktivieren Sie mindestens ein soziales Netzwerk!"
583
 
584
+ #: includes/user_interface.php:160
585
+ #: includes/user_interface.php:198
586
  #, php-format
587
  msgid "You have successfully linked your %s account."
588
  msgstr "Sie haben Ihr %s Konto erfolgreich hinzugefügt."
589
 
590
+ #: includes/user_interface.php:192
591
+ #: includes/user_interface.php:283
592
  #, php-format
593
  msgid "This %s account is already used by another user of this website."
594
  msgstr "Dieses %s Konto wird bereit von einem anderen Nutzer verwendet."
595
 
596
+ #: includes/user_interface.php:223
597
  #, php-format
598
  msgid "You have successfully unlinked your %s account."
599
  msgstr "Sie haben die Verbindung mit %s Konto getrennt."
600
 
601
+ #: includes/user_interface.php:271
602
  msgid "You might no longer be able to login to this website if you don't link at least one social network."
603
  msgstr "Sie können sich womöglich nicht mehr einloggen, falls Sie nicht mindestens ein soziales Netzerk koppeln."
604
 
605
+ #: includes/user_interface.php:347
606
  msgid "Connect your account to one or more social networks"
607
  msgstr "Verbinden Sie Ihr Konto mit einem oder mehreren sozialen Netzwerken"
608
 
609
+ #: includes/user_interface.php:1028
610
+ #: includes/user_interface.php:1104
611
  msgid "Please enter your email address"
612
  msgstr "Bitte geben Sie Ihre E-Mail-Adresse ein"
613
 
614
+ #: includes/user_interface.php:1034
615
  msgid "This email is not valid"
616
  msgstr "Diese E-Mail-Adresse ist ungültig"
617
 
618
+ #: includes/user_interface.php:1039
619
  msgid "This email is already used by another account"
620
  msgstr "Diese E-Mail-Adresse wird bereits verwendet"
621
 
622
+ #: includes/user_interface.php:1091
623
  #, php-format
624
  msgid "You have successfully connected with %s!"
625
  msgstr "Sie haben Sich erfolgreicht mit %s angemeldet!"
626
 
627
+ #: includes/user_interface.php:1116
628
  msgid "Confirm"
629
  msgstr "Bestätigen"
630
 
631
+ #: includes/user_interface.php:1117
632
  msgid "Cancel"
633
  msgstr "Abbrechen"
634
 
660
  msgid "Tick to use small buttons"
661
  msgstr "Kleine Icons verwenden"
662
 
663
+ #: includes/toolbox.php:87
664
+ #, php-format
665
+ msgid "[%s] New User Registration"
666
+ msgstr "[%s] Neue Benutzeranmeldung"
667
+
668
+ #: includes/toolbox.php:90
669
  #, php-format
670
  msgid "New user registration on your site %s:"
671
  msgstr "Neue Benutzeranmeldung auf Ihrer Seite %s:"
672
 
673
+ #: includes/toolbox.php:91
674
  #, php-format
675
  msgid "Username: %s"
676
  msgstr "Benutzername: %s"
677
 
678
+ #: includes/toolbox.php:92
679
  #, php-format
680
  msgid "Social Network: %s"
681
  msgstr "Soziales Netzwerk: %s"
682
 
683
+ #~ msgid "This Social Network account may not be used to register"
684
+ #~ msgstr "Dieses Konto kann nicht zur Anmeldung genutzt werden"
 
 
685
 
686
  #, fuzzy
687
  #~ msgid "Pleasen enter your email address"
699
  #~ msgid "Social Networks"
700
  #~ msgstr "Soziale Netzwerke"
701
 
 
 
 
702
  #~ msgid ""
703
  #~ "Some social networks do not provide their user's email. Ask the user to "
704
  #~ "enter it manually in this case?"
languages/oa_social_login-fr_CA.mo ADDED
Binary file
languages/oa_social_login-fr_CA.po ADDED
@@ -0,0 +1,828 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Social Login v4.4\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2014-05-06 11:41+0100\n"
6
+ "PO-Revision-Date: 2014-05-06 11:41+0100\n"
7
+ "Last-Translator: Claude Schlesser <cschlesser@oneall.com>\n"
8
+ "Language-Team: \n"
9
+ "Language: \n"
10
+ "MIME-Version: 1.0\n"
11
+ "Content-Type: text/plain; charset=UTF-8\n"
12
+ "Content-Transfer-Encoding: 8bit\n"
13
+ "Plural-Forms: nplurals=2; plural=n>1;\n"
14
+ "X-Generator: CSL v1.x\n"
15
+ "X-Poedit-Language: French\n"
16
+ "X-Poedit-Country: FRANCE\n"
17
+ "X-Poedit-SourceCharset: utf-8\n"
18
+ "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;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../\n"
20
+ "X-Textdomain-Support: yes\n"
21
+ "X-Poedit-SearchPath-0: .\n"
22
+
23
+ # @ oa_social_login
24
+ #: oa-social-login.php:24
25
+ #, php-format
26
+ msgid "This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin."
27
+ msgstr "Cette extension nécessite WordPress %s ou plus récent. SVP mettre à jour votre installation de WordPress pour activer cette extension."
28
+
29
+ # @ oa_social_login
30
+ #: oa-social-login.php:46
31
+ #: includes/admin.php:59
32
+ #: includes/admin.php:70
33
+ #: includes/admin.php:593
34
+ #: includes/admin.php:866
35
+ msgid "Setup"
36
+ msgstr "Installation"
37
+
38
+ # @ oa_social_login
39
+ #: includes/admin.php:14
40
+ msgid "Registration"
41
+ msgstr "Inscription"
42
+
43
+ # @ oa_social_login
44
+ #: includes/admin.php:47
45
+ msgid "Registration Form"
46
+ msgstr "Formulaire d’inscription"
47
+
48
+ # @ oa_social_login
49
+ #: includes/admin.php:63
50
+ #: includes/admin.php:594
51
+ #: includes/admin.php:867
52
+ msgid "Settings"
53
+ msgstr "Paramètres"
54
+
55
+ # @ oa_social_login
56
+ #: includes/admin.php:116
57
+ msgid "Thank you for using Social Login!"
58
+ msgstr "Merci d’utiliser Social Login!"
59
+
60
+ # @ oa_social_login
61
+ #: includes/admin.php:116
62
+ #, php-format
63
+ msgid "Please complete the <strong><a href=\"%s\">Social Login Setup</a></strong> to enable the plugin."
64
+ msgstr "Vous devez compléter le <a href=\"%s\"><strong>programme d’installation Social Login</strong></a> pour activer l’extension."
65
+
66
+ # @ oa_social_login
67
+ #: includes/admin.php:308
68
+ msgid "Contacting API - please wait this may take a few minutes ..."
69
+ msgstr "Contacter API - Veuillez patienter, cela peut prendre quelques minutes..."
70
+
71
+ # @ oa_social_login
72
+ #: includes/admin.php:309
73
+ msgid "The settings are correct - do not forget to save your changes!"
74
+ msgstr "Les paramètres sont corrects - n’oubliez pas d’enregistrer vos changements!"
75
+
76
+ # @ oa_social_login
77
+ #: includes/admin.php:310
78
+ msgid "Please fill out each of the fields above."
79
+ msgstr "Veuillez remplir chacun des champs ci-dessus."
80
+
81
+ # @ oa_social_login
82
+ #: includes/admin.php:311
83
+ msgid "The subdomain does not exist. Have you filled it out correctly?"
84
+ msgstr "Le sous-domaine n’existe pas. Avez-vous rempli correctement?"
85
+
86
+ # @ oa_social_login
87
+ #: includes/admin.php:312
88
+ msgid "The subdomain has a wrong syntax!"
89
+ msgstr "Le sous-domaine a une syntaxe incorrecte!"
90
+
91
+ # @ oa_social_login
92
+ #: includes/admin.php:313
93
+ msgid "Could not contact API. Are outbound requests on port 443 allowed?"
94
+ msgstr "Impossible de contacter API. Les demandes sortantes sur le port 443 sont-elles permises?"
95
+
96
+ # @ oa_social_login
97
+ #: includes/admin.php:314
98
+ msgid "The API subdomain is correct, but one or both keys are invalid"
99
+ msgstr "Le sous-domaine de l’API est correcte, mais une ou deux clés ne sont pas valides"
100
+
101
+ # @ oa_social_login
102
+ #: includes/admin.php:315
103
+ msgid "Connection handler does not work, try using the Autodetection"
104
+ msgstr "Gestionnaire de connexion ne fonctionne pas, essayez d’utiliser la détection automatique"
105
+
106
+ # @ oa_social_login
107
+ #: includes/admin.php:316
108
+ msgid "Detected CURL on Port 443 - do not forget to save your changes!"
109
+ msgstr "CURL détecté sur le port 443 - n’oubliez pas d’enregistrer vos changements!"
110
+
111
+ # @ oa_social_login
112
+ #: includes/admin.php:317
113
+ msgid "Detected CURL on Port 80 - do not forget to save your changes!"
114
+ msgstr "CURL détecté sur le port 80 - n’oubliez pas d’enregistrer vos changements!"
115
+
116
+ #: includes/admin.php:318
117
+ msgid "CURL is available but both ports (80, 443) are blocked for outbound requests"
118
+ msgstr "CURL est disponible, mais votre pare-feu bloque les connexions sortantes sur les ports 80 et 443."
119
+
120
+ # @ oa_social_login
121
+ #: includes/admin.php:319
122
+ msgid "Detected FSOCKOPEN on Port 443 - do not forget to save your changes!"
123
+ msgstr "Détecté fsockopen sur le port 443 - n’oubliez pas d’enregistrer vos changements!"
124
+
125
+ # @ oa_social_login
126
+ #: includes/admin.php:320
127
+ msgid "Detected FSOCKOPEN on Port 80 - do not forget to save your changes!"
128
+ msgstr "Détecté FSOCKOPEN sur le port 80 - n’oubliez pas d’enregistrer vos changements!"
129
+
130
+ #: includes/admin.php:321
131
+ msgid "FSOCKOPEN is available but both ports (80, 443) are blocked for outbound requests"
132
+ msgstr "FSOCKOPEN est disponible, mais votre pare-feu bloque les connexions sortantes sur les ports 80 et 443."
133
+
134
+ # @ oa_social_login
135
+ #: includes/admin.php:322
136
+ #, php-format
137
+ msgid "Autodetection Error - our <a href=\"%s\" target=\"_blank\">documentation</a> helps you fix this issue."
138
+ msgstr "Auto-détection d’erreur - notre <a href=\"%s\" target=\"_blank\">documentation</a> vous aide à résoudre ce problème."
139
+
140
+ # @ oa_social_login
141
+ #: includes/admin.php:601
142
+ msgid "Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Instagram, VKontakte, Google or Yahoo."
143
+ msgstr "Permettez à vos visiteurs de commenter, de s’identifier et de s’enregistrer avec plus de 20 réseaux sociaux comme par exemple Twitter, Facebook, LinkedIn, Instagram, Google ou Yahoo."
144
+
145
+ # @ oa_social_login
146
+ #: includes/admin.php:602
147
+ msgid "Draw a larger audience and increase your user engagement in a few simple steps."
148
+ msgstr "Attirez un public plus large et augmenter l’engagement de vos utilisateurs en quelques étapes simples."
149
+
150
+ # @ oa_social_login
151
+ #: includes/admin.php:606
152
+ msgid "Get Started!"
153
+ msgstr "Commencez!"
154
+
155
+ # @ oa_social_login
156
+ #: includes/admin.php:609
157
+ #, php-format
158
+ msgid "To be able to use this plugin you first of all need to create a free account at %s and setup a Site."
159
+ msgstr "Pour pouvoir utiliser cette extension, vous devez tout d’abord créer un compte gratuitement sur %s et configurer votre site."
160
+
161
+ # @ oa_social_login
162
+ #: includes/admin.php:610
163
+ msgid "After having created your account and setup your Site, please enter the Site settings in the form below."
164
+ msgstr "Après avoir créé votre compte et la configuration de votre site, SVP entrer les paramètres du site dans le formulaire ci-dessous."
165
+
166
+ # @ oa_social_login
167
+ #: includes/admin.php:611
168
+ msgid "Don't worry the setup takes only a couple of minutes!"
169
+ msgstr "Ne vous inquiétez pas, de la configuration ne prend que quelques minutes!"
170
+
171
+ # @ oa_social_login
172
+ #: includes/admin.php:614
173
+ msgid "Click here to setup your free account"
174
+ msgstr "Cliquez ici pour configurer votre compte gratuit"
175
+
176
+ # @ oa_social_login
177
+ #: includes/admin.php:617
178
+ #, php-format
179
+ msgid "You are in good company! This plugin is used on more than %s websites!"
180
+ msgstr "Vous êtes en bonne compagnie! Cette extension est utilisée sur plus de %s sites Web!"
181
+
182
+ # @ oa_social_login
183
+ #: includes/admin.php:628
184
+ msgid "Your API Account is setup correctly"
185
+ msgstr "Votre compte API est configuré correctement"
186
+
187
+ # @ oa_social_login
188
+ #: includes/admin.php:631
189
+ msgid "Login to your account to manage your providers and access your Social Insights."
190
+ msgstr "Connectez-vous à votre compte pour gérer vos fournisseurs et accéder à vos Social Insights."
191
+
192
+ # @ oa_social_login
193
+ #: includes/admin.php:632
194
+ msgid "Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement."
195
+ msgstr "Déterminer quels réseaux sociaux sont les plus populaires parmi les utilisateurs et adapter leur expérience d’enregistrement pour augmenter l’engagement des utilisateurs."
196
+
197
+ # @ oa_social_login
198
+ #: includes/admin.php:635
199
+ msgid "Click here to login to your account"
200
+ msgstr "Cliquez ici pour vous connecter à votre compte"
201
+
202
+ # @ oa_social_login
203
+ #: includes/admin.php:643
204
+ msgid "Help, Updates &amp; Documentation"
205
+ msgstr "Aide, Mises à jour et documentation"
206
+
207
+ # @ oa_social_login
208
+ #: includes/admin.php:646
209
+ #, php-format
210
+ msgid "<a target=\"_blank\" href=\"%s\">Follow us on Twitter</a> to stay informed about updates"
211
+ msgstr "<a target=\"_blank\" href=\"%s\">Suivez-nous sur Twitter</a> pour rester informé des mises à jour"
212
+
213
+ # @ oa_social_login
214
+ #: includes/admin.php:647
215
+ #, php-format
216
+ msgid "<a target=\"_blank\" href=\"%s\">Read the online documentation</a> for more information about this plugin"
217
+ msgstr "<a target=\"_blank\" href=\"%s\">Lire la documentation en ligne</a> pour plus d’informations sur cette extension"
218
+
219
+ # @ oa_social_login
220
+ #: includes/admin.php:648
221
+ #, php-format
222
+ msgid "<a target=\"_blank\" href=\"%s\">Contact us</a> if you have feedback or need assistance"
223
+ msgstr "<a target=\"_blank\" href=\"%s\">Contactez-nous</a> si vous avez des commentaires ou besoin de support"
224
+
225
+ # @ oa_social_login
226
+ #: includes/admin.php:649
227
+ #, php-format
228
+ msgid "We also have <a target=\"_blank\" href=\"%s\">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ..."
229
+ msgstr "Nous avons aussi des <a target=\"_blank\" href=\"%s\">extensions clés en main</a> pour Drupal, PrestaShop, Joomla, phpBB and bien d’autres..."
230
+
231
+ # @ oa_social_login
232
+ #: includes/admin.php:658
233
+ #: includes/admin.php:891
234
+ msgid "Your modifications have been saved successfully!"
235
+ msgstr "Vos modifications ont bien été enregistrées!"
236
+
237
+ # @ oa_social_login
238
+ #: includes/admin.php:670
239
+ #: includes/admin.php:678
240
+ msgid "API Connection Handler"
241
+ msgstr "Gestion de connexion avec l’API"
242
+
243
+ # @ oa_social_login
244
+ #: includes/admin.php:682
245
+ msgid "Use PHP CURL to communicate with the API"
246
+ msgstr "Utilisez PHP CURL pour communiquer avec l’API"
247
+
248
+ # @ oa_social_login
249
+ #: includes/admin.php:682
250
+ #: includes/admin.php:702
251
+ #: includes/admin.php:800
252
+ #: includes/admin.php:925
253
+ #: includes/admin.php:940
254
+ #: includes/admin.php:953
255
+ #: includes/admin.php:974
256
+ #: includes/admin.php:990
257
+ #: includes/admin.php:1004
258
+ #: includes/admin.php:1026
259
+ #: includes/admin.php:1041
260
+ #: includes/admin.php:1056
261
+ #: includes/admin.php:1079
262
+ #: includes/admin.php:1100
263
+ #: includes/admin.php:1116
264
+ #: includes/admin.php:1139
265
+ #: includes/admin.php:1156
266
+ #: includes/admin.php:1179
267
+ #: includes/admin.php:1197
268
+ msgid "Default"
269
+ msgstr "Par défaut"
270
+
271
+ # @ oa_social_login
272
+ #: includes/admin.php:683
273
+ msgid "Using CURL is recommended but it might be disabled on some servers."
274
+ msgstr "Utilisation de CURL est recommandé, mais il peut être désactivée sur certains serveurs."
275
+
276
+ # @ oa_social_login
277
+ #: includes/admin.php:689
278
+ msgid "Use PHP FSOCKOPEN to communicate with the API"
279
+ msgstr "Utilisez PHP FSOCKOPEN pour communiquer avec l’API"
280
+
281
+ # @ oa_social_login
282
+ #: includes/admin.php:690
283
+ msgid "Try using FSOCKOPEN if you encounter any problems with CURL."
284
+ msgstr "Essayez d’utiliser FSOCKOPEN si vous rencontrez des problèmes avec CURL."
285
+
286
+ # @ oa_social_login
287
+ #: includes/admin.php:698
288
+ msgid "API Connection Port"
289
+ msgstr "Port de connexion de l’API"
290
+
291
+ # @ oa_social_login
292
+ #: includes/admin.php:702
293
+ msgid "Communication via HTTPS on port 443"
294
+ msgstr "Communication via le protocole HTTPS sur le port 443"
295
+
296
+ # @ oa_social_login
297
+ #: includes/admin.php:703
298
+ msgid "Using port 443 is secure but you might need OpenSSL"
299
+ msgstr "Utiliser le port 443 est augmente la sécurité, mais vous pourriez avoir besoin OpenSSL"
300
+
301
+ # @ oa_social_login
302
+ #: includes/admin.php:709
303
+ msgid "Communication via HTTP on port 80"
304
+ msgstr "Communication via le protocole HTTP sur le port 80"
305
+
306
+ # @ oa_social_login
307
+ #: includes/admin.php:710
308
+ msgid "Using port 80 is a bit faster, doesn't need OpenSSL but is less secure"
309
+ msgstr "Utiliser le port 80 est un peu plus rapide, n’a pas besoin de OpenSSL, mais est moins sécure"
310
+
311
+ # @ oa_social_login
312
+ #: includes/admin.php:715
313
+ msgid "Autodetect API Connection"
314
+ msgstr "Détection automatique de connexion API"
315
+
316
+ # @ oa_social_login
317
+ #: includes/admin.php:725
318
+ msgid "API Settings"
319
+ msgstr "Paramètres de l’API"
320
+
321
+ # @ oa_social_login
322
+ #: includes/admin.php:727
323
+ msgid "Click here to create and view your API Credentials"
324
+ msgstr "Cliquez ici pour créer et afficher vos informations d’authentification API"
325
+
326
+ # @ oa_social_login
327
+ #: includes/admin.php:732
328
+ msgid "API Subdomain"
329
+ msgstr "Sous-domaine API"
330
+
331
+ # @ oa_social_login
332
+ #: includes/admin.php:740
333
+ msgid "API Public Key"
334
+ msgstr "Clé publique API"
335
+
336
+ # @ oa_social_login
337
+ #: includes/admin.php:748
338
+ msgid "API Private Key"
339
+ msgstr "Clé privée API"
340
+
341
+ # @ oa_social_login
342
+ #: includes/admin.php:756
343
+ msgid "Verify API Settings"
344
+ msgstr "Vérifier les paramètres de l’API"
345
+
346
+ # @ oa_social_login
347
+ #: includes/admin.php:766
348
+ msgid "JavaScript Settings"
349
+ msgstr "Paramètres JavaScript"
350
+
351
+ #: includes/admin.php:796
352
+ msgid "JavaScript Usage"
353
+ msgstr "Utilisations du JavaScript"
354
+
355
+ #: includes/admin.php:800
356
+ msgid "Asynchronous JavaScript"
357
+ msgstr "JavaScript asynchrone"
358
+
359
+ #: includes/admin.php:801
360
+ msgid "Background loading without interfering with the display and behavior of the existing page."
361
+ msgstr "Chargement en arrière-plan pour accélerer l'affichage des pages"
362
+
363
+ #: includes/admin.php:807
364
+ msgid "Synchronous JavaScript"
365
+ msgstr "JavaScript synchrone"
366
+
367
+ #: includes/admin.php:808
368
+ msgid "Real-time loading when the page is being rendered by the browser."
369
+ msgstr "Chargement en temps réel, lors du chargement des pages"
370
+
371
+ # @ oa_social_login
372
+ #: includes/admin.php:816
373
+ msgid "Enable the social networks/identity providers of your choice"
374
+ msgstr "Activer les réseaux sociaux/fournisseur d’identité de votre choix "
375
+
376
+ # @ oa_social_login
377
+ #: includes/admin.php:836
378
+ #, php-format
379
+ msgid "To enable cyrillic usernames, you might need <a target=\"_blank\" href=\"%s\">this plugin</a>"
380
+ msgstr "Pour permettre les caractères cyrilliques dans les noms d’utilisateur, vous pourriez avoir besoin <a target=\"_blank\" href=\"%s\">de cette extension</a>"
381
+
382
+ # @ oa_social_login
383
+ #: includes/admin.php:847
384
+ #: includes/admin.php:1207
385
+ msgid "Save Changes"
386
+ msgstr "Enregistrer les modifications"
387
+
388
+ # @ oa_social_login
389
+ #: includes/admin.php:877
390
+ msgid "Logout to see the plugin in action!"
391
+ msgstr "Déconnectez-vous pour voir l’extension en action!"
392
+
393
+ # @ oa_social_login
394
+ #: includes/admin.php:881
395
+ msgid "Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected."
396
+ msgstr "Social Login est une extension qui permet à vos utilisateurs de commenter, s’identifier et s’enregistrer avec leurs comptes de réseaux sociaux existants. Si un utilisateur est déjà connecté, l’extension ne sera pas affichée. Il n’est pas nécessaire de donner à l’utilisateur la possibilité de se connecter avec un réseau social s’il est déjà connecté."
397
+
398
+ # @ oa_social_login
399
+ #: includes/admin.php:883
400
+ msgid "You therefore have to logout to see the plugin in action."
401
+ msgstr "Vous devez donc vous déconnecter pour voir l’extension en action."
402
+
403
+ # @ oa_social_login
404
+ #: includes/admin.php:899
405
+ msgid "General Settings"
406
+ msgstr "Paramètres généraux"
407
+
408
+ # @ oa_social_login
409
+ #: includes/admin.php:904
410
+ msgid "Enter the description to be displayed above the Social Login buttons (leave empty for none):"
411
+ msgstr "Entrez la description à afficher au-dessus des boutons Social Login (laisser vide pour aucun):"
412
+
413
+ # @ oa_social_login
414
+ #: includes/admin.php:910
415
+ msgid "Connect with:"
416
+ msgstr "Connectez-vous avec:"
417
+
418
+ # @ oa_social_login
419
+ #: includes/admin.php:917
420
+ msgid "Do you want to use the default or the small social network buttons?"
421
+ msgstr "Voulez-vous utiliser les petits boutons de réseaux sociaux ou par défaut?"
422
+
423
+ # @ oa_social_login
424
+ #: includes/admin.php:925
425
+ #, php-format
426
+ msgid "Use the default social network buttons (%s)"
427
+ msgstr "Utilisez les boutons de réseaux sociaux par défaut (%s)"
428
+
429
+ # @ oa_social_login
430
+ #: includes/admin.php:926
431
+ #, php-format
432
+ msgid "Use the small social network buttons (%s)"
433
+ msgstr "Utilisez les petits boutons de réseaux sociaux (%s)"
434
+
435
+ # @ oa_social_login
436
+ #: includes/admin.php:931
437
+ msgid "Do you want to display the social networks used to connect in the user list of the administration area ?"
438
+ msgstr "Voulez-vous voir les réseaux sociaux utilisés pour se connecter dans la liste des utilisateurs de l’espace d’administration?"
439
+
440
+ # @ oa_social_login
441
+ #: includes/admin.php:939
442
+ msgid "Yes, add a new column to the user list and display the social network that the user connected with"
443
+ msgstr "Oui, ajouter une nouvelle colonne à la liste des utilisateurs et afficher le réseau social que l’utilisateur utilise"
444
+
445
+ # @ oa_social_login
446
+ #: includes/admin.php:940
447
+ msgid "No, no not display the social networks in the user list"
448
+ msgstr "Non, ne pas afficher les réseaux sociaux dans la liste des utilisateurs"
449
+
450
+ # @ oa_social_login
451
+ #: includes/admin.php:945
452
+ msgid "Do you want to receive an email whenever a new user registers with Social Login ?"
453
+ msgstr "Voulez-vous recevoir un courriel à chaque fois qu’un nouvel utilisateur s’enregistre avec Social Login?"
454
+
455
+ # @ oa_social_login
456
+ #: includes/admin.php:953
457
+ msgid "Yes, send me an email whenever a new user registers with Social Login"
458
+ msgstr "Oui, envoyez-moi un courriel à chaque fois qu’un nouvel utilisateur s’enregistre avec Social Login"
459
+
460
+ # @ oa_social_login
461
+ #: includes/admin.php:954
462
+ msgid "No, do not send me any emails"
463
+ msgstr "Non, ne m’envoyez pas de courriels"
464
+
465
+ # @ oa_social_login
466
+ #: includes/admin.php:961
467
+ msgid "User Settings"
468
+ msgstr "Paramètres de l’utilisateur"
469
+
470
+ # @ oa_social_login
471
+ #: includes/admin.php:966
472
+ msgid "If the user's social network profile has no email address, should we ask the user to enter it manually?"
473
+ msgstr "Si le profil de réseau social de l’utilisateur n’a pas d’adresse courriel, nous devrions demander à l’utilisateur de saisir manuellement?"
474
+
475
+ # @ oa_social_login
476
+ #: includes/admin.php:974
477
+ msgid "No, simplify the registration by automatically creating a placeholder email"
478
+ msgstr "Non, simplifier l’enregistrement en créant automatiquement un courriel fictif"
479
+
480
+ # @ oa_social_login
481
+ #: includes/admin.php:975
482
+ msgid "Yes, require the user to enter his email address manually and display this message:"
483
+ msgstr "Oui, demander à l’utilisateur d’entrer son adresse courriel manuellement et afficher ce message:"
484
+
485
+ # @ oa_social_login
486
+ #: includes/admin.php:976
487
+ #: includes/user_interface.php:1078
488
+ #, php-format
489
+ msgid "<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue."
490
+ msgstr "<strong>Nous n’avons malheureusement pas pu récupérer votre adresse courriel de %s.</strong> SVP, entrez votre adresse courriel dans le formulaire ci-dessous pour continuer."
491
+
492
+ # @ oa_social_login
493
+ #: includes/admin.php:977
494
+ #, php-format
495
+ msgid "HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect."
496
+ msgstr "Le HTML est autorisé, l’espace réservé %s est remplacé par le nom du réseau social utilisé pour se connecter."
497
+
498
+ # @ oa_social_login
499
+ #: includes/admin.php:982
500
+ msgid "If the user's social network profile has a verified email, should we try to link it to an existing account?"
501
+ msgstr "Si le profil de réseau social de l’utilisateur dispose d’un courriel vérifiée, nous devrions essayer de le lier à un compte existant?"
502
+
503
+ # @ oa_social_login
504
+ #: includes/admin.php:990
505
+ msgid "Yes, try to link verified social network profiles to existing blog accounts"
506
+ msgstr "Oui, essayez de relier profils de réseaux sociaux vérifiées aux comptes utilisateurs WP existantes"
507
+
508
+ # @ oa_social_login
509
+ #: includes/admin.php:991
510
+ msgid "No, disable account linking"
511
+ msgstr "Non, désactiver compte de liaison"
512
+
513
+ # @ oa_social_login
514
+ #: includes/admin.php:996
515
+ msgid "If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?"
516
+ msgstr "Si le profil de réseau social de l’utilisateur dispose d’un avatar, cet avatar doit-il être utilisé comme avatar pour l’utilisateur?"
517
+
518
+ # @ oa_social_login
519
+ #: includes/admin.php:1004
520
+ msgid "No, do not use avatars from social networks"
521
+ msgstr "Non, ne pas utiliser d’avatars de réseaux sociaux"
522
+
523
+ # @ oa_social_login
524
+ #: includes/admin.php:1005
525
+ msgid "Yes, use small avatars from social networks if available"
526
+ msgstr "Oui, utiliser de petits avatars de réseaux sociaux si disponible"
527
+
528
+ # @ oa_social_login
529
+ #: includes/admin.php:1006
530
+ msgid "Yes, use large avatars from social networks if available"
531
+ msgstr "Oui, utiliser de grands avatars de réseaux sociaux si disponible"
532
+
533
+ # @ oa_social_login
534
+ #: includes/admin.php:1013
535
+ msgid "Comment Settings"
536
+ msgstr "Paramètres Commentaire"
537
+
538
+ # @ oa_social_login
539
+ #: includes/admin.php:1018
540
+ msgid "Show the Social Login buttons in the comment area?"
541
+ msgstr "Afficher les boutons Social Login dans la zone commentaire?"
542
+
543
+ # @ oa_social_login
544
+ #: includes/admin.php:1026
545
+ #: includes/admin.php:1041
546
+ msgid "Yes, show the Social Login buttons"
547
+ msgstr "Oui, afficher les boutons Social Login"
548
+
549
+ # @ oa_social_login
550
+ #: includes/admin.php:1027
551
+ #: includes/admin.php:1042
552
+ msgid "No, do not show the Social Login buttons"
553
+ msgstr "Non, ne pas afficher les boutons Social Login"
554
+
555
+ # @ oa_social_login
556
+ #: includes/admin.php:1032
557
+ msgid "Show the Social Login buttons in the comment area if comments are disabled for guests?"
558
+ msgstr "Afficher les boutons Social Login dans la zone de commentaires si les commentaires sont désactivés pour les invités?"
559
+
560
+ # @ oa_social_login
561
+ #: includes/admin.php:1040
562
+ msgid "The buttons will be displayed below the \"You must be logged in to leave a comment\" notice."
563
+ msgstr "Les boutons seront affichés sous le message «Vous devez être connecté pour laisser un commentaire»."
564
+
565
+ # @ oa_social_login
566
+ #: includes/admin.php:1047
567
+ msgid "Automatically approve comments left by users that connected by using Social Login?"
568
+ msgstr "Approuver automatiquement les commentaires laissés par les utilisateurs qui se sont connectés à l’aide de Social Login?"
569
+
570
+ # @ oa_social_login
571
+ #: includes/admin.php:1055
572
+ msgid "Yes, automatically approve comments made by users that connected with Social Login"
573
+ msgstr "Oui, approuver automatiquement les commentaires faits par les utilisateurs connectés avec Social Login"
574
+
575
+ # @ oa_social_login
576
+ #: includes/admin.php:1056
577
+ msgid "No, do not automatically approve"
578
+ msgstr "Non, n’approuvent pas automatiquement"
579
+
580
+ # @ oa_social_login
581
+ #: includes/admin.php:1065
582
+ msgid "Profile Settings"
583
+ msgstr "Paramètres du profil"
584
+
585
+ # @ oa_social_login
586
+ #: includes/admin.php:1070
587
+ msgid "Show the Social Link buttons in the user profile?"
588
+ msgstr "Afficher les boutons Social Login dans le profil de l’utilisateur?"
589
+
590
+ # @ oa_social_login
591
+ #: includes/admin.php:1075
592
+ msgid "Keep this option enabled to allow each user to connect multiple social networks to his own profile."
593
+ msgstr "Laissez cette option activée pour permettre à chaque utilisateur de connecter plusieurs réseaux sociaux à son propre profil."
594
+
595
+ # @ oa_social_login
596
+ #: includes/admin.php:1079
597
+ msgid "Yes, show the Social Link buttons"
598
+ msgstr "Oui, afficher les boutons de Social Login"
599
+
600
+ # @ oa_social_login
601
+ #: includes/admin.php:1080
602
+ msgid "No, do not show the Social Link buttons"
603
+ msgstr "Non, ne pas afficher les boutons de Social Login"
604
+
605
+ # @ oa_social_login
606
+ #: includes/admin.php:1087
607
+ msgid "Login Page Settings"
608
+ msgstr "Paramètres de la page de connexion"
609
+
610
+ # @ oa_social_login
611
+ #: includes/admin.php:1092
612
+ msgid "Do you want to display Social Login on the login form of your blog?"
613
+ msgstr "Voulez-vous afficher Connexion social sur le formulaire de connexion de votre blogue?"
614
+
615
+ # @ oa_social_login
616
+ #: includes/admin.php:1100
617
+ msgid "Yes, display the social network buttons below the login form"
618
+ msgstr "Oui, afficher les boutons de réseaux sociaux sous le formulaire de connexion"
619
+
620
+ # @ oa_social_login
621
+ #: includes/admin.php:1101
622
+ msgid "No, disable social network buttons in the login form"
623
+ msgstr "Non, désactiver les boutons de réseaux sociaux dans le formulaire de connexion"
624
+
625
+ # @ oa_social_login
626
+ #: includes/admin.php:1106
627
+ msgid "Where should users be redirected to after having logged in with Social Login on the login page?"
628
+ msgstr "Où les utilisateurs doivent être redirigés vers après avoir connecté avec Social Login sur la page de connexion?"
629
+
630
+ # @ oa_social_login
631
+ #: includes/admin.php:1115
632
+ #: includes/admin.php:1154
633
+ #: includes/admin.php:1179
634
+ #: includes/admin.php:1197
635
+ msgid "Redirect users back to the current page"
636
+ msgstr "Rediriger les utilisateurs vers la page courante"
637
+
638
+ # @ oa_social_login
639
+ #: includes/admin.php:1116
640
+ #: includes/admin.php:1155
641
+ #: includes/admin.php:1180
642
+ #: includes/admin.php:1198
643
+ msgid "Redirect users to the homepage of my blog"
644
+ msgstr "Rediriger les utilisateurs vers la page d’accueil de mon blogue"
645
+
646
+ # @ oa_social_login
647
+ #: includes/admin.php:1117
648
+ #: includes/admin.php:1156
649
+ #: includes/admin.php:1181
650
+ #: includes/admin.php:1199
651
+ msgid "Redirect users to their account dashboard"
652
+ msgstr "Rediriger les utilisateurs au tableau de bord de leur compte"
653
+
654
+ # @ oa_social_login
655
+ #: includes/admin.php:1118
656
+ #: includes/admin.php:1157
657
+ #: includes/admin.php:1182
658
+ #: includes/admin.php:1200
659
+ msgid "Redirect users to the following url"
660
+ msgstr "Rediriger les utilisateurs vers l’adresse suivante"
661
+
662
+ # @ oa_social_login
663
+ #: includes/admin.php:1126
664
+ msgid "Registration Page Settings"
665
+ msgstr "Paramètres de la page d’inscription"
666
+
667
+ # @ oa_social_login
668
+ #: includes/admin.php:1131
669
+ msgid "Do you want to display Social Login on the registration form of your blog?"
670
+ msgstr "Voulez-vous afficher Social Login sur le formulaire d’inscription de votre blogue?"
671
+
672
+ # @ oa_social_login
673
+ #: includes/admin.php:1139
674
+ msgid "Yes, display the social network buttons below the registration form"
675
+ msgstr "Oui, afficher les boutons de réseaux sociaux sous le formulaire d’inscription"
676
+
677
+ # @ oa_social_login
678
+ #: includes/admin.php:1140
679
+ msgid "No, disable social network buttons in the registration form"
680
+ msgstr "Non, désactiver les boutons de réseaux sociaux dans le formulaire d’inscription"
681
+
682
+ # @ oa_social_login
683
+ #: includes/admin.php:1145
684
+ msgid "Where should users be redirected to after having registered with Social Login on the registration page?"
685
+ msgstr "Où les utilisateurs doivent être redirigés vers après s’être enregistré avec Social Login sur la page d’inscription?"
686
+
687
+ # @ oa_social_login
688
+ #: includes/admin.php:1165
689
+ msgid "Widget &amp; Shortcode Settings"
690
+ msgstr "Paramètres Widget et Shortcode"
691
+
692
+ # @ oa_social_login
693
+ #: includes/admin.php:1170
694
+ msgid "Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:"
695
+ msgstr "Rediriger les utilisateurs vers cette page après avoir connecté avec Social Loginl intégré par Widget / Shortcode:"
696
+
697
+ # @ oa_social_login
698
+ #: includes/admin.php:1188
699
+ msgid "Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:"
700
+ msgstr "Rediriger les utilisateurs vers cette page après s’être enregistré avec Social Login intégré par Widget / Shortcode:"
701
+
702
+ # @ oa_social_login
703
+ #: includes/user_interface.php:115
704
+ #: includes/user_interface.php:926
705
+ msgid "Please enable at least one social network!"
706
+ msgstr "SVP activer au moins un réseau social!"
707
+
708
+ # @ oa_social_login
709
+ #: includes/user_interface.php:160
710
+ #: includes/user_interface.php:198
711
+ #, php-format
712
+ msgid "You have successfully linked your %s account."
713
+ msgstr "Vous avez lié votre compte %s."
714
+
715
+ # @ oa_social_login
716
+ #: includes/user_interface.php:192
717
+ #: includes/user_interface.php:283
718
+ #, php-format
719
+ msgid "This %s account is already used by another user of this website."
720
+ msgstr "Ce compte %s est déjà utilisé par un autre utilisateur de ce site."
721
+
722
+ # @ oa_social_login
723
+ #: includes/user_interface.php:223
724
+ #, php-format
725
+ msgid "You have successfully unlinked your %s account."
726
+ msgstr "Vous avez dissociées avec succès votre le compte de %s."
727
+
728
+ # @ oa_social_login
729
+ #: includes/user_interface.php:271
730
+ msgid "You might no longer be able to login to this website if you don't link at least one social network."
731
+ msgstr "Vous pourriez ne plus être en mesure de vous connecter à ce site si vous ne liez pas au moins un réseau social."
732
+
733
+ # @ oa_social_login
734
+ #: includes/user_interface.php:347
735
+ msgid "Connect your account to one or more social networks"
736
+ msgstr "Connectez votre compte à un ou plusieurs réseaux sociaux"
737
+
738
+ # @ oa_social_login
739
+ #: includes/user_interface.php:1028
740
+ #: includes/user_interface.php:1104
741
+ msgid "Please enter your email address"
742
+ msgstr "SVP, entrez votre adresse courriel"
743
+
744
+ # @ oa_social_login
745
+ #: includes/user_interface.php:1034
746
+ msgid "This email is not valid"
747
+ msgstr "Ce courriel n’est pas valide"
748
+
749
+ # @ oa_social_login
750
+ #: includes/user_interface.php:1039
751
+ msgid "This email is already used by another account"
752
+ msgstr "Ce courriel est déjà utilisée par un autre compte"
753
+
754
+ # @ oa_social_login
755
+ #: includes/user_interface.php:1091
756
+ #, php-format
757
+ msgid "You have successfully connected with %s!"
758
+ msgstr "Vous êtes connecté avec succès avec %s!"
759
+
760
+ # @ oa_social_login
761
+ #: includes/user_interface.php:1116
762
+ msgid "Confirm"
763
+ msgstr "Confirmer"
764
+
765
+ # @ oa_social_login
766
+ #: includes/user_interface.php:1117
767
+ msgid "Cancel"
768
+ msgstr "Annuler"
769
+
770
+ # @ oa_social_login
771
+ #: includes/widget.php:14
772
+ msgid "Allow your visitors to login and register with social networks like Twitter, Facebook, LinkedIn, Hyves, Google and Yahoo."
773
+ msgstr "Permettez à vos visiteurs de se connecter et de s’enregistrer avec les réseaux sociaux comme Twitter, Facebook, LinkedIn, Hyves, Google et Yahoo."
774
+
775
+ # @ oa_social_login
776
+ #: includes/widget.php:62
777
+ msgid "Connect with"
778
+ msgstr "Connectez-vous avec"
779
+
780
+ # @ oa_social_login
781
+ #: includes/widget.php:77
782
+ msgid "Title"
783
+ msgstr "Titre"
784
+
785
+ # @ oa_social_login
786
+ #: includes/widget.php:81
787
+ msgid "Insert text/html to add before the widget"
788
+ msgstr "Insérer un texte / html à ajouter avant le widget"
789
+
790
+ # @ oa_social_login
791
+ #: includes/widget.php:85
792
+ msgid "Insert text/html to add after the widget"
793
+ msgstr "Insérer un texte / html à ajouter, après le widget"
794
+
795
+ # @ oa_social_login
796
+ #: includes/widget.php:90
797
+ msgid "Tick to hide widget for logged-in users"
798
+ msgstr "Cochez pour cacher un widget pour les utilisateurs connectés"
799
+
800
+ # @ oa_social_login
801
+ #: includes/widget.php:94
802
+ msgid "Tick to use small buttons"
803
+ msgstr "Cochez pour utiliser de petits boutons"
804
+
805
+ # @ oa_social_login
806
+ #: includes/toolbox.php:87
807
+ #, php-format
808
+ msgid "[%s] New User Registration"
809
+ msgstr "[%s] Enregistrement d’un nouvel utilisateur"
810
+
811
+ # @ oa_social_login
812
+ #: includes/toolbox.php:90
813
+ #, php-format
814
+ msgid "New user registration on your site %s:"
815
+ msgstr "Enregistrement d’un nouvel utilisateur sur votre site %s:"
816
+
817
+ # @ oa_social_login
818
+ #: includes/toolbox.php:91
819
+ #, php-format
820
+ msgid "Username: %s"
821
+ msgstr "Nom d’utilisateur: %s"
822
+
823
+ # @ oa_social_login
824
+ #: includes/toolbox.php:92
825
+ #, php-format
826
+ msgid "Social Network: %s"
827
+ msgstr "Réseau social: %s"
828
+
languages/oa_social_login-fr_FR.mo ADDED
Binary file
languages/oa_social_login-fr_FR.po ADDED
@@ -0,0 +1,828 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Social Login v4.4\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2014-05-06 11:42+0100\n"
6
+ "PO-Revision-Date: 2014-05-06 11:42+0100\n"
7
+ "Last-Translator: Claude Schlesser <cschlesser@oneall.com>\n"
8
+ "Language-Team: \n"
9
+ "Language: \n"
10
+ "MIME-Version: 1.0\n"
11
+ "Content-Type: text/plain; charset=UTF-8\n"
12
+ "Content-Transfer-Encoding: 8bit\n"
13
+ "Plural-Forms: nplurals=2; plural=n>1;\n"
14
+ "X-Generator: CSL v1.x\n"
15
+ "X-Poedit-Language: French\n"
16
+ "X-Poedit-Country: FRANCE\n"
17
+ "X-Poedit-SourceCharset: utf-8\n"
18
+ "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;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../\n"
20
+ "X-Textdomain-Support: yes\n"
21
+ "X-Poedit-SearchPath-0: .\n"
22
+
23
+ # @ oa_social_login
24
+ #: oa-social-login.php:24
25
+ #, php-format
26
+ msgid "This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin."
27
+ msgstr "Cette extension nécessite WordPress %s ou plus récent. SVP mettre à jour votre installation de WordPress pour activer cette extension."
28
+
29
+ # @ oa_social_login
30
+ #: oa-social-login.php:46
31
+ #: includes/admin.php:59
32
+ #: includes/admin.php:70
33
+ #: includes/admin.php:593
34
+ #: includes/admin.php:866
35
+ msgid "Setup"
36
+ msgstr "Installation"
37
+
38
+ # @ oa_social_login
39
+ #: includes/admin.php:14
40
+ msgid "Registration"
41
+ msgstr "Inscription"
42
+
43
+ # @ oa_social_login
44
+ #: includes/admin.php:47
45
+ msgid "Registration Form"
46
+ msgstr "Formulaire d’inscription"
47
+
48
+ # @ oa_social_login
49
+ #: includes/admin.php:63
50
+ #: includes/admin.php:594
51
+ #: includes/admin.php:867
52
+ msgid "Settings"
53
+ msgstr "Paramètres"
54
+
55
+ # @ oa_social_login
56
+ #: includes/admin.php:116
57
+ msgid "Thank you for using Social Login!"
58
+ msgstr "Merci d’utiliser Social Login!"
59
+
60
+ # @ oa_social_login
61
+ #: includes/admin.php:116
62
+ #, php-format
63
+ msgid "Please complete the <strong><a href=\"%s\">Social Login Setup</a></strong> to enable the plugin."
64
+ msgstr "SVP compléter le <a href=\"%s\"><strong>programme d’installation Social Login</strong></a> pour activer l’extension."
65
+
66
+ # @ oa_social_login
67
+ #: includes/admin.php:308
68
+ msgid "Contacting API - please wait this may take a few minutes ..."
69
+ msgstr "Contacter API - SVP patienter, cela peut prendre quelques minutes..."
70
+
71
+ # @ oa_social_login
72
+ #: includes/admin.php:309
73
+ msgid "The settings are correct - do not forget to save your changes!"
74
+ msgstr "Les paramètres sont corrects - n’oubliez pas d’enregistrer vos changements!"
75
+
76
+ # @ oa_social_login
77
+ #: includes/admin.php:310
78
+ msgid "Please fill out each of the fields above."
79
+ msgstr "SVP remplir chacun des champs ci-dessus."
80
+
81
+ # @ oa_social_login
82
+ #: includes/admin.php:311
83
+ msgid "The subdomain does not exist. Have you filled it out correctly?"
84
+ msgstr "Le sous-domaine n’existe pas. Avez-vous rempli correctement?"
85
+
86
+ # @ oa_social_login
87
+ #: includes/admin.php:312
88
+ msgid "The subdomain has a wrong syntax!"
89
+ msgstr "Le sous-domaine a une syntaxe incorrecte!"
90
+
91
+ # @ oa_social_login
92
+ #: includes/admin.php:313
93
+ msgid "Could not contact API. Are outbound requests on port 443 allowed?"
94
+ msgstr "Impossible de contacter API. Les demandes sortantes sur le port 443 sont-elles permises?"
95
+
96
+ # @ oa_social_login
97
+ #: includes/admin.php:314
98
+ msgid "The API subdomain is correct, but one or both keys are invalid"
99
+ msgstr "Le sous-domaine de l’API est correcte, mais une ou deux clés ne sont pas valides"
100
+
101
+ # @ oa_social_login
102
+ #: includes/admin.php:315
103
+ msgid "Connection handler does not work, try using the Autodetection"
104
+ msgstr "Gestionnaire de connexion ne fonctionne pas, essayez d’utiliser la détection automatique"
105
+
106
+ # @ oa_social_login
107
+ #: includes/admin.php:316
108
+ msgid "Detected CURL on Port 443 - do not forget to save your changes!"
109
+ msgstr "CURL détecté sur le port 443 - n’oubliez pas d’enregistrer vos changements!"
110
+
111
+ # @ oa_social_login
112
+ #: includes/admin.php:317
113
+ msgid "Detected CURL on Port 80 - do not forget to save your changes!"
114
+ msgstr "CURL détecté sur le port 80 - n’oubliez pas d’enregistrer vos changements!"
115
+
116
+ #: includes/admin.php:318
117
+ msgid "CURL is available but both ports (80, 443) are blocked for outbound requests"
118
+ msgstr "CURL est disponible, mais votre pare-feu bloque les connexions sortantes sur les ports 80 et 443."
119
+
120
+ # @ oa_social_login
121
+ #: includes/admin.php:319
122
+ msgid "Detected FSOCKOPEN on Port 443 - do not forget to save your changes!"
123
+ msgstr "Détecté fsockopen sur le port 443 - n’oubliez pas d’enregistrer vos changements!"
124
+
125
+ # @ oa_social_login
126
+ #: includes/admin.php:320
127
+ msgid "Detected FSOCKOPEN on Port 80 - do not forget to save your changes!"
128
+ msgstr "Détecté FSOCKOPEN sur le port 80 - n’oubliez pas d’enregistrer vos changements!"
129
+
130
+ #: includes/admin.php:321
131
+ msgid "FSOCKOPEN is available but both ports (80, 443) are blocked for outbound requests"
132
+ msgstr "FSOCKOPEN est disponible, mais votre pare-feu bloque les connexions sortantes sur les ports 80 et 443."
133
+
134
+ # @ oa_social_login
135
+ #: includes/admin.php:322
136
+ #, php-format
137
+ msgid "Autodetection Error - our <a href=\"%s\" target=\"_blank\">documentation</a> helps you fix this issue."
138
+ msgstr "Auto-détection d’erreur - notre <a href=\"%s\" target=\"_blank\">documentation</a> vous aide à résoudre ce problème."
139
+
140
+ # @ oa_social_login
141
+ #: includes/admin.php:601
142
+ msgid "Allow your visitors to comment, login and register with 20+ Social Networks like for example Twitter, Facebook, LinkedIn, Instagram, VKontakte, Google or Yahoo."
143
+ msgstr "Permettez à vos visiteurs de commenter, de s’identifier et de s’enregistrer avec plus de 20 réseaux sociaux comme par exemple Twitter, Facebook, LinkedIn, Instagram, Google ou Yahoo."
144
+
145
+ # @ oa_social_login
146
+ #: includes/admin.php:602
147
+ msgid "Draw a larger audience and increase your user engagement in a few simple steps."
148
+ msgstr "Attirez un public plus large et augmenter l’engagement de vos utilisateurs en quelques étapes simples."
149
+
150
+ # @ oa_social_login
151
+ #: includes/admin.php:606
152
+ msgid "Get Started!"
153
+ msgstr "Commencez!"
154
+
155
+ # @ oa_social_login
156
+ #: includes/admin.php:609
157
+ #, php-format
158
+ msgid "To be able to use this plugin you first of all need to create a free account at %s and setup a Site."
159
+ msgstr "Pour pouvoir utiliser cette extension, vous devez tout d’abord créer un compte gratuitement sur %s et configurer votre site."
160
+
161
+ # @ oa_social_login
162
+ #: includes/admin.php:610
163
+ msgid "After having created your account and setup your Site, please enter the Site settings in the form below."
164
+ msgstr "Après avoir créé votre compte et la configuration de votre site, SVP entrer les paramètres du site dans le formulaire ci-dessous."
165
+
166
+ # @ oa_social_login
167
+ #: includes/admin.php:611
168
+ msgid "Don't worry the setup takes only a couple of minutes!"
169
+ msgstr "Ne vous inquiétez pas, de la configuration ne prend que quelques minutes!"
170
+
171
+ # @ oa_social_login
172
+ #: includes/admin.php:614
173
+ msgid "Click here to setup your free account"
174
+ msgstr "Cliquez ici pour configurer votre compte gratuit"
175
+
176
+ # @ oa_social_login
177
+ #: includes/admin.php:617
178
+ #, php-format
179
+ msgid "You are in good company! This plugin is used on more than %s websites!"
180
+ msgstr "Vous êtes en bonne compagnie! Cette extension est utilisée sur plus de %s sites Web!"
181
+
182
+ # @ oa_social_login
183
+ #: includes/admin.php:628
184
+ msgid "Your API Account is setup correctly"
185
+ msgstr "Votre compte API est configuré correctement"
186
+
187
+ # @ oa_social_login
188
+ #: includes/admin.php:631
189
+ msgid "Login to your account to manage your providers and access your Social Insights."
190
+ msgstr "Connectez-vous à votre compte pour gérer vos fournisseurs et accéder à vos Social Insights."
191
+
192
+ # @ oa_social_login
193
+ #: includes/admin.php:632
194
+ msgid "Determine which social networks are popular amongst your users and tailor your registration experience to increase your users' engagement."
195
+ msgstr "Déterminer quels réseaux sociaux sont les plus populaires parmi les utilisateurs et adapter leur expérience d’enregistrement pour augmenter l’engagement des utilisateurs."
196
+
197
+ # @ oa_social_login
198
+ #: includes/admin.php:635
199
+ msgid "Click here to login to your account"
200
+ msgstr "Cliquez ici pour vous connecter à votre compte"
201
+
202
+ # @ oa_social_login
203
+ #: includes/admin.php:643
204
+ msgid "Help, Updates &amp; Documentation"
205
+ msgstr "Aide, Mises à jour et documentation"
206
+
207
+ # @ oa_social_login
208
+ #: includes/admin.php:646
209
+ #, php-format
210
+ msgid "<a target=\"_blank\" href=\"%s\">Follow us on Twitter</a> to stay informed about updates"
211
+ msgstr "<a target=\"_blank\" href=\"%s\">Suivez-nous sur Twitter</a> pour rester informé des mises à jour"
212
+
213
+ # @ oa_social_login
214
+ #: includes/admin.php:647
215
+ #, php-format
216
+ msgid "<a target=\"_blank\" href=\"%s\">Read the online documentation</a> for more information about this plugin"
217
+ msgstr "<a target=\"_blank\" href=\"%s\">Lire la documentation en ligne</a> pour plus d’informations sur cette extension"
218
+
219
+ # @ oa_social_login
220
+ #: includes/admin.php:648
221
+ #, php-format
222
+ msgid "<a target=\"_blank\" href=\"%s\">Contact us</a> if you have feedback or need assistance"
223
+ msgstr "<a target=\"_blank\" href=\"%s\">Contactez-nous</a> si vous avez des commentaires ou besoin de support"
224
+
225
+ # @ oa_social_login
226
+ #: includes/admin.php:649
227
+ #, php-format
228
+ msgid "We also have <a target=\"_blank\" href=\"%s\">turnkey plugins</a> for Drupal, PrestaShop, Joomla, phpBB andy many others ..."
229
+ msgstr "Nous avons aussi des <a target=\"_blank\" href=\"%s\">extensions clés en main</a> pour Drupal, PrestaShop, Joomla, phpBB and bien d’autres..."
230
+
231
+ # @ oa_social_login
232
+ #: includes/admin.php:658
233
+ #: includes/admin.php:891
234
+ msgid "Your modifications have been saved successfully!"
235
+ msgstr "Vos modifications ont bien été enregistrées!"
236
+
237
+ # @ oa_social_login
238
+ #: includes/admin.php:670
239
+ #: includes/admin.php:678
240
+ msgid "API Connection Handler"
241
+ msgstr "Gestion de connexion avec l’API"
242
+
243
+ # @ oa_social_login
244
+ #: includes/admin.php:682
245
+ msgid "Use PHP CURL to communicate with the API"
246
+ msgstr "Utilisez PHP CURL pour communiquer avec l’API"
247
+
248
+ # @ oa_social_login
249
+ #: includes/admin.php:682
250
+ #: includes/admin.php:702
251
+ #: includes/admin.php:800
252
+ #: includes/admin.php:925
253
+ #: includes/admin.php:940
254
+ #: includes/admin.php:953
255
+ #: includes/admin.php:974
256
+ #: includes/admin.php:990
257
+ #: includes/admin.php:1004
258
+ #: includes/admin.php:1026
259
+ #: includes/admin.php:1041
260
+ #: includes/admin.php:1056
261
+ #: includes/admin.php:1079
262
+ #: includes/admin.php:1100
263
+ #: includes/admin.php:1116
264
+ #: includes/admin.php:1139
265
+ #: includes/admin.php:1156
266
+ #: includes/admin.php:1179
267
+ #: includes/admin.php:1197
268
+ msgid "Default"
269
+ msgstr "Par défaut"
270
+
271
+ # @ oa_social_login
272
+ #: includes/admin.php:683
273
+ msgid "Using CURL is recommended but it might be disabled on some servers."
274
+ msgstr "Utilisation de CURL est recommandé, mais il peut être désactivée sur certains serveurs."
275
+
276
+ # @ oa_social_login
277
+ #: includes/admin.php:689
278
+ msgid "Use PHP FSOCKOPEN to communicate with the API"
279
+ msgstr "Utilisez PHP FSOCKOPEN pour communiquer avec l’API"
280
+
281
+ # @ oa_social_login
282
+ #: includes/admin.php:690
283
+ msgid "Try using FSOCKOPEN if you encounter any problems with CURL."
284
+ msgstr "Essayez d’utiliser FSOCKOPEN si vous rencontrez des problèmes avec CURL."
285
+
286
+ # @ oa_social_login
287
+ #: includes/admin.php:698
288
+ msgid "API Connection Port"
289
+ msgstr "Port de connexion de l’API"
290
+
291
+ # @ oa_social_login
292
+ #: includes/admin.php:702
293
+ msgid "Communication via HTTPS on port 443"
294
+ msgstr "Communication via le protocole HTTPS sur le port 443"
295
+
296
+ # @ oa_social_login
297
+ #: includes/admin.php:703
298
+ msgid "Using port 443 is secure but you might need OpenSSL"
299
+ msgstr "Utiliser le port 443 est augmente la sécurité, mais vous pourriez avoir besoin OpenSSL"
300
+
301
+ # @ oa_social_login
302
+ #: includes/admin.php:709
303
+ msgid "Communication via HTTP on port 80"
304
+ msgstr "Communication via le protocole HTTP sur le port 80"
305
+
306
+ # @ oa_social_login
307
+ #: includes/admin.php:710
308
+ msgid "Using port 80 is a bit faster, doesn't need OpenSSL but is less secure"
309
+ msgstr "Utiliser le port 80 est un peu plus rapide, n’a pas besoin de OpenSSL, mais est moins sécure"
310
+
311
+ # @ oa_social_login
312
+ #: includes/admin.php:715
313
+ msgid "Autodetect API Connection"
314
+ msgstr "Détection automatique de connexion API"
315
+
316
+ # @ oa_social_login
317
+ #: includes/admin.php:725
318
+ msgid "API Settings"
319
+ msgstr "Paramètres de l’API"
320
+
321
+ # @ oa_social_login
322
+ #: includes/admin.php:727
323
+ msgid "Click here to create and view your API Credentials"
324
+ msgstr "Cliquez ici pour créer et afficher vos informations d’authentification API"
325
+
326
+ # @ oa_social_login
327
+ #: includes/admin.php:732
328
+ msgid "API Subdomain"
329
+ msgstr "Sous-domaine API"
330
+
331
+ # @ oa_social_login
332
+ #: includes/admin.php:740
333
+ msgid "API Public Key"
334
+ msgstr "Clé publique API"
335
+
336
+ # @ oa_social_login
337
+ #: includes/admin.php:748
338
+ msgid "API Private Key"
339
+ msgstr "Clé privée API"
340
+
341
+ # @ oa_social_login
342
+ #: includes/admin.php:756
343
+ msgid "Verify API Settings"
344
+ msgstr "Vérifier les paramètres de l’API"
345
+
346
+ # @ oa_social_login
347
+ #: includes/admin.php:766
348
+ msgid "JavaScript Settings"
349
+ msgstr "Paramètres JavaScript"
350
+
351
+ #: includes/admin.php:796
352
+ msgid "JavaScript Usage"
353
+ msgstr "Utilisations du JavaScript"
354
+
355
+ #: includes/admin.php:800
356
+ msgid "Asynchronous JavaScript"
357
+ msgstr "JavaScript asynchrone"
358
+
359
+ #: includes/admin.php:801
360
+ msgid "Background loading without interfering with the display and behavior of the existing page."
361
+ msgstr "Chargement en arrière-plan pour accélérer le temps d'affichage de la page"
362
+
363
+ #: includes/admin.php:807
364
+ msgid "Synchronous JavaScript"
365
+ msgstr "JavaScript sychrone"
366
+
367
+ #: includes/admin.php:808
368
+ msgid "Real-time loading when the page is being rendered by the browser."
369
+ msgstr "Chargement en temp réel, lors de l'affichage de la page"
370
+
371
+ # @ oa_social_login
372
+ #: includes/admin.php:816
373
+ msgid "Enable the social networks/identity providers of your choice"
374
+ msgstr "Activer les réseaux sociaux/fournisseur d’identité de votre choix "
375
+
376
+ # @ oa_social_login
377
+ #: includes/admin.php:836
378
+ #, php-format
379
+ msgid "To enable cyrillic usernames, you might need <a target=\"_blank\" href=\"%s\">this plugin</a>"
380
+ msgstr "Pour permettre les caractères cyrilliques dans les noms d’utilisateur, vous pourriez avoir besoin <a target=\"_blank\" href=\"%s\">de cette extension</a>"
381
+
382
+ # @ oa_social_login
383
+ #: includes/admin.php:847
384
+ #: includes/admin.php:1207
385
+ msgid "Save Changes"
386
+ msgstr "Enregistrer les modifications"
387
+
388
+ # @ oa_social_login
389
+ #: includes/admin.php:877
390
+ msgid "Logout to see the plugin in action!"
391
+ msgstr "Déconnectez-vous pour voir l’extension en action!"
392
+
393
+ # @ oa_social_login
394
+ #: includes/admin.php:881
395
+ msgid "Social Login is a plugin that allows your users to comment, login and register with their existing Social Network accounts. If a user is already logged in, the plugin will not be displayed. There is no need to give the user the possibility to connect with a social network if he is already connected."
396
+ msgstr "Social Login est une extension qui permet à vos utilisateurs de commenter, s’identifier et s’enregistrer avec leurs comptes de réseaux sociaux existants. Si un utilisateur est déjà connecté, l’extension ne sera pas affichée. Il n’est pas nécessaire de donner à l’utilisateur la possibilité de se connecter avec un réseau social s’il est déjà connecté."
397
+
398
+ # @ oa_social_login
399
+ #: includes/admin.php:883
400
+ msgid "You therefore have to logout to see the plugin in action."
401
+ msgstr "Vous devez donc vous déconnecter pour voir l’extension en action."
402
+
403
+ # @ oa_social_login
404
+ #: includes/admin.php:899
405
+ msgid "General Settings"
406
+ msgstr "Paramètres généraux"
407
+
408
+ # @ oa_social_login
409
+ #: includes/admin.php:904
410
+ msgid "Enter the description to be displayed above the Social Login buttons (leave empty for none):"
411
+ msgstr "Entrez la description à afficher au-dessus des boutons Social Login (laisser vide pour aucun):"
412
+
413
+ # @ oa_social_login
414
+ #: includes/admin.php:910
415
+ msgid "Connect with:"
416
+ msgstr "Connectez-vous avec:"
417
+
418
+ # @ oa_social_login
419
+ #: includes/admin.php:917
420
+ msgid "Do you want to use the default or the small social network buttons?"
421
+ msgstr "Voulez-vous utiliser les petits boutons de réseaux sociaux ou par défaut?"
422
+
423
+ # @ oa_social_login
424
+ #: includes/admin.php:925
425
+ #, php-format
426
+ msgid "Use the default social network buttons (%s)"
427
+ msgstr "Utilisez les boutons de réseaux sociaux par défaut (%s)"
428
+
429
+ # @ oa_social_login
430
+ #: includes/admin.php:926
431
+ #, php-format
432
+ msgid "Use the small social network buttons (%s)"
433
+ msgstr "Utilisez les petits boutons de réseaux sociaux (%s)"
434
+
435
+ # @ oa_social_login
436
+ #: includes/admin.php:931
437
+ msgid "Do you want to display the social networks used to connect in the user list of the administration area ?"
438
+ msgstr "Voulez-vous voir les réseaux sociaux utilisés pour se connecter dans la liste des utilisateurs de l’espace d’administration?"
439
+
440
+ # @ oa_social_login
441
+ #: includes/admin.php:939
442
+ msgid "Yes, add a new column to the user list and display the social network that the user connected with"
443
+ msgstr "Oui, ajouter une nouvelle colonne à la liste des utilisateurs et afficher le réseau social que l’utilisateur utilise"
444
+
445
+ # @ oa_social_login
446
+ #: includes/admin.php:940
447
+ msgid "No, no not display the social networks in the user list"
448
+ msgstr "Non, ne pas afficher les réseaux sociaux dans la liste des utilisateurs"
449
+
450
+ # @ oa_social_login
451
+ #: includes/admin.php:945
452
+ msgid "Do you want to receive an email whenever a new user registers with Social Login ?"
453
+ msgstr "Voulez-vous recevoir un e-mail à chaque fois qu’un nouvel utilisateur s’enregistre avec Social Login?"
454
+
455
+ # @ oa_social_login
456
+ #: includes/admin.php:953
457
+ msgid "Yes, send me an email whenever a new user registers with Social Login"
458
+ msgstr "Oui, envoyez-moi un e-mail à chaque fois qu’un nouvel utilisateur s’enregistre avec Social Login"
459
+
460
+ # @ oa_social_login
461
+ #: includes/admin.php:954
462
+ msgid "No, do not send me any emails"
463
+ msgstr "Non, ne m’envoyez pas de courriels"
464
+
465
+ # @ oa_social_login
466
+ #: includes/admin.php:961
467
+ msgid "User Settings"
468
+ msgstr "Paramètres de l’utilisateur"
469
+
470
+ # @ oa_social_login
471
+ #: includes/admin.php:966
472
+ msgid "If the user's social network profile has no email address, should we ask the user to enter it manually?"
473
+ msgstr "Si le profil de réseau social de l’utilisateur n’a pas d’adresse e-mail, nous devrions demander à l’utilisateur de saisir manuellement?"
474
+
475
+ # @ oa_social_login
476
+ #: includes/admin.php:974
477
+ msgid "No, simplify the registration by automatically creating a placeholder email"
478
+ msgstr "Non, simplifier l’enregistrement en créant automatiquement un e-mail de l’espace réservé"
479
+
480
+ # @ oa_social_login
481
+ #: includes/admin.php:975
482
+ msgid "Yes, require the user to enter his email address manually and display this message:"
483
+ msgstr "Oui, demander à l’utilisateur d’entrer son adresse e-mail manuellement et afficher ce message:"
484
+
485
+ # @ oa_social_login
486
+ #: includes/admin.php:976
487
+ #: includes/user_interface.php:1078
488
+ #, php-format
489
+ msgid "<strong>We unfortunately could not retrieve your email address from %s.</strong> Please enter your email address in the form below in order to continue."
490
+ msgstr "<strong>Nous n’avons malheureusement pas pu récupérer votre adresse e-mail de %s.</strong> SVP, entrez votre adresse e-mail dans le formulaire ci-dessous pour continuer."
491
+
492
+ # @ oa_social_login
493
+ #: includes/admin.php:977
494
+ #, php-format
495
+ msgid "HTML is allowed, the placeholder %s is replaced by the name of the social network used to connect."
496
+ msgstr "Le HTML est autorisé, l’espace réservé %s est remplacé par le nom du réseau social utilisé pour se connecter."
497
+
498
+ # @ oa_social_login
499
+ #: includes/admin.php:982
500
+ msgid "If the user's social network profile has a verified email, should we try to link it to an existing account?"
501
+ msgstr "Si le profil de réseau social de l’utilisateur dispose d’un e-mail vérifiée, nous devrions essayer de le lier à un compte existant?"
502
+
503
+ # @ oa_social_login
504
+ #: includes/admin.php:990
505
+ msgid "Yes, try to link verified social network profiles to existing blog accounts"
506
+ msgstr "Oui, essayez de relier profils de réseaux sociaux vérifiées aux comptes utilisateurs WP existantes"
507
+
508
+ # @ oa_social_login
509
+ #: includes/admin.php:991
510
+ msgid "No, disable account linking"
511
+ msgstr "Non, désactiver compte de liaison"
512
+
513
+ # @ oa_social_login
514
+ #: includes/admin.php:996
515
+ msgid "If the user's social network profile has an avatar, should this avatar be used as default avatar for the user?"
516
+ msgstr "Si le profil de réseau social de l’utilisateur dispose d’un avatar, cet avatar doit-il être utilisé comme avatar pour l’utilisateur?"
517
+
518
+ # @ oa_social_login
519
+ #: includes/admin.php:1004
520
+ msgid "No, do not use avatars from social networks"
521
+ msgstr "Non, ne pas utiliser d’avatars de réseaux sociaux"
522
+
523
+ # @ oa_social_login
524
+ #: includes/admin.php:1005
525
+ msgid "Yes, use small avatars from social networks if available"
526
+ msgstr "Oui, utiliser de petits avatars de réseaux sociaux si disponible"
527
+
528
+ # @ oa_social_login
529
+ #: includes/admin.php:1006
530
+ msgid "Yes, use large avatars from social networks if available"
531
+ msgstr "Oui, utiliser de grands avatars de réseaux sociaux si disponible"
532
+
533
+ # @ oa_social_login
534
+ #: includes/admin.php:1013
535
+ msgid "Comment Settings"
536
+ msgstr "Paramètres Commentaire"
537
+
538
+ # @ oa_social_login
539
+ #: includes/admin.php:1018
540
+ msgid "Show the Social Login buttons in the comment area?"
541
+ msgstr "Afficher les boutons Social Login dans la zone commentaire?"
542
+
543
+ # @ oa_social_login
544
+ #: includes/admin.php:1026
545
+ #: includes/admin.php:1041
546
+ msgid "Yes, show the Social Login buttons"
547
+ msgstr "Oui, afficher les boutons Social Login"
548
+
549
+ # @ oa_social_login
550
+ #: includes/admin.php:1027
551
+ #: includes/admin.php:1042
552
+ msgid "No, do not show the Social Login buttons"
553
+ msgstr "Non, ne pas afficher les boutons Social Login"
554
+
555
+ # @ oa_social_login
556
+ #: includes/admin.php:1032
557
+ msgid "Show the Social Login buttons in the comment area if comments are disabled for guests?"
558
+ msgstr "Afficher les boutons Social Login dans la zone de commentaires si les commentaires sont désactivés pour les invités?"
559
+
560
+ # @ oa_social_login
561
+ #: includes/admin.php:1040
562
+ msgid "The buttons will be displayed below the \"You must be logged in to leave a comment\" notice."
563
+ msgstr "Les boutons seront affichés sous le message «Vous devez être connecté pour laisser un commentaire»."
564
+
565
+ # @ oa_social_login
566
+ #: includes/admin.php:1047
567
+ msgid "Automatically approve comments left by users that connected by using Social Login?"
568
+ msgstr "Approuver automatiquement les commentaires laissés par les utilisateurs qui se sont connectés à l’aide de Social Login?"
569
+
570
+ # @ oa_social_login
571
+ #: includes/admin.php:1055
572
+ msgid "Yes, automatically approve comments made by users that connected with Social Login"
573
+ msgstr "Oui, approuver automatiquement les commentaires faits par les utilisateurs connectés avec Social Login"
574
+
575
+ # @ oa_social_login
576
+ #: includes/admin.php:1056
577
+ msgid "No, do not automatically approve"
578
+ msgstr "Non, n’approuvent pas automatiquement"
579
+
580
+ # @ oa_social_login
581
+ #: includes/admin.php:1065
582
+ msgid "Profile Settings"
583
+ msgstr "Paramètres du profil"
584
+
585
+ # @ oa_social_login
586
+ #: includes/admin.php:1070
587
+ msgid "Show the Social Link buttons in the user profile?"
588
+ msgstr "Afficher les boutons Social Login dans le profil de l’utilisateur?"
589
+
590
+ # @ oa_social_login
591
+ #: includes/admin.php:1075
592
+ msgid "Keep this option enabled to allow each user to connect multiple social networks to his own profile."
593
+ msgstr "Laissez cette option activée pour permettre à chaque utilisateur de connecter plusieurs réseaux sociaux à son propre profil."
594
+
595
+ # @ oa_social_login
596
+ #: includes/admin.php:1079
597
+ msgid "Yes, show the Social Link buttons"
598
+ msgstr "Oui, afficher les boutons de Social Login"
599
+
600
+ # @ oa_social_login
601
+ #: includes/admin.php:1080
602
+ msgid "No, do not show the Social Link buttons"
603
+ msgstr "Non, ne pas afficher les boutons de Social Login"
604
+
605
+ # @ oa_social_login
606
+ #: includes/admin.php:1087
607
+ msgid "Login Page Settings"
608
+ msgstr "Paramètres de la page de connexion"
609
+
610
+ # @ oa_social_login
611
+ #: includes/admin.php:1092
612
+ msgid "Do you want to display Social Login on the login form of your blog?"
613
+ msgstr "Voulez-vous afficher Connexion social sur le formulaire de connexion de votre blog?"
614
+
615
+ # @ oa_social_login
616
+ #: includes/admin.php:1100
617
+ msgid "Yes, display the social network buttons below the login form"
618
+ msgstr "Oui, afficher les boutons de réseaux sociaux sous le formulaire de connexion"
619
+
620
+ # @ oa_social_login
621
+ #: includes/admin.php:1101
622
+ msgid "No, disable social network buttons in the login form"
623
+ msgstr "Non, désactiver les boutons de réseaux sociaux dans le formulaire de connexion"
624
+
625
+ # @ oa_social_login
626
+ #: includes/admin.php:1106
627
+ msgid "Where should users be redirected to after having logged in with Social Login on the login page?"
628
+ msgstr "Où les utilisateurs doivent être redirigés vers après avoir connecté avec Social Login sur la page de connexion?"
629
+
630
+ # @ oa_social_login
631
+ #: includes/admin.php:1115
632
+ #: includes/admin.php:1154
633
+ #: includes/admin.php:1179
634
+ #: includes/admin.php:1197
635
+ msgid "Redirect users back to the current page"
636
+ msgstr "Rediriger les utilisateurs vers la page courante"
637
+
638
+ # @ oa_social_login
639
+ #: includes/admin.php:1116
640
+ #: includes/admin.php:1155
641
+ #: includes/admin.php:1180
642
+ #: includes/admin.php:1198
643
+ msgid "Redirect users to the homepage of my blog"
644
+ msgstr "Rediriger les utilisateurs vers la page d’accueil de mon blog"
645
+
646
+ # @ oa_social_login
647
+ #: includes/admin.php:1117
648
+ #: includes/admin.php:1156
649
+ #: includes/admin.php:1181
650
+ #: includes/admin.php:1199
651
+ msgid "Redirect users to their account dashboard"
652
+ msgstr "Rediriger les utilisateurs au tableau de bord de leur compte"
653
+
654
+ # @ oa_social_login
655
+ #: includes/admin.php:1118
656
+ #: includes/admin.php:1157
657
+ #: includes/admin.php:1182
658
+ #: includes/admin.php:1200
659
+ msgid "Redirect users to the following url"
660
+ msgstr "Rediriger les utilisateurs vers l’adresse suivante"
661
+
662
+ # @ oa_social_login
663
+ #: includes/admin.php:1126
664
+ msgid "Registration Page Settings"
665
+ msgstr "Paramètres de la page d’inscription"
666
+
667
+ # @ oa_social_login
668
+ #: includes/admin.php:1131
669
+ msgid "Do you want to display Social Login on the registration form of your blog?"
670
+ msgstr "Voulez-vous afficher Social Login sur le formulaire d’inscription de votre blog?"
671
+
672
+ # @ oa_social_login
673
+ #: includes/admin.php:1139
674
+ msgid "Yes, display the social network buttons below the registration form"
675
+ msgstr "Oui, afficher les boutons de réseaux sociaux sous le formulaire d’inscription"
676
+
677
+ # @ oa_social_login
678
+ #: includes/admin.php:1140
679
+ msgid "No, disable social network buttons in the registration form"
680
+ msgstr "Non, désactiver les boutons de réseaux sociaux dans le formulaire d’inscription"
681
+
682
+ # @ oa_social_login
683
+ #: includes/admin.php:1145
684
+ msgid "Where should users be redirected to after having registered with Social Login on the registration page?"
685
+ msgstr "Où les utilisateurs doivent être redirigés vers après s’être enregistré avec Social Login sur la page d’inscription?"
686
+
687
+ # @ oa_social_login
688
+ #: includes/admin.php:1165
689
+ msgid "Widget &amp; Shortcode Settings"
690
+ msgstr "Paramètres Widget et Shortcode"
691
+
692
+ # @ oa_social_login
693
+ #: includes/admin.php:1170
694
+ msgid "Redirect users to this page after they have logged in with Social Login embedded by Widget/Shortcode:"
695
+ msgstr "Rediriger les utilisateurs vers cette page après avoir connecté avec Social Loginl intégré par Widget / Shortcode:"
696
+
697
+ # @ oa_social_login
698
+ #: includes/admin.php:1188
699
+ msgid "Redirect users to this page after they have registered with Social Login embedded by Widget/Shortcode:"
700
+ msgstr "Rediriger les utilisateurs vers cette page après s’être enregistré avec Social Login intégré par Widget / Shortcode:"
701
+
702
+ # @ oa_social_login
703
+ #: includes/user_interface.php:115
704
+ #: includes/user_interface.php:926
705
+ msgid "Please enable at least one social network!"
706
+ msgstr "SVP activer au moins un réseau social!"
707
+
708
+ # @ oa_social_login
709
+ #: includes/user_interface.php:160
710
+ #: includes/user_interface.php:198
711
+ #, php-format
712
+ msgid "You have successfully linked your %s account."
713
+ msgstr "Vous avez lié votre compte %s."
714
+
715
+ # @ oa_social_login
716
+ #: includes/user_interface.php:192
717
+ #: includes/user_interface.php:283
718
+ #, php-format
719
+ msgid "This %s account is already used by another user of this website."
720
+ msgstr "Ce compte %s est déjà utilisé par un autre utilisateur de ce site."
721
+
722
+ # @ oa_social_login
723
+ #: includes/user_interface.php:223
724
+ #, php-format
725
+ msgid "You have successfully unlinked your %s account."
726
+ msgstr "Vous avez dissociées avec succès votre le compte de %s."
727
+
728
+ # @ oa_social_login
729
+ #: includes/user_interface.php:271
730
+ msgid "You might no longer be able to login to this website if you don't link at least one social network."
731
+ msgstr "Vous pourriez ne plus être en mesure de vous connecter à ce site si vous ne liez pas au moins un réseau social."
732
+
733
+ # @ oa_social_login
734
+ #: includes/user_interface.php:347
735
+ msgid "Connect your account to one or more social networks"
736
+ msgstr "Connectez votre compte à un ou plusieurs réseaux sociaux"
737
+
738
+ # @ oa_social_login
739
+ #: includes/user_interface.php:1028
740
+ #: includes/user_interface.php:1104
741
+ msgid "Please enter your email address"
742
+ msgstr "SVP, entrez votre adresse e-mail"
743
+
744
+ # @ oa_social_login
745
+ #: includes/user_interface.php:1034
746
+ msgid "This email is not valid"
747
+ msgstr "Cet e-mail n’est pas valide"
748
+
749
+ # @ oa_social_login
750
+ #: includes/user_interface.php:1039
751
+ msgid "This email is already used by another account"
752
+ msgstr "Cet e-mail est déjà utilisée par un autre compte"
753
+
754
+ # @ oa_social_login
755
+ #: includes/user_interface.php:1091
756
+ #, php-format
757
+ msgid "You have successfully connected with %s!"
758
+ msgstr "Vous êtes connecté avec succès avec %s!"
759
+
760
+ # @ oa_social_login
761
+ #: includes/user_interface.php:1116
762
+ msgid "Confirm"
763
+ msgstr "Confirmer"
764
+
765
+ # @ oa_social_login
766
+ #: includes/user_interface.php:1117
767
+ msgid "Cancel"
768
+ msgstr "Annuler"
769
+
770
+ # @ oa_social_login
771
+ #: includes/widget.php:14
772
+ msgid "Allow your visitors to login and register with social networks like Twitter, Facebook, LinkedIn, Hyves, Google and Yahoo."
773
+ msgstr "Permettez à vos visiteurs de se connecter et de s’enregistrer avec les réseaux sociaux comme Twitter, Facebook, LinkedIn, Hyves, Google et Yahoo."
774
+
775
+ # @ oa_social_login
776
+ #: includes/widget.php:62
777
+ msgid "Connect with"
778
+ msgstr "Connectez-vous avec"
779
+
780
+ # @ oa_social_login
781
+ #: includes/widget.php:77
782
+ msgid "Title"
783
+ msgstr "Titre"
784
+
785
+ # @ oa_social_login
786
+ #: includes/widget.php:81
787
+ msgid "Insert text/html to add before the widget"
788
+ msgstr "Insérer un texte / html à ajouter avant le widget"
789
+
790
+ # @ oa_social_login
791
+ #: includes/widget.php:85
792
+ msgid "Insert text/html to add after the widget"
793
+ msgstr "Insérer un texte / html à ajouter, après le widget"
794
+
795
+ # @ oa_social_login
796
+ #: includes/widget.php:90
797
+ msgid "Tick to hide widget for logged-in users"
798
+ msgstr "Cochez pour cacher un widget pour les utilisateurs connectés"
799
+
800
+ # @ oa_social_login
801
+ #: includes/widget.php:94
802
+ msgid "Tick to use small buttons"
803
+ msgstr "Cochez pour utiliser de petits boutons"
804
+
805
+ # @ oa_social_login
806
+ #: includes/toolbox.php:87
807
+ #, php-format
808
+ msgid "[%s] New User Registration"
809
+ msgstr "[%s] Enregistrement d’un nouvel utilisateur"
810
+
811
+ # @ oa_social_login
812
+ #: includes/toolbox.php:90
813
+ #, php-format
814
+ msgid "New user registration on your site %s:"
815
+ msgstr "Enregistrement d’un nouvel utilisateur sur votre site %s:"
816
+
817
+ # @ oa_social_login
818
+ #: includes/toolbox.php:91
819
+ #, php-format
820
+ msgid "Username: %s"
821
+ msgstr "Nom d’utilisateur: %s"
822
+
823
+ # @ oa_social_login
824
+ #: includes/toolbox.php:92
825
+ #, php-format
826
+ msgid "Social Network: %s"
827
+ msgstr "Réseau social: %s"
828
+
oa-social-login.php CHANGED
@@ -2,16 +2,16 @@
2
  /*
3
  Plugin Name: Social Login
4
  Plugin URI: http://www.oneall.com/
5
- Description: Allow your visitors to <strong>comment, login and register with 20+ social networks</strong> like Twitter, Facebook, LinkedIn, Hyves, Вконтакте, Google or Yahoo.
6
- Version: 4.4
7
- Author: Claude Schlesser
8
  Author URI: http://www.oneall.com/
9
  License: GPL2
10
  */
11
 
12
  define ('OA_SOCIAL_LOGIN_PLUGIN_URL', plugins_url () . '/' . basename (dirname (__FILE__)));
13
  define ('OA_SOCIAL_LOGIN_BASE_PATH', dirname (plugin_basename (__FILE__)));
14
- define ('OA_SOCIAL_LOGIN_VERSION', '4.4');
15
 
16
  /**
17
  * Check technical requirements before activating the plugin (Wordpress 3.0 or newer required)
@@ -21,7 +21,7 @@ function oa_social_login_activate ()
21
  if (!function_exists ('register_post_status'))
22
  {
23
  deactivate_plugins (basename (dirname (__FILE__)) . '/' . basename (__FILE__));
24
- echo sprintf (__ ("This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin.", "3.0"));
25
  exit;
26
  }
27
  update_option ('oa_social_login_activation_message', 0);
@@ -43,7 +43,7 @@ function oa_social_login_add_setup_link ($links, $file)
43
 
44
  if ($file == $oa_social_login_plugin)
45
  {
46
- $settings_link = '<a href="admin.php?page=oa_social_login_setup">' . __ ('Setup') . '</a>';
47
  array_unshift ($links, $settings_link);
48
  }
49
  return $links;
2
  /*
3
  Plugin Name: Social Login
4
  Plugin URI: http://www.oneall.com/
5
+ Description: Allow your visitors to <strong>comment, login and register with 25+ social networks</strong> like Twitter, Facebook, LinkedIn, Instagram, Вконтакте, Google or Yahoo.
6
+ Version: 4.6
7
+ Author: OneAll
8
  Author URI: http://www.oneall.com/
9
  License: GPL2
10
  */
11
 
12
  define ('OA_SOCIAL_LOGIN_PLUGIN_URL', plugins_url () . '/' . basename (dirname (__FILE__)));
13
  define ('OA_SOCIAL_LOGIN_BASE_PATH', dirname (plugin_basename (__FILE__)));
14
+ define ('OA_SOCIAL_LOGIN_VERSION', '4.6');
15
 
16
  /**
17
  * Check technical requirements before activating the plugin (Wordpress 3.0 or newer required)
21
  if (!function_exists ('register_post_status'))
22
  {
23
  deactivate_plugins (basename (dirname (__FILE__)) . '/' . basename (__FILE__));
24
+ echo sprintf (__ ('This plugin requires WordPress %s or newer. Please update your WordPress installation to activate this plugin.', 'oa_social_login'), '3.0');
25
  exit;
26
  }
27
  update_option ('oa_social_login_activation_message', 0);
43
 
44
  if ($file == $oa_social_login_plugin)
45
  {
46
+ $settings_link = '<a href="admin.php?page=oa_social_login_setup">' . __ ('Setup', 'oa_social_login') . '</a>';
47
  array_unshift ($links, $settings_link);
48
  }
49
  return $links;
readme.txt CHANGED
@@ -1,16 +1,16 @@
1
  === Social Login ===
2
  Contributors: ClaudeSchlesser
3
- Tags: social login, social connect, facebook, linkedin, livejournal, google, yahoo, twitter, openid, paypal, google, hyves, widget, plugin, social network login, comments
4
  Requires at least: 3.0
5
- Tested up to: 3.9
6
- Stable tag: 4.4
7
 
8
- Allow your visitors to comment and login with social networks like Twitter, Facebook, Paypal, LinkedIn, LiveJournal, OpenID, VKontakte, Google, Yahoo
9
 
10
  == Description ==
11
 
12
  Social Login is a professionally developed and free Wordpress (BuddyPress compatible) plugin that allows your visitors to comment,
13
- login and register with 20+ Social Networks like for example Facebook, Twitter, Google, LinkedIn, PayPal, LiveJournal, Hyves, Вконтакте and Yahoo.<br /><br />
14
  <strong>Make your blog social!</strong><br />
15
 
16
  <strong>Choose where to add the Social Login Plugin:</strong>
@@ -29,28 +29,32 @@ login and register with 20+ Social Networks like for example Facebook, Twitter,
29
 
30
  <strong>Select the Social Networks/Providers:</strong>
31
  <ul>
 
 
 
32
  <li>Facebook</li>
33
- <li>Twitter</li>
 
34
  <li>Google</li>
 
35
  <li>LinkedIn</li>
36
- <li>PayPal</li>
37
- <li>Yahoo</li>
38
- <li>Github.com</li>
39
- <li>Foursquare</li>
40
- <li>Skyrock.com</li>
41
- <li>OpenID</li>
42
  <li>LiveJournal</li>
43
- <li>Wordpress.com</li>
44
- <li>Windows Live</li>
 
 
 
 
45
  <li>StackExchange</li>
46
- <li>Blogger</li>
47
- <li>Disqus</li>
48
  <li>Steam</li>
 
 
 
 
 
 
 
49
  <li>YouTube</li>
50
- <li>Hyves</li>
51
- <li>Mail.ru</li>
52
- <li>Odnoklassniki.ru</li>
53
- <li>VKontakte (Вконтакте)</li>
54
  </ul>
55
 
56
 
@@ -73,8 +77,7 @@ The social network APIs are constantly changing and being updated. We monitor th
73
  update our APIs, so that you can be sure that Social Login will always run smoothly and with the most up-to-date
74
  API calls.
75
 
76
- In order to enable the plugin your therefore have to connect with the OneAll API and you need to create a free
77
- account at https://app.oneall.com
78
 
79
 
80
  == Frequently Asked Questions ==
@@ -131,6 +134,26 @@ http://docs.oneall.com/plugins/guide/social-login-wordpress/
131
 
132
  == Changelog ==
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  = 4.4 =
135
  * Social Network "Xing" added
136
 
1
  === Social Login ===
2
  Contributors: ClaudeSchlesser
3
+ Tags: social login, social connect, facebook, linkedin, livejournal, google, yahoo, twitter, openid, paypal, google, instagram, widget, plugin, social network login, comments
4
  Requires at least: 3.0
5
+ Tested up to: 4.2
6
+ Stable tag: 4.6
7
 
8
+ Allow your visitors to comment and login with 25+ social networks like Facebook, Twitter, Instagram, LinkedIn, Paypal, OpenID, VKontakte, Google, Yahoo ...
9
 
10
  == Description ==
11
 
12
  Social Login is a professionally developed and free Wordpress (BuddyPress compatible) plugin that allows your visitors to comment,
13
+ login and register with 25+ Social Networks like for example Facebook, Twitter, Google, LinkedIn, PayPal, LiveJournal, Instagram, Вконтакте and Yahoo.<br /><br />
14
  <strong>Make your blog social!</strong><br />
15
 
16
  <strong>Choose where to add the Social Login Plugin:</strong>
29
 
30
  <strong>Select the Social Networks/Providers:</strong>
31
  <ul>
32
+ <li>Amazon</li>
33
+ <li>Blogger</li>
34
+ <li>Disqus</li>
35
  <li>Facebook</li>
36
+ <li>Foursquare</li>
37
+ <li>Github.com</li>
38
  <li>Google</li>
39
+ <li>Instagram</li>
40
  <li>LinkedIn</li>
 
 
 
 
 
 
41
  <li>LiveJournal</li>
42
+ <li>Mail.ru</li>
43
+ <li>Odnoklassniki</li>
44
+ <li>OpenID</li>
45
+ <li>PayPal</li>
46
+ <li>Reddit</li>
47
+ <li>Skyrock.com</li>
48
  <li>StackExchange</li>
 
 
49
  <li>Steam</li>
50
+ <li>Twitch.tv</li>
51
+ <li>Twitter</li>
52
+ <li>Vimeo</li>
53
+ <li>VKontakte</li>
54
+ <li>Windows Live</li>
55
+ <li>WordPress.com</li>
56
+ <li>Yahoo</li>
57
  <li>YouTube</li>
 
 
 
 
58
  </ul>
59
 
60
 
77
  update our APIs, so that you can be sure that Social Login will always run smoothly and with the most up-to-date
78
  API calls.
79
 
80
+ In order to enable the plugin you must connect with the OneAll API and create a free account at https://app.oneall.com
 
81
 
82
 
83
  == Frequently Asked Questions ==
134
 
135
  == Changelog ==
136
 
137
+ = 4.6 =
138
+ * Asynchronous JavaScript
139
+ * Social Network "Instagram" added
140
+ * Social Network "Vimeo" added
141
+ * Social Network "Reddit" added
142
+ * Social Network "Amazon" added
143
+ * French Translation Added
144
+ * Missing text domains added
145
+ * BuddyPress Avatars fixed
146
+ * Better WPEngine compatibility
147
+ * Email filter fixed
148
+
149
+ = 4.5 =
150
+ * Social Network "Twitch" added
151
+ * User Biography is now imported
152
+ * Better API Connection detection
153
+ * Many hooks and filters added
154
+ * Port detection improved
155
+ * WP Nonce added for Social Link
156
+
157
  = 4.4 =
158
  * Social Network "Xing" added
159