воскресенье, 30 декабря 2012 г.

Exduct coupons

Coupon Code:  5off60 
Buy $60 product value,save $5 off,
This coupon can be used up to 200 times.

Coupon Code:  10off100
Buy $100 product value,save $10 off
This coupon can be used up to 200 times.

среда, 19 декабря 2012 г.

понедельник, 17 декабря 2012 г.

Как получить URL из поля гиперссылка (hyperlink) SharePoint

И не надо никаких String.Substring! Просто:
var url = new SPFieldUrlValue(item["URL"].ToString()).Url;

А если очень умничать и юзать стандартные поля, то так:
var url = new SPFieldUrlValue(item[SPBuiltInFieldId.URL].ToString()).Url;

Для других страшных типов полей (Lookup, User) алгоритм такой же.

вторник, 4 декабря 2012 г.

Локализация в SharePoint. Получение строк из ресурсов

При получении строк из ресурсных файлов при разработке под SharePoint используют метод SPUtility.GetLocalizedString.

Одним из параметров идёт язык (uint language), т.е. для какого языка нам нужна строка. Проблема возникает откуда узнать текущий язык.

Самая первая ошибка - это использовать SPWeb.Language. Но это всего лишь дефолтный язык создания узла, только чтение, совсем нам не подходит. Вы могли создать узел на английском языке, а потом поменять язык на русский (SPWeb.Language останется английским)

Следующая ошибка - System.Threading.Thread.CurrentThread.CurrentCulture или CultureInfo.CurrentCulture, либо не CurrentCulture, а CurrentUICulture. В любом случае не верно. Тред может быть под любой культурой, ещё хуже, что эту культуру можно изменить, например в какой-нить другой веб-части. Ну и просто архитектурно не верно - мы опускаемся ниже объектной модели SharePoint, а это чревато игнорированием его особенностей, что, собственно, и произошло.

Верный способSPWeb.Locale - вернёт региональные настройки (в SiteSettings которые). Зависят/влияют ли они на культуру треда, язык операционки сервера или клиента нас не волнует.

Таким образом, для SPUtility.GetLocalizedString надо использовать SPWeb.Locale.LCID в качестве параметра language, в этом случае ваши решения будут использовать тот же формат, что выставлен в настройках узла.

понедельник, 3 декабря 2012 г.

Как исправить страшные шрифты в TotalCommander под Windows 7 и выше

Проблема в ClearType - если отключить, то TotalCommander будет смотреться хорошо, но весь остальной интерфейс винды будет ужасен =).

Решение простое - другой шрифт. Лучше всего смотрится Segoe UI.