Dagens sitat
Det hender vi for spørsmål om vi har en ferdig modul for "ord for dagen" eller "dagens sitat". En av våre ansatte har på fritiden laget et eksempel som vi gjerne vil dele.
Det lages først et enkelt feltsett med feltene som skal brukes. I dette Exampleet bruker vi disse:
-
Tittel (tekstboks, brukes kun internt)
-
Sitat (tekstfelt, teaser-feltet)
-
Forfatter (tekstboks, author-feltet)
-
Dag i måned (tekstboks, intSortField1)
Det siste feltet angir hvilken dag i måneden sitatet skal vises. Scriptet tar høyde for at det ikke angis sitat for alle dager.
TemplateId til feltsettet som ble opprettet skal angis i koden under.
Dette er ascx-filen. Den kan jo for Example hete Element.DailyQuote.ascx:
<%@ Control Language="C#" Inherits="eR2UserControl" %>
<%@ Import Namespace="eR2" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
var randomQuote = (from i in db.PublishedItems
where i.TemplateId == [ANGI ID HER]
&& i.intSortField1 >= DateTime.Now.Day
orderby i.intSortField1 descending
select i).FirstOrDefault();
if (randomQuote != null)
litQuote.Text = randomQuote.Teaser + " - " + randomQuote.Author;
else
litQuote.Text = "Fant ikke sitat";
}
</script>
<asp:Literal ID="litQuote" runat="server"></asp:Literal>
Så når en har lagt inn TemplateId i koden og tilpasset med eventuell html, så er det bare å inkludere den et sted på siden.
Vi tar ikke ansvar for eventuelle feil i koden.