robocopy, it is much more advanced than
xcopy and can simplify lots of your every-day development&deployment tasks. The good thing about Office 365 sites, is that they can be mapped as network drives, so we can use
robocopy or any other console utility to interact with files and folder on a site in an old way, just like we did with SharePoint on-prem. Unfortunately some of the system lists are not availiable when using WebDav, for example Web Part Gallery. In this case you will have to fallback to powershell or CSOM. Also, it is possible to use SharePont Online REST interface to interact with different server-side objects. It is a more advanced topic, that I won't cover in this article.
In this article we will modify XSLT Style Sheets to get a list of available item-properties.
XSLT stands for Extensible Stylesheet Language Transformations, it is a language for transforming XML documents into other XML documents, or other formats such as HTML for web pages, plain text or XSL Formatting Objects, which may subsequently be converted to other formats, such as PDF, PostScript and PNG. The original document is not changed; rather, a new document is created based on the content of an existing one. Typically, input documents are XML files, but anything from which the processor can build an XQuery and XPath Data Model can be used, such as relational database tables or geographical information systems.
If you are not familiar with XSLT, please refer to this tutorial XSLT Tutorial
Office 365 is the brand name Microsoft uses for a group of software and services subscriptions, which together provide productivity software and related services to subscribers. Office 365 offers plans providing e-mail and social networking services through hosted versions of Exchange Server, Skype for Business Server, SharePoint and Office Online, integration with Yammer, as well as access to the Microsoft Office software. There most customizable part of Office 365 is SharePoint. Many of you probably worked with SharePoint in one or another way.
SharePoint is an awesome platform, it has a lot of useful OOB features, it is usually a good idea to use Content Query Web Part or Content Search Web Part to aggregate content for end users. Both of these webparts have it is own limitations
We will use Content Query Web Part because we only need to display articles with given content type from a single site collection. Also, it provides a better user experience, because users don't need to wait until next search crawl finish.
Content Query Web Part is a part of the Enterprise Content Management (ECM) functionality in Microsoft Office SharePoint Server. It aggregates and displays list items within a site hierarchy. In addition to hierarchical query capabilities, the Content Query Web Part provides caching and query optimization for the
SPSiteDataQuery object that it contains. These optimizations have better performance than if you directly call methods of the
Recently I have been discussing my usual webpack-centric workflow with a colleague. He pointed that I use both webpack and powershell, he suggested that I should try to get rid of powershell and work on Mac or Linux (sick bastard!). In theory I can use VS Code on any platform, but I will stay on Windows for now. In any case, I decided that it is a good idea to replace some of my powershell code with nodejs scripts. I have tried to find an auth lib for SharePoint Online with no luck.
There are lots of good libs for the app-authentication, and ADAL.js is awesome. But I wanted to use login/password approach to use it from console. I tried to find a nodejs script that can upload some files to SharePoint 'Style Library' or any other document library. After searching for awhile I didn't find anything that can cover my needs. I found a few old abandoned implementations of client API interfaces to SharePoint REST services, but most of them were broken. Microsoft is constantly changing an authentication piece of Office365, so most of those libs are obsolete now. Unfortunately they are still listed on NPM. That's why I decided to roll out a new NPM module.
I found an awesome article about SharePoint Online remote authentication (and Doc upload) from Paul Ryan. It has everything you need to build an auth module for SPO in any language.
I like to play with console, but unfortunately it's not possible to create a github repository from console, so I created it manually.