Large diffs are not rendered by default.

Large diffs are not rendered by default.

@@ -283,6 +283,39 @@ div.cageSidebarStat {
box-shadow: 0 5px 8px 3px #000;
z-index: 1;
}
/*
* COPTER
*/
#cageCOPTERSubmit {
height: 29px;
position: absolute;
border-radius: 50px;
background: #000;
left: 8px;
width: 29px;
margin-top: -37px;
background-size: 31px 34px;
cursor: pointer;
background-image: url('http://image4.castleagegame.com/graphics/monster_help.gif');
background-position: -2px -3px;
}
#cageCOPTERDisplay > div {
margin-left: 34px;
}
#cageCOPTERDisplay > span {
position: absolute;
bottom: 2px;
right: 3px;
}
#cageCOPTERDisplay span > img {
height: 20px;
border-radius: 15px;
position: relative;
}
#cageCOPTERDisplay span > img:hover {
box-shadow: 0 5px 8px 3px #000;
}

/*
* Chat in sidebar
*/
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN -183 Bytes (76%) resources/cage/data/img/icon19.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -22,6 +22,11 @@ function receiver(_data) {
break;
case com.task.alive:
break;
case com.task.caStart:
if(location.search.indexOf('needclickers=1') === -1) {
initCastleAge();
}
break;
default:
console.log(_data.task + ' unknown!');
}
@@ -1,41 +1,68 @@
/*tool('COPTER');
tool('COPTER');

tools.COPTER.settings = function() {

tools.Settings.heading('COPTER');
tools.Settings.text('<a href="http://copter.bomhofintegrated.com">COPTER</a>');
tools.Settings.text('Link your <a href="http://copter.bomhofintegrated.com">COPTER</a> account with CAGE. Create the link in COPTER and enter it here, after hitting submit you\'re done.');
tools.Settings.textbox('COPTER\'s CAGE link', tools.COPTER.runtime.link, 'cageCOPTERLink', tools.COPTER.runtimeUpdate);

};
tools.COPTER.runtimeUpdate = function() {
tools.COPTER.runtime = {
tries : 0,
link : item.get('cageCOPTERLink', '')
};
$.ajax({
url : 'http://copter.bomhofintegrated.com/cage/status',
data : {
'cage_id' : tools.COPTER.runtime.link
},
contentType : 'application/json',
dataType : 'jsonp',
jsonpCallback : 'fireCOPTERcallback',
success : function(_data) {
console.log('Data', _data);
}
});
}
tools.COPTER.request();
};
tools.COPTER.init = function() {
// init copter event
customEvent('COPTERcallback', function(_evt) {
var _data = $('#COPTERcallback').val();
console.log(_data);
tools.COPTER.receiver(_data);
tools.COPTER.receiver($('#COPTERcallback').val());
});
tools.COPTER.runtimeUpdate();
};
tools.COPTER.request = function() {
if(tools.COPTER.runtime.link !== '') {
$.ajax({
url : 'http://copter.bomhofintegrated.com/cage/status',
data : {
'cage_id' : tools.COPTER.runtime.link
},
contentType : 'application/json',
dataType : 'jsonp',
jsonpCallback : 'fireCOPTERcallback',
success : function(_data) {
console.log('Data', _data);
}
});
} else {
$('#cageCOPTERDisplay').remove();
}
};
tools.COPTER.receiver = function(_data) {
_copter = JSON.parse(_data);
}
*/
if(_copter && _copter.status === 'connected') {
var _lvl = parseInt($('#st_5').children().eq(1).text().match(/\d+/), 10)
if(!isNaN(_lvl) && _lvl !== _copter.level) {
tools.COPTER.addDisplay();
} else {
console.log(_lvl);
if(tools.COPTER.runtime.link !== '' && tools.COPTER.runtime.tries < 5) {
tools.COPTER.runtime.tries += 1;
setTimeout(tools.COPTER.request(), 1000);
}
}
}
};
tools.COPTER.addDisplay = function() {
$('#cageSidebarStats').append('<div id="cageCOPTERDisplay" class="cageSidebarStat"><div>COPTER</div><div><div></div></div><span></span><span>connected</span></div></div>').append($('<button id="cageCOPTERSubmit" title="Update data"></button>').click(function() {
$('#cageCOPTERSubmit').css({
'cursor' : 'wait',
'backgroundSize' : '33px 33px',
'backgroundPosition' : '-4px -4px',
'backgroundImage' : 'url(\'http://image4.castleagegame.com/graphics/shield_wait.gif\')'
}).attr('disabled', 'disabled');

}));

};
@@ -37,7 +37,7 @@ tools.Facebook.GetListMembers = function(_friendlist, _callback) {
tools.Facebook.runtime.listMembersWait = true;
var _listmembers = [];
customEvent('GetFLMembers', function() {
var _members = $('#GetFLMembers').val();
var _members = JSON.parse($('#GetFLMembers').val());
if(_members !== 'false') {
_members = JSON.parse(_members);
$.each(_members, function(_i, _e) {
@@ -8,16 +8,12 @@ function cageNews(_full) {
$('#results_main_wrapper span.result_body:first').append('<div id="cageNews"><center id="cageNewsHead">' + _hed + '</center><center id="cageNewsSubHead">' + _sub + '</center><div id="cageNewsBody"><br><b>Changelog:</b><ul id="cageNewsChanges"></ul></div><div id="cageNewsFoot"><br><a href="http://cagenhancer.blogspot.com/" target="_blank">Blog</a> <a href="http://cagenhancer.blogspot.com/p/manual.html" target="_blank">Manual</a> <form action="https://www.paypal.com/cgi-bin/webscr" target="_blank" method="post" style="display:inline-block;bottom:-8px;position:relative"><input type="hidden" name="cmd" value="_s-xclick"><input type="hidden" name="hosted_button_id" value="PC84GRGBLQ2J8"><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"><img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1"></form> <a href="http://caaplayer.freeforums.org/c-a-g-e-f29.html" target="_blank">Forum</a> <a href="https://github.com/unknowner/CAGE" target="_blank">GitHub</a><br><br><span style="font-size:12px;text-align:center;">You want to say thank you? Just visit the Blog, click an Ad or donate via PayPal.</span></div></div>');
$('#cageNewsFoot').prepend('<center>If you find bugs, just go to the blog and post them there (no signup required).<br>Logs (CTRL+SHIFT+J) are always welcome!</center>');
$.each([
//@formatter:off
'ADD: Monthly general Zolthar',
'FIX: Sano position in Atlantis quests',
'FIX: Monster stats not on every monster',
'FIX: General pics not showing after entering generals page',
'FIX: Current generals def/att stats incl. items bonuses',
'FIX: Generals reappear on fav list',
'FIX: Dismiss/Join in friends keep broken',
'CHG: Extra tier in public monsters disabled for now'
//@formatter:on
'ADD: Enable/disable CAGE (Chrome)',
'ADD: Needclicker can disable CAGE for CTAs',
'ADD: Show stats for items in keep',
'FIX: Battle stats',
'FIX: Double scrollbars',
'FIX: General equipment not updating'
], function(_i, _e) {
$('#cageNewsChanges').append('<li><span>' + _e.split(':')[0] + '</span>' + _e.split(':')[1] + '</li>');
});
@@ -28,7 +28,7 @@ function customEvent(_event, _function) {
// fire the event opt. with data
window[('fire' + _arg)] = function(_data) {
if(_data !== undefined) {
$('#' + _arg).val(_data);
$('#' + _arg).val(JSON.stringify(_data));
}
console.log('fire customEvent: ', _arg);
var customEvent = document.createEvent('Event');
@@ -6,11 +6,11 @@ tools.Page.pages['index.php'] = function() {
user : null,
lose : 0
}, last = null, oldest = null;
$('#battleUpdateBox div.alertsContainer > div').each(function(i, el) {
$('#newsFeedSection div[style*="graphics/news_innercontainer_mid.gif"]').each(function(i, el) {
if(last === null) {
last = $('div.alert_title', el).text();
last = $(el).prev().text().replace(' ago', '').replace('Victory! ', '');
} else {
oldest = $('div.alert_title', el).text();
oldest = $(el).prev().text().replace(' ago', '').replace('Victory! ', '');
}
var txt = $(el).text().replace(/,/g, ''), my_xp = 0, my_bp = 0, my_wp = 0, my_cash = 0, my_cp = 0, my_cop = 0, result = 1, _uid;
if(txt.match(/You were killed/i)) {
@@ -13,11 +13,14 @@ tools.Page.pages['keep.php'] = function() {
// Collapsed items/untits ...
$('div.statsTTitle').toggle(function() {
$(this).parents('div.statsT2:first').css({
'height' : '100%'
'height' : '100%',
'overflow' : ''
});
scrollTo(0, $(this).offset().top - 110);
}, function() {
$(this).parents('div.statsT2:first').css({
'height' : 30
'height' : 30,
'overflow' : 'hidden'
});
});
// Calulate devine power
@@ -118,9 +121,31 @@ tools.Page.pages['keep.php'] = function() {
$('div.keep_healer_section').prepend($('<div id="cageKeepStats">').append('<div>eAtt: ' + _data.eAt.toFixed(2) + '</div><div style="font-size:9px;">Effective Attack</div>').append('<div>eDef: ' + _data.eDe.toFixed(2) + '</div><div style="font-size:9px;">Effective Defense</div>').append('<div>BSI: ' + _data.bsi.toFixed(2) + '</div><div style="font-size:9px;">Battle Strength Index</div>').append('<div>LSI: ' + _data.lsi.toFixed(2) + '</div><div style="font-size:9px;">Levelling Speed Index</div>').append('<div>TSI: ' + _data.tsi.toFixed(2) + '</div><div style="font-size:9px;">Total Skillpoints per Level</div>').append('<div>Divine: ' + _divPow + '</div><div style="font-size:9px;">Calculated Divine Power</div>'));
}
// rearrange Items
window.setTimeout(function() {
$('.statUnit').find('img').unwrap().unwrap();
setTimeout(function() {
$('.statUnit').each(function() {
var $this = $(this), $next = $this.next(), _text = $next.text().trim();
if(_text !== '') {
_text = _text.split(/(\r\n|\n|\r)/gm);
$next.remove();
} else {
_text = [$this.find('img').attr('title')];
}
for(var i = 0; i < _text.length; i++) {
if(_text[i].trim() == '') {
_text.splice(i, 1);
i--;
} else {
_text[i] = _text[i].trim();
}
}
$this.data('info', _text.join('<br>')).find('img').hover(function() {
$this.css('zIndex', 1).prepend('<div class="cageUnitStats"><div>' + $this.data('info') + '</div></div>');
}, function() {
$this.css('zIndex', '').children('div.cageUnitStats').remove();
}).attr('title', '').unwrap().unwrap();
})
}, 50);

// Add stuff on others keep
if($('div.keep_main_section').length === 0) {
if($('#keep_battle_frm1').length === 0) {
@@ -19,4 +19,11 @@ tools.Page.pages['land.php'] = function() {
if(_pin !== false) {
$('#' + _pin + ' > img.cagePinIt').click();
}
// ROI
$('#section_land, #section_special_land').children().each(function() {
var _income = parseInt($(this).find('div > strong.gold:first').text().replace(/,/g, ''), 10);
var _price = parseInt($(this).find('div > strong.gold:last').text().replace(/,/g, ''), 10);
console.log(_income, _price, _income / _price);
});

};
@@ -103,6 +103,9 @@ tools.General.setByName = function(_name, _callback) {
}
setTimeout(function() {
if(_i.length > 0) {
_i.each(function() {
$(this).attr('src', $(this).attr('nosrc')).attr('nosrc', '');
})
$('#cageGeneralEquipment').empty().append(_i);
}
}, 100);
@@ -17,7 +17,8 @@ tools.Gifter.init = function() {
//prepare update event to receive userids and request ids
customEvent('GiftRequests', function() {
console.log('EVENT: GiftRequests');
var _gifts = JSON.parse($('#GiftRequests').val());
_gifts = JSON.parse(JSON.parse($('#GiftRequests').val()));
console.log(_gifts);
var _received = 0;
if(_gifts) {
$.each(_gifts.data, function(_i, _e) {
@@ -67,7 +68,8 @@ tools.Gifter.runtimeUpdate = function() {
});
});
console.log('tools.Gifter.runtime', tools.Gifter.runtime);
}; 7
};
7
tools.Gifter.start = function() {
addFunction(function() {
FB.api('/me/apprequests/', function(_response) {
@@ -1,6 +1,5 @@
// CAGE stuff working on Castle Age site
//$(document.body).hide();
$('#AjaxLoadIcon').append('<img id="cageLogo" src="' + getPath('img/icon64.png') + '">').append('<div id="cageLoadError">Loading CAGE...</div>').fadeIn('slow');

var CastleAge = {
bqh : null,
signed_request : null,
@@ -9,47 +8,54 @@ var CastleAge = {
startInterval : null,
started : false
};

com.initPort(com.port.castleAge);
var _append = '';
$.each(['css/cage.css', 'css/cage_sidebar.css', 'css/ca_cage.css', 'css/cage_stats.css', 'css/cage_general.css', 'css/ca_pages.css', 'css/ca_monster.css', 'css/ui.selectmenu.css', 'css/cage_settings.css', 'css/cage_tools.css'], function(_i, _e) {
_append += '<link rel="stylesheet" type="text/css" href="' + getPath(_e) + '?_=' + Math.random() + '" >';
});
_append += '<link id="cageTheme" rel="stylesheet" type="text/css" href="' + getPath('css/dark-hive/jquery-ui.css') + '" >';
_append += '<script type="text/javascript" language="javascript" src="' + getPath('js/jquery.js') + '"></script>';
$(document.body).append($('<input>').attr({
'id' : 'signed_request',
'type' : 'hidden'
})).append(_append);
_append = null;
// Add CAGE container / repos menu / repos chat
$('#globalContainer').append('<div id="cageSidebar"><div id="cageSidebarHeader"></div><div id="cageSidebarStats"></div><div id="cageSidebarTools"></div><div id="cageSidebarChat"></div><div id="cageSidebarBottom"><a href="http://cagenhancer.blogspot.com/" target="_blank">Blog</a> <a href="http://cagenhancer.blogspot.com/p/manual.html" target="_blank">Manual</a> <a href="http://caaplayer.freeforums.org/c-a-g-e-f29.html" target="_blank">Forum</a> <a href="https://github.com/unknowner/CAGE" target="_blank">GitHub</a></div></div><div id="cageStatsContainer"></div><div id="cageContainer"></div>').prepend($('#expandedGuildChat, #collapsedGuildChat').detach());
CastleAge.startInterval = setInterval(function() {
if(CastleAge.signed_request !== null && CastleAge.userId !== null) {
clearInterval(CastleAge.startInterval);
setInterval(function() {
com.send(com.task.alive, com.port.facebook, null);
}, 10000);
initTools();
var _startURL = $('#current_pg_url').attr('value');
if(_startURL.indexOf('?') !== -1) {
_startURL = _startURL.substring(0, _startURL.indexOf('?'));
}
console.log("URL:" + _startURL);
tools.Page.allPages();
if(tools.Page.pages[_startURL]) {
tools.Page.pages[_startURL]();
}
_startURL = null;
com.send(com.task.caStart, com.port.castleAge, null);

$('#AjaxLoadIcon').delay(3000).fadeOut(1000, function() {
$('#collapsedGuildChat').css('left', '');
$('#expandedGuildChat').css('left', '');
$('#chatGuildChat').scrollTop($('#chatGuildChat div').length * 20);
$('#cageLoadError').remove();
});
} else {
com.send(com.task.castleAgeReady, com.port.facebook);
}
}, 100);
// startup repos etc...
$('#main_ststb').html($('#main_ststb').html().replace(/more/g, ''));
function initCastleAge() {
$('#AjaxLoadIcon').append('<img id="cageLogo" src="' + getPath('img/icon64.png') + '">').append('<div id="cageLoadError">Loading CAGE...</div>').fadeIn('slow');
var _append = '';
$.each(['css/cage.css', 'css/cage_sidebar.css', 'css/ca_cage.css', 'css/cage_stats.css', 'css/cage_general.css', 'css/ca_pages.css', 'css/ca_monster.css', 'css/ui.selectmenu.css', 'css/cage_settings.css', 'css/cage_tools.css'], function(_i, _e) {
_append += '<link rel="stylesheet" type="text/css" href="' + getPath(_e) + '?_=' + Math.random() + '" >';
});
_append += '<link id="cageTheme" rel="stylesheet" type="text/css" href="' + getPath('css/dark-hive/jquery-ui.css') + '" >';
_append += '<script type="text/javascript" language="javascript" src="' + getPath('js/jquery.js') + '"></script>';
$(document.body).append($('<input>').attr({
'id' : 'signed_request',
'type' : 'hidden'
})).append(_append);
_append = null;

// Add CAGE container / repos menu / repos chat
$('#globalContainer').append('<div id="cageSidebar"><div id="cageSidebarHeader"></div><div id="cageSidebarStats"></div><div id="cageSidebarTools"></div><div id="cageSidebarChat"></div><div id="cageSidebarBottom"><a href="http://cagenhancer.blogspot.com/" target="_blank">Blog</a> <a href="http://cagenhancer.blogspot.com/p/manual.html" target="_blank">Manual</a> <a href="http://caaplayer.freeforums.org/c-a-g-e-f29.html" target="_blank">Forum</a> <a href="https://github.com/unknowner/CAGE" target="_blank">GitHub</a></div></div><div id="cageStatsContainer"></div><div id="cageContainer"></div>').prepend($('#expandedGuildChat, #collapsedGuildChat').detach());
CastleAge.startInterval = setInterval(function() {
if(CastleAge.signed_request !== null && CastleAge.userId !== null) {
clearInterval(CastleAge.startInterval);
setInterval(function() {
com.send(com.task.alive, com.port.facebook, null);
}, 10000);
initTools();
var _startURL = $('#current_pg_url').attr('value');
if(_startURL.indexOf('?') !== -1) {
_startURL = _startURL.substring(0, _startURL.indexOf('?'));
}
console.log("URL:" + _startURL);
tools.Page.allPages();
if(tools.Page.pages[_startURL]) {
tools.Page.pages[_startURL]();
}
_startURL = null;

$('#AjaxLoadIcon').delay(3000).fadeOut(1000, function() {
$('#collapsedGuildChat').css('left', '');
$('#expandedGuildChat').css('left', '');
$('#chatGuildChat').scrollTop($('#chatGuildChat div').length * 20);
$('#cageLoadError').remove();
});
} else {
com.send(com.task.castleAgeReady, com.port.facebook);
}
}, 100);
// startup repos etc...
$('#main_ststb').html($('#main_ststb').html().replace(/more/g, ''));
}
@@ -30,6 +30,8 @@ var com = {
task : {
alive : 'TASK_ALIVE',
init : 'TASK_INIT',
caStart : 'TASK_CASTART',
fbStart : 'TASK_FBSTART',
fbReady : 'TASK_FBREADY',
getGeneral : 'TASK_GETGENERAL',
general : 'TASK_GENERAL',
@@ -61,16 +63,21 @@ var com = {
// Called in background.html to setup port listeners
initBackground : function() {
chrome.extension.onConnect.addListener(function(_port) {
console.log('onconnect:', _port);
com.ports[_port.name] = _port;
_port.onMessage.addListener(function(_message) {
console.log('onMessage:', _message);
if(_message.port === com.port.background) {
note(_message.data);
} else {
com.ports[_message.port].postMessage(_message);
}
});
if(CAGE.enable === true) {
console.log('onconnect:', _port);
com.ports[_port.name] = _port;
_port.onMessage.addListener(function(_message) {
console.log('onMessage:', _message);
if(_message.port === com.port.background) {
// currently only one type, can be expanded
note(_message.data);
} else {
com.ports[_message.port].postMessage(_message);
}
});
} else {
console.log('connection refused');
}
});
},
// Send Messages to ports
@@ -1,20 +1,20 @@
// CAGE stuff working on facebook site
Facebook = {
var _window = window || this.unsafeWindow, Facebook = {
started : false,
bluebarHidden : false
};

com.initPort(com.port.facebook);
com.send(com.task.fbStart, com.port.facebook, null);

$('head').append('<style type="text/css" id="cageIFrame">')
//.append('<link id="cageTheme" rel="stylesheet" type="text/css" href="' + getPath('css/dark-hive/') + 'jquery-ui.css">')
.append('<link rel="stylesheet" type="text/css" href="' + getPath('css/fb_cage.css?x=' + Math.random() * 1000) + '">');
function initFacebook() {
$('head').append('<style type="text/css" id="cageIFrame">').append('<link rel="stylesheet" type="text/css" href="' + getPath('css/fb_cage.css?x=' + Math.random() * 1000) + '">');

var _window = window || this.unsafeWindow;
_window.onresize = function(evt) {
$('#cageIFrame').html('.cageIFrame {height:' + (_window.innerHeight - (Facebook.bluebarHidden === true ? 1 : 34)) + 'px !important;}');
};
_window.onresize = function(evt) {
$('#cageIFrame').html('.cageIFrame {height:' + (_window.innerHeight - (Facebook.bluebarHidden === true ? 1 : 34)) + 'px !important;}');
};

$('#contentArea').css('backgroundColor', '#000');
$('#cageIFrame').html('.cageIFrame {height:' + (_window.innerHeight - (Facebook.bluebarHidden === true ? 1 : 34)) + 'px !important;}');
$('#iframe_canvas').addClass('cageIFrame').attr('scrolling', 'yes');
$('#contentArea').css('backgroundColor', '#000');
$('#cageIFrame').html('.cageIFrame {height:' + (_window.innerHeight - (Facebook.bluebarHidden === true ? 1 : 34)) + 'px !important;}');
$('#iframe_canvas').addClass('cageIFrame').attr('scrolling', 'yes');
}
@@ -32,5 +32,10 @@ function receiver(_data) {
$('#fbNotificationsFlyout').removeClass('cageNotificationsFlyout');
$('#cageIFrame').html('.cageIFrame {height:' + (_window.innerHeight - (Facebook.bluebarHidden === true ? 1 : 34)) + 'px !important;}');
break;
case com.task.fbStart:
if(location.search.indexOf('needclickers=1') === -1) {
initFacebook();
}
break;
}
}
@@ -8,6 +8,11 @@ function startCAGE() {
_i.value = Env.user;
document.body.appendChild(_i);
}, null, true, true);
// Fix for double scrollbars
$('#body').css({
'overflow' : '',
'overflowY' : ''
});
// Iframe changes
$('#cageIFrame').html('.cageIFrame {height:' + (window.innerHeight - 34) + 'px !important;}');
$('#iframe_canvas').addClass('cageIFrame').attr('scrolling', 'yes');
@@ -8,21 +8,24 @@ function note(_data) {
}

// update check
var _window = (this.unsafeWindow) ? this.unsafeWindow : window;
if(_window.location.hostname == 'apps.facebook.com') {
console.log('update init...');
$.getScript('http://cloud.github.com/downloads/unknowner/FFCAGE/update.js', function(data, textStatus) {
var _on = $('#cageOnlineVersion').val();
console.log('github: ', _on, ' - local: ', version.string());
if(_on != version.string()) {
if(confirm('You can now update CAGE to version ' + _on) == true) {
location.href = 'https://github.com/downloads/unknowner/FFCAGE/CAGE_' + _on.replace(/\./g, '_') + '.xpi?x=' + (Math.random() * 1000);
function ffUpdateCheck() {
var _window = (this.unsafeWindow) ? this.unsafeWindow : window;
if(_window.location.hostname == 'apps.facebook.com') {
console.log('update init...');
$.getScript('http://cloud.github.com/downloads/unknowner/FFCAGE/update.js', function(data, textStatus) {
var _on = $('#cageOnlineVersion').val();
console.log('github: ', _on, ' - local: ', version.string());
if(_on != version.string()) {
if(confirm('You can now update CAGE to version ' + _on) == true) {
location.href = 'https://github.com/downloads/unknowner/FFCAGE/CAGE_' + _on.replace(/\./g, '_') + '.xpi?x=' + (Math.random() * 1000);
}
}
}
}).error(function(x) {
console.log("error:", x.statusText);
});
}).error(function(x) {
console.log("error:", x.statusText);
});
}
}

// CSS problems
$('body').css({
'height' : '100%',
@@ -50,6 +53,8 @@ var com = {
task : {
alive : 'TASK_ALIVE',
init : 'TASK_INIT',
caStart : 'TASK_CASTART',
fbStart : 'TASK_FBSTART',
fbReady : 'TASK_FBREADY',
getGeneral : 'TASK_GETGENERAL',
general : 'TASK_GENERAL',
@@ -83,15 +88,23 @@ var com = {
},
// Send Messages to ports
send : function(_task, _port, _data) {
console.log('send:', _task, _port, _data);
if(_task == 'NOTE') {
console.log('NOTE:', _data.t, _data.m)
} else {
self.port.emit(_port, {
console.log('send:', _port, com.port.current.name)
if(_port === com.port.current.name) {
receiver({
task : _task,
port : _port,
data : _data
});
} else {
if(_task == 'NOTE') {
console.log('NOTE:', _data.t, _data.m)
} else {
self.port.emit(_port, {
task : _task,
port : _port,
data : _data
});
}
}
},
note : function(_title, _message) {

Large diffs are not rendered by default.

@@ -2,7 +2,7 @@
version = {
major : 1,
minor : 2,
revision : 4,
revision : 5,
state : 'b',
string : function() {
return version.major + '.' + version.minor + '.' + version.revision + version.state;
@@ -18,6 +18,8 @@ var com = {
task : {
alive : 'TASK_ALIVE',
init : 'TASK_INIT',
caStart : 'TASK_CASTART',
fbStart : 'TASK_FBSTART',
fbReady : 'TASK_FBREADY',
getGeneral : 'TASK_GETGENERAL',
general : 'TASK_GENERAL',
@@ -42,14 +44,14 @@ var com = {
};

var data = require("self").data, workers = {};
console.log('dataurl:' + data.url("js/version.js"));

function passCAMessage(_data) {
if(com.worker.facebook !== null) {
com.worker.facebook.port.emit(com.port.facebook, _data);
} else {
setTimeout(function() {
passCAMessage(_data);
}, 100);
}, 50);
}
}

@@ -59,31 +61,10 @@ function passFBMessage(_data) {
} else {
setTimeout(function() {
passFBMessage(_data);
}, 100);
}, 50);
}
}

console.log('FB...');
var pageModFacebook = require("page-mod").PageMod({
include : ["http://apps.facebook.com/castle_age/*", "https://apps.facebook.com/castle_age/*"],
contentScriptWhen : 'end',
contentScriptFile : [
data.url("js/version.js"),
data.url("js/jquery.js"),
data.url("js/firefox.js"),
data.url("js/common.js"),
data.url("js/fb/fb_receiver.js"),
data.url("js/fb/fb_start.js"),
data.url("js/facebook.js")],
onAttach : function onAttach(worker) {
com.worker.facebook = worker;
com.worker.facebook.port.on(com.port.castleAge, function(_data) {
passFBMessage(_data);
});
console.log('FB attached:');
}
});

console.log('CA...');
var pageModCastleAge = require("page-mod").PageMod({
include : ["http://web.castleagegame.com/castle/*", "https://web.castleagegame.com/castle/*", "http://cloud.github.com/downloads/unknowner/FFCAGE/*"],
@@ -177,5 +158,24 @@ var pageModCastleAge = require("page-mod").PageMod({
console.log('CA attached:');
}
});
//com.initBackground();
console.log('CAGE main.js done');

console.log('FB...');
var pageModFacebook = require("page-mod").PageMod({
include : ["http://apps.facebook.com/castle_age/*", "https://apps.facebook.com/castle_age/*"],
contentScriptWhen : 'end',
contentScriptFile : [
data.url("js/version.js"),
data.url("js/jquery.js"),
data.url("js/firefox.js"),
data.url("js/common.js"),
data.url("js/fb/fb_receiver.js"),
data.url("js/fb/fb_start.js"),
data.url("js/facebook.js")],
onAttach : function onAttach(worker) {
com.worker.facebook = worker;
com.worker.facebook.port.on(com.port.castleAge, function(_data) {
passFBMessage(_data);
});
console.log('FB attached:');
}
});
@@ -1,4 +1,4 @@
var up = document.createElement('INPUT');
up.id = 'cageOnlineVersion';
up.value = '1.2.4b';
up.value = '1.2.5b';
document.body.appendChild(up);