JSFiddle - React, Tailwind, and code Playground
by jwstott
HTML
<script src="http://75.126.106.245:8764/scripts/ces.js"></script>
JavaScript
console.log('setup event code');
var ans = new ces.Answer();
ans.id = '123';
ans.assessmentid = '1';
ans.key = 'A';
ans.text = 'new object test';
/*
ans.event.bind('fred',function(sender,eventArgs) {
console.log('got the event');
};
*/
console.log('about to raise event');
//ans.event.fire('fred',this,{id:'fred event'});
// Extend Assessment
ces.Assessment.prototype.findAnswerByKey = function (key) {
var length = this.answers.length;
for (var idx = 0; idx < length; idx++) {
if (this.answers[idx].key === key)
return this.answers[idx];
}
return; // default
}
ces.Assessment.prototype.setAnswerSelectedByKey = function (key) {
var length = this.answers.length;
for (var idx = 0; idx < length; idx++) {
if (this.answers[idx].key === key)
this.answers[idx].selected = true;
else
this.answers[idx].selected = false;
}
}
// Extend ces.Answer
ces.Answer.prototype.selected = false;
ces.Answer.prototype.event = new eventMager();
var eventManager = function() {
var self = this;
var evnt = function(name,fn) {
this.name = name;
this.target = fn;
};
var events = [];
this.bind(eventName, fn) {
events.push(new evnt(eventName,fn));
};
this.fire(eventName, sender, eventArgs) {
var len = self.events.length;
for (var i=0;i<len;i++) {
if ( self.events[i].name === eventName) {
if (self.events[i].target != null)
self.events[i].target(sender, eventArgs);
}
}
}
};
/* Simple JavaScript Inheritance
* By John Resig http://ejohn.org/
* MIT Licensed.
*/
// Inspired by base2 and Prototype
(function(){
var initializing = false, fnTest = /xyz/.test(function(){xyz;}) ? /\b_super\b/ : /.*/;
// The base Class implementation (does nothing)
...