Technical Aspects
E N D
Presentation Transcript
Technical Aspects Issues and Answers
Users • What Kinds of Roles? • Recipient • Editor • Awarder • Creator • Administrator • How to Handle Registration? • What Method of Authentication? • How to Protect Your Badges, and Delegate? • What Privacy Options To Present?
Badge Creation • How To Create New Badges? • Simple Copying? • How To Edit? • I Only Want It Available During A Specific Time! • What Are Badges vs. Awards and Why? • Decentralization: Who Can Make Them? • How to Build Level-up Badges?
Earning Badges • Click? • Snap? • Can We Just Award Them? • How To Automate Level-ups? • Can We Prevent Cheating? • Duplicates • Sharing
Displaying Badges • Privacy • Points • Leaderboards • Baking • Backpacks • Validations
A Little Code jQuery does this: $('a.bake').click(function() { var badge = $(this).attr('name'); var action = $(this).text(); var button = $(this); if ( action=='Show') newtext='Hide' ; else newtext='Show'; var formdata = 'badge=' + badge + '&action=' + action; //alert(formdata); window.open('http://beta.openbadges.org/baker?assertion=http://tltc.shu.edu/badges/folder/' + badge); return false; }); Translated in the .htaccess file: RewriteEngine on RewriteRule ^([A-Za-z0-9]+)(/)?$ bakeme.php?a=$1
This Is The Last Code, I Promise $json_request = <<<END { "recipient": "$badge_eMail", "evidence": "$badge_evidence", "badge": { "version": "$badge_version", "name": "$badge_name", "image": "$badge_url", "description": "$badge_description", "criteria": "$badge_criteria", "issuer": { "origin": "http://tltc.shu.edu", "name": "$badge_issuer", "org": "$badge_organization", "contact": "$badge_contact" } } } END; header('Content-Type: application/json'); echo $json_request;
NextSteps • Limited issuance & other features • The first 50 clicks can win this • Facebook • OBI has a Facebook app in the works • WordPress • Several levels of WordPress tools, from widgets to major plugins, are in development • Better GUI for user management • Open it up