<?php /** * Plugin Name: uLogin - виджет авторизации через социальные сети * Plugin URI: https://ulogin.ru/ * Description: uLogin — это инструмент, который позволяет пользователям получить единый доступ к различным * Интернет-сервисам без необходимости повторной регистрации, а владельцам сайтов — получить дополнительный * приток клиентов из социальных сетей и популярных порталов (Google, Яндекс, Mail.ru, ВКонтакте, Facebook и др.) * Version: 2.0.0 * Author: uLoginTeam * Author URI: https://ulogin.ru/ * License: GPL2 */ if (!defined('BOOTSTRAP')) { die('Access denied'); } use Tygh\Registry; /* * Выводит в форму html для генерации виджета */ $authpanel = fn_ulogin_authpanel(0); Tygh::$app['view']->assign('ulogin_authpanel', $authpanel); $syncpanel = fn_ulogin_syncpanel(); Tygh::$app['view']->assign('ulogin_syncpanel', $syncpanel);
function fn_ulogin_syncpanel($user_id = 0) { $auth = $_SESSION['auth']; $current_user = $auth['user_id']; $current_user = isset($current_user) ? $current_user : 0; $user_id = empty($user_id) ? $current_user : $user_id; if (empty($user_id)) { return ''; } $networks = array(); $res = db_get_array("SELECT * FROM ?:ulogin WHERE user_id = ?i", $user_id); if ($res) { foreach ($res as $network) { $networks[] = $network; } } else { return '<h3 class="ty-subheader">' . __('ulogin_sync_title') . '</h3>' . fn_ulogin_authpanel(1) . '<p>' . __('ulogin_sync_help') . '</p>'; } $output = ' <style> .big_provider { display: inline-block; margin-right: 10px; } </style> <h3 class="ty-subheader">' . __('ulogin_sync_title') . '</h3>' . fn_ulogin_authpanel(1) . '<p>' . __('ulogin_sync_help') . '</p> <h3 class="ty-subheader">' . __('ulogin_sync_accounts') . '</h3>'; if ($networks) { $output .= '<div id="ulogin_accounts">'; foreach ($networks as $network) { if ($network['user_id'] = $user_id) { $output .= "<div data-ulogin-network='{$network['network']}' data-ulogin-identity='{$network['identity']}' class='ulogin_network big_provider {$network['network']}_big'></div>"; } } $output .= '</div> <p>' . __('ulogin_sync_accounts_delete') . '</p>'; return $output; } return ''; }