Compare commits

..

No commits in common. "32b76dd2cf26f6e8e815a45c3b958a42aea27d42" and "32b581a6c40f362fade02fd6b7efe19abca09237" have entirely different histories.

3 changed files with 2 additions and 34 deletions

View File

@ -7,10 +7,6 @@ More importantly, it's a tool to help fight against BDFLs and other forms of cen
Usage
-----
Note: GAnarchy does not come with a main page. You need to provide one yourself. This should be in your website's `/` path (usually `index.html`).
The protocol handler uses the path `/?url=%s`. Additionally, your main page needs to include the `index.js` provided by GAnarchy
for the protocol handler to properly work.
First, initialize the database with `ganarchy.py initdb`. The database is stored in the XDG data home, as per XDG spec.
Then, set the project commit with `ganarchy.py set-commit COMMIT`, where `COMMIT` is the full commit hash.

View File

@ -60,7 +60,8 @@ TEMPLATE = """<!DOCTYPE html>
<p>Powered by <a href="https://ganarchy.autistic.space/">GAnarchy</a>. AGPLv3-licensed. <a href="https://cybre.tech/SoniEx2/ganarchy">Source Code</a>.</p>
<p>
<a href="/">Main page</a>.
<a href="{{ base_url|e }}" onclick="event.preventDefault(); navigator.registerProtocolHandler('web+ganarchy', this.href + '?url=%s', 'GAnarchy');">Register web+ganarchy: URI handler</a>.
<!-- commented out because browsers suck :( -->
<!--<a href="{{ base_url|e }}" onclick="event.preventDefault(); navigator.registerProtocolHandler('web+ganarchy', this.href + 'project/%s', 'GAnarchy');">Register web+ganarchy: URI handler</a>.-->
</p>
</body>
</html>

View File

@ -1,29 +0,0 @@
// GAnarchy - project homepage generator
// Copyright (C) 2019 Soni L.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
(function() {
var url = new URL(document.location.href);
var target = url.searchParams.get("url");
if (target !== null) {
var project = target.match(/^web\+ganarchy\:([a-fA-F0-9]+)$/);
if (project !== null) {
// some browsers don't like it when you set this directly
url.search = "";
url.pathname = "/project/" + project[1];
document.location = url.href;
}
}
})();