auth register

This commit is contained in:
Kerim 2023-06-20 03:21:23 +05:00
parent c8da3466a6
commit 47784c3975
11 changed files with 347 additions and 92 deletions

View File

@ -27,7 +27,7 @@ class Plugin extends PluginBase
public function registerComponents()
{
return [
'Romanah\Bagisto\Components\Products' => 'products'
'Romanah\Bagisto\Components\Session' => 'session'
];
}

View File

@ -1,47 +0,0 @@
<?php
namespace Romanah\Bagisto\Components;
use Cms\Classes\ComponentBase;
use Illuminate\Support\Facades\Http;
use Redirect;
use Flash;
class Products extends ComponentBase
{
public function componentDetails()
{
return [
'name' => 'Products',
'description' => 'Fetch Products settings'
];
}
public $bagisto_url = 'https://nurgul.com.tm/app/api/';
public function onFetchProduct()
{
// $response = Http::get('https://nurgul.com.tm/app/api/products?locale=tm&limit=4');
// $response = getenv('APP_URL');
// dd($response);
// $result = Http::get('https://orient.tm/ru/api/posts', function ($http) {
// // $http->header('Content-Type', 'application/json');
// $http->header('Accept', 'application/json');
// // $data = [];
// $http->setOption('CURLOPT_SSL_VERIFYHOST', false);
// });
// $response = Http::accept('application/json')->get('https://nurgul.com.tm/app/api/products?locale=tm&limit=4');
$result = Http::accept('application/json')->get('http://nurgul.com.tm/app/api/products?locale=tm&limit=1');
// $data = json_decode($response);
return $result;
}
}

View File

@ -0,0 +1,52 @@
<?php
namespace Romanah\Bagisto\Components;
use Cms\Classes\ComponentBase;
use Illuminate\Support\Facades\Http;
use Redirect;
use Flash;
use Session as SessionP;
class Session extends ComponentBase
{
public function componentDetails()
{
return [
'name' => 'Sessions',
'description' => 'Set Auth Session'
];
}
function onSetSessionNurgul()
{
$data = post();
// dd($data);
// return $data ?? 'asdasd';
SessionP::put('nurgulToken', $data['token']);
SessionP::put('name', $data['name']);
SessionP::put('phone', $data['phone']);
Flash::success("Ustunlikli Icher Girdiniz");
return Redirect::to('/');
}
function onLogOutNurgul()
{
SessionP::forget('nurgulToken');
SessionP::forget('name');
SessionP::forget('phone');
$getToken = SessionP::get('nurgulToken');
if ($getToken == "") {
Flash::success("Ustunlikli Shahsy Otagynyzdan Chykdynyz.");
return Redirect::to('/');
} else {
return Flash::error('Ýalňyşlyk Ýüze Çykdy!!!');
}
}
}

View File

@ -3,6 +3,18 @@ forceUrl = 1
[staticMenu]
code = "top-menu"
[session]
==
<?php
function onStart(){
$this['nurgulToken'] = Session::get('nurgulToken');
$this['user_name'] = Session::get('name');
$this['user_phone'] = Session::get('phone');
}
?>
==
<!doctype html>
<html class="no-js" lang="zxx">
@ -30,6 +42,11 @@ code = "top-menu"
</head>
<body>
{% flash %}
<p data-control="flash-message" class="flash-message fade {{ type }}" data-interval="5">
{{ message }}
</p>
{% endflash %}
<!-- Body main wrapper start -->
<div class="body-wrapper">
@ -67,7 +84,8 @@ code = "top-menu"
<!-- Main JS -->
<script src="{{'assets/js/main.js'|theme}}"></script>
{% framework %}
{% framework extras %}
{% scripts %}

68
themes/nurgul/pages/login.htm Executable file
View File

@ -0,0 +1,68 @@
url = "/login"
layout = "main"
title = "Login"
==
{%partial "bread" title='login.title'|_ %}
<!-- LOGIN AREA START -->
<div class="ltn__login-area pb-85">
<div class="container">
<!-- <div class="row">
<div class="col-lg-12">
<div class="section-title-area text-center">
<h1>Sign In <br>To Your Account</h1>
<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. <br>
Sit aliquid, Non distinctio vel iste.</p>
</div>
</div>
</div> -->
<div class="row">
<div class="col-lg-6">
<div class="account-login-inner">
<form class="ltn__form-box contact-form-box">
<input type="text" name="phone" placeholder="{{'form.phone'|_}}*">
<input type="password" name="password" placeholder="{{'form.pass'|_}}*">
<div class="btn-wrapper mt-0">
<button class="theme-btn-1 btn btn-block" type="button"
onClick="login();">{{'login.title'|_}}</button>
{% partial 'loader/form' %}
</div>
<div class="go-to-btn mt-20" id="errors" style="display: inline-grid;">
</div>
</form>
{%partial 'hidden/form'%}
</div>
</div>
<div class="col-lg-6">
<div class="account-create text-center pt-50">
<h4>{{'dont.have.account'|_}}</h4>
<p>{{'register.desc'|_}}</p>
<div class="btn-wrapper">
<a class="theme-btn-1 btn black-btn">{{'register.title'|_}}</a>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- LOGIN AREA END -->
{% partial 'home/brand' %}
{% partial 'scripts/auth' %}
{% put scripts %}
<script>
function onSetData(token, nameF, phoneF) {
$(this).request('onSetSessionNurgul', {
data: { nurgulToken: token, name: nameF, phone: phoneF },
success: function (data) {
console.log(data);
}
});
};
</script>
{% endput %}

View File

@ -0,0 +1,48 @@
title = "Register"
url = "/register"
layout = "main"
==
{%partial "bread" title='register.title'|_ %}
<!-- LOGIN AREA START (Register) -->
<div class="ltn__login-area pb-90">
<div class="container">
<div class="row">
<div class="col-lg-6 offset-lg-3">
<div class="account-login-inner">
<form class="ltn__form-box contact-form-box">
<input type="text" name="first_name" placeholder="{{'form.name'|_}}">
<input type="text" name="last_name" placeholder="{{'form.last_name'|_}}">
<input type="text" name="phone" placeholder="{{'form.phone'|_}}*">
<input type="password" name="password" placeholder="{{'form.pass'|_}}*">
<input type="password" name="confirmpassword" placeholder="{{'form.pass.confirm'|_}}*">
<label class="checkbox-inline">
<input type="checkbox" value="">
{{'chechbox.privacy'|_}}
</label>
<div class="btn-wrapper" style="text-align: center;margin-bottom: 30px;">
<button onClick="registerFunc();" class="theme-btn-1 btn reverse-color btn-block" type="button">{{'register.title'|_}}</button>
{% partial 'loader/form' %}
</div>
<div class="go-to-btn mt-20" id="errors" style="display: inline-grid;">
</div>
</form>
{%partial 'hidden/form'%}
<div class="by-agree text-center">
<p>{{'company.privacy.title'|_}}</p>
<p><a href="#">{{'company.privace.desc'|_}}</a></p>
<div class="go-to-btn mt-50">
<a href="{{'login'|page}}">{{'already.registered.title'|_}}</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- LOGIN AREA END -->
{% partial 'home/brand' %}
{% partial 'scripts/register' %}

View File

@ -36,45 +36,7 @@
<!-- header-options -->
<div class="ltn__header-options">
<ul>
<li class="d-none">
<!-- ltn__currency-menu -->
<div class="ltn__drop-menu ltn__currency-menu">
<ul>
<li><a href="#" class="dropdown-toggle"><span
class="active-currency">USD</span></a>
<ul>
<li><a href="login.html">USD - US Dollar</a></li>
<li><a href="wishlist.html">CAD - Canada Dollar</a></li>
<li><a href="register.html">EUR - Euro</a></li>
<li><a href="account.html">GBP - British Pound</a></li>
<li><a href="wishlist.html">INR - Indian Rupee</a></li>
<li><a href="wishlist.html">BDT - Bangladesh Taka</a></li>
<li><a href="wishlist.html">JPY - Japan Yen</a></li>
<li><a href="wishlist.html">AUD - Australian Dollar</a></li>
</ul>
</li>
</ul>
</div>
</li>
<li class="d-none">
<!-- header-search-1 -->
<div class="header-search-wrap">
<div class="header-search-1">
<div class="search-icon">
<i class="icon-magnifier for-search-show"></i>
<i class="icon-magnifier-remove for-search-close"></i>
</div>
</div>
<div class="header-search-1-form">
<form id="#" method="get" action="#">
<input type="text" name="search" value="" placeholder="{{'search'|_}}..." />
<button type="submit">
<span><i class="icon-magnifier"></i></span>
</button>
</form>
</div>
</div>
</li>
<li class="">
<!-- user-menu -->
<div class="ltn__drop-menu user-menu">
@ -82,10 +44,17 @@
<li>
<a href="#"><i class="icon-user"></i></a>
<ul>
<li><a href="login.html">Sign in</a></li>
<li><a href="register.html">Register</a></li>
<li><a href="account.html">My Account</a></li>
<li><a href="wishlist.html">Wishlist</a></li>
{% if nurgulToken != "" %}
<li><a href="{{'Account'|page}}" style="font-weight: bold;color: #cc1155;">{{user_name}}{{user_phone}}</a></li>
<li><a href="{{'Account'|page}}">{{'account.title'|_}}</a></li>
<li><a href="{{'Whishlist'|page}}">{{'whishlist.title'|_}}</a></li>
<li><a href="javascript:;" data-request="onLogOutNurgul" data-request-redirect="/" style="font-weight: bold;">{{'logout.title'|_}}</a></li>
{% else %}
<li><a href="{{'login'|page}}">{{'login.title'|_}}</a></li>
<li><a href="{{'register'|page}}">{{'register.title'|_}}</a></li>
{% endif %}
</ul>
</li>
</ul>

