Sitefinity - Page Class

by Michael Mandarino

HTML

<h1>Sitefinity - Page Class - v1.1</h1>
<h2>Last Update: May 9th 2019 by Michael Mandarino</h2>

<body id="BodyTag" runat="server">
</body>

SCSS

/* Base Styles */
*,
*:after,
*:before {
    box-sizing: border-box;
}

body {
    font-family: Helvetica, Arial, Sans-Serif;
    font-size: 16px;
    padding: 0.5em;
}

h1 {
    color: #61bb46;
    font-size: 2em;
}

h2 {
    font-size: 0.75em;
    margin-bottom: 1em;
}

JavaScript

using Telerik.Sitefinity.Web;

// FOR TEXT INPUT
protected void Page_Load(object sender, EventArgs e) {
    var provider = SiteMapBase.GetCurrentProvider() as SiteMapBase;
    var siteNode = provider.CurrentNode as PageSiteNode;
    string BodyClass = "";
    
    if (siteNode != null) {
        // FOR TEXT INPUT
        if ((siteNode.GetCustomFieldValue("BodyClass") != null)) {
            BodyClass = siteNode.GetCustomFieldValue("BodyClass").ToString();
        }
        
        //FOR CHECKBOX
        if ((siteNode.GetCustomFieldValue("CheckboxName") != null)) {
            bool isChecked = (bool) siteNode.GetCustomFieldValue("CheckboxName");
            if (isChecked) {
                BodyClass = "CustomClasName";
            }
        }
        
        //ATTACH CLASS
        BodyTag.Attributes.Add("class", BodyClass);
    }
}