Merge branch 'master' of https://github.com/Spittie/4chan-x into v3
Conflicts: CHANGELOG.md LICENSE builds/4chan-X.meta.js builds/4chan-X.user.js builds/crx/script.js src/General/Index.coffee src/Posting/QR.coffee
This commit is contained in:
commit
553a5a9133
14
CHANGELOG.md
14
CHANGELOG.md
@ -45,18 +45,20 @@
|
|||||||
- Added `Original filename` variable to Sauce panel.
|
- Added `Original filename` variable to Sauce panel.
|
||||||
- Fixed a bug which prevented QR cooldowns from being pruned from storage.
|
- Fixed a bug which prevented QR cooldowns from being pruned from storage.
|
||||||
- On Chrome, the storage could reach the quota and prevent 4chan X from saving data like QR name/mail or auto-watch for example.
|
- On Chrome, the storage could reach the quota and prevent 4chan X from saving data like QR name/mail or auto-watch for example.
|
||||||
- Added a `Reset Settings` button in the settings.
|
|
||||||
|
## v1.4.0
|
||||||
|
*2014-02-24*
|
||||||
|
|
||||||
|
**MayhemYDG**:
|
||||||
|
- Added a Reset Settings button in the settings.
|
||||||
- More stability update.
|
- More stability update.
|
||||||
- Stability update.
|
- Stability update.
|
||||||
|
|
||||||
**ParrotParrot**:
|
**ParrotParrot**:
|
||||||
- Added `Original filename` variable to Sauce panel.
|
- Added `Original filename` variable to Sauce panel.
|
||||||
|
|
||||||
### v1.3.10
|
**Zixaphir**:
|
||||||
*2014-02-20*
|
- Merge changes from Mayhem fork
|
||||||
|
|
||||||
**Spittie**
|
|
||||||
- I keep breaking and fixing stuff. But mostly breaking.
|
|
||||||
|
|
||||||
### v1.3.9
|
### v1.3.9
|
||||||
*2014-02-20*
|
*2014-02-20*
|
||||||
|
|||||||
2
LICENSE
2
LICENSE
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* 4chan X - Version 1.3.10 - 2014-02-28
|
* 4chan X - Version 1.4.0 - 2014-02-28
|
||||||
*
|
*
|
||||||
* Licensed under the MIT license.
|
* Licensed under the MIT license.
|
||||||
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
||||||
|
|||||||
@ -4,7 +4,7 @@ Personal fork of Seaweed's 4chan X.
|
|||||||
|
|
||||||
##[Install](https://github.com/Spittie/4chan-x/raw/master/builds/4chan-X.user.js) (Firefox)
|
##[Install](https://github.com/Spittie/4chan-x/raw/master/builds/4chan-X.user.js) (Firefox)
|
||||||
##[Install](https://github.com/Spittie/4chan-x/raw/master/builds/crx.crx) (Chrom*)
|
##[Install](https://github.com/Spittie/4chan-x/raw/master/builds/crx.crx) (Chrom*)
|
||||||
##[Install](http://a.pomf.se/ermdzx.xpi) (Firefox Mobile)
|
##[Install](http://a.pomf.se/iazopu.xpi) (Firefox Mobile)
|
||||||
|
|
||||||
## If you have any problems, try resetting your 4chan X settings before calling me a faggot (but feel free to do so)
|
## If you have any problems, try resetting your 4chan X settings before calling me a faggot (but feel free to do so)
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name 4chan X
|
// @name 4chan X
|
||||||
// @version 1.3.10
|
// @version 1.4.0
|
||||||
// @minGMVer 1.14
|
// @minGMVer 1.14
|
||||||
// @minFFVer 26
|
// @minFFVer 26
|
||||||
// @namespace 4chan-X
|
// @namespace 4chan-X
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
// Generated by CoffeeScript
|
// Generated by CoffeeScript
|
||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name 4chan X
|
// @name 4chan X
|
||||||
// @version 1.3.10
|
// @version 1.4.0
|
||||||
// @minGMVer 1.14
|
// @minGMVer 1.14
|
||||||
// @minFFVer 26
|
// @minFFVer 26
|
||||||
// @namespace 4chan-X
|
// @namespace 4chan-X
|
||||||
@ -24,7 +24,7 @@
|
|||||||
// ==/UserScript==
|
// ==/UserScript==
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 4chan X - Version 1.3.10 - 2014-02-28
|
* 4chan X - Version 1.4.0 - 2014-02-28
|
||||||
*
|
*
|
||||||
* Licensed under the MIT license.
|
* Licensed under the MIT license.
|
||||||
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
||||||
@ -368,7 +368,7 @@
|
|||||||
doc = d.documentElement;
|
doc = d.documentElement;
|
||||||
|
|
||||||
g = {
|
g = {
|
||||||
VERSION: '1.3.10',
|
VERSION: '1.4.0',
|
||||||
NAMESPACE: '4chan X.',
|
NAMESPACE: '4chan X.',
|
||||||
boards: {}
|
boards: {}
|
||||||
};
|
};
|
||||||
@ -3060,7 +3060,7 @@
|
|||||||
return Math.max(0, Index.getPagesNum() - 1);
|
return Math.max(0, Index.getPagesNum() - 1);
|
||||||
},
|
},
|
||||||
togglePagelist: function() {
|
togglePagelist: function() {
|
||||||
return Index.pagelist.hidden = Conf['Index Mode'] === 'all pages';
|
return Index.pagelist.hidden = Conf['Index Mode'] !== 'paged';
|
||||||
},
|
},
|
||||||
buildPagelist: function() {
|
buildPagelist: function() {
|
||||||
var a, i, maxPageNum, nodes, pagesRoot, _i;
|
var a, i, maxPageNum, nodes, pagesRoot, _i;
|
||||||
@ -6053,6 +6053,14 @@
|
|||||||
$.on(d, 'drop', QR.dropFile);
|
$.on(d, 'drop', QR.dropFile);
|
||||||
$.on(d, 'dragstart dragend', QR.drag);
|
$.on(d, 'dragstart dragend', QR.drag);
|
||||||
({
|
({
|
||||||
|
catalog: function() {
|
||||||
|
if (Conf["Persistent QR"]) {
|
||||||
|
QR.open();
|
||||||
|
}
|
||||||
|
if (Conf['Auto Hide QR']) {
|
||||||
|
return QR.hide();
|
||||||
|
}
|
||||||
|
},
|
||||||
index: function() {
|
index: function() {
|
||||||
return $.on(d, 'IndexRefresh', QR.generatePostableThreadsList);
|
return $.on(d, 'IndexRefresh', QR.generatePostableThreadsList);
|
||||||
},
|
},
|
||||||
@ -6748,6 +6756,8 @@
|
|||||||
if (/captcha|verification/i.test(err.textContent) || err === 'Connection error with sys.4chan.org.') {
|
if (/captcha|verification/i.test(err.textContent) || err === 'Connection error with sys.4chan.org.') {
|
||||||
if (/mistyped/i.test(err.textContent)) {
|
if (/mistyped/i.test(err.textContent)) {
|
||||||
err = 'You seem to have mistyped the CAPTCHA.';
|
err = 'You seem to have mistyped the CAPTCHA.';
|
||||||
|
} else if (/expired/i.test(err.textContent)) {
|
||||||
|
err = 'This CAPTCHA is no longer valid because it has expired.';
|
||||||
}
|
}
|
||||||
QR.cooldown.auto = QR.captcha.isEnabled ? !!QR.captcha.captchas.length : err === 'Connection error with sys.4chan.org.' ? true : false;
|
QR.cooldown.auto = QR.captcha.isEnabled ? !!QR.captcha.captchas.length : err === 'Connection error with sys.4chan.org.' ? true : false;
|
||||||
QR.cooldown.set({
|
QR.cooldown.set({
|
||||||
@ -10850,16 +10860,6 @@
|
|||||||
https: true,
|
https: true,
|
||||||
software: "foolfuuka"
|
software: "foolfuuka"
|
||||||
}
|
}
|
||||||
}, {
|
|
||||||
name: "Install Gentoo",
|
|
||||||
boards: ["diy", "g", "sci"],
|
|
||||||
files: [],
|
|
||||||
data: {
|
|
||||||
domain: "archive.installgentoo.net",
|
|
||||||
http: false,
|
|
||||||
https: true,
|
|
||||||
software: "fuuka"
|
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
name: "Rebecca Black Tech",
|
name: "Rebecca Black Tech",
|
||||||
boards: ["cgl", "g", "mu", "w"],
|
boards: ["cgl", "g", "mu", "w"],
|
||||||
|
|||||||
BIN
builds/crx.crx
BIN
builds/crx.crx
Binary file not shown.
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "4chan X",
|
"name": "4chan X",
|
||||||
"version": "1.3.10",
|
"version": "1.4.0",
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"description": "Cross-browser userscript for maximum lurking on 4chan.",
|
"description": "Cross-browser userscript for maximum lurking on 4chan.",
|
||||||
"icons": {
|
"icons": {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
// Generated by CoffeeScript
|
// Generated by CoffeeScript
|
||||||
/*
|
/*
|
||||||
* 4chan X - Version 1.3.10 - 2014-02-28
|
* 4chan X - Version 1.4.0 - 2014-02-28
|
||||||
*
|
*
|
||||||
* Licensed under the MIT license.
|
* Licensed under the MIT license.
|
||||||
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
* https://github.com/Spittie/4chan-x/blob/master/LICENSE
|
||||||
@ -344,7 +344,7 @@
|
|||||||
doc = d.documentElement;
|
doc = d.documentElement;
|
||||||
|
|
||||||
g = {
|
g = {
|
||||||
VERSION: '1.3.10',
|
VERSION: '1.4.0',
|
||||||
NAMESPACE: '4chan X.',
|
NAMESPACE: '4chan X.',
|
||||||
boards: {}
|
boards: {}
|
||||||
};
|
};
|
||||||
@ -3111,7 +3111,7 @@
|
|||||||
return Math.max(0, Index.getPagesNum() - 1);
|
return Math.max(0, Index.getPagesNum() - 1);
|
||||||
},
|
},
|
||||||
togglePagelist: function() {
|
togglePagelist: function() {
|
||||||
return Index.pagelist.hidden = Conf['Index Mode'] === 'all pages';
|
return Index.pagelist.hidden = Conf['Index Mode'] !== 'paged';
|
||||||
},
|
},
|
||||||
buildPagelist: function() {
|
buildPagelist: function() {
|
||||||
var a, i, maxPageNum, nodes, pagesRoot, _i;
|
var a, i, maxPageNum, nodes, pagesRoot, _i;
|
||||||
@ -6098,6 +6098,14 @@
|
|||||||
$.on(d, 'drop', QR.dropFile);
|
$.on(d, 'drop', QR.dropFile);
|
||||||
$.on(d, 'dragstart dragend', QR.drag);
|
$.on(d, 'dragstart dragend', QR.drag);
|
||||||
({
|
({
|
||||||
|
catalog: function() {
|
||||||
|
if (Conf["Persistent QR"]) {
|
||||||
|
QR.open();
|
||||||
|
}
|
||||||
|
if (Conf['Auto Hide QR']) {
|
||||||
|
return QR.hide();
|
||||||
|
}
|
||||||
|
},
|
||||||
index: function() {
|
index: function() {
|
||||||
return $.on(d, 'IndexRefresh', QR.generatePostableThreadsList);
|
return $.on(d, 'IndexRefresh', QR.generatePostableThreadsList);
|
||||||
},
|
},
|
||||||
@ -6783,6 +6791,8 @@
|
|||||||
if (/captcha|verification/i.test(err.textContent) || err === 'Connection error with sys.4chan.org.') {
|
if (/captcha|verification/i.test(err.textContent) || err === 'Connection error with sys.4chan.org.') {
|
||||||
if (/mistyped/i.test(err.textContent)) {
|
if (/mistyped/i.test(err.textContent)) {
|
||||||
err = 'You seem to have mistyped the CAPTCHA.';
|
err = 'You seem to have mistyped the CAPTCHA.';
|
||||||
|
} else if (/expired/i.test(err.textContent)) {
|
||||||
|
err = 'This CAPTCHA is no longer valid because it has expired.';
|
||||||
}
|
}
|
||||||
QR.cooldown.auto = QR.captcha.isEnabled ? !!QR.captcha.captchas.length : err === 'Connection error with sys.4chan.org.' ? true : false;
|
QR.cooldown.auto = QR.captcha.isEnabled ? !!QR.captcha.captchas.length : err === 'Connection error with sys.4chan.org.' ? true : false;
|
||||||
QR.cooldown.set({
|
QR.cooldown.set({
|
||||||
@ -10856,16 +10866,6 @@
|
|||||||
https: true,
|
https: true,
|
||||||
software: "foolfuuka"
|
software: "foolfuuka"
|
||||||
}
|
}
|
||||||
}, {
|
|
||||||
name: "Install Gentoo",
|
|
||||||
boards: ["diy", "g", "sci"],
|
|
||||||
files: [],
|
|
||||||
data: {
|
|
||||||
domain: "archive.installgentoo.net",
|
|
||||||
http: false,
|
|
||||||
https: true,
|
|
||||||
software: "fuuka"
|
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
name: "Rebecca Black Tech",
|
name: "Rebecca Black Tech",
|
||||||
boards: ["cgl", "g", "mu", "w"],
|
boards: ["cgl", "g", "mu", "w"],
|
||||||
|
|||||||
Binary file not shown.
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
|||||||
postMessage({version:'1.3.10'},'*')
|
postMessage({version:'1.4.0'},'*')
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "4chan-X",
|
"name": "4chan-X",
|
||||||
"version": "1.3.10",
|
"version": "1.4.0",
|
||||||
"description": "Cross-browser userscript for maximum lurking on 4chan.",
|
"description": "Cross-browser userscript for maximum lurking on 4chan.",
|
||||||
"meta": {
|
"meta": {
|
||||||
"name": "4chan X",
|
"name": "4chan X",
|
||||||
|
|||||||
@ -76,15 +76,6 @@ Redirect =
|
|||||||
http: true
|
http: true
|
||||||
https: true
|
https: true
|
||||||
software: "foolfuuka"
|
software: "foolfuuka"
|
||||||
,
|
|
||||||
name: "Install Gentoo"
|
|
||||||
boards: ["diy", "g", "sci"]
|
|
||||||
files: []
|
|
||||||
data:
|
|
||||||
domain: "archive.installgentoo.net"
|
|
||||||
http: false
|
|
||||||
https: true
|
|
||||||
software: "fuuka"
|
|
||||||
,
|
,
|
||||||
name: "Rebecca Black Tech"
|
name: "Rebecca Black Tech"
|
||||||
boards: ["cgl", "g", "mu", "w"]
|
boards: ["cgl", "g", "mu", "w"]
|
||||||
|
|||||||
@ -421,7 +421,7 @@ Index =
|
|||||||
Math.max 0, Index.getPagesNum() - 1
|
Math.max 0, Index.getPagesNum() - 1
|
||||||
|
|
||||||
togglePagelist: ->
|
togglePagelist: ->
|
||||||
Index.pagelist.hidden = Conf['Index Mode'] is 'all pages'
|
Index.pagelist.hidden = Conf['Index Mode'] isnt 'paged'
|
||||||
|
|
||||||
buildPagelist: ->
|
buildPagelist: ->
|
||||||
pagesRoot = $ '.pages', Index.pagelist
|
pagesRoot = $ '.pages', Index.pagelist
|
||||||
|
|||||||
@ -3,8 +3,9 @@ Navigate =
|
|||||||
init: ->
|
init: ->
|
||||||
return if g.VIEW is 'catalog' or g.BOARD.ID is 'f' or !Conf['JSON Navigation']
|
return if g.VIEW is 'catalog' or g.BOARD.ID is 'f' or !Conf['JSON Navigation']
|
||||||
|
|
||||||
# blink/webkit throw a popstate on page load. Not what we want.
|
$.ready ->
|
||||||
$.ready -> $.on window, 'popstate', Navigate.popstate
|
# blink/webkit throw a popstate on page load. Not what we want.
|
||||||
|
$.on window, 'popstate', Navigate.popstate
|
||||||
|
|
||||||
@title = -> return
|
@title = -> return
|
||||||
|
|
||||||
|
|||||||
@ -72,6 +72,9 @@ QR =
|
|||||||
$.on d, 'drop', QR.dropFile
|
$.on d, 'drop', QR.dropFile
|
||||||
$.on d, 'dragstart dragend', QR.drag
|
$.on d, 'dragstart dragend', QR.drag
|
||||||
{
|
{
|
||||||
|
catalog: ->
|
||||||
|
QR.open() if Conf["Persistent QR"]
|
||||||
|
QR.hide() if Conf['Auto Hide QR']
|
||||||
index: ->
|
index: ->
|
||||||
$.on d, 'IndexRefresh', QR.generatePostableThreadsList
|
$.on d, 'IndexRefresh', QR.generatePostableThreadsList
|
||||||
thread: ->
|
thread: ->
|
||||||
@ -434,30 +437,30 @@ QR =
|
|||||||
el: dialog = UI.dialog 'qr', 'top:0;right:0;', <%= importHTML('Features/QuickReply') %>
|
el: dialog = UI.dialog 'qr', 'top:0;right:0;', <%= importHTML('Features/QuickReply') %>
|
||||||
|
|
||||||
nodes[val[0]] = $ val[1], dialog for val in [
|
nodes[val[0]] = $ val[1], dialog for val in [
|
||||||
['move', '.move']
|
['move', '.move']
|
||||||
['autohide', '#autohide']
|
['autohide', '#autohide']
|
||||||
['thread', 'select']
|
['thread', 'select']
|
||||||
['threadPar', '#qr-thread-select']
|
['threadPar', '#qr-thread-select']
|
||||||
['close', '.close']
|
['close', '.close']
|
||||||
['form', 'form']
|
['form', 'form']
|
||||||
['dumpButton', '#dump-button']
|
['dumpButton', '#dump-button']
|
||||||
['urlButton', '#url-button']
|
['urlButton', '#url-button']
|
||||||
['name', '[data-name=name]']
|
['name', '[data-name=name]']
|
||||||
['email', '[data-name=email]']
|
['email', '[data-name=email]']
|
||||||
['sub', '[data-name=sub]']
|
['sub', '[data-name=sub]']
|
||||||
['com', '[data-name=com]']
|
['com', '[data-name=com]']
|
||||||
['dumpList', '#dump-list']
|
['dumpList', '#dump-list']
|
||||||
['addPost', '#add-post']
|
['addPost', '#add-post']
|
||||||
['charCount', '#char-count']
|
['charCount', '#char-count']
|
||||||
['fileSubmit', '#file-n-submit']
|
['fileSubmit', '#file-n-submit']
|
||||||
['filesize', '#qr-filesize']
|
['filesize', '#qr-filesize']
|
||||||
['filename', '#qr-filename']
|
['filename', '#qr-filename']
|
||||||
['fileContainer', '#qr-filename-container']
|
['fileContainer', '#qr-filename-container']
|
||||||
['fileRM', '#qr-filerm']
|
['fileRM', '#qr-filerm']
|
||||||
['fileExtras', '#qr-extras-container']
|
['fileExtras', '#qr-extras-container']
|
||||||
['spoiler', '#qr-file-spoiler']
|
['spoiler', '#qr-file-spoiler']
|
||||||
['status', '[type=submit]']
|
['status', '[type=submit]']
|
||||||
['fileInput', '[type=file]']
|
['fileInput', '[type=file]']
|
||||||
]
|
]
|
||||||
|
|
||||||
nodes.fileInput.max = $('input[name=MAX_FILE_SIZE]').value
|
nodes.fileInput.max = $('input[name=MAX_FILE_SIZE]').value
|
||||||
@ -730,6 +733,8 @@ QR =
|
|||||||
# Remove the obnoxious 4chan Pass ad.
|
# Remove the obnoxious 4chan Pass ad.
|
||||||
if /mistyped/i.test err.textContent
|
if /mistyped/i.test err.textContent
|
||||||
err = 'You seem to have mistyped the CAPTCHA.'
|
err = 'You seem to have mistyped the CAPTCHA.'
|
||||||
|
else if /expired/i.test err.textContent
|
||||||
|
err = 'This CAPTCHA is no longer valid because it has expired.'
|
||||||
# Enable auto-post if we have some cached captchas.
|
# Enable auto-post if we have some cached captchas.
|
||||||
QR.cooldown.auto = if QR.captcha.isEnabled
|
QR.cooldown.auto = if QR.captcha.isEnabled
|
||||||
!!QR.captcha.captchas.length
|
!!QR.captcha.captchas.length
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user