Skip to content

Commit

Permalink
Version 2.3.3
Browse files Browse the repository at this point in the history
  • Loading branch information
Cortys committed Sep 24, 2016
1 parent dc15f44 commit a575d85
Show file tree
Hide file tree
Showing 10 changed files with 24 additions and 44 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
source.pem
comixology.js
35 changes: 8 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,62 +1,43 @@
Comixology Backup
Comic Backup
======

Do you like [Comixology](http://comixology.com)? Me too!
Do you like online comic platforms? Me too!

Are you annoyed that you can't download all the comics you bought in a standard format? Me too!

This is a Chrome/Chromium extension, that allows you to do just that. After installation you are able to download comics from any publisher. It should work on any OS where Chrome works.

*IMPORTANT:* Do not use the extension for piracy! Only create private backups! We do not intent to compromise ComiXology. **Downloaded comics always have your username included. Distributed comics can be tracked back to you!**
*IMPORTANT:* Do not use the extension for piracy! Only create private backups! We do not intent to compromise any comic platform. **Downloaded comics always have your username included. Distributed comics can be tracked back to you!**

Installation
-----

The installation is slightly complicated (since I don't want to add this to the Chrome Store).
There are two ways of installing the extension.

### *IMPORTANT* for Windows users
If you are using Chrome on Windows you have to use the [second possibility](#second-possibility)! Using packed extensions, that aren't from the Chrome Web Store, does not work anymore.

### First possibility

The first way is [by this help page](https://support.google.com/chrome_webstore/answer/2664769?hl=en). **This does not work on Windows.**

- In Chrome, click on the settings icon on the right (looks like three vertical lines on top of each other)
- Select Tools > Extensions
- **Drag and drop** the CRX file **from your disk** to the extension page
- Now you just open your comics in the Comixology reader and you should see an orange panel, asking for back-up.

### Second possibility

The second way is without drag-and-drop, https://developer.chrome.com/extensions/getstarted#unpacked

**This works on Windows!**

- In Chrome, click on the settings icon on the right (looks like three vertical lines on top of each other)
- Select Tools > Extensions
- Select "Developer mode"
- Click on "Load unpacked extension"
- Select the "source" folder
- Now you just open your comics in the Comixology reader and you should see an orange panel, asking for back-up.
- Now you just open your comics in the online reader and you should see an orange panel, asking for back-up.

Updates
-----

If you want to be notified about updates you can add an update server in the extensions options. You get there by opening the extensions panel in the settings and then click on "Options" right to the Comixology Backup extension. The options should open and you can click on "Set update server".
If you want to be notified about updates you can add an update server in the extensions options. You get there by opening the extensions panel in the settings and then click on "Options" right to the Comic Backup extension. The options should open and you can click on "Set update server".

The update server URL is: `https://raw.githubusercontent.com/Cortys/comixology-backup/master`
The update server URL is: `https://raw.githubusercontent.com/Cortys/comic-backup/master`

Copy it exactly like that.

### Why it's not on Chrome Store?

I am fairly certain Comixology will, unfortunately, try to remove this extension from Chrome Store, because it goes around their DRM.
I am fairly certain comic platforms will, unfortunately, try to remove this extension from Chrome Store, because it goes around their DRM.

How to use
-----

* Open your ComiXology library by clicking on "My Books" in the menu.
* Open your online comic library by clicking on "My Books" in the menu.
* If this is your first time using the extension you will see a red "Activate Scan" button next to each comic.
* Click one of the red buttons and a new tab should be opened.
* In there a scan will be created. This basically means that the extension will ask you to click on some element of the reader. The things you are asked to do (switch view mode, open thumbnails...) are operations you can accomplish with one click. So only perform ONE click in each step or the setup won't work.
Expand Down
Binary file modified download.zip
Binary file not shown.
Binary file removed extension.crx
Binary file not shown.
6 changes: 3 additions & 3 deletions originCheck.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html>
<head>
<meta charset="utf-8">
<title>ComiXology Backup</title>
<title>Comic Backup</title>
<style type="text/css">
body {
text-align: center;
Expand All @@ -28,7 +28,7 @@ <h1>Origin check</h1>
Add a backuped file here and we will tell you who created it.<br><br>
<input id="file" type="file" multiple="multiple"><br><br>
</p>

<p>
The username you are looking for should be somewhere in here:
<pre>...</pre>
Expand Down Expand Up @@ -75,4 +75,4 @@ <h1>Origin check</h1>
});
</script>
</body>
</html>
</html>
4 changes: 2 additions & 2 deletions source/common.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"use strict";

var current_version = 120,
var current_version = 121,
div, linkStyle = "color:#ffffff;font-weight:bold;background:linear-gradient(to bottom, rgb(115, 152, 200) 0%,rgb(179, 206, 233) 1%,rgb(82, 142, 204) 5%,rgb(79, 137, 200) 20%,rgb(66, 120, 184) 50%,rgb(49, 97, 161) 100%);padding:3px;text-decoration:none;display:inline-block;width:70px;text-align:center;height:22px;box-sizing:border-box;line-height:14px;border:1px solid rgb(49,96,166);",
settings;

Expand Down Expand Up @@ -101,7 +101,7 @@ function updateDialog() {
addTopBar();
div.style.top = 0;
div.style.marginTop = 0;
div.innerHTML = "This version of the \"Comixology Backup\" extension is outdated.<br><a href=\"" + settings.updateServer + "/download.zip\" style='" + linkStyle + "' target='_blank'>Update</a>";
div.innerHTML = "This version of the \"Comic Backup\" extension is outdated.<br><a href=\"" + settings.updateServer + "/download.zip\" style='" + linkStyle + "' target='_blank'>Update</a>";
}
});
}
Expand Down
6 changes: 3 additions & 3 deletions source/manifest.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"manifest_version": 2,

