drakeapps / synccit-browser-extension Goto Github PK
View Code? Open in Web Editor NEWThe Chrome and Greasemonkey synccit extensions
Home Page: https://synccit.com
The Chrome and Greasemonkey synccit extensions
Home Page: https://synccit.com
The addon at https://addons.mozilla.org/en-US/firefox/addon/synccit/ needs to be updated to the latest version.
The version on that website still has an issue with loading reddit widgets.
Expected behavior: When opening a link using expando via keyboard shortcuts in RES, I expect the link to by synced to the backend
Actual behavior: When using the expando with the mouse, I see a sync message in the console. When doing it via keyboard shortcuts (default X key,) the link does not sync, and no message is output to the console.
When using version 1.5 of the addon available at addons.mozilla.org, synccit does not function and prints the following error when firefox is run from a terminal:
console.error: synccit:
Message: ReferenceError: GM_xmlhttpRequest is not defined
Stack:
@resource://gre/modules/XPIProvider.jsm -> jar:file:///home/dan/.mozilla/firefox/kcm956bf.default/extensions/[email protected]!/bootstrap.js -> resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/loader/sandbox.js -> resource://ae1eba58-4e65-48ae-8436-d93346bd059d/synccit/data/synccit.js:139
Compiling the script as explained in the readme produces a working addon (as of 67e710b). Running as a greasemonkey script also works fine.
If I change the auth code on device A, it will sync the same code to device B.
Probably should use storage.local instead of storage.sync here ๐
It would be nice to keep the sync (in case local storage is cleared), but I guess there's no way to see which device one is currently on.
synccit.user.js:182 Uncaught TypeError: Cannot read property 'innerHTML' of null
at RedditLink.findCommentCount (synccit.user.js:182)
at new RedditLink (synccit.user.js:134)
at synccit.user.js:286
at NodeList.forEach (<anonymous>)
at RedditLinks.findAllLinks (synccit.user.js:278)
at new RedditLinks (synccit.user.js:260)
at synccit.user.js:701
Using the xpi stored in this repository, if I go to blog.reddit.com, I get the error message in the title.
When attempting to use the latest userscript available from this repo (1.17), the following errors are occur on loading:
TypeError: Cannot read property 'sync' of undefined
at SynccitSettings.chromeLogin (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:609)
at new SynccitSettings (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:597)
at new Synccit (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:465)
at new RedditLinks (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:282)
at Window.tms_68cd5315_a567_452e_b4ab_12384080ed08 (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:796)
at <anonymous>:3:100
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:1)
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:1)
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:798)
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:800)
TypeError: Cannot read property 'parentElement' of null
at NewRedditSelectors.getButtonLocation (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:57)
at SynccitSettings.addSettingsLink (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:693)
at new SynccitSettings (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:595)
at new Synccit (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:465)
at new RedditLinks (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:282)
at Window.tms_68cd5315_a567_452e_b4ab_12384080ed08 (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:796)
at <anonymous>:3:100
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:1)
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:1)
at eval (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:798)
And this error occurs upon pressing "Submit" on the Synccit login page:
userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:654 Uncaught TypeError: Cannot read property 'sync' of undefined
at SynccitSettings.storeChromeLogin (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:654)
at SynccitSettings.saveSynccitSettings (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:665)
at HTMLButtonElement.document.getElementById.onclick (userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:786)
storeChromeLogin @ userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:654
saveSynccitSettings @ userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:665
document.getElementById.onclick @ userscript.html?name=synccit.user.js&id=68cd5315-a567-452e-b4ab-12384080ed08:786
Expected behavior: When infinite scroll is turned on in RES, and a new set of links are pulled, I would expect the extension to pull in the latest viewed links list from the backend.
Actual behavior: When a new list of links are pulled in when using infinite scroll, synccit plugin does not update those links based on whether or not they have been viewed. It seems like the visited pages list is only pulled on a complete page refresh.
Visited links don't show up in RES night mode
I am on latest version of Chrome, using Tampermonkey. On console the error shows up.
'synccit' failed! chrome.runtime.getManifest is not a function
I am attaching a log
www.reddit.com-1561628206588.log
It seems that to be able to run in firefox greasemonkey the userscripts needs the additional header
// @grant GM_xmlhttpRequest
to be able to run correctly
The version of the userscript in the chrome extension (1.16) throws this error when trying to sync:
synccit.user.js:540 Uncaught TypeError: resp.forEach is not a function
at Synccit.markReadLinks (synccit.user.js:540)
at XMLHttpRequest.oReq.onload (synccit.user.js:532)
markReadLinks @ synccit.user.js:540
oReq.onload @ synccit.user.js:532
load (async)
fetchReadLinks @ synccit.user.js:530
(anonymous) @ synccit.user.js:501
setTimeout (async)
fetchReadLinks @ synccit.user.js:500
findAllLinks @ synccit.user.js:330
RedditLinks @ synccit.user.js:283
(anonymous) @ synccit.user.js:810
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.