Skip to content

Instantly share code, notes, and snippets.

View nairdo's full-sized avatar

Nick Airdo nairdo

View GitHub Profile
@nairdo
nairdo / AccountEntry.ascx
Last active August 29, 2015 14:19
A way to allow admin changeable validation for usernames created in the AccountEntry block
var usernameRegExp = new RegExp("<%= GetAttributeValue( "ValidUsernameRegularExpression" ) %>");
var usernameValidDescription = "<%= GetAttributeValue( "ValidUsernameDescription" ) %>";
availabilityMessageRow.hide();
usernameTextbox.blur(function () {
if ($(this).val() && $.trim($(this).val()) != '') {
if (! usernameRegExp.test($(this).val())) {
usernameUnavailable.html('Username is not valid! ' + usernameValidDescription );
@nairdo
nairdo / CalculateGrade.cs
Last active December 17, 2015 02:38
Gets the grade level of the person based on their High School graduation date. The grade level is -1 for prekindergarten, 0 for kindergarten, 1 for first grade, etc. and null if they do not have a graduation date set.
/// <summary>
/// Gets the grade level of the person based on their High School graduation date.
/// </summary>
/// <value>
/// The grade level (-1 for prekindergarten, 0 for kindergarten, 1 for first grade, etc.) or null if they have no graduation date.
/// </value>
[NotMapped]
[DataMember]
[MergeField]
public virtual int? Grade
@nairdo
nairdo / BadgeField-Gist.cs
Last active December 12, 2015 08:18
Added simplicity to allow BadgeField users easier usage to color code by int value
// Example Usage:
<Rock:BadgeField DataField="FlagCount" HeaderText="Flag Count" SortExpression="FlagCount"
ImportantRuleEnable="true" ImportantMin="4"
WarningRuleEnable="true" WarningMin="2"
InfoRuleEnable="true" InfoMin="1" InfoMax="2" />
// Achieved via this in the BadgeField.cs...
// In the FormatDataMethod, if no SetBadgeType event hander is defined, then try
// setting the type based on "rules":
@nairdo
nairdo / OpeningNugetPackage.cs
Created January 31, 2013 20:29
Opening a NuGet package...
/// From NuGetPackageExplorer's MainWindow OpenLocalPackageCore(string packagePath)
///
private bool OpenLocalPackageCore(string packagePath)
{
IPackage package = null;
try
{
string extension = Path.GetExtension(packagePath);
if (extension.Equals(Constants.PackageExtension, StringComparison.OrdinalIgnoreCase))
@nairdo
nairdo / NuGetPackageFolder.cs
Last active December 14, 2016 14:04
From the NuGet Package Explorer's MainWindow.xaml.cs and the PackageViewModel PackageFolder class...
///
/// Example building a package (from the NuGet PackageBuilderTest.cs class)
///
// Act
var builder = new PackageBuilder { Id = "test", Version = new SemanticVersion("1.0"), Description = "test" };
builder.Authors.Add("test");
foreach (var name in fileNames)
{
@nairdo
nairdo / RequestData.xsd
Created April 16, 2012 21:16
A draft request data-gram for the Rock Checkin system
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://tempuri.org/RequestDataSchema.xsd"
targetNamespace="http://tempuri.org/RequestDataSchema.xsd"
elementFormDefault="qualified">
<xs:element name="RequestData" type="tns:RequestDataType"/>
<!-- Root Data Bundle -->
<xs:complexType name="RequestDataType">
<xs:sequence>