public SiteCollectionManager(ActionRequest actionRequest, ClientContext ctx) { _actionRequest = actionRequest; _siteCollectionRequest = actionRequest.SiteCollectionRequest; _ctx = ctx; _siteTemplate = GetSiteTemplate(); }
public async Task SiteTemplateRepositoryReadTest() { var template = new SiteTemplate { Name = "test", Description = "test" }; await _target.Insert(template); var template2 = new SiteTemplate { Name = "test2", Description = "test2" }; await _target.Insert(template2); var templates = await _target.GetSiteTemplates(); Assert.IsTrue(templates.Count() >= 2); await _target.Delete(template); await _target.Delete(template2); }
public async Task Delete(SiteTemplate template) { var client = await GetDocumentDbClient(); var templateToDelete = client.CreateDocumentQuery<Document>(DocumentCollection.DocumentsLink).Where(d => d.Id == template.Name).AsEnumerable().FirstOrDefault(); if (templateToDelete != null) await client.DeleteDocumentAsync(templateToDelete.SelfLink); }
public async Task Insert(SiteTemplate template) { var client = await GetDocumentDbClient(); var document = client.CreateDocumentQuery("dbs/" + DocumentDbId + "/colls/" + _collectionId).Where(d => d.Id == template.Id.ToString()).AsEnumerable().FirstOrDefault(); if (document == null) { await client.CreateDocumentAsync("dbs/" + DocumentDbId + "/colls/" + _collectionId, template); } }
public void LoadTestDataInDocumentDb() { //todo create testdata files var template = new SiteTemplate { Name = "test", Description = "test" }; _target.Insert(template).Wait(); ; Assert.IsTrue(true); }
public async Task SiteTemplateRepositoryInsertTest() { var template = new SiteTemplate { Name = "test", Description = "test" }; await _target.Insert(template); var templates = await _target.GetSiteTemplates(); var siteCreationTemplate = templates.Where(v => v.Name == template.Name); Assert.IsNotNull(siteCreationTemplate); await _target.Delete(template); }
public bool AllFilesAvailable(SiteTemplate siteTemplate) { var colorFileAvailable = _templateFilesBlobRepository.CheckFile(siteTemplate.PnpTemplate.ComposedLook.ColorFile); var backgroundFileAvailable = _templateFilesBlobRepository.CheckFile(siteTemplate.PnpTemplate.ComposedLook.BackgroundFile); var fontFileAvailable = _templateFilesBlobRepository.CheckFile(siteTemplate.PnpTemplate.ComposedLook.FontFile); var siteLogoUrlAvailable = _templateFilesBlobRepository.CheckFile(siteTemplate.PnpTemplate.ComposedLook.SiteLogo); var customActions = siteTemplate.PnpTemplate.CustomActions.SiteCustomActions.Concat(siteTemplate.PnpTemplate.CustomActions.WebCustomActions); var sourcesAvailable = false; foreach (var customAction in customActions) { sourcesAvailable = _templateFilesBlobRepository.CheckFile(customAction.ScriptSrc); } return colorFileAvailable != false && backgroundFileAvailable != false && fontFileAvailable != false && siteLogoUrlAvailable != false && sourcesAvailable != false; }
public async Task Update(SiteTemplate oldTemplate, SiteTemplate newTemplate) { await Delete(oldTemplate); await Insert(newTemplate); }
public async Task<ActionResult> DeleteSiteTemplate(SiteTemplate templ) { await _siteTemplateService.Delete(templ); return Redirect("/SiteTemplate/Index?" + SharePointContext.CloneQueryString(HttpContext.Request)); }
public async Task<ActionResult> EditSiteTemplate(SiteTemplate model) { await _siteTemplateService.Insert(model); return Redirect("Index?" + SharePointContext.CloneQueryString(HttpContext.Request)); }
public async Task<ActionResult> Create(SiteTemplateViewModel model) { var pnpFile = await _pnpFileService.Read(model.PnpFileGuid); if (pnpFile.PnpTemplate == null) { return RedirectToAction("PickFile", new { SPHostUrl = Request.QueryString["SPHostUrl"] }); } pnpFile.PnpTemplate.ComposedLook.BackgroundFile = model.FileBgBlobLocation; pnpFile.PnpTemplate.ComposedLook.SiteLogo = model.LogoBlobLocation; pnpFile.PnpTemplate.ComposedLook.ColorFile= model.FileClrBlobLocation; pnpFile.PnpTemplate.ComposedLook.FontFile = model.FontBlobLocation ; var siteTemplate = new SiteTemplate { Id = Guid.NewGuid(), Name = model.SiteTemplateName, Description = model.Description, PnpTemplate = pnpFile.PnpTemplate, CreationTimeStamp = DateTime.Now }; await _siteTemplateService.Insert(siteTemplate); return RedirectToAction("Index", new { SPHostUrl = Request.QueryString["SPHostUrl"] }); }
public async Task Delete(SiteTemplate siteTemplate) { await _siteTemplateRepository.Delete(siteTemplate); }
public async Task Update(SiteTemplate newSiteTemplate, SiteTemplate oldSiteTemplate) { await _siteTemplateRepository.Update(newSiteTemplate, oldSiteTemplate); }
public async Task Insert(SiteTemplate siteTemplate) { await _siteTemplateRepository.Insert(siteTemplate); }