function wsl_component_users_list()
{
    // HOOKABLE:
    do_action("wsl_component_users_list_start");
    global $wpdb;
    $assets_base_url = WORDPRESS_SOCIAL_LOGIN_PLUGIN_URL . '/assets/img/16x16/';
    $sql = "SELECT meta_value, user_id FROM `{$wpdb->prefix}usermeta` where meta_key = 'wsl_user'";
    $rs1 = $wpdb->get_results($sql);
    ?>
<div style="margin-top:20px;">
	<table cellspacing="0" class="wp-list-table widefat fixed users">
		<thead>
			<tr> 
				<th width="100"><span><?php 
    _wsl_e("Providers", 'wordpress-social-login');
    ?>
</span></th>  
				<th><span><?php 
    _wsl_e("Username", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("Full Name", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("E-mail", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("Profile URL", 'wordpress-social-login');
    ?>
</span></th> 
				<th width="60"><span><?php 
    _wsl_e("Contacts", 'wordpress-social-login');
    ?>
</span></th> 
				<th width="140"><span><?php 
    _wsl_e("Actions", 'wordpress-social-login');
    ?>
</span></th>
			</tr>
		</thead> 
		<tfoot>
			<tr> 
				<th width="100"><span><?php 
    _wsl_e("Providers", 'wordpress-social-login');
    ?>
</span></th>  
				<th><span><?php 
    _wsl_e("Username", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("Full Name", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("E-mail", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("Profile URL", 'wordpress-social-login');
    ?>
</span></th> 
				<th><span><?php 
    _wsl_e("Contacts", 'wordpress-social-login');
    ?>
</span></th>
				<th><span><?php 
    _wsl_e("Actions", 'wordpress-social-login');
    ?>
</span></th>
			</tr>
		</tfoot> 
		<tbody data-wp-lists="list:user" id="the-list">
			<?php 
    // have users?
    if (!$rs1) {
        ?>
						<tr class="no-items"><td colspan="6" class="colspanchange"><?php 
        _wsl_e("No users found", 'wordpress-social-login');
        ?>
.</td></tr>
					<?php 
    } else {
        $i = 0;
        foreach ($rs1 as $items) {
            $provider = $items->meta_value;
            $user_id = $items->user_id;
            ?>
					<tr class="<?php 
            if (++$i % 2) {
                echo "alternate";
            }
            ?>
 tr-contacts"> 
						<td>
							<img src="<?php 
            echo $assets_base_url . strtolower($provider) . '.png';
            ?>
" style="vertical-align:top;width:16px;height:16px;" /> <?php 
            echo $provider;
            ?>
							<?php 
            # linked accounts
            $linked_accounts = wsl_get_user_linked_account_by_user_id($user_id);
            foreach ($linked_accounts as $link) {
                if ($link->provider != $provider) {
                    ?>
 
											<br />
											<img src="<?php 
                    echo $assets_base_url . strtolower($link->provider) . '.png';
                    ?>
" style="vertical-align:top;width:16px;height:16px;" /> <?php 
                    echo $link->provider;
                    ?>
										<?php 
                }
            }
            ?>
 
						</td> 
						<td>
							<?php 
            $wsl_user_image = wsl_get_user_by_meta_key_and_user_id("wsl_user_image", $user_id);
            if ($wsl_user_image) {
                ?>
								<img width="32" height="32" class="avatar avatar-32 photo" src="<?php 
                echo $wsl_user_image;
                ?>
" > 
							<?php 
            } else {
                ?>
								<img width="32" height="32" class="avatar avatar-32 photo" src="http://1.gravatar.com/avatar/d4ed6debc848ece02976aba03e450d60?s=32" > 
							<?php 
            }
            ?>
							<strong><a href="user-edit.php?user_id=<?php 
            echo $user_id;
            ?>
"><?php 
            echo wsl_get_user_by_meta_key_and_user_id("nickname", $user_id);
            ?>
</a></strong>
							<br>
						</td>
						<td><?php 
            echo wsl_get_user_by_meta_key_and_user_id("last_name", $user_id);
            ?>
 <?php 
            echo wsl_get_user_by_meta_key_and_user_id("first_name", $user_id);
            ?>
</td>
						<td>
							<?php 
            $user_wsl_email = wsl_get_user_data_by_user_id("user_wsl_email", $user_id);
            if ($user_wsl_email) {
                ?>
								<?php 
                if (!strstr($user_wsl_email, "@example.com")) {
                    ?>
									<a href="mailto:<?php 
                    echo $user_wsl_email;
                    ?>
"><?php 
                    echo $user_wsl_email;
                    ?>
</a>
								<?php 
                } else {
                    ?>
									-
								<?php 
                }
                ?>
							<?php 
            }
            ?>
						</td>
						<td>
							<?php 
            $user_url = wsl_get_user_data_by_user_id("user_url", $user_id);
            if ($user_url) {
                ?>
 
								<a href="<?php 
                echo $user_url;
                ?>
" target="_blank"><?php 
                echo str_ireplace(array("http://www.", "https://www.", "http://", "https://"), array('', '', '', '', ''), $user_url);
                ?>
</a>
							<?php 
            } else {
                ?>
								-
							<?php 
            }
            ?>
						</td> 
						<td align="center">
							<?php 
            $sql = "SELECT count( * ) as counts FROM `{$wpdb->prefix}wsluserscontacts` where user_id = '{$user_id}'";
            $rs = $wpdb->get_results($sql);
            if ($rs && $rs[0]->counts) {
                echo '<b style="color:#CB4B16;">' . $rs[0]->counts . '</b>';
            } else {
                echo "0";
            }
            ?>
						</td> 
						<td>
							<a class="button button-secondary" href="options-general.php?page=wordpress-social-login&wslp=users&uid=<?php 
            echo $user_id;
            ?>
">Profile</a>
							<a class="button button-secondary" href="options-general.php?page=wordpress-social-login&wslp=contacts&uid=<?php 
            echo $user_id;
            ?>
">Contacts</a>
						</td> 
					</tr> 
			<?php 
        }
    }
    // have users?
    ?>
 
		</tbody>
	</table> 
</div>
<?php 
    // HOOKABLE:
    do_action("wsl_component_users_list_end");
}
/**
* Generate content for the added column to wp-admin/users.php
*/
function wsl_manage_users_custom_column($value, $column_name, $user_id)
{
    if ('wsl_column' != $column_name) {
        return $value;
    }
    $tmp = wsl_get_user_by_meta_key_and_user_id("wsl_user_image", $user_id);
    if (!$tmp) {
        return "";
    }
    return '<a href="options-general.php?page=wordpress-social-login&wslp=users&uid=' . $user_id . '">' . _wsl__("Profile", 'wordpress-social-login') . '</a> | <a href="options-general.php?page=wordpress-social-login&wslp=contacts&uid=' . $user_id . '">' . _wsl__("Contacts", 'wordpress-social-login') . '</a>';
}
Exemple #3
0
function wsl_component_contacts()
{
    // HOOKABLE:
    do_action("wsl_component_contacts_start");
    global $wpdb;
    $assets_base_url = WORDPRESS_SOCIAL_LOGIN_PLUGIN_URL . '/assets/img/16x16/';
    ?>
<div> 
<?php 
    if (isset($_REQUEST["uid"]) && (int) $_REQUEST["uid"]) {
        $user_id = (int) $_REQUEST["uid"];
    } else {
        ?>
	<form method="post" id="wsl_setup_form" action="options.php"> 
	<?php 
        settings_fields('wsl-settings-group-contacts-import');
        ?>
	
	<div class="metabox-holder columns-2" id="post-body">
	<div  id="post-body-content"> 

	<div id="namediv" class="stuffbox">
		<h3>
			<label for="name"><?php 
        _wsl_e("Settings", 'wordpress-social-login');
        ?>
</label>
		</h3>
		<div class="inside"> 
			<p>
				<?php 
        _wsl_e("<b>WordPress Social Login</b> is now introducing <b>Contacts Import</b> as a new feature. When enabled, users authenticating through WordPress Social Login will be asked for the authorisation to import their contact list. Note that some social networks do not provide certains of their users information like contacts emails, photos and or profile urls", 'wordpress-social-login');
        ?>
.
			</p>
			<h4><?php 
        _wsl_e("Enable contacts import for", 'wordpress-social-login');
        ?>
 :</h4> 
			<table width="100%" border="0" cellpadding="5" cellspacing="2" style="border-top:1px solid #ccc;border-bottom:1px solid #ccc">   
			  <tr>
				<td align="right"><strong>Facebook :</strong></td>
				<td>
					<select name="wsl_settings_contacts_import_facebook" <?php 
        if (!get_option('wsl_settings_Facebook_enabled')) {
            echo "disabled";
        }
        ?>
 >
						<option <?php 
        if (get_option('wsl_settings_contacts_import_facebook') == 1) {
            echo "selected";
        }
        ?>
 value="1"><?php 
        _wsl_e("Enabled", 'wordpress-social-login');
        ?>
</option>
						<option <?php 
        if (get_option('wsl_settings_contacts_import_facebook') == 2) {
            echo "selected";
        }
        ?>
 value="2"><?php 
        _wsl_e("Disabled", 'wordpress-social-login');
        ?>
</option> 
					</select> 
				</td> 
				<td align="right" style="border-left:1px solid #ccc" ><strong>Google :</strong></td>
				<td>
					<select name="wsl_settings_contacts_import_google" <?php 
        if (!get_option('wsl_settings_Google_enabled')) {
            echo "disabled";
        }
        ?>
 >
						<option <?php 
        if (get_option('wsl_settings_contacts_import_google') == 1) {
            echo "selected";
        }
        ?>
 value="1"><?php 
        _wsl_e("Enabled", 'wordpress-social-login');
        ?>
</option>
						<option <?php 
        if (get_option('wsl_settings_contacts_import_google') == 2) {
            echo "selected";
        }
        ?>
 value="2"><?php 
        _wsl_e("Disabled", 'wordpress-social-login');
        ?>
</option> 
					</select> 
				</td> 
				<td align="right" style="border-left:1px solid #ccc" ><strong>Twitter :</strong></td>
				<td>
					<select name="wsl_settings_contacts_import_twitter" <?php 
        if (!get_option('wsl_settings_Twitter_enabled')) {
            echo "disabled";
        }
        ?>
 >
						<option <?php 
        if (get_option('wsl_settings_contacts_import_twitter') == 1) {
            echo "selected";
        }
        ?>
 value="1"><?php 
        _wsl_e("Enabled", 'wordpress-social-login');
        ?>
</option>
						<option <?php 
        if (get_option('wsl_settings_contacts_import_twitter') == 2) {
            echo "selected";
        }
        ?>
 value="2"><?php 
        _wsl_e("Disabled", 'wordpress-social-login');
        ?>
</option> 
					</select> 
				</td>
				<td align="right" style="border-left:1px solid #ccc" ><strong>Windows Live :</strong></td>
				<td>
					<select name="wsl_settings_contacts_import_live" <?php 
        if (!get_option('wsl_settings_Live_enabled')) {
            echo "disabled";
        }
        ?>
 >
						<option <?php 
        if (get_option('wsl_settings_contacts_import_live') == 1) {
            echo "selected";
        }
        ?>
 value="1"><?php 
        _wsl_e("Enabled", 'wordpress-social-login');
        ?>
</option>
						<option <?php 
        if (get_option('wsl_settings_contacts_import_live') == 2) {
            echo "selected";
        }
        ?>
 value="2"><?php 
        _wsl_e("Disabled", 'wordpress-social-login');
        ?>
</option> 
					</select> 
				</td>
				<td align="right" style="border-left:1px solid #ccc" ><strong>LinkedIn :</strong></td>
				<td>
					<select name="wsl_settings_contacts_import_linkedin" <?php 
        if (!get_option('wsl_settings_LinkedIn_enabled')) {
            echo "disabled";
        }
        ?>
 >
						<option <?php 
        if (get_option('wsl_settings_contacts_import_linkedin') == 1) {
            echo "selected";
        }
        ?>
 value="1"><?php 
        _wsl_e("Enabled", 'wordpress-social-login');
        ?>
</option>
						<option <?php 
        if (get_option('wsl_settings_contacts_import_linkedin') == 2) {
            echo "selected";
        }
        ?>
 value="2"><?php 
        _wsl_e("Disabled", 'wordpress-social-login');
        ?>
</option> 
					</select> 
				</td>
			  </tr> 
			</table>  
			<p>
				<b  style="color:#CB4B16;"><?php 
        _wsl_e("Notes", 'wordpress-social-login');
        ?>
:</b> 
				<ul style="margin-left:40px;margin-top:0px;">
					<li><?php 
        _wsl_e('To enable contacts import from these social network, you need first to enabled them on the <a href="options-general.php?page=wordpress-social-login&wslp=networks"><b>Networks</b></a> tab and register the required application', 'wordpress-social-login');
        ?>
.</li> 
					<li><?php 
        _wsl_e("<b>WSL</b> will try to import as much information about a user contacts as he was able to pull from the social networks APIs.", 'wordpress-social-login');
        ?>
</li> 
					<li><?php 
        _wsl_e('All contacts data are sotred into your database on the table: <code>`wsluserscontacts`</code>', 'wordpress-social-login');
        ?>
.</li> 
				</ul> 
			</p> 
		</div>
	</div>

	<br style="clear:both;" />
	<div style="margin-left:5px;margin-top:-20px;"> 
		<input type="submit" class="button-primary" value="<?php 
        _wsl_e("Save Settings", 'wordpress-social-login');
        ?>
" /> 
	</div>

	</div> 
	</div> 
	</form> 
	
	<br  style="clear:both;" />
	<hr /> 
	<h3><?php 
        _wsl_e("Users contacts list preview", 'wordpress-social-login');
        ?>
</h3>
<?php 
    }
    // if( isset( $_REQUEST["uid"] ) && (int) $_REQUEST["uid"] ){
    if ($user_id) {
        $display_name = wsl_get_user_data_by_user_id("display_name", $user_id);
        ?>
 
	<h3><?php 
        echo sprintf(_wsl__("%s contact's list", 'wordpress-social-login'), $display_name);
        ?>
</h3>
<?php 
    }
    ?>
 
<table cellspacing="0" class="wp-list-table widefat fixed users">
	<thead>
		<tr> 
			<th width="100"><span><?php 
    _wsl_e("Provider", 'wordpress-social-login');
    ?>
</span></th>
			<th><span><?php 
    _wsl_e("User", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Name", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Email", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Profile Url", 'wordpress-social-login');
    ?>
</span></th> 
		</tr>
	</thead> 
	<tfoot>
		<tr> 
			<th><span><?php 
    _wsl_e("Provider", 'wordpress-social-login');
    ?>
</span></th>
			<th><span><?php 
    _wsl_e("User", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Name", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Email", 'wordpress-social-login');
    ?>
</span></th> 
			<th><span><?php 
    _wsl_e("Contact Profile Url", 'wordpress-social-login');
    ?>
</span></th> 
		</tr>
	</tfoot> 
	<tbody id="the-list">
<?php 
    $sql = "SELECT * FROM `{$wpdb->prefix}wsluserscontacts` order by rand() limit 10";
    if ($user_id) {
        $sql = "SELECT * FROM `{$wpdb->prefix}wsluserscontacts` WHERE user_id = '{$user_id}'";
    }
    $rs1 = $wpdb->get_results($sql);
    // have contacts?
    if (!$rs1) {
        ?>
			<tr class="no-items"><td colspan="5" class="colspanchange"><?php 
        _wsl_e("No contacts found", 'wordpress-social-login');
        ?>
.</td></tr>
		<?php 
    } else {
        $i = 0;
        foreach ($rs1 as $item) {
            $provider = $item->provider;
            $user_id = $item->user_id;
            $contact_id = $item->id;
            ?>
			<tr class="<?php 
            if (++$i % 2) {
                echo "alternate";
            }
            ?>
"> 
				<td><img src="<?php 
            $provider = wsl_get_contact_data_by_user_id("provider", $contact_id);
            echo $assets_base_url . strtolower($provider) . '.png';
            ?>
" style="vertical-align:top;width:16px;height:16px;" /> <?php 
            echo $provider;
            ?>
</td> 
				<td>
					<?php 
            // check if user exists
            if (wsl_get_user_by_meta_key_and_user_id("wsl_user", $user_id)) {
                ?>
						<?php 
                $wsl_user_image = wsl_get_user_by_meta_key_and_user_id("wsl_user_image", $user_id);
                if ($wsl_user_image) {
                    ?>
							<img width="32" height="32" class="avatar avatar-32 photo" src="<?php 
                    echo $wsl_user_image;
                    ?>
" > 
						<?php 
                } else {
                    ?>
							<img width="32" height="32" class="avatar avatar-32 photo" src="http://1.gravatar.com/avatar/d4ed6debc848ece02976aba03e450d60?s=32" > 
						<?php 
                }
                ?>
 
						<strong><a href="user-edit.php?user_id=<?php 
                echo $user_id;
                ?>
"><?php 
                echo wsl_get_user_by_meta_key_and_user_id("nickname", $user_id);
                ?>
</a></strong> 
						(<?php 
                echo wsl_get_user_by_meta_key_and_user_id("last_name", $user_id);
                ?>
 <?php 
                echo wsl_get_user_by_meta_key_and_user_id("first_name", $user_id);
                ?>
)
					<?php 
            } else {
                echo "User removed";
            }
            ?>
					<br>
				</td>
				<td>
					<?php 
            $photo_url = wsl_get_contact_data_by_user_id("photo_url", $contact_id);
            if ($photo_url) {
                ?>
						<img width="32" height="32" class="avatar avatar-32 photo" src="<?php 
                echo $photo_url;
                ?>
" > 
					<?php 
            } else {
                ?>
						<img width="32" height="32" class="avatar avatar-32 photo" src="http://1.gravatar.com/avatar/d4ed6debc848ece02976aba03e450d60?s=32" > 
					<?php 
            }
            ?>
					<strong><?php 
            echo wsl_get_contact_data_by_user_id("full_name", $contact_id);
            ?>
</strong>
					<br>
				</td> 
				<td>
					<?php 
            $email = wsl_get_contact_data_by_user_id("email", $contact_id);
            if ($email) {
                ?>
						<a href="mailto:<?php 
                echo $email;
                ?>
"><?php 
                echo $email;
                ?>
</a>
					<?php 
            } else {
                ?>
						-
					<?php 
            }
            ?>
				</td>
				<td>
					<?php 
            $profile_url = wsl_get_contact_data_by_user_id("profile_url", $contact_id);
            if ($profile_url) {
                ?>
						<a href="<?php 
                echo $profile_url;
                ?>
" target="_blank"><?php 
                echo str_ireplace(array("http://www.", "https://www.", "http://", "https://"), array('', '', '', '', ''), $profile_url);
                ?>
</a>
					<?php 
            } else {
                ?>
						-
					<?php 
            }
            ?>
				</td> 
			</tr> 
<?php 
        }
    }
    ?>
 
	</tbody>
</table>
</div>
<?php 
    // HOOKABLE:
    do_action("wsl_component_contacts_end");
}