Skip to content

Instantly share code, notes, and snippets.

View sergeisnitko's full-sized avatar

Sergei Snitko sergeisnitko

View GitHub Profile
var SiteAssetsModel = SPMeta2Model.NewSiteModel(site =>
{
site
.AddTaxonomyTermStore(SpfTaxonomy.DefaultSiteTermStore(), termStore =>
{
termStore
.AddTaxonomyTermGroup(SpfTaxonomy.TermGroup(), group =>
{
group
.AddTaxonomyTermSet(SpfNavigation.GlobalNavigation(), navigation=>
using SPMeta2.Enumerations;
using SPMeta2.Standard.Definitions;
using SPMeta2.Standard.Definitions.Taxonomy;
using SPMeta2.Standard.Syntax;
using System;
using System.Collections.Generic;
namespace DEMO.Artefacts.Core
{
public static class SpfNavigation
using SPMeta2.VS.CSharp.ProvisionConsole2.Utils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SPMeta2.Models;
using SPMeta2.SSOM.Services;
using SPMeta2.CSOM.Services;
public static DateTime DateTimeByContext(this object value, ClientContext Context)
{
if (value == null)
return DateTime.MinValue;
var spTimeZone = Context.Web.RegionalSettings.TimeZone;
var SPDateTime = spTimeZone.UTCToLocalTime((DateTime)value);
Context.Load(spTimeZone);
Context.ExecuteQuery();
EnsureScriptFunc('sp.js', 'SP.ClientContext', function () {
EnsureScriptFunc('clienttemplates.js', 'SPClientTemplates', function () {
var ApplyToUrl = "~sitecollection/_catalogs/masterpage/SPF/Modules/CustomAlerts/spf.alerts.applyto.js";
var InitUrl = "~sitecollection/_catalogs/masterpage/SPF/Modules/CustomAlerts/spf.alerts.settings.js";
if (_spBodyOnLoadCalled) {
ExecuteFunction();
} else {
_spBodyOnLoadFunctions.push(ExecuteFunction);
}
var SiteAssetsModel = SPMeta2Model.NewSiteModel(site =>
{
site
.AddRootWeb(new RootWebDefinition(), RootWeb =>
{
RootWeb
.AddHostList(BuiltInListDefinitions.Catalogs.MasterPage, list =>
{
var FolderPath = Path.Combine(SystemPath, Assets);
if (Directory.Exists(FolderPath))
var SPF = SPF || {};
SPF.SPMeta2Test = SPF.SPMeta2Test || {};
SPF.SPMeta2Test.SpfQuestionGroupLookupInternalName = "SpfQuestionGroupLookup";
SPF.SPMeta2Test.QuestionGroupsList = "lists/QuestionGroups";
SPF.SPMeta2Test.SubscriberContentTypeId = "0x010015CE7134F3C648F985B261F565870E7F";
SPF.SPMeta2Test.AlertsListContentTypeId = "0x01003FF3E1F988B34BA6A792A49B89CCFE5F";
public static LookupFieldDefinition SpfQuestionGroupLookup()
{
return new LookupFieldDefinition
{
Id = new Guid("71f80b57-f171-4fc6-9a51-c4233f56b7ab"),
Title = "Группа вопросов",
InternalName = "SpfQuestionGroupLookup",
Group = "SPMetaGroup",
Required = false,
LookupList = Guid.Empty.ToString(),
public static string Assets = @"SiteAssets";
public static string SystemPath = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
public static string ApplyToPath = @"SiteAssets\SPF\Modules\CustomAlerts\spf.alerts.applyto.js";
public static void FillApplytoFile()
{
var SettingsArr = new string[]
{
"var SPF = SPF || {};",
"SPF.SPMeta2Test = SPF.SPMeta2Test || {};",
public static void GenerateJavascriptFile(string Path, string[] JavascriptRows)
{
if (System.IO.File.Exists(Path))
{
System.IO.File.Delete(Path);
}
System.IO.File.Create(Path).Dispose();
using (TextWriter tw = new StreamWriter(Path, true, Encoding.UTF8))
{
var Builder = new StringBuilder();