init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,82 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Core.Elearning.Nexius;
|
||||
using Kreta.Framework;
|
||||
using Kreta.KretaServer.Caching;
|
||||
using Kreta.Web.Areas.Adminisztracio.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
using Nexius.IdentityProvider.Model.External.V1;
|
||||
using Nexius.IdentityProvider.Model.Lti;
|
||||
|
||||
namespace Kreta.Web.Areas.Adminisztracio.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Naplo.ClaimValue, KretaClaimPackages.Ellenorzo.ClaimValue)]
|
||||
public class ELearningController : Controller
|
||||
{
|
||||
readonly INexiusCourseService nexiusCourseService;
|
||||
|
||||
public ELearningController(INexiusCourseService nexiusCourseService)
|
||||
{
|
||||
this.nexiusCourseService = nexiusCourseService;
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
var cache = SDAServer.Instance.CacheManager.AquireCache<ElearningCache>();
|
||||
var model = new List<NexiusListItemModel>();
|
||||
|
||||
var isGondviselo = ClaimData.IsTanuloOrGondviselo && ClaimData.GondviseloId != null;
|
||||
var isTanulo = ClaimData.IsTanuloOrGondviselo && ClaimData.GondviseloId == null;
|
||||
var courseIdList = new ElearningElerhetosegHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetElearningElerhetosegList(isGondviselo, isTanulo, (int)ClaimData.FelhasznaloSzerepkor, ClaimData.FelhasznaloSzerepCsomagok, ClaimData.GondviseloId);
|
||||
|
||||
var courses = cache.GetCourses(courseIdList, nexiusCourseService);
|
||||
|
||||
var courseResults = nexiusCourseService.GetUserCourseResults(GetFelhasznaloAzonosito());
|
||||
|
||||
CourseResult courseResult;
|
||||
NexiusListItemModel listItem;
|
||||
foreach (var course in courses)
|
||||
{
|
||||
listItem = new NexiusListItemModel() { Course = course.Value };
|
||||
|
||||
courseResult = courseResults.FirstOrDefault(x => x.Activities.CourseObjectId == course.Value.CourseObject.Id);
|
||||
if (courseResult != null)
|
||||
{
|
||||
listItem.CourseResult = courseResult;
|
||||
}
|
||||
else
|
||||
{
|
||||
listItem.CourseResult = new CourseResult();
|
||||
listItem.CourseResult.Activities = new LtiCourseResultModel();
|
||||
listItem.CourseResult.Activities.Progress = 0;
|
||||
listItem.CourseResult.Activities.Measure = 0;
|
||||
listItem.CourseResult.Activities.ResultEndTime = DateTime.MaxValue;
|
||||
listItem.CourseResult.Activities.TotalTime = 0;
|
||||
}
|
||||
|
||||
model.Add(listItem);
|
||||
}
|
||||
|
||||
return View(model);
|
||||
}
|
||||
|
||||
private string GetFelhasznaloAzonosito()
|
||||
{
|
||||
if (ClaimData.GondviseloId.HasValue)
|
||||
{
|
||||
return new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetGondviseloEgyediAzonosito(ClaimData.GondviseloId.Value);
|
||||
}
|
||||
else
|
||||
{
|
||||
return new FelhasznaloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFelhasznaloEgyediAzonosito(ClaimData.FelhasznaloId);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue