#Handbid-Js
I am the Handbid
library. I work in both nodejs && in the browser. I rely on chai
for my tests. To be honest, I've never run any unit tests in the browser, someone should figure out how to do that. =)
##Lifecycle
Connecting to an auction in Handbid is a multi-step process. It's pretty simple though, here is a breakdown:
- Instantiate new Handbid instance:
var hb = new Handbid()
- Connect to the
main
server by invoking: hb.connect();
- Connect to any auction by key by invoking:
hb.connectToAuction('any-auction-key');
- Listen for auction connection:
hb.on('did-connect-to-auction', function (e) { console.log(e.get('auction')); });
You can invoke connectToAuction()
immediately after connect()
(you don't have to wait for the main connection to be established).
##Examples
Here are some code samples to get you started!
###Nodejs
$npm install handbid
var Handbid = require('handbid'),
hb = new Handbid();
hb.connect();
hb.connectToAuction('auction key');
###Browser
<script type='text/javascript' src='https://handbid-js-handbid.netdna-ssl.com/handbid.js'></script>
<script type="text/javascript">
handbid.connectToAuction('handbid-demo-auction');
handbid.on('did-connect-to-auction', function (e) {
var auction = e.get('auction');
auction.on('did-update-item', function (e) {
var itemKey = e.get('key'),
changes = e.get('changes');
console.log('the following was changed:', changes, 'on item with key:', itemKey);
});
auction.on('did-update', function (e) {
console.log(e);
});
});
</script>
###Authentication
##Events
Under each event name is a description of the data passed with the event. This event is the single object passed to a
listener of any event.
hb.on('did-connect-to-server', function (e) {
console.log(e.data);
console.log(e.get('url'));
if(e.get('anything', false)) {
}
});
Handbid
did-connect-to-server
: when a server connection is made after invoking hb.connect()
handbid
: instance that dispatched the eventurl
: the url we connected to
did-connect-to-auction
: dispatched after hb.connectToAuction('auction-key')
handbid
: instance that dispatched the eventauction
: the auction we connected to
did-receive-message
: whenever the current user gets a message
message
: text of message that was sent
error
: anytime any error occurs
##Handbid API
##Connect Button
Throwing in a connect button is wicked easy!
<a href="#" data-handbid-connect data-handbid-pass="http://mywebsite.com/where/on/success" data-handbid-fail="http://mywebsite.com/where/on/fail">
<img src="assets/btn-hb-blue-big.png" />
</a>