Плагин Плагины OsClass

Статус
В этой теме нельзя размещать новые ответы.
пожалуйста, мне нужен реферальный плагин Osclass на английском языке (referral plugin in English)
 
Добрый день, меня попросили расписать как я установил ulogin на сайт. Попробую расписать тут.
1 - заходим на сайт Для просмотра ссылки Войди или Зарегистрируйся и регистрируем свой сайт
2 - подтверждаем
3 - Во вкладке "Виджеты" нажимаем "Редактировать", далее формируем вид кнопочек.
4 - Тут же в табе "Тип авторизации" выбираем "C редиректом" и в поле "Ссылка для редиректа" прописываем "Для просмотра ссылки Войди или Зарегистрируйся" (или http).
5 - Тут же в табе "Возвращаемые поля профиля пользователя" оставляем выделенным только:
Имя; Фамилия; Email; Большая аватарка; Аватарка; Телефон.
Но тут можно поэкспериментировать.
6 - Тут же наверху это страницы сформируется код "Исходный код виджета" - он нам нужен для вставки на сайт.
7 - Далее меняем файл user-login.php, нам нужно изменить некоторые данные в форме, а именно input-ы ввода логина и пароля, так же подключить js от ulogin и вставить наш код, который мы сформировали пунктом выше. У меня это выглядит так:
PHP:
<form class="form-1" name="login_post_form" action="/" method="post" >
<input type="hidden" name="page" value="login" />
<input type="hidden" name="action" value="login_post" />
<fieldset>
<p class="field">
<input id="email" name="email" type="text" value="<?php isset($_POST ["post_em"]); ?>" placeholder="<?php _e('E-mail', 'one'); ?>"><i class="icon-user icon-large"></i>
</p>
<p class="field">
<input id="password" name="password" type="password" value="<?php isset($_POST ["post_pass"]); ?>" placeholder="<?php _e('Password', 'one'); ?>" class="showpassword"><?php if (isset($_POST ["post_em"])) echo '<script type="text/javascript">document.login_post_form.submit();</script>';?><i class="icon-lock icon-large"></i>
</p>
<p class="submit">
<button type="submit" name="submit"><?php _e("Log in", 'one');?></button>
</p>
<div>
<p class="checkbox"><?php UserForm::rememberme_login_checkbox();?> <label for="remember"><?php _e('Remember me', 'one'); ?></label></p>
<p class="infor"><span class="info"><i class="fa fa-question-circle" aria-hidden="true"></i></span><a rel="nofollow" href="<?php echo osc_recover_user_password_url(); ?>"><?php _e('Forgot password?', 'one');?></a></p></div>
</fieldset>
<div>
<span style="margin: 10px 7px;display: inline-block;"><?php _e('Login via social networks:', 'one');?></span>
<div>
<!--Подключаем js-->
<script src="//ulogin.ru/js/ulogin.js"></script>
<!--Код с сайта ulogin-->
<div id="Ваш ID виджета" data-ulogin="display=panel;fields=first_name,last_name,email,photo_big;optional=phone;providers=vkontakte,mailru,facebook,odnoklassniki,twitter,yandex,instagram;redirect_uri=https%3A%2F%2Fваш_сайт.ру%2Foc-content%2Fthemes%2Fваша_тема%2Fsn_login.php">
</div>
</div>
</div>
</form>
Это мои изменения в форме, основные. Сохраняем и идем в файл header.php
8 - в header.php прописываем еще одну форму:
PHP:
<?php if( !osc_is_web_user_logged_in() ) { ?>
<form style="display:none;" id="login" name="login_post_form" action="<?php echo osc_base_url(true); ?>" method="post">
<fieldset>
<input type="hidden" name="page" value="login" />
<input type="hidden" name="action" value="login_post" />                 
<label for="email"><?php _e('E-mail', 'modern'); ?></label><br/>
<input id="email" type="text" name="email" value="<?php echo $_POST ["post_em"]; ?>" /><br/>
<label for="password"><?php _e('Password', 'modern'); ?></label><br/>
<input id="password" type="password" name="password" value="<?php echo $_POST ["post_pass"]; ?>" />
<?php if ($_POST ["post_em"]) echo '<script type="text/javascript">document.login_post_form.submit();</script>';?>
</fieldset>
</form>
<?php } ?>
9 - Далее идем в корень своей темы и создаем файл sn_login.php в нем формируем код:
PHP:
<?
//Так подключиться не получается, что то я делаю не так.
/*require_once osc_base_url().'/'.'config.php';
$dbuname = DB_USER;
$dbpass = DB_PASSWORD;
$dbhost = DB_HOST;
$dbname = DB_NAME;
*/

//поэтому я подключил вручную.
$dbuname = 'Имя базы';
$dbpass = 'пароль';
$dbhost = 'localhost';
$dbname = 'Имя юзера';

function osc_genRandomPassword($length = 8)

{

$dict = array_merge(range('a', 'z'), range('0', '9'), range('A', 'Z'));
shuffle($dict);

$pass = '';
for($i = 0; $i < $length; $i++)
$pass .= $dict[rand(0, count($dict) - 1)];
return $pass;
}
$token = $_POST ["token"]; if (!$token) exit;
$HTTP_HOST = $_SERVER['HTTP_HOST'];

$s = file_get_contents("https://ulogin.ru/token.php?token=$token&host=$HTTP_HOST");
$user = json_decode($s, true);