View File

@ -0,0 +1,6 @@
<form data-request="onSetSessionNurgul">
<input type="hidden" name="token">
<input type="hidden" name="name">
<input type="hidden" name="phone">
<button id="testq" type="submit"></button>
</form>

View File

@ -0,0 +1 @@
<img src="{{'assets/loader.gif'|theme}}" style="width: 25%;" id="loader_form">

View File

@ -0,0 +1,68 @@
{% put scripts %}
<script>
$('#loader_form').hide();
function login() {
var phone = document.getElementsByName("phone")[0].value;
var pass = document.getElementsByName("password")[0].value;
var deviceName = 'from Web';
var fd = new FormData();
fd.append('phone', phone);
fd.append('password', pass);
fd.append('device_name', deviceName);
$.ajax({
url: 'https://nurgul.com.tm/app/api/customer/login',
data: fd,
processData: false,
contentType: false,
type: 'POST',
beforeSend: function () {
$('#loader_form').show();
},
success: function (data) {
$('#loader_form').hide();
console.log(data);
console.log(data.data.name);
console.log(data.token);
// onSetData(data.token, data.data.name, data.data.phone);
$('input[name=token]').val(data.token);
$('input[name=name]').val(data.data.name);
$('input[name=phone]').val(data.data.phone);
var link = document.querySelector('#testq');
if(link) {
link.click();
}
// $(document).on(function () {
// $(this).request('onSetSessionNurgul', { data: { token: 'someVar' } });
// });
// $(this).request('onSetSession', {
// data: { nurgulToken: data.token }
// });
// $(this).request('onSetSession', {
// data: { nurgulToken: data.token, name: data.data.name, phone: data.data.phone }
// });
},
error: function (data) {
$('#loader_form').hide();
dataq = JSON.parse(data.responseText);
// console.log(dataq);
for (var error of dataq.errors) {
$('#errors').append(`<a href="#" style="padding-bottom: 15px;"><small style="color: darkred;font-weight: bold;background: #ff8888;padding: 10px;border-radius: 5px;"> * ` + error + `</small></a>`);
}
// console.log(dataq.errors);
}
});
}
</script>
{% endput %}

View File

@ -0,0 +1,72 @@
{% put scripts %}
<script>
$('#loader_form').hide();
function registerFunc() {
var first_name = document.getElementsByName("first_name")[0].value;
var last_name = document.getElementsByName("last_name")[0].value;
var phone = document.getElementsByName("phone")[0].value;
var pass = document.getElementsByName("password")[0].value;
var deviceName = 'from Web Register';
var fd = new FormData();
fd.append('first_name', first_name);
fd.append('last_name', last_name);
fd.append('phone', phone);
fd.append('password', pass);
fd.append('device_name', deviceName);
$.ajax({
url: 'https://nurgul.com.tm/app/api/customer/register',
data: fd,
processData: false,
contentType: false,
type: 'POST',
beforeSend: function () {
$('#loader_form').show();
},
success: function (data) {
$('#loader_form').hide();
console.log(data);
console.log(data.data.name);
console.log(data.token);
// onSetData(data.token, data.data.name, data.data.phone);
$('input[name=token]').val(data.token);
$('input[name=name]').val(data.data.name);
$('input[name=phone]').val(data.data.phone);
var link = document.querySelector('#testq');
if(link) {
link.click();
}
// $(document).on(function () {
// $(this).request('onSetSessionNurgul', { data: { token: 'someVar' } });
// });
// $(this).request('onSetSession', {
// data: { nurgulToken: data.token }
// });
// $(this).request('onSetSession', {
// data: { nurgulToken: data.token, name: data.data.name, phone: data.data.phone }
// });
},
error: function (data) {
$('#loader_form').hide();
dataq = JSON.parse(data.responseText);
// console.log(dataq);
for (var error of dataq.errors) {
$('#errors').append(`<a href="#" style="padding-bottom: 15px;"><small style="color: darkred;font-weight: bold;background: #ff8888;padding: 10px;border-radius: 5px;"> * ` + error + `</small></a>`);
}
// console.log(dataq.errors);
}
});
}
</script>
{% endput %}