112
if (isCorrectPage()) {
112
function getAppNameNode() {
113
return document.evaluate('//div[@id="contentPane"]/div/div/div/div/div[3]',
114
document, null, XPathResult.ANY_UNORDERED_NODE_TYPE, null).singleNodeValue;
117
function getImg(appName) {
118
var params = "numNotificationsToFetch=20&sp=%5B9%2C2%2Cnull%2Cnull%2Cnull%2C20%2Cnull%2Cnull%2C%5B%5D%2Cnull%2Cnull%2Cnull%2Cnull%2Cnull%2Cnull%2C%5B%5D%5D&at=AObGSAhjSyZGNGIsEddNiQgGm1C9qNxXuQ%3A1350006133009&";
119
var request = new XMLHttpRequest();
121
request.onreadystatechange = wrapCallback(function () {
122
if (request.readyState === 4) {
123
var text = request.responseText;
124
var pos = text.indexOf(appName);
125
while (text[pos] !== '[' && pos > 0) {
131
for (depth = 1; depth && pos < text.length; pos++) {
132
if (text[pos] === '[') {
135
if (text[pos] === ']') {
139
var desc = text.substr(startPos, pos - startPos);
141
pos = desc.indexOf(',');
142
while (desc.indexOf(',', pos + 1) !== -1) {
143
pos = desc.indexOf(',', pos + 1);
146
var img = desc.substr(pos + 2);
147
img = img.substr(0, img.length - 2);
148
if (img.indexOf('https://') !== -1) {
149
img = 'http://' + img.substr('https://'.length);
151
Unity.toDataURL(img, wrapCallback(function (aResult, uri) {
152
Unity.init({ name: appName,
154
domain: 'plus.google.com',
156
homepage: String(window.location),
157
onInit: function(){} });
161
request.open("POST", "https://plus.google.com/u/0/_/games/getGamesModel?hl=en&ozv=es_oz_20121009.17_p3&avw=ggs%3A2&_reqid=820537&rt=j", true);
163
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
164
request.setRequestHeader("Content-length", params.length);
165
request.setRequestHeader("Connection", "close");
167
request.send(params);
170
if (isCorrectPage() && !unsafeWindow._alreadyOnPage) {
172
unsafeWindow._alreadyOnPage = true;
173
/* TODO: uncomment after lp:~zaspire/unity-firefox-extension/context-reinitialization merged
174
setInterval(wrapCallback(function wait() {
175
// It's change location without reloading page
176
if (!getAppNameNode() || !getAppNameNode().textContent.length) {
179
var appName = getAppNameNode().textContent;
180
if (previous == appName)
184
localStorage.setItem(appName, true);
113
186
Unity.init({ name: "Google+",
114
187
domain: 'plus.google.com',
115
188
homepage: 'https://plus.google.com/',