|
|
- using System.Linq;
- using Microsoft.AspNet.Identity.EntityFramework;
- using Sevomin.Models;
- using Sevomin.Models.Helpers;
- using System.Threading.Tasks;
- using System.Web.Mvc;
- using Sevomin.Models.Repositories;
-
- namespace Sevomin.WebFrontend.Controllers
- {
- public class HomeController : BaseController
- {
- IAdRepository _adRepository;
-
- public HomeController()
- : this(AdRepository.Current, new SevominUserManager(new UserStore<User>(SevominDbContext.Current)))
- {
- }
-
- public HomeController(IAdRepository adRepositry, SevominUserManager userManager)
- {
- _adRepository = adRepositry;
- UserManager = userManager;
- }
-
- public SevominUserManager UserManager { get; private set; }
-
- public async Task<ActionResult> Index()
- {
- if (!Request.IsAuthenticated)
- return View("Intro");
- User user = await UserManager.FindByNameAsync(User.Identity.Name);
- if (user is Avalin)
- return View("AvalinIndex");
- if (user is Dovomin)
- return View("DovominIndex");
- return RedirectToAction("Index", "God");
- }
-
- public ActionResult Ads(int id)
- {
- var ad = _adRepository.ListAll().SingleOrDefault(m => m.Id == id);
- if (ad == null)
- {
- return HttpNotFound();
- }
- ad.ClickCount++;
- _adRepository.Save();
- return Redirect(ad.Link);
- }
- }
- }
|