kreta/KretaWeb/Helpers/OsztalyokEsCsoportokHelpers.cs
2024-03-13 00:33:46 +01:00

82 lines
3.8 KiB
C#

using System.Collections.Generic;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Web.Security;
namespace Kreta.Web.Helpers
{
public static class OsztalyokEsCsoportokHelpers
{
public static IDictionary<string, string> GetOsztalyokVagyOsztalyokEsCsoportok(int felhasznaloId, bool osztalyfonokiFeladat)
{
IDictionary<string, string> osztalyokVagyOsztalyokEsCsoportok;
if (AuthorizeHelper.CheckPackageAccess(new[] { KretaClaimPackages.SzuperOsztalyfonok.ClaimValue }))
{
var oHelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
if (osztalyfonokiFeladat)
{
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetOsztalyokForDDL(tanarId: felhasznaloId, szuperOsztalyfonok: true);
}
else
{
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetOsztalyokCsoportokForDDL(tanarId: felhasznaloId, szuperOsztalyfonok: true);
}
}
else
{
if (AuthorizeHelper.CheckPackageAccess(new[] { KretaClaimPackages.Osztalyfonok.ClaimValue }))
{
var oHelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
if (osztalyfonokiFeladat)
{
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetOsztalyokForDDL(tanarId: felhasznaloId, szuperOsztalyfonok: false);
}
else
{
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetOsztalyokCsoportokForDDL(tanarId: felhasznaloId, szuperOsztalyfonok: false);
}
}
else if (AuthorizeHelper.CheckPackageAccess(new[] { KretaClaimPackages.CsoportVezeto.ClaimValue }))
{
var oHelper = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetCsoportok(tanarId: felhasznaloId);
}
else
{
var oHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
osztalyokVagyOsztalyokEsCsoportok = oHelper.GetKapcsolodoOsztalyCsoportokForDropDownList();
}
}
return osztalyokVagyOsztalyokEsCsoportok;
}
public static IDictionary<string, string> GetCsakOsztalyok(int felhasznaloId, OktNevelesiKategoriaEnum? feladatKategoriaId)
{
IDictionary<string, string> csakOsztalyok;
if (AuthorizeHelper.CheckPackageAccess(new[] { KretaClaimPackages.SzuperOsztalyfonok.ClaimValue }))
{
var helper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
csakOsztalyok = helper.GetOnlyOsztalyok(feladatKategoriaId: feladatKategoriaId);
}
else
{
if (AuthorizeHelper.CheckPackageAccess(new[] { KretaClaimPackages.Osztalyfonok.ClaimValue }))
{
var helper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
csakOsztalyok = helper.GetOsztalyokForDDL(tanarId: felhasznaloId, szuperOsztalyfonok: false, feladatKategoriaId: feladatKategoriaId);
}
else
{
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
csakOsztalyok = helper.GetKapcsolodoOsztalyCsoportokForDropDownList(feladatKategoriaId: feladatKategoriaId);
}
}
return csakOsztalyok;
}
}
}