By now you may have heard that JavaScript is becoming a viable solution for SharePoint Development, but where do you get started? This session will start with some of the basics and introduce attendees to a few different Javascript libraries such as jQuery, Knockout, Bootstrap, etc. It will showcase SharePoint's REST API and provide some examples of how to conduct basic CRUD operations which you can repurpose for your own custom SharePoint Apps.
[Slides from my 'Edge of the Web' workshop]
The web platform has evolved significantly over the last several years, giving developers more power than ever to create rich, interactive applications delivered via browsers. New capabilities in HTML, CSS and JavaScript paired with constantly updating browsers make it possible to do things on the web that used to be the exclusive domain of plugins and native apps. In this workshop, you’ll be introduced to some of the most powerful and useful techniques available to the modern web developer that will change the way you think about web app development.
The future of web app development is exciting, and these are the technologies that will underpin and drive that change. Don’t get left behind with IE8-era knowledge. Get ahead of the curve and master the edge of the web.
[Slides from my 'Edge of the Web' workshop]
The web platform has evolved significantly over the last several years, giving developers more power than ever to create rich, interactive applications delivered via browsers. New capabilities in HTML, CSS and JavaScript paired with constantly updating browsers make it possible to do things on the web that used to be the exclusive domain of plugins and native apps. In this workshop, you’ll be introduced to some of the most powerful and useful techniques available to the modern web developer that will change the way you think about web app development.
The future of web app development is exciting, and these are the technologies that will underpin and drive that change. Don’t get left behind with IE8-era knowledge. Get ahead of the curve and master the edge of the web.
HTML5 and CSS3 have arrived and they are redefining rich, standards-based web development. Features previously the exclusive domain of browser plug-ins can now be added to web applications as easily as images. Understanding the new power that these standards define, as well as the rapidly increasing power and speed of JavaScript in modern browsers and devices is essential. These slides accompany a full-day workshop, where attendees are guided through the new features in HTML5 and CSS3, with special attention to how these technologies can be used today in new and old browsers.
This presentation was given at SharePoint Saturday Virginia Beach 2012. The topic covers some SharePoint based solutions that directly benefit from HTML5 features.
Introduction to Paul Irish and Divya Manian's HTML5 Boilerplate project. HTML5 Boilerplate helps you to quickly get up and running with front-end web project.
DSL, Page Object and Selenium – a way to reliable functional testsMikalai Alimenkou
Presentation from first Selenium conference in Europe - Selenium Camp (http://seleniumcamp.com) about different test design approaches to make functional tests on Selenium more flexible, reliable and stable.
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Geoff Varosky
Abstract: “Why am I getting a security error??” “Why does my code work sometimes, but not others?” “I wonder if McDonalds is hiring.” Writing custom code in SharePoint opens up unlimited possibilities but also throws many hurdles in your way that will slow you down if you don’t take them into account. So, before giving up and searching for careers in the fast food industry, equip yourself with the knowledge you need to succeed in writing custom code for SharePoint.
HTML5 and CSS3 have arrived and they are redefining rich, standards-based web development. Features previously the exclusive domain of browser plug-ins can now be added to web applications as easily as images. Understanding the new power that these standards define, as well as the rapidly increasing power and speed of JavaScript in modern browsers and devices is essential. These slides accompany a full-day workshop, where attendees are guided through the new features in HTML5 and CSS3, with special attention to how these technologies can be used today in new and old browsers.
This presentation was given at SharePoint Saturday Virginia Beach 2012. The topic covers some SharePoint based solutions that directly benefit from HTML5 features.
Introduction to Paul Irish and Divya Manian's HTML5 Boilerplate project. HTML5 Boilerplate helps you to quickly get up and running with front-end web project.
DSL, Page Object and Selenium – a way to reliable functional testsMikalai Alimenkou
Presentation from first Selenium conference in Europe - Selenium Camp (http://seleniumcamp.com) about different test design approaches to make functional tests on Selenium more flexible, reliable and stable.
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Geoff Varosky
Abstract: “Why am I getting a security error??” “Why does my code work sometimes, but not others?” “I wonder if McDonalds is hiring.” Writing custom code in SharePoint opens up unlimited possibilities but also throws many hurdles in your way that will slow you down if you don’t take them into account. So, before giving up and searching for careers in the fast food industry, equip yourself with the knowledge you need to succeed in writing custom code for SharePoint.
The slides from Michael Blumenthal's and Jack Fruh's "Be a Hero with PowerShell" workshop at SharePoint fest, a comprehensive introduction to using PowerShell with SharePoint.
Intro to mobile web application developmentzonathen
Learn all the basics of web app development including bootstrap, handlebars templates, jquery and angularjs, as well as using hybrid app deployment on a phone.
SPS Monaco 2017 - The Lay of the Land of Client-Side Development circa 2017Marc D Anderson
Are you dazzled by all the noises you hear about client-side development? Do the grunts and gulps leave you a little confused? In this session, we’ll talk about the types of things you can do with client-side development, how SharePoint can be used as a service (SPaaS?) and what the popular tool sets are. This are moving fast, so it's guaranteed that between writing this abstract and doing the session, things will have changed.
Whether you’re a server-side developer who wants to catch up with the new trends, a power user wanting to flex your muscles in new ways, or an end user who would like to speak more intelligently with IT, this session will provide useful foundation information as well as a guide to where your learning should progress to work with "modern" SharePoint.
JavaScript front end performance optimizationsChris Love
No one wants a slow loading, slow reacting application. As page weight has increased so has the dependency on JavaScript to drive rich user experiences. Today many pages load over 2MBs of JavaScript, but is this healthy? Do your scripts and dependencies perform well? In this session we will review common JavaScript performance bottlenecks, how to detect them and how to eliminate them.
This session will review common bad coding syntax, architecture and how to replace them with better alternatives. You will also be exposed to caching, code organization, build and deployment best practices that produce the best user experiences. Finally, you will see how to use the navigation timing and performance timing APIs to fine tune your applications to produce a fast, lean application your customers will love.
The market share for SharePoint has grown in leaps and bounds over the last few years, leading to many developers being told that they are now SharePoint developers. Developing for SharePoint is a strange new world; we will cover what’s new, what’s the same, the top things that every SharePoint developer should know, and a few things to make every new developer’s life easier.
Custom Development in SharePoint – What are my options now?Talbott Crowell
Since Microsoft has released SharePoint 2013 with a whole new application development methodology, there has been some confusion and frustration in the community on what the best approach for customizing SharePoint for developers. In this session, we will look at the options, new and old, and discuss the pros and cons. We may even see some novel approaches you haven’t thought about yet.
Similar to A Beginner's Guide to Client Side Development with Javascript (20)
Microsoft has been full pedal to the metal with introducing new features & services in Office 365, making the decision for when to use what quite difficult for organizations. Come explore different business use cases and how they align with core services such as Teams, Groups, and Yammer. We will talk about concepts such as audience, tone, and impact to help make informed decisions when recommending Office 365 solutions to solve business problems. Finally, we will talk about ways to help enable your business customers to adopt these services and ultimately realize the benefit of your organization's Office 365 investment.
Groups are a new feature in Office 365 for communication and collaboration
›Groups are not based in SharePoint Online or Exchange Online etc. Groups are an Office 365 feature that use several components from SharePoint Online, Exchange Online, Azure and more…
›Groups are a loose coupling of independent services
SharePoint developers regularly face the decision, where do I put my application’s data? Sometimes this is an easy choice, using SharePoint Lists, or a SQL Server Database, but often a better solution exists. Or at least knowing that alternatives exist is beneficial, and further knowing when to use them. There are actually many storage options that both ASP.NET and SharePoint (along with modern browsers, HTML5, JavaScript) offer. This session will discuss many of these choices with best practices in mind along with live demonstrations. Examples include SharePoint Lists, Secure Store, property bags, persisted objects, Linq (to SQL, Entity, and SharePoint), web part properties, serialization options (to/from JSON and XML), session state, viewstate, httpruntime, application state, and thread bag. Also, client side storage examples will be introduced using modern HTML5 and JavaScript techniques. Further, free 3rd party products will be introduced that can be employed. Applies to all modern versions of SharePoint including 2013.
Continuous Integration is a wonderful and popular practice in the software development universe. Yet, for whatever reason, it seems much less commonly utilized in the SharePoint community. SharePoint (naturally) throws a few wrinkles into the process, but no substantial roadblocks, and the benefits of CI can be realized just as well on SharePoint projects as anywhere else. In this session, you'll learn why you should implement a CI process and then see how to do it using TFS and Visual Studio.
So you’ve inherited a SharePoint environment and need it secure, ASAP. The talk explains how to do this in a methodical way, to address all the levels of SharePoint security. This is ideal for the SharePoint administrator who needs to address the server security realm and the security officer who needs to understand SharePoint security.
Like taking responsibility of relationship after commitment is important, monitoring applications after they go live is important!!!
Microsoft’s answer to this curious case is a cloud based service named Application Insights provided as part of Visual Studio Online.
In this session, we will figure out how we can analyze whether our applications are living up to the expectations from Availability and Performance point of view, how we can drive our applications towards having long life and much more fun stuff!!
Knowing the vast majority of the content accessed via SharePoint is stored in SQL Server, and also knowing an incorrect configuration of SQL Server can have a detrimental impact on the performance of SharePoint it is important to understand the integration of these two products. Regardless of whether you have a dedicated DBA, or the SharePoint administrator is also the DBA, there are critical SQL Server configurations that can be made that will improve the performance of SharePoint. Often DBA’s are familiar with how to manage SQL Server, but may not be familiar with some nuances that SQL Server has when integrated with SharePoint. In this session we will demonstrate how some default SQL Server settings negatively impact SharePoint and what changes can be made to improve the performance of SharePoint. These changes include database file settings and SQL Server instance settings. We'll also examine how to properly install SQL Server and SharePoint so they work together as efficiently as possible. This discussion will introduce the Best Practices framework that will allow your SharePoint administrator and/or your DBA to configure SharePoint and SQL Server to provide optimal performance for your SharePoint implementation
The Microsoft Office Web Applications that were once configured and managed as a service application in SharePoint 2010 are configured and managed completely different in SharePoint 2013. The Office Web Applications (OWA) are now created in an Office Web Apps farm, which allows you to create a universal Office Web App environment that can host multiple SharePoint farms, as well as communicate with Lync and Exchange servers. The OWA farm allows users to create, edit, and share content using browser-based versions of Word, Excel, PowerPoint, and OneNote. Furthermore, OWA can be configured to enhance the users search experience by providing a document preview or thumbnail that is viewable from within the search result set. This session will discuss how and why you will want to implement the new Office Web Apps and the many benefits of doing so.
Apps for Office introduces a new programming model that is so flexible, you may not believe it unless you see it with your own eyes. You might say it is dangerously simple to enhance the functionality of Office. Apps for Office allow you to enhance the user experience for Access, Excel, Outlook, PowerPoint, Project and Word, most likely using your existing skills.
Starting with a brief discussion surrounding the road-map for the various types of Office apps, this talk will focus primarily on Mail apps and how you can use them to provide very valuable enhancements to the message and appointment (reading and composing) experiences.
You will learn about what if takes to develop a Mail app (a real app, currently under development will be shown), what the infrastructure looks like to deploy a mail app, what the licensing process looks like and how easy they are to monetize.
After the discussion, you will likely be beaming with ideas and be rushing home to begin building your very own App for Office.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
Developing Distributed High-performance Computing Capabilities of an Open Sci...
A Beginner's Guide to Client Side Development with Javascript
1.
2. NEW JERSEY SHAREPOINT USER GROUP
• Different SharePoint discussions each
month on various topics. Announced on
meetup.com
• Meets 4th Tuesday of every month
• 6pm – 8pm
• Microsoft Office (MetroPark)
• 101 Wood Ave, Iselin, NJ 08830
• http://www.njspug.com
3. THANK YOU
EVENT SPONSORS
• Diamond & Platinum sponsors
have tables here in the Fireside
Lounge
• Please visit them and inquire
about their products & services
• Also to be eligible for prizes
make sure to get your bingo card
stamped
4. What we’ll cover today
4
JavaScript in Content Editor Web Part (CEWP)
JavaScript in an ASPX page – created in SharePoint Designer (SPD)
REST – CRUD operations
Bootstrap – just the basics
Session Goals
• Provide enough information for you to get started with a few basic
examples to get past the initial learning curve
• Focus on approaches that can be utilized by a Site Owner in SharePoint
2010 / 2013 on premise or Office 365 without the App model
5. Session warning
5
This session is awesome
There will be some code
There will be awesome demos
6. About Jared
6
SharePoint Consultant with Slalom Consulting
10+ years in the IT Field, 0 book deals
President of CT SharePoint Users Group (www.ctspug.org)
Blog: www.jaredmatfess.com
Twitter: @JaredMatfess
E-mail: JaredM@slalom.com
7. About Chris
7
SharePoint Lead at Saint Francis Hospital
15+ years IT experience
Got married in April
Not president of CT SharePoint Users
Group (www.ctspug.org)
Author of SharePoint 2013 Web Analytics
Data Export CodePlex project
http://sp2013wade.codeplex.com
8. About Schmidt
8
Great movie starring Jack Nicholson
Has nothing to do with our presentation
Spoiler Alert: Kathy Bates skinny dips in
a hot tub
12. The pain..
12
Migrating lots of old data
The fight to define (or justify) Information Architecture
The G-Word (Governance)
Technology – acquiring the hardware
Addressing the Customizations
13. Does it need to be server side code?
13
Server Side Code
Timer jobs
Custom site definitions
3rd party products where you have no choice
Custom workflows (when you don’t own Nintex or K2)
Client Side Code
Everything else
14. The big M(icrosoft)
14
O365 is Microsoft’s “Cash Cow”
You cannot deploy server-side code to O365
MSFT is rolling out features to O365 first
On premises second
The client side API’s are getting better!
Everybody’s doing – JavaScript is blowing up
17. Benefits of JavaScript
17
SharePoint Admins are happy to get those WSP’s out of their farm
Developers are happy because they can deploy new functionality without
those grumpy SharePoint Admins
JavaScript skills translate to other opportunities outside of SharePoint
19. Our recommendation for beginners…
19
Here are the frameworks / libraries that I’d like to talk about:
JavaScript
jQuery
Most of the code samples you'll find on the web use jQuery
Bootstrap
*As advertised in the session description
20. jQuery
20
jQuery is the most popular JavaScript library in use today
Used by over 60% of the 10,000 most visited websites
It’s probably in your environment and you don’t even know it
Greatly simplifies cross-browser client-side scripting of HTML
Handles compatibility issues with older browsers (ex: IE6 / IE7 / IE8)
Most SharePoint code examples on the internet use jQuery
21. Where do I put my scripts?
21
Option #1 Place code directly in Content Editor Web Part (CEWP)
• Not so good
Option #2 Create a “Scripts” library and put them there – much better
• Enable Versioning (just in case)
Option #3 Drop it in the hive (on premise only)?
• Only if you want to dance with danger
Option #4 Bundle with a SharePoint App (2013 only)
22. What tools do I need to write code?
22
Your favorite text editior (ex: NotePad ++)
Visual Studio
Sublime
Web Storm
Emacs or Vim for the hardcore
The list goes on and on…
23. What tools do I need to troubleshoot
code?
23
Internet Explorer F12 Developer Tools
Chrome Developer Tools
Firefox / Firebug
Fiddler
25. REST Fundamentals
25
The term representational state transfer was introduced and defined in 2000 by
Roy Fielding in his doctoral dissertation at UC Irvine
What is REST or RESTful?
Representational State Transfer – is that helpful?
A RESTful service adheres to the 4 basic design principals outlined in Fielding’s
dissertation
Often times referred to as an alternative to SOAP
26. REST Design Principles
26
Four basic design principles:
Use HTTP methods explicitly (POST, GET, PUT, DELETE)
Be stateless
Expose directory structure-like URIs
Transfer XML, JavaScript Object Notation (JSON), or both
27. Reading Data using REST / jQuery
27
JavaScript with jQuery
$.ajax({
url: "http://siteurl/_api/web/lists",
type: "GET",
headers: {
"ACCEPT": "application/json;odata=verbose"
},
success: doSuccess,
error: doError
});
28. Working with REST
28
Since REST uses HTTP methods you can test your queries in the browser
https://ctsharepointusergroup.sharepoint.com/bootstrap/_api/Web/Lists/GetByTitle('CustomNews')
32. Better yet…
32
Postman is Google Chrome
extension that can be used to
quickly create and test REST calls
Can execute different types of
HTTP requests (GET, POST,
DELETE, PATCH etc.)
Output can be “Raw” or “Pretty”
for improved readability
http://www.getpostman.com
Postman REST Client for Chrome
33. Creating Data using REST
33
JavaScript with JQuery
jQuery.ajax({
url: “http://siteurl/_api/web/lists”,
type: "POST",
data: JSON.stringify({ '__metadata': { 'type': 'SP.List' }, 'AllowContentTypes':
true, 'BaseTemplate': 100,
'ContentTypesEnabled': true, 'Description': 'My list description', 'Title':
'Test' } ),
headers: {
"accept": "application/json;odata=verbose",
"content-type":"application/json;odata=verbose",
"content-length":length of post body
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: doSuccess,
error: doError
});
34. Updating Data using REST
34
JavaScript with JQuery
jQuery.ajax({
url: “http://siteurl/_api/web/lists/GetByTitle(‘Test')”,
type: "POST",
data: JSON.stringify({ '__metadata': { 'type': 'SP.List' }, 'Title': 'New title'
} ),
headers: {
“X-HTTP-Method”:”MERGE”,
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length":length of post body
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
“IF-MATCH”: “*”
},
success: doSuccess,
error: doError
});
35. Putting it All Together for a Simple
Example
35
1. Create a Document Library called Scripts and enable Versioning
2. Download a copy of jQuery and upload to Scripts library
3. Create a .txt file in your favorite code editor that contains or links to your
HTML, CSS, and JavaScript
4. Add an empty Content Editor Web Part (CEWP) to any SharePoint Page
where you would like to put your content
5. Configure Content Editor Web Part (CEWP) to point at .txt file with code
43. Putting it All Together for a Simple
Example
43
1. Create an empty .ASPX page in the Site Pages library with SharePoint
Designer
2. Download Bootstrap files and copy to SharePoint library
3. Copy Bootstrap boilerplate HTML code into .ASPX page
4. Update HTML content placeholders to have unique Ids
5. Add JavaScript (equivalent to previous demo)
Conversation about upgrading SharePoint is a real pain..And you might be
Microsoft MVP, Works for Rackspace
SharePoint Admin Netcast
Quick Todd Klindt shout-out – Mondays @ 8:30 PM CST – http://www.toddklindt.com
All that server side code..
Branding
Missing source code
Elevation of privs to the farm account - can do whatever it wants
Consumes less resources on the server (javascript)
Brings down the environment – 55 WSP’s @ old company
*** Back in the day the thinking was server side first, and client side “maybe” ***** Today’s thinking – Client Side first **If the answer is No – go client side..
Default client side – vs old model of defaulting server side
Still Jared **
Before we get into frameworks, let’s talk about Javascript.JavaScript is like that nerd (or maybe it was you) that asked you out a million times to prom. Long-term you know it would be good for you.. That nerd would grow up, get a great job, be able to provide for you.. By man oh man, did that C# Server Side code look good at the time.. You were a hot commodity, recruiters couldn’t throw money at you fast enough to churn out those webparts that displayed Dilbert cartoons, stock tickers, all that other nonsense. First class citizen in SHarePoint Development
***Thousands of JavaScript libraries / frameworks are available to facilitate development of JavaScript-based applications
*** Wikipedia’s list of “notable” JavaScript libraries contains 65 items
Chris starts speaking
Chris speaks to this slide
Chris speaks to this slide
** Chris is REST-less **
Jared to hop in real quick
Jared
Jared
Basically what you’re seeing here is SharePoint spitting back XML of all the Lists in the CTSPUG.ORG O365 site.. (plz don’t hack us)
Chris picks it back up here
** Jared to talk **
Bootstrap is a combination of CSS & Javascript libraries
Jared talking
Bootstrap is a combination of CSS & Javascript libraries
Good to get a quick nice visual - still requires effort