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 GetOsztalyokVagyOsztalyokEsCsoportok(int felhasznaloId, bool osztalyfonokiFeladat) { IDictionary 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 GetCsakOsztalyok(int felhasznaloId, OktNevelesiKategoriaEnum? feladatKategoriaId) { IDictionary 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; } } }