- Removed all BTCPay references from services and configuration
- Implemented SilverPAY as sole payment provider (no fallback)
- Fixed JWT authentication with proper key length (256+ bits)
- Added UsersController with full CRUD operations
- Updated User model with Email and Role properties
- Configured TeleBot with real Telegram bot token
- Fixed launchSettings.json with JWT environment variable
- E2E tests passing for authentication, catalog, orders
- Payment creation pending SilverPAY server fix
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
68 lines
2.9 KiB
Plaintext
68 lines
2.9 KiB
Plaintext
@model LittleShop.DTOs.LoginDto
|
|
@using Microsoft.AspNetCore.Html
|
|
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
|
@inject Microsoft.AspNetCore.Antiforgery.IAntiforgery Antiforgery
|
|
|
|
@{
|
|
ViewData["Title"] = "Admin Login";
|
|
Layout = null;
|
|
var requestToken = Antiforgery.GetAndStoreTokens(Context);
|
|
}
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>@ViewData["Title"]</title>
|
|
<link href="/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="/lib/fontawesome/css/all.min.css" rel="stylesheet">
|
|
</head>
|
|
<body class="bg-light">
|
|
<div class="container">
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-6 col-lg-4">
|
|
<div class="card mt-5">
|
|
<div class="card-header text-center">
|
|
<h4><i class="fas fa-store"></i> LittleShop Admin</h4>
|
|
</div>
|
|
<div class="card-body">
|
|
<form method="post" action="/Admin/Account/Login">
|
|
<input name="@requestToken.FormFieldName" type="hidden" value="@requestToken.RequestToken" />
|
|
@if (ViewData.ModelState[""]?.Errors.Count > 0)
|
|
{
|
|
<div class="alert alert-danger" role="alert">
|
|
@ViewData.ModelState[""]?.Errors.First().ErrorMessage
|
|
</div>
|
|
}
|
|
|
|
<div class="mb-3">
|
|
<label for="username" class="form-label">Username</label>
|
|
<input name="username" id="username" class="form-control" required />
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="password" class="form-label">Password</label>
|
|
<input name="password" id="password" type="password" class="form-control" required />
|
|
</div>
|
|
|
|
<div class="d-grid">
|
|
<button type="submit" class="btn btn-primary">
|
|
<i class="fas fa-sign-in-alt"></i> Login
|
|
</button>
|
|
</div>
|
|
</form>
|
|
|
|
<div class="mt-3 text-center">
|
|
<small class="text-muted">Default: admin/admin</small>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="/lib/jquery/jquery.min.js"></script>
|
|
<script src="/lib/bootstrap/js/bootstrap.bundle.min.js"></script>
|
|
</body>
|
|
</html> |