@using Valorizza.PortalIntegrar.Vagas.Services
@using Valorizza.PortalIntegrar.RH.Login

@model Site.Models.VagasModel

   
@if (Model.NotIsNull() && Model.VagaDetalhe.NotIsNull() && Model.VagaDetalhe.Count() > 0)
{
    var agrupamento = Model.VagaDetalhe.GroupBy(x => x.Tipo).ToList();
    <div class="content-container vagas-container">
        <div class="conteudo-site">
            <h1 id="titulo-interna" class="titulo-vagas"><span class="sr-only">Nossas Vagas</span></h1>

            @foreach (var vagaDetalhe in agrupamento)
            {
                <div class="vaga-type">
                    <h2><span class="sr-only">Setor das vagas: </span>@vagaDetalhe.FirstOrDefault().Tipo</h2>
                </div>

                foreach (var vaga in vagaDetalhe)
                {
                    var redeSocial = new Site.Models.RedeSocialModel();
                    redeSocial.URLCompartilhamento = string.Format("{0}://{1}{2}/Vagas/Detalhe/{3}/{4}/{5}", Request.Url.Scheme, Request.Url.Authority, Request.ApplicationPath.TrimEnd('/'), vaga.Tipo.GenerateSlug(), vaga.Cargo.GenerateSlug(), vaga.Id);

                    <div class="vaga-container">
                        <div class="vaga-descr">
                            <h3>@vaga.Titulo</h3>


                            @foreach (var prop in Site.Models.VagaDetalhe.GetAvaibleProperties)
                            {
                                object value = prop.GetValue(vaga, null);
                                if (!Site.Models.VagaDetalhe.IsPropertyValue(prop, value))
                                {
                                    continue;
                                }
                                <p>
                                    <strong>@Site.Models.VagaDetalhe.GetDisplayAttribute(prop).Name: </strong>@Html.Raw(SiteHtmlHelper.nl2br(value.ToString()))
                                </p>
                            }

                            <p class="redes-vagas">
                                <strong>Compartilhar:</strong> @Html.Partial("PartialRedesSociais", redeSocial, new ViewDataDictionary { { "tipoConteudo", "Vaga" }, { "nomeConteudo", @vaga.Titulo } })
                            </p>

                            @if (WebSecurityWrapper.CurrentUserIsAuthenticated && VagasService.VerificarCandidatoVaga(vaga.Id, LoginSessionWrapper.UsuarioAtual.Id))
                            {
                                <br />
                                <span class="atencao-vagas">
                                    Olá <strong>@LoginSessionWrapper.UsuarioAtual.Nome</strong>, você já esta participando do processo de seleção <span class="sr-only">da vaga @vaga.Titulo</span>.
                                </span>
                            }
                            else
                            {
                                <br />
                                <span class="atencao-vagas">
                                    <strong>ATENÇÃO:</strong> Antes de se candidatar à vaga<span class="sr-only"> @vaga.Titulo</span>, verifique se você atende os requisitos para o cargo.
                                </span>
                                <a class="btn-bg-vaga" href="@Href(string.Format("~/Vagas/MeCandidatar/{0}/{1}/{2}", vaga.Tipo.GenerateSlug(), vaga.Cargo.GenerateSlug(), vaga.Id))">QUERO ME CANDIDATAR<span class="sr-only"> na vaga: @vaga.Titulo</span></a>
                            }
                        </div>

                        <img class="shadow" src="~/Content/img/sombra-vaga.png">
                    </div>
                }
                <a href="~/vagas/Listagem/@vagaDetalhe.FirstOrDefault().Tipo.GenerateSlug()" class="voltar">< Listar vagas <span class="sr-only">do setor </span>@vagaDetalhe.FirstOrDefault().Tipo</a>
            }
            <a href="~/vagas/Listagem" class="voltar">< Listar todas vagas</a>
        </div>
    </div>
}

@Html.Partial("PartialFooter")