Ignore:
Timestamp:
08/20/24 16:13:49 (6 weeks ago)
Author:
ElenaMoskova <elena.moskova99@…>
Branches:
main
Children:
63bd770
Parents:
8f8226c
Message:

fix authorization

implement hiding menu items

Location:
PostgreSqlDotnetCore
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • PostgreSqlDotnetCore/Controllers/ErrorController.cs

    r8f8226c r6782104  
    22{
    33    using Microsoft.AspNetCore.Http;
     4    using Microsoft.AspNetCore.Identity;
    45    using Microsoft.AspNetCore.Mvc;
     6    using System.Threading.Tasks;
    57
    6     public class ErrorController : Controller
     8    public class ErrorController : BaseController
    79    {
     10        public ErrorController(UserManager<IdentityUser> userManager) : base(userManager)
     11        {
     12
     13        }
    814        // GET: ErrorController
    9         public IActionResult AccessDenied()
     15        public async Task<IActionResult> AccessDeniedAsync()
    1016        {
     17            // set if is authenticated
     18            ViewBag.isAuthenticated = await getCrrentUser();
    1119            return View();
    1220        }
    1321        // GET: ErrorController
    14         public IActionResult NotExist()
     22        public async Task<IActionResult> NotExistAsync()
    1523        {
     24            // set if is authenticated
     25            ViewBag.isAuthenticated = await getCrrentUser();
    1626            return View();
    1727        }
  • PostgreSqlDotnetCore/Controllers/HomeController.cs

    r8f8226c r6782104  
    44using PostgreSqlDotnetCore.Models;
    55using System.Diagnostics;
     6using System.Web.Mvc;
    67
    78namespace PostgreSqlDotnetCore.Controllers
    89{
    910
    10     public class HomeController : Controller
     11    public class HomeController : BaseController
    1112    {
    1213        private ApplicationDbContext db = new ApplicationDbContext();
     
    1516        private readonly ILogger<HomeController> _logger;
    1617
    17         public HomeController(ILogger<HomeController> logger, UserManager<IdentityUser> userManager)
     18        public HomeController(ILogger<HomeController> logger, UserManager<IdentityUser> userManager) : base(userManager)
    1819        {
    1920            _logger = logger;
     
    5657                        db.SaveChanges();
    5758                    }
    58 
     59                    // set if is authenticated
     60                    ViewBag.isAuthenticated = await getCrrentUser();
    5961                }
    6062
     63            } else
     64            {
     65                ViewBag.isAuthenticated = null;
    6166            }
    6267            ViewBag.ShowTopBar = true;
     68
    6369            return View();
    6470        }
    6571
    66         public IActionResult Privacy()
     72        public async Task<IActionResult> PrivacyAsync()
    6773        {
     74
     75            // set if is authenticated
     76            ViewBag.isAuthenticated = await getCrrentUser();
    6877            return View();
    6978        }
    70         public IActionResult Contact()
     79        public async Task<IActionResult> ContactAsync()
    7180        {
     81            // set if is authenticated
     82            ViewBag.isAuthenticated = await getCrrentUser();
    7283            return View();
    7384        }
  • PostgreSqlDotnetCore/Controllers/JobsController.cs

    r8f8226c r6782104  
    1212        public JobsController(UserManager<IdentityUser> userManager) : base(userManager)
    1313        {
     14            // set if is authenticated
     15            ViewBag.isAuthenticated = new UsersClass();
    1416        }
    1517
  • PostgreSqlDotnetCore/Controllers/PetCaresController.cs

    r8f8226c r6782104  
    3232            // check for permission
    3333            UsersClass customerClass = await getCrrentUser();
     34            // set if is authenticated
     35            ViewBag.isAuthenticated = customerClass;
    3436            if (customerClass == null)
    3537            {
  • PostgreSqlDotnetCore/Controllers/PetsController.cs

    r8f8226c r6782104  
    1919            // check for permission
    2020            UsersClass customerClass = await getCrrentUser();
     21
     22            // set if is authenticated
     23            ViewBag.isAuthenticated = customerClass;
    2124            if (customerClass == null)
    2225            {
     
    6265        //}
    6366
    64         public ActionResult Create()
     67        public async Task<ActionResult> CreateAsync()
    6568        {
    66            
     69
     70            // check for permission
     71            UsersClass customerClass = await getCrrentUser();
     72            // set if is authenticated
     73            ViewBag.isAuthenticated = customerClass;
    6774            return View();
    6875        }
     
    7885            if (!isAuthenticated)
    7986            {
     87                // set if is authenticated
     88                ViewBag.isAuthenticated = null;
    8089                return RedirectToAction("AccessDenied", "Error");
    8190            }
     91            ViewBag.isAuthenticated = new UsersClass();
     92
    8293            if (ModelState.IsValid)
    8394            {
    84                // peClass.dateofbirthday = DateTime.SpecifyKind(peClass.dateofbirthday, DateTimeKind.Utc);
     95                // set if is authenticated
     96                ViewBag.isAuthenticated = new UsersClass();
     97                // peClass.dateofbirthday = DateTime.SpecifyKind(peClass.dateofbirthday, DateTimeKind.Utc);
    8598                var user = await _userManager.GetUserAsync(User);
    8699                var customerClass = db.CustomerObj.SingleOrDefault(x => x.email == user.Email);
     
    121134            if (!isAuthenticated)
    122135            {
     136                // set if is authenticated
     137                ViewBag.isAuthenticated = null;
    123138                return RedirectToAction("AccessDenied", "Error");
    124139            }
     140
     141            // set if is authenticated
     142            ViewBag.isAuthenticated = new UsersClass();
     143           
    125144             
    126145            if (ModelState.IsValid)
  • PostgreSqlDotnetCore/Controllers/ProductsController.cs

    r8f8226c r6782104  
    1616        public ProductsController(UserManager<IdentityUser> userManager) : base(userManager)
    1717        {
     18            // set if is authenticated
     19            ViewBag.isAuthenticated = new UsersClass();
    1820        }
    1921
     
    2830        public ActionResult Index(string? searchString)
    2931        {
     32            // set if is authenticated
     33            ViewBag.isAuthenticated = new UsersClass();
    3034            if (!String.IsNullOrEmpty(searchString))
    3135            {
     
    6771            // check for permission
    6872            UsersClass customerClass = await checkAuthorizationAsync();
     73            // set if is authenticated
     74            ViewBag.isAuthenticated = await getCrrentUser();
     75
    6976            if (customerClass == null)
    7077            {
     
    100107        }
    101108
    102 
    103 
    104 
    105 
    106 
    107 
    108 
    109 
    110 
    111 
    112109        // GET: Customer/Edit/5
    113110        public async Task<ActionResult> EditAsync(int? id)
     
    118115            }
    119116            UsersClass customerClass = await checkAuthorizationAsync();
     117            // set if is authenticated
     118            ViewBag.isAuthenticated = await getCrrentUser();
     119
    120120            if (customerClass == null)
    121121            {
     
    154154            }
    155155            UsersClass customerClass = await checkAuthorizationAsync();
     156            // set if is authenticated
     157            ViewBag.isAuthenticated = await getCrrentUser();
     158
    156159            if (customerClass == null)
    157160            {
  • PostgreSqlDotnetCore/Controllers/VetCenterController.cs

    r8f8226c r6782104  
    1212        public VetCenterController(UserManager<IdentityUser> userManager) : base(userManager)
    1313        {
     14
     15            // set if is authenticated
     16            ViewBag.isAuthenticated = new UsersClass();
    1417        }
    1518
  • PostgreSqlDotnetCore/Views/Shared/_Layout.cshtml

    r8f8226c r6782104  
    1313</head>
    1414<body>
     15    <h1>@(ViewBag.isAuthenticated == null ? "krij" : "prikazi")</h1>
    1516    <header>
    1617        <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
     
    2627                            <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
    2728                        </li>
    28                         <li class="nav-item">
    29                             <a class="nav-link text-dark" asp-area="" asp-controller="Pets" asp-action="Index">Pets</a>
    30                         </li>
     29                        @{
     30                            if (ViewBag.isAuthenticated != null)
     31                            {
     32                                <li class="nav-item">
     33                                    <a class="nav-link text-dark" asp-area="" asp-controller="Pets" asp-action="Index">Pets</a>
     34                                </li>
     35                            }
     36                        }
    3137                        <li class="nav-item">
    3238                            <a class="nav-link text-dark" asp-area="" asp-controller="Products" asp-action="Index">Products</a>
    3339                        </li>
    34                         <li class="nav-item">
    35                             <a class="nav-link text-dark" asp-area="" asp-controller="PetCares" asp-action="Index">Pet Cares</a>
    36                         </li>
    37                         <li class="nav-item">
    38                             <a class="nav-link text-dark" asp-area="" asp-controller="Customer" asp-action="Index">Manage Customers</a>
    39                         </li>
    40                         <li class="nav-item">
    41                             <a class="nav-link text-dark" asp-area="" asp-controller="City" asp-action="Index">Manage Cities</a>
    42                         </li>
    43                         <li class="nav-item">
    44                             <a class="nav-link text-dark" asp-area="" asp-controller="Blog" asp-action="Index">BlogPost</a>
    45                         </li>
     40                        @{
     41                            if (ViewBag.isAuthenticated != null)
     42                            {
     43                                <li class="nav-item">
     44                                    <a class="nav-link text-dark" asp-area="" asp-controller="PetCares" asp-action="Index">Pet Cares</a>
     45                                </li>
     46                                <li class="nav-item">
     47                                    <a class="nav-link text-dark" asp-area="" asp-controller="Customer" asp-action="Index">Manage Customers</a>
     48                                </li>
     49                                <li class="nav-item">
     50                                    <a class="nav-link text-dark" asp-area="" asp-controller="City" asp-action="Index">Manage Cities</a>
     51                                </li>
     52                                <li class="nav-item">
     53                                    <a class="nav-link text-dark" asp-area="" asp-controller="Blog" asp-action="Index">BlogPost</a>
     54                                </li>
     55                            }
     56                        }
    4657                        <li class="nav-item">
    4758                            <a class="nav-link text-dark" asp-area="" asp-controller="VetCenter" asp-action="Index">VetCenters</a>
Note: See TracChangeset for help on using the changeset viewer.