"name": "Comixology Backup",
"description": "Save your Comixology comics as standard CBZ files.",
"version": "2.3.2",
"name": "Comic Backup",
"description": "Save your comics as standard CBZ files.",
"version": "2.3.3",
"minimum_chrome_version": "39",

"icons": {
Expand Down
4 changes: 2 additions & 2 deletions source/metaData.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ function MetaData() {
//This object will contain the actual metadata in a format
//that should allow easy download via STRINGIFY
this.JSONMD = {
appID: "Comixology Backup/" + current_version,
appID: "Comic Backup/" + current_version,
lastModified: new Date().toISOString().replace(/T|Z/g, " ") + "+0000",
"ComicBookInfo/1.0": {
series: "",
Expand All @@ -37,7 +37,7 @@ function MetaData() {

//In order to declare the first person in a role, I need to remember somwhere if we
//already had a first - so I'm creating a simply array with all the known roles
//that will go INTO the metadata (this is NOT what comes from Comixology!)
//that will go INTO the metadata
this.firstRoles = {
Writer: true,
Artist: true,
Expand Down
10 changes: 5 additions & 5 deletions source/options.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html>
<head>
<meta charset="utf-8">
<title>ComiXology Backup</title>
<title>Comic Backup</title>
<!-- This file, in conjunction with toast.js, will create the toast alert. It is distributed under The MIT License (http://opensource.org/licenses/mit-license.php), and all credit for development goes to https://github.com/CodeSeven/toastr -->
<link href="toastr.css" rel="stylesheet"/>
<script src="jquery-2.1.4.min.js"></script>
Expand Down Expand Up @@ -121,8 +121,8 @@
</style>
</head>
<body>
<a href="https://github.com/Cortys" target="_blank" id="credits">v2.3.2 by <b>Cortys</b></a>
<h1><img src="[email protected]" alt="Comixology Backup Settings"></h1>
<a href="https://github.com/Cortys" target="_blank" id="credits">v2.3.3 by <b>Cortys</b></a>
<h1><img src="[email protected]" alt="Comic Backup Settings"></h1>
<div id="content">
<h2>Backup behaviour</h2>
<div class="aligner">Page format:</div><div class="aligner r"><select id="page">
Expand Down Expand Up @@ -170,11 +170,11 @@ <h2>Updates</h2>
<h2>I need help!</h2>
<section><b>How is "Scan" different from the official backup options?</b> When you backup a comic with this extension, it takes high quality screenshots from the web reader. Those are quite good but do not match the quality of the official downloads. You should use "Scan" if you want to have smaller files or a comic is not officially available for download.</section>
<section><b>The download never starts!</b> To use the extension make sure you disabled the <i>Prompt to continue</i> message in the settings of the web reader (click the gear to get there).</section>
<section><b>My backups stop randomly and/or have blank pages!</b> Network latencies and UI event handling delays in the ComiXology reader are quite unpredictable and can cause blank pages or even stop your backups. To circumvent that, you should increase the <u>page swap interval</u>. It determines the shortest allowed interval between two page swaps.</section>
<section><b>My backups stop randomly and/or have blank pages!</b> Network latencies and UI event handling delays in the reader are quite unpredictable and can cause blank pages or even stop your backups. To circumvent that, you should increase the <u>page swap interval</u>. It determines the shortest allowed interval between two page swaps.</section>
<div class="aligner">Min. page swap interval:</div><div class="aligner r"><input value="600" type="text" id="pageSwapDelay"> ms</div>
<section><b>Some pages are missing in my backups!</b> You might want to fiddle with the <u>page skip delay</u>. It determines how long to wait for a reaction to a page swap. If the reader did not show any reaction to a page swap for the given time, the backup will just continue with the next page. This option is essential for manga fixed format comics, that have to be backuped in dual-page-mode and thus do not rerender every second page.</section>
<div class="aligner">Page skip delay:</div><div class="aligner r"><input value="1200" type="text" id="pageSkipDelay"> ms</div><br>
<section><b>It still does not work!</b> Sometimes ComiXology changes their reader code. If that happens you can force a new exploit scan and the plugin will try to detect a new way to backup your comics. In order to do that you will be asked to perform some actions the next time you open a comic.</section>
<section><b>It still does not work!</b> Sometimes the code of the online reader is changed. If that happens you can force a new exploit scan and the plugin will try to detect a new way to backup your comics. In order to do that you will be asked to perform some actions the next time you open a comic.</section>
<div class="aligner">Force new exploit scan:</div><div class="aligner r"><select id="selectors" data-message="reload_page">
<option value="0">Yes</option>
<option value="1">No</option>
Expand Down
2 changes: 1 addition & 1 deletion version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
120
121

0 comments on commit a575d85

Please sign in to comment.