$network = $user ["network"];
$identity = $user ["identity"];
$first_name = $user ["first_name"];
$get_email = $user ["email"];
$uid = $user ["uid"];

$identity = preg_replace("#[/W]#is", "", $identity);
if (!$identity) die("identity NOT FOUND");

$uid = preg_replace("#[/D]#is", "", $uid);
if (!$uid) die("uid NOT FOUND");

$dt_reg_date = date('Y-m-d H:i:s');
$s_name = $first_name ;

$s_secret = osc_genRandomPassword();
$s_password = osc_genRandomPassword();
$s_password_sha = sha1($s_password);

if ($get_email) $s_email = $get_email;
else $s_email = "{$identity}_{$uid}@$HTTP_HOST";

$b_enabled = 1;
$b_active = 1;
$s_access_ip = "127.0.0.1";
$sn_str = "{$identity}_{$uid}";

$connect = mysqli_connect($dbhost, $dbuname, $dbpass, $dbname) or die ("Error");
mysqli_select_db($dbname);
mysqli_query("SET NAMES 'UTF8'");

//Проверка на сущестовани мыла
$q_data = mysqli_query ($connect, "SELECT `pk_i_id`, `s_email`, `sn_pass` FROM `oc_t_user` WHERE `s_email`='$s_email'");
$data_a = mysqli_fetch_array($q_data);
$pk_i_id = $data_a ["pk_i_id"];
$post_email = $data_a ["s_email"];
$post_pass = $data_a ["sn_pass"];

//Мыла нет. проверка есть ли уже рега
if (!$pk_i_id)
{

$q_data = mysqli_query ($connect, "SELECT `pk_i_id`, `s_email`, `sn_pass` FROM `oc_t_user` WHERE `sn_str`='$sn_str'");
$data_a = mysqli_fetch_array($q_data);
$pk_i_id = $data_a ["pk_i_id"];
$post_email = $data_a ["s_email"];
$post_pass = $data_a ["sn_pass"];

if (!$pk_i_id)
{

mysqli_query($connect,"INSERT INTO `oc_t_user`

(`dt_reg_date`, `s_name`, `s_password`, `s_secret`, `s_email`, `b_enabled`, `b_active`, `dt_access_date`, `s_access_ip`, `sn_str`, `sn_pass`) VALUES ('$dt_reg_date', '$s_name', '$s_password_sha', '$s_secret', '$s_email', '$b_enabled', '$b_active', '$dt_reg_date', '$s_access_ip', '$sn_str', '$s_password')");

$mysql_id = mysqli_insert_id();
mysqli_query($connect,"UPDATE `oc_t_user` SET `s_username`='$mysql_id' WHERE `pk_i_id`='$mysql_id'");

$post_email = $s_email;
$post_pass = $s_password;

}
}

echo "<form name=\"subm_form\" action=\"/\" method=\"POST\">
<input type=\"hidden\" name=\"post_em\" value=\"$post_email\" />
<input type=\"hidden\" name=\"post_pass\" value=\"$post_pass\" />
<input type=\"submit\" />
</form>
<script type=\"text/javascript\">document.subm_form.submit();</script>";
?>
10 - В вашей базе данных должны быть в таблице префикс_t_user, поля:

sn_str
sn_pass


Если их нет то создаем (VARCHAR(255)). Наверное все, процедуру изначально делал не я, на другом форуме есть тема где все это прописано, кому интересно найдете в поиске яши есть, я чуть-чуть доработал под себя. Наверное можно сделать плагин, у них на сайте решение для разных платформ, есть для любого сайт. Я не пробовал, но все в ваших руках: Для просмотра ссылки Войди или Зарегистрируйся

А есть какие-нибудь попроще плагины для авторизации из соц. сетей. ?
 
Для просмотра ссылки Войди или Зарегистрируйся — это плагин для авторизации на сайте Osclass с помощью социальных сетей.

Функциональность:

  • Вход или регистрация на Osclass с помощью соц.сетей
  • Админ может вкл. или выкл. поддержку любой из доступных соцсетей в плагине
  • Можно выбрать порядок отображения кнопок , путём простого перетаскивания в настройках плагина
  • Кнопки адаптивные, отлично смотрятся на компьютерах, планшетах и смартфонах
  • Подробная инструкция в настройках плагина по подключению каждой соцсети
Доступные социальные сети и сервисы:

  • Вконтакте
  • Одноклассники
  • Яндекс
  • Mail.ru
  • Facebook
  • Twitter
  • Google+
  • Yahoo
  • Windows Live
  • Linkedln
  • Instagram
Купить плагин можно на сайте: Для просмотра ссылки Войди или Зарегистрируйся
Это что пиар? Этот плагин здесь есть...
 

Вложения

  • ultimate_social_login_1.2.0.zip
    4,2 MB · Просмотры: 312
Поделитесь плагином Success Publish Box OsclassPlugin, а то блин пока он был бесплатный на маркете так не нужен был, а сейчас смотрю, уже ценник на нем...
 
Я поставил поделиться от яндекса. Сайт подгружается на 0,3 сек позже. Там огромный выбор и ватцап и многое другое.

Это просто кнопки шаринга на странице объявления? Success Publish Box OsclassPlugin показывает всплывающие окно сразу после публикации.
 
Поговорили а плагин никто не залил. Залейте у кого есть возможность, спасибо:))
 
Добрый вечер, очень нужен плагин Radius Search Plugin by Osclass Team от команды osclass желательно последней версии, рассмотрю ваши предложения, можно в личку.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху