wip - try with a db container
Signed-off-by: Carl Sargunar <carl@sargunar.com>
This commit is contained in:
@@ -1,18 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IProfileControls>
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
<section class="portfolio-block block-intro">
|
||||
<div class="container">
|
||||
@if (Model.Avatar != null)
|
||||
{
|
||||
<div class="avatar" style="background-image:url('@(Model.Avatar.GetCropUrl(width: 150, height: 150))');"></div>
|
||||
}
|
||||
<div class="about-me">
|
||||
@Model.AboutMe
|
||||
@if (Model.ProfileLink != null && !string.IsNullOrWhiteSpace(Model.ProfileLink.Url))
|
||||
{
|
||||
<a class="btn btn-outline-primary" role="button" target="@Model.ProfileLink.Target" href="@Model.ProfileLink.Url">@Model.ProfileLink.Name</a>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
@@ -1,22 +0,0 @@
|
||||
@inherits UmbracoViewPage<Umbraco.Cms.Core.Models.Blocks.BlockListItem>
|
||||
|
||||
@using Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
@{
|
||||
var cta = (CallToAction)Model.Content;
|
||||
}
|
||||
|
||||
<section class="portfolio-block call-to-action border-bottom">
|
||||
<div class="container">
|
||||
<div class="d-flex justify-content-center align-items-center content">
|
||||
@if(!string.IsNullOrWhiteSpace(cta.Text))
|
||||
{
|
||||
<h3>@cta.Text</h3>
|
||||
}
|
||||
@if(cta.Link != null)
|
||||
{
|
||||
<a class="btn btn-outline-primary btn-lg" target="@cta.Link.Target" href="@cta.Link.Url">@cta.Link.Name</a>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
@@ -1,53 +0,0 @@
|
||||
@inherits UmbracoViewPage<Umbraco.Cms.Core.Models.Blocks.BlockListItem>
|
||||
|
||||
@using Umbraco.Cms.Web.Common.PublishedModels
|
||||
@using System.Collections
|
||||
@using Umbraco.Cms.Core.Models
|
||||
@using Portfolio.Core.Extensions
|
||||
|
||||
@{
|
||||
var cardsRow = (CardsRow)Model.Content;
|
||||
}
|
||||
|
||||
<section class="portfolio-block skills">
|
||||
<div class="container">
|
||||
@if(!string.IsNullOrWhiteSpace(cardsRow.Title))
|
||||
{
|
||||
<div class="heading">
|
||||
<h2>@cardsRow.Title</h2>
|
||||
</div>
|
||||
}
|
||||
@if(cardsRow.Cards != null && cardsRow.Cards.Any())
|
||||
{
|
||||
var visibleCards = cardsRow.Cards.Where(x => x.Settings == null
|
||||
|| !x.Settings.HasProperty("hide")
|
||||
|| !x.Settings.HasValue("hide")
|
||||
|| !x.Settings.Value<bool>("hide"));
|
||||
|
||||
if(visibleCards != null && visibleCards.Any())
|
||||
{
|
||||
<div class="row">
|
||||
@foreach (var item in cardsRow.Cards)
|
||||
{
|
||||
IconCard card = (IconCard)item.Content;
|
||||
<div class="col-md-4">
|
||||
<div class="card special-skill-item border-0">
|
||||
@if (!string.IsNullOrWhiteSpace(card.IconClass))
|
||||
{
|
||||
<div class="card-header bg-transparent border-0"><i class="icon @card.IconClass.ToIconClass()"></i></div>
|
||||
}
|
||||
@if(!string.IsNullOrWhiteSpace(card.Title) || !string.IsNullOrWhiteSpace(card.Description))
|
||||
{
|
||||
<div class="card-body">
|
||||
<h3 class="card-title">@card.Title</h3>
|
||||
<p class="card-text">@card.Description</p>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
</section>
|
@@ -1,29 +0,0 @@
|
||||
@inherits UmbracoViewPage<Umbraco.Cms.Core.Models.Blocks.BlockListItem>
|
||||
|
||||
@using Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
@{
|
||||
var projectPreview = (ProjectPreview)Model.Content;
|
||||
}
|
||||
|
||||
<section class="portfolio-block website bg-primary text-white">
|
||||
<div class="container">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-12 col-lg-5 offset-lg-1 text">
|
||||
<h3>@projectPreview.Title</h3>
|
||||
<p>@projectPreview.Description</p>
|
||||
</div>
|
||||
<div class="col-md-12 col-lg-5">
|
||||
@if (projectPreview.Image != null)
|
||||
{
|
||||
<div class="portfolio-laptop-mockup">
|
||||
<div class="screen">
|
||||
<div class="screen-content" style="background-image:url('@(projectPreview.Image.GetCropUrl(width: 298, height: 189))');"></div>
|
||||
</div>
|
||||
<div class="keyboard"></div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
@@ -1,22 +1,13 @@
|
||||
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage<Umbraco.Cms.Core.Models.Blocks.BlockListModel>
|
||||
|
||||
@using Umbraco.Extensions
|
||||
|
||||
@{
|
||||
if (!Model.Any()) { return; }
|
||||
|
||||
var visibleBlocks = Model.Where(x =>
|
||||
x.Settings == null
|
||||
|| !x.Settings.HasProperty("hide")
|
||||
|| !x.Settings.HasValue("hide")
|
||||
|| !x.Settings.Value<bool>("hide"));
|
||||
|
||||
if (!visibleBlocks.Any()) { return; }
|
||||
if (Model?.Any() != true) { return; }
|
||||
}
|
||||
@foreach (var block in visibleBlocks)
|
||||
{
|
||||
if (block?.ContentUdi == null) { continue; }
|
||||
var data = block.Content;
|
||||
<div class="umb-block-list">
|
||||
@foreach (var block in Model)
|
||||
{
|
||||
if (block?.ContentUdi == null) { continue; }
|
||||
var data = block.Content;
|
||||
|
||||
@await Html.PartialAsync("blocklist/Components/" + data.ContentType.Alias, block)
|
||||
}
|
||||
@await Html.PartialAsync("blocklist/Components/" + data.ContentType.Alias, block)
|
||||
}
|
||||
</div>
|
||||
|
@@ -1,31 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IWorkHistoryControls>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
@using Portfolio.Core.Extensions
|
||||
|
||||
<div class="contact-info portfolio-info-card">
|
||||
@if (!string.IsNullOrWhiteSpace(Model?.ContactInfoTitle ?? ""))
|
||||
{
|
||||
<h2>@Model.ContactInfoTitle</h2>
|
||||
}
|
||||
@if (Model.ContactInfo != null && Model.ContactInfo.Any())
|
||||
{
|
||||
foreach (var item in Model.ContactInfo)
|
||||
{
|
||||
<div class="row">
|
||||
<div class="col-1"><i class="icon @(item.Value<string>("icon").ToIconClass())"></i></div>
|
||||
@if (item is ContentModels.IconLinkItem)
|
||||
{
|
||||
var linkItem = item as ContentModels.IconLinkItem;
|
||||
<div class="col-9"><span><a href="@(linkItem.Link.Url)" target="@linkItem.Link.Target">@linkItem.Link.Name</a></span></div>
|
||||
}
|
||||
else if (item is ContentModels.IconTextItem)
|
||||
{
|
||||
<div class="col-9"><span>@(item.Value<string>("text"))</span></div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
|
||||
</div>
|
@@ -1,26 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IWorkHistoryControls>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
|
||||
<div class="education group">
|
||||
<div class="heading">
|
||||
<h2 class="text-center">@Model.EducationHistoryTitle</h2>
|
||||
</div>
|
||||
@if (Model.EducationHistory != null && Model.EducationHistory.Any())
|
||||
{
|
||||
foreach (var item in Model.EducationHistory)
|
||||
{
|
||||
<div class="item">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<h3>@item.Title</h3>
|
||||
<h4 class="organization">@item.PlaceName</h4>
|
||||
</div>
|
||||
<div class="col-md-6"><span class="period">@item.StartDate.ToString("MM/yyyy") - @(item.EndDate != null && item.EndDate > DateTime.MinValue ? item.EndDate.ToString("MM/yyyy") : "Present")</span></div>
|
||||
</div>
|
||||
<div class="text-muted">@item.Details</div>
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</div>
|
@@ -1,38 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IFooterControls>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
@using Portfolio.Core.Extensions
|
||||
|
||||
@if (Model != null)
|
||||
{
|
||||
var homePage = (IPublishedContent)Model;
|
||||
|
||||
<footer class="page-footer">
|
||||
<div class="container">
|
||||
@if (Model.FooterContentLinks != null && Model.FooterContentLinks.Any())
|
||||
{
|
||||
<div class="links">
|
||||
@foreach (var item in Model.FooterContentLinks)
|
||||
{
|
||||
<a href="@item.Url" target="@item.Target">@item.Name</a>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
|
||||
@if (Model.FooterSocialLinks != null && Model.FooterSocialLinks.Any())
|
||||
{
|
||||
<div class="social-icons">
|
||||
@foreach (var item in Model.FooterSocialLinks)
|
||||
{
|
||||
@if (item is ContentModels.IconLinkItem)
|
||||
{
|
||||
var linkItem = item as ContentModels.IconLinkItem;
|
||||
<a href="@(linkItem.Link.Url)" target="@linkItem.Link.Target" rel="noopener" title="@linkItem.Link.Name" class="bg-primary"><i class="icon @(item.Value<string>("icon").ToIconClass())"></i></a>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
}
|
||||
<p class="text-center small">© Copyright @homePage.GetSiteName() @DateTime.UtcNow.Year</p>
|
||||
</div>
|
||||
</footer>
|
||||
}
|
@@ -1,13 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.CV>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
|
||||
<div class="hobbies group">
|
||||
<div class="heading">
|
||||
<h2 class="text-center">@Model.HobbiesTitle</h2>
|
||||
</div>
|
||||
<div class="text-center w-100">
|
||||
<p class="text-muted">@Model.Hobbies</p>
|
||||
</div>
|
||||
</div>
|
@@ -1,34 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.ProjectList>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
@using Portfolio.Core.Extensions
|
||||
|
||||
@{
|
||||
var projects = Model != null ? Model.Children<ContentModels.Project>().Where(x => x.IsVisible()) : Enumerable.Empty<ContentModels.Project>();
|
||||
}
|
||||
|
||||
@if (projects != null && projects.Any())
|
||||
{
|
||||
<section class="portfolio-block photography">
|
||||
<div class="container">
|
||||
<div class="row no-gutters">
|
||||
@foreach (var project in projects)
|
||||
{
|
||||
var projectTitle = project.GetPageTitle();
|
||||
<div class="col-md-6 col-lg-4 item zoom-on-hover">
|
||||
<a href="@project.Url()" title="@projectTitle">
|
||||
@if (project.MainImage != null)
|
||||
{
|
||||
<img class="img-fluid image" width="663" height="442" src="@project.MainImage.GetCropUrl(width: 663, height: 442)" alt="@project.MainImage.GetAltText()">
|
||||
}
|
||||
else
|
||||
{
|
||||
@projectTitle;
|
||||
}
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
}
|
@@ -1,10 +0,0 @@
|
||||
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
|
||||
|
||||
@using Portfolio.Core.Extensions
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta content="IE=edge,chrome=1' http-equiv='X-UA-Compatible">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<meta name="description" content="@Model.GetMetaDescription()">
|
||||
<title>@Model.GetMetaTitle()</title>
|
||||
<link rel="canonical" href="@Model.GetCanonicalUrl()">
|
@@ -1,17 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IWorkHistoryControls>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
<div class="skills portfolio-info-card">
|
||||
<h2>@Model.SkillsTitle</h2>
|
||||
@if (Model.Skills != null && Model.Skills.Any())
|
||||
{
|
||||
foreach (var item in Model.Skills)
|
||||
{
|
||||
<h3>@item.Skill</h3>
|
||||
<div class="progress">
|
||||
<div class="progress-bar" aria-valuenow="@(item.Rating)" aria-valuemin="0" aria-valuemax="100" style="width: @(item.Rating)%;"><span class="sr-only">@(item.Rating)%</span></div>
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</div>
|
@@ -1,25 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.Home>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
@{
|
||||
var pages = Model?.Children().Where(x => x.IsVisible()) ?? Enumerable.Empty<IPublishedContent>();
|
||||
}
|
||||
|
||||
<nav class="navbar navbar-dark navbar-expand-lg fixed-top bg-primary portfolio-navbar">
|
||||
<div class="container">
|
||||
<a class="navbar-brand logo" href="@Model.Url()">@(Model.SiteName)</a><button data-toggle="collapse" class="navbar-toggler" data-target="#navbarNav"><span class="sr-only">Toggle navigation</span><span class="navbar-toggler-icon"></span></button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item"><a class="nav-link active" href="@Model.Url()">@Model.Name</a></li>
|
||||
@if (pages != null && pages.Any())
|
||||
{
|
||||
@foreach (var item in pages)
|
||||
{
|
||||
<li class="nav-item"><a class="nav-link active" href="@item.Url()">@item.Name</a></li>
|
||||
}
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
@@ -1,25 +0,0 @@
|
||||
@inherits UmbracoViewPage<ContentModels.IWorkHistoryControls>
|
||||
|
||||
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels
|
||||
|
||||
<div class="work-experience group">
|
||||
<div class="heading">
|
||||
<h2 class="text-center">@Model.WorkHistoryTitle</h2>
|
||||
</div>
|
||||
@if (Model.WorkHistory != null && Model.WorkHistory.Any())
|
||||
{
|
||||
foreach (var item in Model.WorkHistory)
|
||||
{
|
||||
<div class="item">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<h3>@item.Title</h3>
|
||||
<h4 class="organization">@item.PlaceName</h4>
|
||||
</div>
|
||||
<div class="col-md-6"><span class="period">@item.StartDate.ToString("MM/yyyy") - @(item.EndDate != null && item.EndDate > DateTime.MinValue ? item.EndDate.ToString("MM/yyyy") : "Present")</span></div>
|
||||
</div>
|
||||
<div class="text-muted">@item.Details</div>
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</div>
|
Reference in New Issue
Block a user