Ejemplo n.º 1
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            var ctx = base.Context;

            XmlDocument viewSchema = null;

            if (ViewSchema != null)
            {
                viewSchema = ViewSchema.Read();
            }
            if (string.IsNullOrEmpty(ViewTitle) && viewSchema == null)
            {
                throw new ArgumentException("You must specify a value for at least one of the ViewTitle or ViewSchema parameters.");
            }
            var     web    = ctx.Site.OpenWeb(Web.Read());
            SPOFile file   = File.Read(web);
            SPOList list   = List.Read(web, true);
            Guid    viewId = Guid.Empty;

            if (!string.IsNullOrEmpty(ViewTitle))
            {
                var view = list.GetViews().Where(v => v.Title.ToLowerInvariant() == ViewTitle.ToLowerInvariant()).FirstOrDefault();
                if (view == null)
                {
                    throw new ArgumentException("The value specified for the ViewTitle parameter does not match an existing view.");
                }
            }

            string xml = GetXsltListViewWebPartXml(list.Id, list.Url, viewId, viewSchema, file.ServerRelativeUrl, Title, JSLink, ChromeType);

            if (list.BaseTemplate == 106)
            {
                if (viewSchema == null)
                {
                    var view = list.GetViews().Where(v => v.Title.ToLowerInvariant() == ViewTitle.ToLowerInvariant()).FirstOrDefault();
                    viewSchema = new XmlDocument();
                    viewSchema.LoadXml(view.ListViewXml);
                }
                xml = GetListViewWebPartXml(list.Id, list.Url, viewSchema, file.ServerRelativeUrl, Title, ChromeType);
            }
            if (ParameterSetName == "WikiPage")
            {
                SPOWikiPage wikiPage = file as SPOWikiPage;
                if (wikiPage == null)
                {
                    throw new Exception("The specified file is either not found or is not a wiki page.");
                }
                WriteObject(wikiPage.AddWebPartToWikiPage(xml, Title, Row, Column, AddSpace));
            }
            else
            {
                WriteObject(file.AddWebPartToWebPartPage(xml, Zone, ZoneIndex, Title));
            }
        }
        private void WriteFile(string targetFolder, SPOFile file)
        {
            string fullName = Path.Combine(targetFolder, file.Name);

            if (System.IO.File.Exists(fullName) && !Overwrite)
            {
                WriteWarning(string.Format("Unable to save \"{0}\". File already exists. Use the -Overwrite parameter to overwrite.", fullName));
                return;
            }
            WriteVerbose(string.Format("Saving {0} to {1}...", file.Name, targetFolder));
            file.SaveFileLocally(targetFolder, Overwrite);
        }
Ejemplo n.º 3
0
        public SPOFile GetFileByServerRelativeUrl(string serverRelativeUrl)
        {
            var file = _web.GetFileByServerRelativeUrl(serverRelativeUrl);

            SPOFile.LoadFile(SPOSiteContext.CurrentSiteContext.Context, file);
            var spoFile = new SPOFile(file);

            if (spoFile.ListItemAllFields != null && (spoFile.ListItemAllFields.FieldValues.ContainsKey("WikiField") ||
                                                      (serverRelativeUrl.ToLower().Contains("/sitepages/") && serverRelativeUrl.ToLower().Contains(".aspx"))))
            {
                return(new SPOWikiPage(file));
            }
            return(spoFile);
        }
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            var ctx = base.Context;

            var     web  = ctx.Site.OpenWeb(Web.Read());
            SPOFile file = File.Read(web);
            var     wpd  = file.GetWebPartDefinitions();

            if (string.IsNullOrEmpty(Title))
            {
                WriteObject(wpd);
            }
            else
            {
                WriteObject(wpd.Where(w => w.WebPart.Title == Title));
            }
        }
Ejemplo n.º 5
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            var ctx = base.Context;

            SPOFile page = null;

            if (ParameterSetName == "List")
            {
                var     web  = ctx.Site.OpenWeb(Web.Read());
                SPOList list = List.Read(web, true);
                page = list.GetRootFolder(true).GetFile(WikiPageName);
            }
            else
            {
                page = Folder.GetFile(WikiPageName);
            }
            if (page != null)
            {
                SPOWikiPage wikiPage = new SPOWikiPage(page.File);
                wikiPage.SetWikiPageLayout(WikiPageLayout);
            }
        }
Ejemplo n.º 6
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            var ctx = base.Context;

            string  xml  = WebPart.Read().OuterXml;
            var     web  = ctx.Site.OpenWeb(Web.Read());
            SPOFile file = File.Read(web);

            if (ParameterSetName == "WikiPage")
            {
                SPOWikiPage wikiPage = file as SPOWikiPage;
                if (wikiPage == null)
                {
                    throw new Exception("The specified file is either not found or is not a wiki page.");
                }
                WriteObject(wikiPage.AddWebPartToWikiPage(xml, Title, Row, Column, AddSpace));
            }
            else
            {
                WriteObject(file.AddWebPartToWebPartPage(xml, Zone, ZoneIndex, Title));
            }
        }
 public SPOFilePipeBind(SPOFile file)
 {
     _serverRelativeUrl = file.ServerRelativeUrl;
 }