Skip to content

Instantly share code, notes, and snippets.


Steve Holsinger sholsinger

View GitHub Profile
sholsinger /
Created February 23, 2021 04:11
Automating SFCC B2C Pricebook Site Assignment

Assigning a Pricebook to a Site Automatically

The list of pricebooks that should be active is saved in a system-level Site Preference called, SitePriceBooks. This value can be set by importing a preferences.xml file in a site import/export archive. The value of this site preference should be a colon (:) separated list of pricebook IDs. eg:

<preference preference-id="SitePriceBooks">list-prices:sale-prices</preference>

The entire file should look like the following code snippet:

sholsinger /
Last active March 19, 2022 03:25
SFCC B2C Documentation as a Search Engine in your Browser

How to easily look up things in the SFCC B2C Docs from your URL bar

This guide is intended for use with Chrome, but this feature exists in several browsers. Add a search engine. Now that the SFCC B2C docs are publicly available, this shortcut can finally work. (Previously you had to re-authenticate periodically and then repeat your search)


Step 1 In Chrome, go to Settings > Search engine > Manage search engines (Or just navigate to: chrome://settings/searchEngines)

Step 2

View exacttarget_response.xml
<soap:Envelope xmlns:soap="" xmlns:xsi="" xmlns:xsd="" xmlns:wsa="" xmlns:wsse="" xmlns:wsu="">
<wsu:Timestamp wsu:Id="Timestamp-f8c1e842-f068-4281-87e8-82ac5b994f50">
sholsinger / image_resize.rb
Created August 2, 2012 05:06
Quick and Dirty Image Resizing with Ruby & RMagick
View image_resize.rb
require "RMagick"
# ensure dirs are available for writing
["thumbs","full","processed"].each do |dir|
if ! dir
Dir.mkdir dir
sholsinger / logparse.php
Created October 12, 2011 06:15
A quick 'n' dirrrty PHP script to parse IIS log files and insert them into a relational database table. (ala MySQL)
View logparse.php
define("DEBUG", FALSE);
function get_log_file($file_path)
return file_get_contents($file_path);
return false;
sholsinger / toKey.js
Created May 2, 2011 16:18
JavaScript method to convert a string into a reasonable "key" string.
View toKey.js
if(String.prototype.toKey === undefined)
String.prototype.toKey = function(){
var s = this.toLowerCase();
s = s.replace(/^[0-9_-]+|[^a-z0-9_\s-]|(\s.\s){1,}|[\s]{2,}|[_\s-]+$/ig, '');
s = s.replace(/[\-\s_]+/ig,"_");
return s;
sholsinger / inArray.vbs
Created April 26, 2011 20:52
VBScript tool for checking if a value is in an array.
View inArray.vbs
' returns the index of obj in array. obj can be anything. Returns -1 if not found.
Function inArray(arr, obj)
On Error Resume Next
Dim x: x = -1
If isArray(arr) Then
For i = 0 To UBound(arr)
If arr(i) = obj Then
x = i
Exit For
sholsinger / addBusinessDays.js
Created April 18, 2011 21:58
A JavaScript module to extend the Date prototype to provide an easy method for adding to or subtracting from a Date instance in business days.
View addBusinessDays.js
if(Number.prototype.mod === undefined)
Number.prototype.mod = function(n) {
return ((this%n)+n)%n;
if(Date.prototype.addBusinessDays === undefined)
Date.prototype.addBusinessDays = function(dd) {
var weeks = (dd >= 0) ? Math.floor(dd/5): Math.ceil(dd/5);
sholsinger / BusinessDayAdd.vbs
Created April 15, 2011 15:20
Visual Basic Script for doing "working day" arithmetic. Use this function to add or subtract business days from a VBScript date object.
View BusinessDayAdd.vbs
Function BusinessDayAdd(delta, dt)
dim weeks, days, day
weeks = Fix(delta/5)
days = delta Mod 5
day = DatePart("w",dt)
If (day = 7) And days > -1 Then
If days = 0 Then
days = days - 2
sholsinger / gist:901874
Created April 4, 2011 16:00
VBScript Tools for measuring the length of an array and appending values to a Dynamic array
View gist:901874
' appends the second argument to the first if the first is an array.
' MUST be a dynamic array! Returns new array.
' Usage:
' Dim myArray()
' myArray = ArrayAppend(myArray, "foo")
Function ArrayAppend( a, o )
On Error Resume Next
dim tn, i
i = 0