Skip to content

Instantly share code, notes, and snippets.

public class DeploymentActionCreateSiteCollection : DeploymentAction<bool>
{
public DeploymentActionCreateSiteCollection(ClientContext adminTenantContext, IDeploymentActionCreateSiteCollectionArgs args, string webTemplate)
: base(adminTenantContext, "Checking for existing site collection", args.Verbose)
{
this.CommandLineArguments = args;
this.WebTemplate = webTemplate;
}
protected IDeploymentActionCreateSiteCollectionArgs CommandLineArguments { get; set; }
//
// Pleast note that this code should be used as example code only, it is not properly tested.
//
public class DeploymentActionImportTaxonomy : DeploymentAction<bool>
{
public enum ImportTaxonomyMode
{
DeleteAndRecreate,
OnlyAddNew
}
@paulryan
paulryan / provision_webpart_view.webpart.xml
Last active August 29, 2015 14:05
Provision a list view as a web part declaritively
<View WebPartZoneID="wpzHeader" WebPartOrder="0" List="Lists/PromotedLinks" DefaultView="FALSE" BaseViewID="1" Hidden="TRUE">
<![CDATA[
<webParts>
<webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
<metaData>
<type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart,Microsoft.SharePoint,Version=15.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" />
<importErrorMessage>Cannot import this Web Part.</importErrorMessage>
</metaData>
<data>
<properties>
/*
Web Property:
__PageLayouts
Web Property Value:
<pagelayouts>
<layout guid="e87b7c1d-4a23-4ca1-8fb8-36314cabb7c4" url="_catalogs/masterpage/NewsArticlePage.aspx" />
</pagelayouts>
*/
var setAvailablePageLayouts = function (availablePageLayoutFilenames, onSuccess, onFailure) {
Function ExecuteQueryWithExponentialRetry
{
Param (
[Microsoft.SharePoint.Client.ClientContext]$ctx
)
return ExecuteQueryWithExponentialRetryInternal $ctx 3 1000
}
Function ExecuteQueryWithExponentialRetryInternal
@paulryan
paulryan / tslint.json
Created September 8, 2016 15:47
SharePoint Framework: The tslint.json file from the config folder extended to support the same set of rules from my preferred tslint file.
{
// Display errors as warnings
"displayAsWarning": true,
// The TSLint task may have been configured with several custom lint rules
// before this config file is read (for example lint rules from the tslint-microsoft-contrib
// project). If true, this flag will deactivate any of these rules.
"removeExistingRules": true,
// When true, the TSLint task is configured with some default TSLint "rules.":
"useDefaultConfigAsBase": false,
// Since removeExistingRules=true and useDefaultConfigAsBase=false, there will be no lint rules
@paulryan
paulryan / tslint.json
Created September 8, 2016 15:50
SharePoint Framework: The tslint.json to use with the TSLint VS Code extension. Add the file to the root of your src folder.
{
"rules": {
// Following not supported by tslint - breaks the linter!
// "export-name": false,
// "no-duplicate-case": true,
// "no-function-expression": true,
// "no-unnecessary-semicolons": true,
// "no-unused-imports": true,
// "no-use-before-declare": true,
<webParts>
<webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
<metaData>
<type name="Microsoft.SharePoint.WebPartPages.XsltListViewWebPart, Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
<importErrorMessage>Cannot import this Web Part.</importErrorMessage>
</metaData>
<data>
<properties>
<property name="ListName" type="string">{$ListId:Documents;}</property>
<property name="ListId" type="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">$ListId:Documents;</property>
@paulryan
paulryan / cache_lib.js
Created November 20, 2016 17:34
SessionStorage cache library
var CC = CC || {};
CC.CORE = CC.CORE || {};
CC.CORE.Cache = (function () {
var defaultCacheExpiry = 15 * 60 * 1000; // default is 15 minutes
var aMinuteInMs = (1000 * 60);
var anHourInMs = aMinuteInMs * 60;
var getCacheObject = function () {
// Using session storage rather than local storage as caching benefit
@paulryan
paulryan / adal_lib.js
Created November 20, 2016 17:31
Custom "adal" implementation for OAuth implict flow
var CC = CC || {};
CC.CORE = CC.CORE || {};
CC.CORE.Log = function (errMsg) {
// console.log is undefined in IE10 and earlier unless in debug mode, so must check for it
if (typeof window.console === "object" && typeof console.log === "function") {
console.log(errMsg);
}
};