PyBossa.JS JavaScript library for PyBossa

Size: px
Start display at page:

Download "PyBossa.JS JavaScript library for PyBossa"

Transcription

1 PyBossa.JS JavaScript library for PyBossa Release 0.1 Citizen Cyberscience Centre and Open Knowledge Foundation Feb 26, 2018

2

3 Contents 1 User Guide Useful Links Indices and tables 9 i

4 ii

5 PyBossa.JS is an open source library for the PyBossa crowd-sourcing framework. PyBossa is designed to distribute tasks that require human cognition, knowledge or intelligence (e.g. image classification, transcription, information location etc). PyBossa.JS simplifies the access to the PyBossa API providing several public methods that will get and submit a task for a given project in PyBossa. Contents 1

6 2 Contents

7 CHAPTER 1 User Guide This section covers how to use PyBossa.JS from the perspective of a PyBossa end-user such as: Creators and managers of a specific PyBossa microtasking project: getting a task and saving the answer from the volunteers in the data base. We suggest starting by taking a quick look at the overview of the PyBossa system as this will introduce you to a few pieces of terminology and help you understand how things fit together. 1.1 Useful Links Mailing list: Source code: User stories: General etherpad: Quickstart The library is provided with the PyBossa server. However, the source code and unit tests for PyBossa.JS are included in a different repository and distributed as a git submodule for PyBossa. If you are creating a new PyBossa project, you will get the library loaded for you, so you only need to start using it (check the demo projects)[ <script src=/static/js/pybossa/pybossa.js> You can get the source code cloning/forking the repository: git clone Or download the ZIP file from this URL: 3

8 Using PyBossa.JS Once the library has been loaded, you will be able to get tasks for a specific project, and save the answer from the volunteer. Getting a task In PyBossa every project is defined as a JSON object with several fields:.. code-block:: javascript { info : { task_presenter: <! HTML + JS >, time_limit : null, description : Question to ask to the volunteers, short_name : Short name or SLUG for the project, created : T11:11: , owner_id : 1, [... ] hidden : 0, id : 1, name : Name of the project The info field is widely used in PyBossa. This field is used as a content manager, where for example the projects add the HTML and JS code to represent the task to the volunteers, and for storing the answers of the volunteers of the tasks. Therefore, we can say that the info field does not have a specific format except for the projects, as every project needs a task_presenter. PyBossa.JS uses the description field to get the question that will be shown to the volunteers in the presenter endpoint of the project. For example, in the FlickrPerson demo project the question is: Do you see a human in this photo? and that question has been stored in the project JSON object (check the source code of the project). The tasks in PyBossa have the following structure: { "info": { fields about the task, "quorum": null, "calibration": 0, "created": " T11:12: ", "project_id": 1, "state": "0", "id": 1030, "priority_0": 0 Again, we can see that every task has an info field, and that field is where there will be all the information that the volunteers may need to solve the problem. For instance, for the Flickr Person project, the task consist in answering if there is a human in a photo, so the info field has the following two elements: "info": { 'link': ' 'url': ' The link to the Flickr page that publishes the photo and the direct link to the photo. Those two items will be used by the presenter to load the photo and create a link to the Flickr page. 4 Chapter 1. User Guide

9 Presenting the Tasks to the user In order to present the tasks to the user, you have to create an HTML template. The template is the skeleton that will be used to load the data of the tasks: the question, the photos, user progress, and input fields & submit buttons to solve the task. Flickr Person uses a basic HTML skeleton and this library to load the data of the tasks into the HTML template, and take actions based on the users s answers. Note: When a task is submitted by an authenticated user, the task will save his user_id. For anonymous users the submitted task will only have the user IP address. 1. Loading the Task data Every PyBossa project will have DOM skeleton where you will load the task data. PyBossa.JS provides two methods that have to been overridden with some logic, as each project will have a different needs: pybossa.taskloaded(function(task, deferred){); pybossa.presenttask(function(task, deferred){); The pybossa.taskloaded method will be in charge of adding new items to the JSON task object and resolve the deferred object once the data has been loaded (i.e. when an image has been downloaded), so another task for the current user can be pre-loaded. An example: pybossa.taskloaded(function(task, deferred) { if (!$.isemptyobject(task) ) { // load image from flickr var img = $('<img />'); img.load(function() { // continue as soon as the image is loaded deferred.resolve(task); ); img.attr('src', task.info.url_b).css('height', 460); img.addclass('img-polaroid'); task.info.image = img; else { deferred.resolve(task); ); Then pybossa.presenttask method will be called when a task has been loaded (previous method) from the PyBossa server: { question: application.description, task: { id: value,..., info: { url_m: link: 1.1. Useful Links 5

10 That JSON object will be accessible via the task object passed as an argument to the pybossa.presenttask method. First we will need to check that we are not getting an empty object, as it will mean that there are no more available tasks for the current user. In that case, we should hide the skeleton, and say thanks to the user as he has participated in all the tasks of the project. If the task object is not empty, then we have task to load into the skeleton. The PyBossa.JS library treats the user input as an async function. This is why the function gets a deferred object, as this object will be resolved when the user submits an answer. We use this approach to load in the background the next task for the user while the volunteer is solving the current one. Once the answer has been saved in the server, we resolve the deferred: pybossa.presenttask(function(task, deferred) { if (!$.isemptyobject(task) ) { loaduserprogress(); $('#photo-link').html('').append(task.info.image); $("#photo-link").attr("href", task.info.link); $("#question").html(task.info.question); $('#task-id').html(task.id); $('.btn-answer').off('click').on('click', function(evt) { var answer = $(evt.target).attr("value"); if (typeof answer!= 'undefined') { //console.log(answer); pybossa.savetask(task.id, answer).done(function() { deferred.resolve(); ); $("#loading").fadein(500); if ($("#disqus_thread").is(":visible")) { $('#disqus_thread').toggle(); $('.btn-disqus').toggle(); else { $("#error").show(); ); $("#loading").hide(); else { $(".skeleton").hide(); $("#loading").hide(); $("#finish").fadein(500); ); It is important to note that in this method we bind the on-click action for the submit buttons (the user will click in one of them to submit an answer) to call the above snippet: $('.btn-answer').off('click').on('click', function(evt) { var answer = $(evt.target).attr("value"); if (typeof answer!= 'undefined') { //console.log(answer); pybossa.savetask(task.id, answer).done(function() { deferred.resolve(); ); 6 Chapter 1. User Guide

11 ); $("#loading").fadein(500); if ($("#disqus_thread").is(":visible")) { $('#disqus_thread').toggle(); $('.btn-disqus').toggle(); else { $("#error").show(); Finally, the pybossa.presenttask calls a method named loaduserprogress. This method is in charge of getting the user progress of the user and update the progress bar accordingly: function loaduserprogress() { pybossa.userprogress('flickrperson').done(function(data){ var pct = Math.round((data.done*100)/data.total); $("#progress").css("width", pct.tostring() +"%"); $("#progress").attr("title", pct.tostring() + "% completed!"); $("#progress").tooltip({'placement': 'left'); $("#total").text(data.total); $("#done").text(data.done); ); You can update the code to only show the number of answers, or remove it completely, however the volunteers will benefit from this type of information as they will be able to know how many tasks they have to do, giving an idea of progress while the contribute to the project. Finally, we only need in our application to run the PyBossa project: pybossa.run('slug-project-name') 3. Saving the answer The pybossa.savetask method saves an answer for a given task. In the previous section we show that in the pybossa.presenttask method the task-id can be obtained, as we will be passing the object to savetask method. The method allows us to give a successful pop-up feedback for the user, so you can use the following structure to warn the user and tell him that his answer has been successfully saved: pybossa.savetask( taskid, answer ).done( function( data ) { // Show the feedback div $("#success").fadein(); // Fade out the pop-up after a 1000 miliseconds settimeout(function() { $("#success").fadeout(), 1000); ; ); We recommend to read the PyBossa tutorial as we explain step by step how to create a project Useful Links 7

12 4. Setting a different end point Sometimes the PyBossa server is not in the root of the domain, so you will find the server running for example here: In this case, you will need to change the API endpoint, otherwise PyBossa.JS will fail to load the task for your project. In order to set the right end point, you can use the following method: pybossa.setendpoint(' And then you can call the pybossa.run method as usual. The setendpoint method will configure the right URL for using the API. 8 Chapter 1. User Guide

13 CHAPTER 2 Indices and tables genindex modindex search 9

These can be downloaded from within the projects via the Tasks link and Export Tasks

These can be downloaded from within the projects via the Tasks link and Export Tasks How can I get hold of GeoTag-X datasets, and what do they tell me? Results from Geotag-X can be downloaded in a variety of formats. For the rest of this document when we refer to Tasks we mean the photos

More information

Human-Computer Interaction Design

Human-Computer Interaction Design Human-Computer Interaction Design COGS120/CSE170 - Intro. HCI Instructor: Philip Guo Lab 6 - Connecting frontend and backend without page reloads (2016-11-03) by Michael Bernstein, Scott Klemmer, and Philip

More information

Sentry SSO with Netscaler

Sentry SSO with Netscaler Sentry SSO with Netscaler Contents 1 Introduction 2 Overview 3 Configure Netscaler Login 4 Configuring Netscaler 5 Configuring Sentry Login 6 Configuring Sentry RADIUS 7 SSO 8 Authentication with AD/LDAP

More information

JavaScript CS 4640 Programming Languages for Web Applications

JavaScript CS 4640 Programming Languages for Web Applications JavaScript CS 4640 Programming Languages for Web Applications 1 How HTML, CSS, and JS Fit Together {css} javascript() Content layer The HTML gives the page structure and adds semantics Presentation

More information

scrapekit Documentation

scrapekit Documentation scrapekit Documentation Release 0.1 Friedrich Lindenberg July 06, 2015 Contents 1 Example 3 2 Reporting 5 3 Contents 7 3.1 Installation Guide............................................ 7 3.2 Quickstart................................................

More information

Unable To Access An Error Message Corresponding To Your Field Name. Codeigniter Callback

Unable To Access An Error Message Corresponding To Your Field Name. Codeigniter Callback Unable To Access An Error Message Corresponding To Your Field Name. Codeigniter Callback I get field was not set error when I'm validating a form. Here is my view Unable to access an error message corresponding

More information

JavaScript CS 4640 Programming Languages for Web Applications

JavaScript CS 4640 Programming Languages for Web Applications JavaScript CS 4640 Programming Languages for Web Applications 1 How HTML, CSS, and JS Fit Together {css} javascript() Content layer The HTML gives the page structure and adds semantics Presentation

More information

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built Deep Dive on How ArcGIS API for JavaScript Widgets Were Built Matt Driscoll @driskull JC Franco @arfncode Agenda Prerequisites How we got here Our development lifecycle Widget development tips Tools we

More information

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML UI Course (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) HTML: Introduction The World Wide Web (WWW) and history of HTML Hypertext and Hypertext Markup Language Why HTML Prerequisites Objective

More information

django-session-security Documentation

django-session-security Documentation django-session-security Documentation Release 2.5.1 James Pic Oct 27, 2017 Contents 1 Why not just set the session to expire after X minutes? 3 2 How does it work? 5 3 Requirements 7 4 Resources 9 4.1

More information

Creating Organization Charts for IBM Connections using JavaScript and Google Charts

Creating Organization Charts for IBM Connections using JavaScript and Google Charts Creating Organization Charts for IBM Connections using JavaScript and Google Charts As we all know, IBM Connections has a great report-to-chain widget which shows current user reporting structure. However,

More information

Full Stack Web Developer

Full Stack Web Developer Full Stack Web Developer Course Contents: Introduction to Web Development HTML5 and CSS3 Introduction to HTML5 Why HTML5 Benefits Of HTML5 over HTML HTML 5 for Making Dynamic Page HTML5 for making Graphics

More information

Impressory Documentation

Impressory Documentation Impressory Documentation Release 0.2-SNAPSHOT William Billingsley January 10, 2014 Contents 1 Contents: 3 1.1 Courses.................................................. 3 1.2 Enrolling students............................................

More information

djangotribune Documentation

djangotribune Documentation djangotribune Documentation Release 0.7.9 David THENON Nov 05, 2017 Contents 1 Features 3 2 Links 5 2.1 Contents................................................. 5 2.1.1 Install..............................................

More information

Catbook Workshop 1: Client Side JS. Danny Tang

Catbook Workshop 1: Client Side JS. Danny Tang Catbook Workshop 1: Client Side JS Danny Tang Previously... Some frontend - Profile page - Nav bar - Stories feed page Techniques - DOM manipulation with JS In this workshop... More frontend - Stories

More information

Creating dependent menus with Moodle Database activity. William Lu

Creating dependent menus with Moodle Database activity. William Lu Creating dependent menus with Moodle Database activity William Lu Hello, everyone My name is William. In this session, I will show you how to create a dependent menu with Moodle Database activity. 2 Sometimes,

More information

AngularJS AN INTRODUCTION. Introduction to the AngularJS framework

AngularJS AN INTRODUCTION. Introduction to the AngularJS framework AngularJS AN INTRODUCTION Introduction to the AngularJS framework AngularJS Javascript framework for writing frontend web apps DOM manipulation, input validation, server communication, URL management,

More information

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav Catbook Workshop: Intro to NodeJS Monde Duinkharjav What is NodeJS? NodeJS is... A Javascript RUNTIME ENGINE NOT a framework NOT Javascript nor a JS package It is a method for running your code in Javascript.

More information

I hate money. Release 1.0

I hate money. Release 1.0 I hate money Release 1.0 Nov 01, 2017 Contents 1 Table of content 3 2 Indices and tables 15 i ii «I hate money» is a web application made to ease shared budget management. It keeps track of who bought

More information

BanzaiDB Documentation

BanzaiDB Documentation BanzaiDB Documentation Release 0.3.0 Mitchell Stanton-Cook Jul 19, 2017 Contents 1 BanzaiDB documentation contents 3 2 Indices and tables 11 i ii BanzaiDB is a tool for pairing Microbial Genomics Next

More information

Serverless Single Page Web Apps, Part Four. CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016

Serverless Single Page Web Apps, Part Four. CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016 Serverless Single Page Web Apps, Part Four CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016 1 Goals Cover Chapter 4 of Serverless Single Page Web Apps by Ben Rady Present the issues

More information

MenuOptions Documentation

MenuOptions Documentation MenuOptions Documentation Release 1.8.3-10 Mike Etts Jul 05, 2018 Contents 1 MenuOptions was created for one reason: 3 2 What it looks like: 5 3 Prerequisites: 7 4 See the live examples 9 4.1 Quick start

More information

Software Requirements Specification. Todomoo. for. Requirements for Version 0.8. Prepared by Panagiotis Melidis

Software Requirements Specification. Todomoo. for. Requirements for Version 0.8. Prepared by Panagiotis Melidis Software Requirements Specification for Todomoo Requirements for Version 0.8 Prepared by Panagiotis Melidis 10/9/2011 Software Requirements Specification for Todomoo [ii] Table of Contents 1. Introduction...

More information

Virto SharePoint Forms Designer for Office 365. Installation and User Guide

Virto SharePoint Forms Designer for Office 365. Installation and User Guide Virto SharePoint Forms Designer for Office 365 Installation and User Guide 2 Table of Contents KEY FEATURES... 3 SYSTEM REQUIREMENTS... 3 INSTALLING VIRTO SHAREPOINT FORMS FOR OFFICE 365...3 LICENSE ACTIVATION...4

More information

Django-CSP Documentation

Django-CSP Documentation Django-CSP Documentation Release 3.0 James Socol, Mozilla September 06, 2016 Contents 1 Installing django-csp 3 2 Configuring django-csp 5 2.1 Policy Settings..............................................

More information

ELO ToDo. Technical Documentation ELO ToDo. Content. Date:

ELO ToDo. Technical Documentation ELO ToDo. Content. Date: Date: 2014-02-19 This script generates a new work area named "ToDo" in the ELO Java Client. Projects can be created there that contain various other areas for work tasks. The tasks can be given priorities,

More information

django-baton Documentation

django-baton Documentation django-baton Documentation Release 1.0.7 abidibo Nov 13, 2017 Contents 1 Features 3 2 Getting started 5 2.1 Installation................................................ 5 2.2 Configuration...............................................

More information

WorldSpace Attest Quick Start Guide

WorldSpace Attest Quick Start Guide WorldSpace Attest Quick Start Guide Contents What is WorldSpace Attest?... 2 What Comprises WorldSpace Attest?... 2 What do I need to get started?... 2 Prerequisites... 2 Generating your personal API key...

More information

Design Document V2 ThingLink Startup

Design Document V2 ThingLink Startup Design Document V2 ThingLink Startup Yon Corp Andy Chen Ashton Yon Eric Ouyang Giovanni Tenorio Table of Contents 1. Technology Background.. 2 2. Design Goal...3 3. Architectural Choices and Corresponding

More information

KonaKart Shopping Widgets. 3rd January DS Data Systems (UK) Ltd., 9 Little Meadow Loughton, Milton Keynes Bucks MK5 8EH UK

KonaKart Shopping Widgets. 3rd January DS Data Systems (UK) Ltd., 9 Little Meadow Loughton, Milton Keynes Bucks MK5 8EH UK KonaKart Shopping Widgets 3rd January 2018 DS Data Systems (UK) Ltd., 9 Little Meadow Loughton, Milton Keynes Bucks MK5 8EH UK Introduction KonaKart ( www.konakart.com ) is a Java based ecommerce platform

More information

2018 geektrust.in. All rights reserved.

2018 geektrust.in. All rights reserved. Athira, Souranil and many more developers have solved Geektrust coding challenges to find great jobs. Get feedback on your coding skills. Detailed, handcrafted feedback on your code. Get priority and be

More information

esignlive for Microsoft Dynamics CRM

esignlive for Microsoft Dynamics CRM esignlive for Microsoft Dynamics CRM Integrator's Guide Product Release: 2.0 Date: March 09, 2018 esignlive 8200 Decarie Blvd, Suite 300 Montreal, Quebec H4P 2P5 Phone: 1-855-MYESIGN Fax: (514) 337-5258

More information

Magento OpenERP Integration Documentation

Magento OpenERP Integration Documentation Magento OpenERP Integration Documentation Release 2.0dev Openlabs Technologies & Consulting (P) Limited Jul 28, 2017 Contents 1 Introduction 3 1.1 Installation................................................

More information

ThingLink User Guide. Andy Chen Eric Ouyang Giovanni Tenorio Ashton Yon

ThingLink User Guide. Andy Chen Eric Ouyang Giovanni Tenorio Ashton Yon ThingLink User Guide Yon Corp Andy Chen Eric Ouyang Giovanni Tenorio Ashton Yon Index Preface.. 2 Overview... 3 Installation. 4 Functionality. 5 Troubleshooting... 6 FAQ... 7 Contact Information. 8 Appendix...

More information

Self-Study Exercise 2.4: Annotating Page Elements With Microdata. Objectives

Self-Study Exercise 2.4: Annotating Page Elements With Microdata. Objectives Self-Study Exercise 2.4: Annotating Page Elements With Microdata Objectives In this exercise, you will Improve search engine page rank with microdata Annotate HTML with properties in a microdata vocabulary

More information

Welcome to the Introduction to Mapbender

Welcome to the Introduction to Mapbender 0 Welcome to the Introduction to Mapbender Author: Astrid Emde Author: Christoph Baudson Version: 1.0 License: Creative Commons Date: 2010-08-30 1 Table of Contents 1 Project Overview 2 1.1 Geoportal Framework

More information

IBM Bluemix Node-RED Watson Starter

IBM Bluemix Node-RED Watson Starter IBM Bluemix Node-RED Watson Starter Cognitive Solutions Application Development IBM Global Business Partners Duration: 45 minutes Updated: Feb 14, 2018 Klaus-Peter Schlotter kps@de.ibm.com Version 1 Overview

More information

django-facebook-graph Documentation

django-facebook-graph Documentation django-facebook-graph Documentation Release 0.1 FEINHEIT GmbH Mar 29, 2017 Contents 1 Installation 3 1.1 Add 'facebook' to your INSTALLED_APPS............................ 3 1.2 Add the middlewares...........................................

More information

retask Documentation Release 1.0 Kushal Das

retask Documentation Release 1.0 Kushal Das retask Documentation Release 1.0 Kushal Das February 12, 2016 Contents 1 Dependencies 3 2 Testimonial(s) 5 3 User Guide 7 3.1 Introduction............................................... 7 3.2 Setting

More information

mongodb-tornado-angular Documentation

mongodb-tornado-angular Documentation mongodb-tornado-angular Documentation Release 0.1.1 David Levy February 22, 2017 Contents 1 Installation 3 1.1 linux/mac................................................. 3 1.2 Python3.x.................................................

More information

CIOC API User Guide. Release Online Resources 3.7 / Client Tracker 3.2. Katherine Lambacher, KCL Software Solutions Inc.

CIOC API User Guide. Release Online Resources 3.7 / Client Tracker 3.2. Katherine Lambacher, KCL Software Solutions Inc. CIOC API User Guide Release Online Resources 3.7 / Client Tracker 3.2 Katherine Lambacher, KCL Software Solutions Inc. September 03, 2015 Contents 1 CIOC Online Resources API Introduction 1 1.1 Available

More information

JavaScript: Introduction, Types

JavaScript: Introduction, Types JavaScript: Introduction, Types Computer Science and Engineering College of Engineering The Ohio State University Lecture 19 History Developed by Netscape "LiveScript", then renamed "JavaScript" Nothing

More information

Overview... 4 JavaScript Charting and Metric Insights... 5

Overview... 4 JavaScript Charting and Metric Insights... 5 JAVASCRIPT CHARTING Table of Contents Overview... 4 and Metric Insights... 5 Chart Types...11 Overview of JavaScript chart types...12 d3...13 Highcharts...16 Highstock...18 Google...19 nvd3...21 Dynamic

More information

Wifiphisher Documentation

Wifiphisher Documentation Wifiphisher Documentation Release 1.2 George Chatzisofroniou Jan 13, 2018 Contents 1 Table Of Contents 1 1.1 Getting Started.............................................. 1 1.2 User s guide...............................................

More information

ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu

ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu ANGULAR 2.X,4.X + TYPESRCIPT by Sindhu GETTING STARTED WITH TYPESCRIPT Installing TypeScript Compiling the code Building a simple demo. UNDERSTANDING CLASSES Building a class Adding properties Demo of

More information

3 Days Training Program

3 Days Training Program 3 Days Training Program What is AngularJS? A JavaScript framework for creating dynamic web applications Open Source GitHub: https://github.com/angular/angular.js MIT License Uses jquery jquery 1.7.1 or

More information

ENRICHING PRIMO RECORDS WITH INFORMATION FROM WORDPRESS. Karsten Kryger Hansen Aalborg University Library

ENRICHING PRIMO RECORDS WITH INFORMATION FROM WORDPRESS. Karsten Kryger Hansen Aalborg University Library ENRICHING PRIMO RECORDS WITH INFORMATION FROM WORDPRESS Karsten Kryger Hansen Aalborg University Library AGENDA Who am I History and use case Information distribution Detour: HTML, JavaScript etc. in Primo

More information

CIS 408 Internet Computing Sunnie Chung

CIS 408 Internet Computing Sunnie Chung Project #2: CIS 408 Internet Computing Sunnie Chung Building a Personal Webpage in HTML and Java Script to Learn How to Communicate Your Web Browser as Client with a Form Element with a Web Server in URL

More information

pynetworktables2js Documentation

pynetworktables2js Documentation pynetworktables2js Documentation Release 2018.0.1.post0.dev9 RobotPy development team Feb 21, 2018 Contents 1 Documentation 3 2 Installation 5 2.1 Easy install (Windows only).......................................

More information

Web API Lab. The next two deliverables you shall write yourself.

Web API Lab. The next two deliverables you shall write yourself. Web API Lab In this lab, you shall produce four deliverables in folder 07_webAPIs. The first two deliverables should be pretty much done for you in the sample code. 1. A server side Web API (named listusersapi.jsp)

More information

The Eval that Men Do

The Eval that Men Do The Eval that Men Do Gregor Richard Christian Hammer Brian Burg Jan Vitek Vincent Foley-Bourgon COMP-621 - Winter 2014 McGill University February 2014 The paper Information 3 authors from Purdue University

More information

jquery and AJAX

jquery and AJAX jquery and AJAX http://www.flickr.com/photos/pmarkham/3165964414/ Dynamic HTML (DHTML) Manipulating the web page's structure is essential for creating a highly responsive UI Two main approaches Manipulate

More information

Signals Documentation

Signals Documentation Signals Documentation Release 0.1 Yeti November 22, 2015 Contents 1 Quickstart 1 2 What is Signals? 3 3 Contents 5 3.1 Get Started................................................ 5 3.2 Try the Demo Server...........................................

More information

django-baton Documentation

django-baton Documentation django-baton Documentation Release 1.3.1 abidibo Nov 05, 2018 Contents 1 Features 3 2 Getting started 5 2.1 Installation................................................ 5 2.2 Configuration...............................................

More information

Configuring Anonymous Access to Analysis Files in TIBCO Spotfire 7.5

Configuring Anonymous Access to Analysis Files in TIBCO Spotfire 7.5 Configuring Anonymous Access to Analysis Files in TIBCO Spotfire 7.5 Introduction Use Cases for Anonymous Authentication Anonymous Authentication in TIBCO Spotfire 7.5 Enabling Anonymous Authentication

More information

Ignite UI Release Notes

Ignite UI Release Notes Ignite UI 2013.1 Release Notes Create the best Web experiences in browsers and devices with our user interface controls designed expressly for jquery, ASP.NET MVC, HTML 5 and CSS 3. You ll be building

More information

Grading Rubric Homework 1

Grading Rubric Homework 1 Grading Rubric Homework 1 Used Git, has many commits, over time, wrote appropriate commit comments, set up Git correctly with git config Cloning repository results in a working site, no broken links, no

More information

JOE WIPING OUT CSRF

JOE WIPING OUT CSRF JOE ROZNER @JROZNER WIPING OUT CSRF IT S 2017 WHAT IS CSRF? 4 WHEN AN ATTACKER FORCES A VICTIM TO EXECUTE UNWANTED OR UNINTENTIONAL HTTP REQUESTS WHERE DOES CSRF COME FROM? 6 SAFE VS. UNSAFE Safe GET HEAD

More information

Defining New Node-RED Nodes

Defining New Node-RED Nodes Overview Node-RED is a highly graphical programming environment however there are some things which cannot be done using the out-of-the-box nodes. Using the Function Node is one way to get around this

More information

User Scripting April 14, 2018

User Scripting April 14, 2018 April 14, 2018 Copyright 2013, 2018, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and

More information

Client Side JavaScript and AJAX

Client Side JavaScript and AJAX Client Side JavaScript and AJAX Client side javascript is JavaScript that runs in the browsers of people using your site. So far all the JavaScript code we've written runs on our node.js server. This is

More information

google-search Documentation

google-search Documentation google-search Documentation Release 1.0.0 Anthony Hseb May 08, 2017 Contents 1 google-search 3 1.1 Features.................................................. 3 1.2 Credits..................................................

More information

Release Ralph Offinger

Release Ralph Offinger nagios c heck p aloaltodocumentation Release 0.3.2 Ralph Offinger May 30, 2017 Contents 1 nagios_check_paloalto: a Nagios/Icinga Plugin 3 1.1 Documentation..............................................

More information

Virto SharePoint Forms Designer for Office 365. Installation and User Guide

Virto SharePoint Forms Designer for Office 365. Installation and User Guide Virto SharePoint Forms Designer for Office 365 Installation and User Guide 2 Table of Contents KEY FEATURES... 3 SYSTEM REQUIREMENTS... 3 INSTALLING VIRTO SHAREPOINT FORMS FOR OFFICE 365... 3 LICENSE ACTIVATION...

More information

MEAN Stack. 1. Introduction. 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts

MEAN Stack. 1. Introduction. 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts MEAN Stack 1. Introduction 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts 3. Node Projects a. The Node Package Manager b. Creating a project c. The package.json

More information

729G26 Interaction Programming. Lecture 4

729G26 Interaction Programming. Lecture 4 729G26 Interaction Programming Lecture 4 Lecture overview jquery - write less, do more Capturing events using jquery Manipulating the DOM, attributes and content with jquery Animation with jquery Describing

More information

UNIT -II. Language-History and Versions Introduction JavaScript in Perspective-

UNIT -II. Language-History and Versions Introduction JavaScript in Perspective- UNIT -II Style Sheets: CSS-Introduction to Cascading Style Sheets-Features- Core Syntax-Style Sheets and HTML Style Rle Cascading and Inheritance-Text Properties-Box Model Normal Flow Box Layout- Beyond

More information

JavaScript Rd2. -Kyle Simpson, You Don t Know JS

JavaScript Rd2. -Kyle Simpson, You Don t Know JS JavaScript Rd2 [JavaScript] is simultaneously a simple, easy-to-use language that has broad appeal, and a complex and nuanced collection of language mechanics which without careful study will elude the

More information

dox42 Azure Active Directory Integration

dox42 Azure Active Directory Integration dox4 Azure Active Directory Integration Fabian Huber Documentation Summary In this document an instruction will be provided how to configure Azure Active Directory (ADD) with dox4, the Server Web and how

More information

pyldavis Documentation

pyldavis Documentation pyldavis Documentation Release 2.1.2 Ben Mabey Feb 06, 2018 Contents 1 pyldavis 3 1.1 Installation................................................ 3 1.2 Usage...................................................

More information

XPages development practices: developing a common Tree View Cust...

XPages development practices: developing a common Tree View Cust... 1 of 11 2009-12-11 08:06 XPages development practices: developing a common Tree View Custom Controls Use XPages develop a common style of user control Dojo Level: Intermediate Zhan Yonghua, Software Engineer,

More information

Tutorial 4 Data Persistence in Java

Tutorial 4 Data Persistence in Java TCSS 360: Software Development Institute of Technology and Quality Assurance Techniques University of Washington Tacoma Winter 2017 http://faculty.washington.edu/wlloyd/courses/tcss360 Tutorial 4 Data

More information

Stepic Plugins Documentation

Stepic Plugins Documentation Stepic Plugins Documentation Release 0 Stepic Team May 06, 2015 Contents 1 Introduction 3 1.1 Quiz Architecture............................................ 3 1.2 Backend Overview............................................

More information

JavaScript. Training Offer for JavaScript Introduction JavaScript. JavaScript Objects

JavaScript. Training Offer for JavaScript Introduction JavaScript. JavaScript Objects JavaScript CAC Noida is an ISO 9001:2015 certified training center with professional experience that dates back to 2005. The vision is to provide professional education merging corporate culture globally

More information

CISC 1600 Lecture 2.4 Introduction to JavaScript

CISC 1600 Lecture 2.4 Introduction to JavaScript CISC 1600 Lecture 2.4 Introduction to JavaScript Topics: Javascript overview The DOM Variables and objects Selection and Repetition Functions A simple animation What is JavaScript? JavaScript is not Java

More information

WEB SECURITY: WEB BACKGROUND

WEB SECURITY: WEB BACKGROUND WEB SECURITY: WEB BACKGROUND CMSC 414 FEB 20 2018 A very basic web architecture Client Server Browser Web server (Private) Data Database DB is a separate entity, logically (and often physically) A very

More information

Modern Requirements4TFS 2018 Release Notes

Modern Requirements4TFS 2018 Release Notes Modern Requirements4TFS 2018 Release Notes Modern Requirements 3/7/2018 Table of Contents 1. INTRODUCTION... 3 2. SYSTEM REQUIREMENTS... 3 3. APPLICATION SETUP... 3 GENERAL... 4 1. FEATURES... 4 2. ENHANCEMENT...

More information

Building Collaborative Apps with Wookie

Building Collaborative Apps with Wookie Building Collaborative Apps with Wookie Collaborative Apps Use W3C Widgets packaging and widget object API with the Google Wave Gadgets API Runs in Wookie, no Wave server needed Requires plugins that can

More information

Quick Desktop Application Development Using Electron

Quick Desktop Application Development Using Electron Quick Desktop Application Development Using Electron Copyright Blurb All rights reserved. No part of this book may be reproduced in any form or by any electronic or mechanical means including information

More information

Active Servicedesk Release Notes

Active Servicedesk Release Notes 8.00.00 Integration Added new history information related to external notifications Notifications Added config.xml to templates folder so specific email settings can be controlled using template scripts

More information

Creating dependent menus

Creating dependent menus Creating dependent menus with Moodle Database activity! William Lu" Live examples, presets and guides at: mootau15.moodlemoot.org/course/view.php?id=20 Hello, everyone" My name is William! In this session,

More information

Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p.

Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p. Preface p. xiii Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p. 5 Client-Side JavaScript: Executable Content

More information

Editing Course Tools and Properties to 8.4.1

Editing Course Tools and Properties to 8.4.1 Editing Course Tools and Properties 8.3.0 to 8.4.1 User Guide Revised April 16, 2009 Contents Editing course properties The Course Offering Information page Setting course colors Setting the course language

More information

Security. CSC309 TA: Sukwon Oh

Security. CSC309 TA: Sukwon Oh Security CSC309 TA: Sukwon Oh Outline SQL Injection NoSQL Injection (MongoDB) Same Origin Policy XSSI XSS CSRF (XSRF) SQL Injection What is SQLI? Malicious user input is injected into SQL statements and

More information

Copyright Descriptor Systems, Course materials may not be reproduced in whole or in part without prior written consent of Joel Barnum

Copyright Descriptor Systems, Course materials may not be reproduced in whole or in part without prior written consent of Joel Barnum Ajax The notion of asynchronous request processing using the XMLHttpRequest object has been around for several years, but the term "AJAX" was coined by Jesse James Garrett of Adaptive Path. You can read

More information

WebEx Management. GP Connect. WebEx Interactions

WebEx Management. GP Connect. WebEx Interactions WebEx Management GP Connect WebEx Interactions Submit questions using the chat facility to everyone Please keep chat conversations private Refrain from answering questions proposed We ll answer questions

More information

AngularJS. Beginner's guide - part 1

AngularJS. Beginner's guide - part 1 AngularJS Beginner's guide - part 1 AngularJS: 2 AngularJS: Superheroic JavaScript MVW Framework 3 AngularJS: Superheroic JavaScript MVW Framework 4 AngularJS: Superheroic JavaScript MVW Framework Javascript

More information

Database Explorer Quickstart

Database Explorer Quickstart Database Explorer Quickstart Last Revision: Outline 1. Preface 2. Requirements 3. Introduction 4. Creating a Database Connection 1. Configuring a JDBC Driver 2. Creating a Connection Profile 3. Opening

More information

Sentry SSO with Cisco ASA

Sentry SSO with Cisco ASA Sentry SSO with Cisco ASA Contents 1 Introduction 2 Configure Cisco ASA 3 Configure Swivel Sentry 4 Configure RADIUS NAS on Swivel Core 5 SSO 6 Known Issues/Limitations Introduction This Document describes

More information

PHP for PL/SQL Developers. Lewis Cunningham JP Morgan Chase

PHP for PL/SQL Developers. Lewis Cunningham JP Morgan Chase PHP for PL/SQL Developers Lewis Cunningham JP Morgan Chase 1 What is PHP? PHP is a HTML pre-processor PHP allows you to generate HTML dynamically PHP is a scripting language usable on the web, the server

More information

nacelle Documentation

nacelle Documentation nacelle Documentation Release 0.4.1 Patrick Carey August 16, 2014 Contents 1 Standing on the shoulders of giants 3 2 Contents 5 2.1 Getting Started.............................................. 5 2.2

More information

AngularJS Intro Homework

AngularJS Intro Homework AngularJS Intro Homework Contents 1. Overview... 2 2. Database Requirements... 2 3. Navigation Requirements... 3 4. Styling Requirements... 4 5. Project Organization Specs (for the Routing Part of this

More information

Abstract. 1. Introduction. 2. AJAX overview

Abstract. 1. Introduction. 2. AJAX overview Asynchronous JavaScript Technology and XML (AJAX) Chrisina Draganova Department of Computing, Communication Technology and Mathematics London Metropolitan University 100 Minories, London EC3 1JY c.draganova@londonmet.ac.uk

More information

Moodle Destroyer Tools Documentation

Moodle Destroyer Tools Documentation Moodle Destroyer Tools Documentation Release 0.0.1 Manly Man Dec 22, 2017 With Web Services 1 Features and Screenshots 3 2 Grading with Webservices 7 2.1 Prerequisites...............................................

More information

TRAINING GUIDE. Lucity Web Services APIs

TRAINING GUIDE. Lucity Web Services APIs TRAINING GUIDE Lucity Web Services APIs Lucity Web Services APIs Lucity offers several web service APIs. This guide covers the Lucity Citizen Portal API as well as the. Contents How it Works... 2 Basics...

More information

Codeigniter A Php Error Was Encountered. Severity Notice Message Undefined Variable Data

Codeigniter A Php Error Was Encountered. Severity Notice Message Undefined Variable Data Codeigniter A Php Error Was Encountered Severity Notice Message Undefined Variable Data PHP: Notice: Undefined variable and Notice: Undefined index 11 answers. I am just new to CodeIgniter and i encounter

More information

JOE WIPING OUT CSRF

JOE WIPING OUT CSRF JOE ROZNER @JROZNER WIPING OUT CSRF IT S 2017 WHAT IS CSRF? 4 WHEN AN ATTACKER FORCES A VICTIM TO EXECUTE UNWANTED OR UNINTENTIONAL HTTP REQUESTS WHERE DOES CSRF COME FROM? LET S TALK HTTP SAFE VS. UNSAFE

More information

Amazon Connect - SpiceCSM Automated Reader Integration User Guide

Amazon Connect - SpiceCSM Automated Reader Integration User Guide Amazon Connect - SpiceCSM Automated Reader Integration User Guide Overview Amazon Connect and SpiceCSM together allow for the rapid development of intelligent IVR systems. The general flow in which Amazon

More information

Visualizer Workbench

Visualizer Workbench Visualizer Workbench Web Technologies (706.704) 3SSt VU WS 2018/19 2 Overview Visualizer Setting up the workbench Workbench structure Live demo API description Uploading your extension 3 Visualizer Visualizer

More information

Single Page Applications using AngularJS

Single Page Applications using AngularJS Single Page Applications using AngularJS About Your Instructor Session Objectives History of AngularJS Introduction & Features of AngularJS Why AngularJS Single Page Application and its challenges Data

More information