Skip to content

Instantly share code, notes, and snippets.

View mattbrailsford's full-sized avatar

Matt Brailsford mattbrailsford

View GitHub Profile
{
"title" : "Home",
"alias" : "",
"view" : "HomePage",
"pages" : [
{
"title" : "Blog",
"alias" : "blog",
"view" : "BlogIndex",
"pages" : [
{
"title": "{{title}}",
"description": "Hard coded description",
"posts": [
{
"#each $..pages[?(@.view == 'BlogPost')]": {
"title": "{{title}}",
"url" : "{{url}}",
"visible" : "{{visible}}"
}
using System;
using System.Collections.Generic;
using System.Linq;
using MyProj.Extensions;
using MyProj.Models;
using Umbraco.Core;
using Umbraco.Core.Persistence;
namespace MyProj.Helpers
{
// Filter to take a node id and grab it's name instead
// Usage: {{ pickerAlias | ncNodeName }}
// Cache for node names so we don't make a ton of requests
var ncNodeNameCache = {
id: "",
keys: {}
}
angular.module("umbraco.filters").filter("ncNodeName", function (editorState, entityResource) {
public static class TwitterAccountRawEndpointExtensions
{
public static SocialHttpResponse VerifyCredentialsWithParams(this TwitterAccountRawEndpoint endpoint, bool includeEntities = false, bool skipStatus = false, bool includeEmail = false)
{
return endpoint.Client.DoHttpGetRequest("https://api.twitter.com/1.1/account/verify_credentials.json", new NameValueCollection
{
{ "include_entities", includeEntities ? "true" :"false" },
{ "skip_status", skipStatus ? "true" :"false" },
{ "include_email", includeEmail ? "true" :"false" }
});
public static class PublishedContentExtensions
{
public static string GetLanguage(this IPublishedContent content, bool recursive = false)
{
try
{
var db = ApplicationContext.Current.DatabaseContext.Database;
var sql = "SELECT [languageISOCode] FROM [umbracoLanguage] JOIN [umbracoDomains] ON [umbracoDomains].[domainDefaultLanguage] = [umbracoLanguage].[id] WHERE [umbracoDomains].[domainRootStructureID] = @0";
var cultureCode = db.ExecuteScalar<string>(sql, content.Id);
SELECT migs.avg_total_user_cost * (migs.avg_user_impact / 100.0) * (migs.user_seeks + migs.user_scans) AS improvement_measure_pct ,QUOTENAME(db_name(mid.database_id)) AS [database]
,QUOTENAME(OBJECT_SCHEMA_NAME(mid.object_id, mid.database_id)) AS [schema]
,QUOTENAME(OBJECT_NAME(mid.object_id, mid.database_id)) AS [table]
,'CREATE INDEX [mi_' + SUBSTRING(CONVERT(VARCHAR(64), NEWID()), 1, 8) + ']' + ' ON ' + mid.statement + ' (' + ISNULL(mid.equality_columns, '') + CASE
WHEN mid.equality_columns IS NOT NULL
AND mid.inequality_columns IS NOT NULL
THEN ','
ELSE ''
END + ISNULL(mid.inequality_columns, '') + ')' + ISNULL(' INCLUDE (' + mid.included_columns + ')', '') AS create_index_statement
,migs.*,mid.database_id
@mattbrailsford
mattbrailsford / XXTea.cs
Created June 13, 2017 12:09 — forked from lski/XXTea.cs
A c# implementation of XXTea encryption algorithm based on the javascript version by Chris Veness
using System;
using System.Text;
/// <summary>
/// A class for encrypting and decrypting a string into base64 format which makes it safe for transfer
/// between applications.
///
/// Reference:
/// Based upon the javascript implementation of xxtea by: Chris Veness
/// www.movable-type.co.uk/tea-block.html
@mattbrailsford
mattbrailsford / ExamineExtensions.cs
Last active December 10, 2017 11:42
Random results with Examine
using System.Collections.Generic;
using System.Linq;
using Examine;
using Examine.LuceneEngine;
using Helpers;
namespace Extensions
{
public static class ExamineExtensions
{
@mattbrailsford
mattbrailsford / c:\programdata\backblaze\bzdata\bzexcluderules_editable.xml
Last active January 31, 2018 20:11
Developer BackBlaze folder/file exclussions
<?xml version="1.0" encoding="UTF-8" ?>
<bzexclusions>
...
<!-- Exclude dropbox folder -->
<excludefname_rule plat="win" osVers="*" ruleIsOptional="t" skipFirstCharThenStartsWith=":\Users\" contains_1="\Dropbox\" contains_2="*" doesNotContain="*" endsWith="*" hasFileExtension="*" />
<!-- Exclude git folders -->
<excludefname_rule plat="win" osVers="*" ruleIsOptional="t" skipFirstCharThenStartsWith=":\Users\" contains_1="\.git\" contains_2="*" doesNotContain="*" endsWith="*" hasFileExtension="*" />