generated from ricardo/MVCLogin
75 lines
2.9 KiB
C#
75 lines
2.9 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Postall.Models;
|
|
using System.Security.Claims;
|
|
using System.Threading.Tasks;
|
|
using System.Collections.Generic;
|
|
using Postall.Models;
|
|
|
|
namespace Postall.Controllers
|
|
{
|
|
[Authorize]
|
|
public class VideosController : Controller
|
|
{
|
|
// Simulação de dados para exemplo - em produção, estes dados viriam de uma API ou banco de dados
|
|
private List<VideoViewModel> GetSampleVideos()
|
|
{
|
|
return new List<VideoViewModel>
|
|
{
|
|
new VideoViewModel
|
|
{
|
|
Id = "video1",
|
|
Title = "Como usar o PostAll - Tutorial",
|
|
Description = "Aprenda a usar todas as funcionalidades do PostAll para gerenciar suas redes sociais.",
|
|
ThumbnailUrl = "https://i.ytimg.com/vi/sample1/maxresdefault.jpg",
|
|
PublishedAt = DateTime.Now.AddDays(-2)
|
|
},
|
|
new VideoViewModel
|
|
{
|
|
Id = "video2",
|
|
Title = "Estratégias de Marketing Digital para 2024",
|
|
Description = "Conheça as melhores estratégias para alavancar seu negócio nas redes sociais em 2024.",
|
|
ThumbnailUrl = "https://i.ytimg.com/vi/sample2/maxresdefault.jpg",
|
|
PublishedAt = DateTime.Now.AddDays(-5)
|
|
},
|
|
new VideoViewModel
|
|
{
|
|
Id = "video3",
|
|
Title = "Análise de Métricas nas Redes Sociais",
|
|
Description = "Aprenda a interpretar as métricas das suas redes sociais e tomar decisões baseadas em dados.",
|
|
ThumbnailUrl = "https://i.ytimg.com/vi/sample3/maxresdefault.jpg",
|
|
PublishedAt = DateTime.Now.AddDays(-7)
|
|
}
|
|
};
|
|
}
|
|
|
|
public IActionResult Index()
|
|
{
|
|
var userVideos = GetSampleVideos();
|
|
return View(userVideos);
|
|
}
|
|
|
|
[HttpGet]
|
|
public IActionResult GetChannelVideos()
|
|
{
|
|
// Em um cenário real, você buscaria os vídeos da API do YouTube
|
|
var channelVideos = GetSampleVideos().OrderByDescending(v => v.PublishedAt).Take(10).ToList();
|
|
return PartialView("_ChannelVideosPartial", channelVideos);
|
|
}
|
|
|
|
[HttpPost]
|
|
public IActionResult AddVideos(string[] selectedVideos)
|
|
{
|
|
if (selectedVideos == null || selectedVideos.Length == 0)
|
|
{
|
|
return RedirectToAction("Index");
|
|
}
|
|
|
|
// Em um cenário real, você salvaria esses IDs no banco de dados
|
|
// Aqui apenas redirecionamos de volta para o Index
|
|
|
|
TempData["Message"] = $"{selectedVideos.Length} vídeo(s) adicionado(s) com sucesso!";
|
|
return RedirectToAction("Index");
|
|
}
|
|
}
|
|
} |