better track the resulting javascript too.
This commit is contained in:
parent
a06a65bb95
commit
d2092d9189
12 changed files with 1265 additions and 0 deletions
68
16col/sauce.js
Normal file
68
16col/sauce.js
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
// Generated by CoffeeScript 1.7.1
|
||||
(function() {
|
||||
({
|
||||
parseUrl: function(url) {
|
||||
var content, req;
|
||||
req = new XMLHttpRequest();
|
||||
req.open('GET', url, false);
|
||||
req.overrideMimeType('text/plain; charset=x-user-defined');
|
||||
req.send(null);
|
||||
content = req.status === 200 || req.status === 0 ? req.responseText : '';
|
||||
return this.parse(content);
|
||||
},
|
||||
parse: function(content) {
|
||||
var commentMarker, i, sauceMarker;
|
||||
sauceMarker = content.length - 128;
|
||||
if (content.substr(sauceMarker, 5) !== 'SAUCE') {
|
||||
return false;
|
||||
}
|
||||
this.id = 'SAUCE';
|
||||
this.version = content.substr(sauceMarker + 5, 2);
|
||||
this.title = content.substr(sauceMarker + 7, 35);
|
||||
this.author = content.substr(sauceMarker + 42, 20);
|
||||
this.group = content.substr(sauceMarker + 62, 20);
|
||||
this.date = content.substr(sauceMarker + 82, 8);
|
||||
this.fileSize = this.unpackLong(content.substr(sauceMarker + 90, 4));
|
||||
this.dataType = this.getByteAt(content.substr(sauceMarker + 94, 1));
|
||||
this.fileType = this.getByteAt(content.substr(sauceMarker + 95, 1));
|
||||
this.tinfo1 = this.unpackShort(content.substr(sauceMarker + 96, 2));
|
||||
this.tinfo2 = this.unpackShort(content.substr(sauceMarker + 98, 2));
|
||||
this.tinfo3 = this.unpackShort(content.substr(sauceMarker + 100, 2));
|
||||
this.tinfo4 = this.unpackShort(content.substr(sauceMarker + 102, 2));
|
||||
this.commentCount = this.getByteAt(content.substr(sauceMarker + 104, 1));
|
||||
this.flags = this.getByteAt(content.substr(sauceMarker + 105, 1));
|
||||
this.filler = content.substr(sauceMarker + 106, 22);
|
||||
commentMarker = sauceMarker - 5 - this.commentCount * 64;
|
||||
if (this.commentCount > 0 && content.substr(commentMarker, 5) === 'COMNT') {
|
||||
commentMarker += 5;
|
||||
this.comments = [];
|
||||
i = this.commentCount;
|
||||
while (i-- > 0) {
|
||||
this.comments.push(content.substr(commentMarker, 64));
|
||||
commentMarker += 64;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
},
|
||||
unpackLong: function(data) {
|
||||
var lng;
|
||||
lng = (((this.getByteAt(data, 3) << 8) + this.getByteAt(data, 2) << 8) + this.getByteAt(data, 1) << 8) + this.getByteAt(data, 0);
|
||||
if (lng < 0) {
|
||||
lng += 4294967296;
|
||||
}
|
||||
return lng;
|
||||
},
|
||||
unpackShort: function(data) {
|
||||
var shrt;
|
||||
shrt = (this.getByteAt(data, 1) << 8) + this.getByteAt(data, 0);
|
||||
if (shrt < 0) {
|
||||
shrt += 65536;
|
||||
}
|
||||
return shrt;
|
||||
},
|
||||
getByteAt: function(data, offset) {
|
||||
return data.charCodeAt(offset) & 0xFF;
|
||||
}
|
||||
});
|
||||
|
||||
}).call(this);
|
||||
Loading…
Add table
Add a link
Reference in a new issue