Skip to content

Instantly share code, notes, and snippets.

View asmagin's full-sized avatar

Alex Smagin asmagin

View GitHub Profile
@asmagin
asmagin / CustomLinqToSolrIndex.cs
Last active August 29, 2015 14:01
Sitecore Solr Provider: Spell Checking
public class CustomLinqToSolrIndex<TItem> : LinqToSolrIndex<TItem>
{
private readonly SolrSearchContext context;
private readonly string cultureCode;
/// <summary>
/// Initializes a new instance of the <see cref="CustomLinqToSolrIndex{TItem}" /> class.
/// </summary>
/// <param name="context">The context.</param>
@asmagin
asmagin / GetLayoutRenderingWithFallback.cs
Created May 15, 2014 06:08
Sitecore MVC: Layout with Device Fall Back
namespace Example
{
using System.Collections.Generic;
using System.Linq;
using Sitecore;
using Sitecore.Data.Items;
using Sitecore.Mvc.Extensions;
using Sitecore.Mvc.Pipelines.Response.GetPageRendering;
using Sitecore.Mvc.Presentation;
@asmagin
asmagin / ImageProcessor.cs
Last active August 29, 2015 14:01
Create round images in Sitecore
namespace Examples
{
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Linq;
using Sitecore.Data.Items;
using Sitecore.Diagnostics;
@asmagin
asmagin / AreaController.cs
Last active August 29, 2015 14:02
MVC areas in Sitecore
namespace Examples.Common.Sc.Pipelines
{
using System;
using Sitecore.Data;
using Sitecore.Mvc.Pipelines.Response.GetRenderer;
using Sitecore.Mvc.Presentation;
public class AreaController : GetRendererProcessor
{
public override void Process(GetRendererArgs args)
@asmagin
asmagin / DataSourceTokens.cs
Created June 22, 2014 13:56
DataSourceTokens
namespace IExamples.Sc.Pipelines.GetLookupSourceItems
{
using System.Linq;
using Sitecore.Data;
using Sitecore.Data.Fields;
using Sitecore.Data.Items;
using Sitecore.Diagnostics;
using Sitecore.Pipelines.GetLookupSourceItems;
@asmagin
asmagin / RolesInitializer.cs
Created September 25, 2014 09:54
Users and roles init
namespace SampleSite
{
using System.Linq;
using System.Web.Security;
using Sitecore.Diagnostics;
using Sitecore.Pipelines;
using Sitecore.Security.Accounts;
public class RolesInitializer
@asmagin
asmagin / designer.html
Last active August 29, 2015 14:11
designer
<link rel="import" href="../core-icon-button/core-icon-button.html">
<link rel="import" href="../core-toolbar/core-toolbar.html">
<link rel="import" href="../core-scroll-header-panel/core-scroll-header-panel.html">
<polymer-element name="my-element">
<template>
<style>
:host {
position: absolute;
using System;
using System.IO;
using Newtonsoft.Json;
using YamlDotNet.Serialization;
internal class Program
{
private const int count = 10000;
@asmagin
asmagin / Catalog - Action - ProductRecommendation.cs
Created August 30, 2016 04:19
Sitecore Catalog Module for Habitat
/// <summary>
/// An action to manage data for the ProductList
/// </summary>
/// <param name="pageNumber">The page number.</param>
/// <param name="facetValues">The facet values.</param>
/// <param name="sortField">The sort field.</param>
/// <param name="sortDirection">The sort direction.</param>
/// <returns>
/// The view that represents the ProductList
/// </returns>
private MultipleProductSearchResults GetMultipleProductSearchResults(BaseItem dataSource,
CommerceSearchOptions productSearchOptions)
{
Assert.ArgumentNotNull(productSearchOptions, "productSearchOptions");
MultilistField searchesField = dataSource.Fields[Templates.ProductSearch.Fields.NamedSearches.ToString()];
var searches = searchesField.GetItems();
var productsSearchResults = new List<SearchResults>();
foreach (var search in searches)