260 likes | 732 Vues
Fernando Leitzelar is a senior SharePoint architect and consultant with mindSHIFT Technologies, Inc., where he regularly interfaces with clients and development teams to design SharePoint-based solutions. Fernando also delivers SharePoint developer, administrator and end-user training. He has been w
E N D
1.
1 Hottest SharePoint Buzz Ever JPointFernando Leitzelar, PMPSr. SharePoint Developer
2. Fernando Leitzelar is a senior SharePoint architect and consultant with mindSHIFT Technologies, Inc., where he regularly interfaces with clients and development teams to design SharePoint-based solutions. Fernando also delivers SharePoint developer, administrator and end-user training. He has been working with SharePoint 2010 since its release, having worked extensively on designing and architecting sophisticated MOSS 2007 and 2003 applications. He maintains expertise in MOSS 2007/2010, JPoint, SharePoint Designer, ASP.NET, C#.NET, and SQL 2005/2008 reporting and business intelligence tools.About mindSHIFT: mindSHIFT Technologies is a leading Managed Services Provider (MSP) offering managed IT services, software-as-a-service (SaaS), VoIP, compliance and professional services to organizations around the world.
2
3.
3
4.
4 What is it and Why?
5.
5 OOTB
Core.js, init.js, form.js,
ActiveX-control,.ocx and .dll
More
ASP.NET, AJAX,
Silverlight blueprint,
jQuery, jQuery UI, jPoint, jQuery.SPServices
ExtJS, Prototype.js OOTB
Ajax everywhere,
Silverlight Web Parts,
ClientOM for .NET
ClientOM for ECMAScript (SP.js, SP.debug.js)
<ScriptLink>/SP.SOD.execute
Any other SharePoint JavaScript libraries MOSS 2007 vs SharePoint 2010
6.
6 owsapi.js XmlHttpRequest
jQuery.ajax()
jPoint
jQuery.SPServices
Silverlight Client Side 2007
7. Client Side 2010
7
8.
8
9. What is it?
How to use it
Why is it so popular?
Demo
9 Introduction to JPoint
10. JPoint What is it? JQuery with SharePoint
Easy Javascript / ECMAScript
Downloaded at http://docs.jquery.com/downloading_jquery and http://jpoint.codeplex.com/
Faster than the DOM
Cross Browser Supported
10
11. Integrated with Visual Studio 2010
IntelliSense available in VS 2008
Plug-ins: http://plugins.jquery.com
11
12.
12 Evolution
13.
13 with Ajax
14.
14 JQuery Syntax
15.
15 Example Show/Hide the old way
16.
16 Example Show/Hide with JPoint
17.
17 Example Ajax the old way
18.
18 Example Ajax with JPoint
19. Increases dynamic content display
Add interface enhancements without access to the Server
Lightweight 14kb (Minified and Gzipped)
Cross-browser support (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)
CSS-like syntax easy for developers/non-developers to understand
Active developer community
Extensible - plugins
19 Why is it so popular?
20. JQuery in 2010 Controls rendered by functions as opposed to HTML
Migration from MOSS 2007 Nightmare
Shift in development paradigms
20
21. JQuery in 2010 <script type=text/ecmascript>
function loadScript(scriptSrc, callbackFunction) {
var headSection = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = scriptSrc;
script.onload = callbackFunction;
script.onreadystatechange = function()
{
if (this.readyState == 'complete') {
callbackFunction();
}
}
headSection.appendChild(script);
}
function runScript() {
$(document).ready(function() {
// Your code here
});
}
_spBodyOnLoadFunctionNames.push('loadScript(\'http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js\', runScript)');
</script>
21
22.
22 Todays Demo
23. SharePoint, JPoint and AJAX
23
24. SharePoint Document Interface
24
25. SharePoint, ECMA and JQuery
25 <fieldset id="fldDemo3">
<legend></legend>
<div id="demo3Row" class="demoRow">
<div class="demoControls">
<label for="txtFilenameContains">Filename contains:</label>
<input type="text" id="txtFilenameContains" />
</div>
<div class="demoResults">
<span id="demo3Result" />
</div>
<div class="clearer" />
</div>
</fieldset>
26. SharePoint, ECMA and JQuery <script type="text/javascript">
var selectedDocs;
$('#txtFilenameContains').keyup(function (event) {
filterDocs();
});
function filterDocs() {
var ctx = new SP.ClientContext.get_current();
var docLib = ctx.get_web().get_lists().getByTitle('Shared Documents');
var query = new SP.CamlQuery();
query.set_viewXml("<View><Query><Where><Contains><FieldRef Name='FileLeafRef'/><Value Type='Text'>" + $('#txtFilenameContains').val() + "</Value></Contains></Where></Query></View>");
selectedDocs = docLib.getItems(query);
ctx.load(selectedDocs);
ctx.executeQueryAsync(getDocsWithQuerySuccess, getDocsWithQueryFailure);
}
function getDocsWithQuerySuccess(sender, args) {
$('#demo3Result').empty();
var listEnumerator = selectedDocs.getEnumerator();
while (listEnumerator.moveNext()) {
$('#demo3Result').append(listEnumerator.get_current().get_item("FileLeafRef") + '<br />');
}
}
function getDocsWithQueryFailure(sender, args) {
alert('Failed to get list items. \nError: ' + args.get_message() + '\nStackTrace: ' + args.get_stackTrace());
}
</script>
26
27.
27 Q&A
Thank you!
Fernando Leitzelar
fernando.leitzelar@mindshift.com
631-864-0264